程序如何工作

2022-01-24 02:39:07 字數 426 閱讀 8165

系統啟動時,核心先把它的一些程式初始化為程序,然後執行乙個稱為init的程式。init程式將依次執行一系列稱為指令碼初始化(init script)的shell指令碼(放在/etc目錄下),這些指令碼將會啟動所欲的系統服務。其中的很多服務都是通過守護程式(daemon program)來實現的。而後台程式只是待在後台做它們自己的事情,並且沒有使用者介面。因此,即使沒有使用者登入,系統也在忙於執行一些例行程式。

乙個程式的執行可以觸發其它程式的執行,在程序系統中這種情況被表述為父程序建立子程序。

核心會儲存每個程序的資訊以便確保任務有序進行。比如,每個程序將被分配乙個稱為程序id(pid, process id)的號碼。程序id是按遞增的順序來分配的,init程序的pid始終為1。核心也記錄分配給每個程序的記憶體資訊以及用來恢復執行的程序就緒資訊。和檔案系統類似,程序系統中也存在所有者、使用者id、有效使用者id等。

程序的工作目錄

1.程序的工作目錄 include int chdir char pathname chdir.c include include include include include int main void printf change dir successfully n 輸出提示資訊 if fd ...

linux程序與工作

三種特殊的程序 前台 在終端中執行,能與你有互動的程序 後台 在終端中執行,但是你並不能與其任何的互動,也不能顯示其執行的過程 如何講乙個程序放入後台執行 例如 ls 我們還可以通過ctrl z使我們的當前的前台工作停止並丟到後台中 例如 tail f var log dpkg.log 我們可以通過...

改變程序的工作目錄

先來說說 工作目錄 的概念吧。在程式中所有以檔名引用的檔案路徑都將被解釋為當前工作目錄 檔名。比如 fd open tmp test.txt o rdonly 其實shell直譯器解釋的每乙個命令本質上都是乙個程式,基本都存放在 bin目錄下,但是沒有cd這個程式。改變程序的工作目錄函式如下 inc...