2016.11.1補充
* 1.18 fork後,子程序繼承父程序的什麼,父、子程序區別?
執行緒 引入的狀態:
狀態間的轉換:
核心模式到使用者模式:
將當前工作目錄更改為根目錄;(因為從父程序繼承過來的目錄可能在乙個掛載的檔案系統中,如果不更改為根目錄,則所掛載的檔案系統不能解除安裝)
關閉不需要的檔案描述符;
某些守護程序開啟/dev/null使其具有檔案描述符0, 1, 2。(守護程序不需要互動式輸入/輸出)
所有執行在乙個程序裡的執行緒共享整個虛擬位址空間.(**段開始虛擬位址為0x00400000[64bit], 0x08048000[32bit])
共享程序的**段,資料段.1). 使用者級執行緒(ult)
缺點:
2). 核心級執行緒(klt)
缺點:
擁有資源:
併發性:
切換開銷:
通訊:
父、子程序區別:
棧(從高位址往低位址增長): 區域性變數/區域性常量(const)[區域性唯讀變數]/函式呼叫時返回位址/呼叫者的環境資訊(例如某些機器暫存器).
關於c/c++程式執行時程序的記憶體分布情況
6.1 《深入理解計算機系統》
6.2 《計算機作業系統(第四版)》
6.3 《linux就是這個範》
作業系統之執行緒和程序
以下內容 於 上面的面試題可以看出,其實都是一回事,只是換了一種提問方式,只要我們能掌握核心要點,隨便面試官怎麼提問,我們都能輕鬆應對!所以我們可以說 程序 是包含 執行緒 的,執行緒 是 程序 的乙個子集。程序 process 是計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排...
《現代作業系統》之 程序與執行緒
作業系統中最核心的概念是程序,它是對正在執行程式的乙個抽象,包括作業系統。乙個程序就是乙個正在執行程式的例項,包括程式計數器 暫存器和變數的當前值。下圖中有四個程序,但是只有乙個物理程式計數器。在執行其中某個程式時,例如執行a程序,此時程序a的邏輯程式計數器就會被載入到物理程式計數器中。並且在實際的...
作業系統之程序執行緒 鎖思想
程序 1 計算機的核心是cpu,它承擔了所有的計算任務。它就像一座工廠,時刻在執行 2 假定工廠的電力有限,一次只能供給乙個車間使用。也就是說,乙個車間開工的時候,其他車間都必須停工。背後的含義就是,單個cpu一次只能執行乙個任務 3 程序就好比工廠的車間,它代表cpu所能處理的單個任務。任一時刻,...