Unix操作系統(tǒng)進程知識學(xué)習(xí)
Unix操作系統(tǒng)有很多值得學(xué)習(xí)的地方,這里我們主要介紹我們在學(xué)習(xí)Unix操作系統(tǒng)中的一點體會,大家一起來看看吧,希望對大家Unix操作系統(tǒng)的學(xué)習(xí)有所幫助。Unix操作系統(tǒng)進程是在某個進程調(diào)用 fork 時創(chuàng)建的,fork 將正在運行的可執(zhí)行進程一分為二。
整個Unix操作系統(tǒng)可分為五層:***層是裸機,即硬件部分;第二層是UNIX的核心,它直接建立在裸機的上面,實現(xiàn)了操作系統(tǒng)重要的功能,如進程管理、存儲管理、設(shè)備管理、文件管理、網(wǎng)絡(luò)管理等,用戶不能直接執(zhí)行UNIX內(nèi)核中的程序,而只能通過一種稱為"系統(tǒng)調(diào)用"的指令,以規(guī)定的方法訪問核心,以獲得系統(tǒng)服務(wù)。
第三層系統(tǒng)調(diào)用構(gòu)成了第四層應(yīng)用程序?qū)雍偷诙雍诵膶又g的接口界面;應(yīng)用層主要是Unix操作系統(tǒng)的核外支持程序,如文本編輯處理程序、編譯程序、系統(tǒng)命令程序、通信軟件包和窗口圖形軟件包、各種庫函數(shù)及用戶自編程序。
Unix操作系統(tǒng)的最外層是Shell解釋程序,它作為用戶與操作系統(tǒng)交互的接口,分析用戶鍵入的命令和解釋并執(zhí)行命令,Shell中的一些內(nèi)部命令可不經(jīng)過應(yīng)用層,直接通過系統(tǒng)調(diào)用訪問核心層。
然后該進程可以執(zhí)行 exec 系列中的某個系統(tǒng)調(diào)用,從而將當(dāng)前運行的映像替換為新的映像。
當(dāng)父進程終止時,其所有子進程將由 PID 為 1 的 init 接納。如果子進程在父進程之前終止,則會向父進程發(fā)送一個信號,然后子進程轉(zhuǎn)變?yōu)榻┧罓顟B(tài),直到該信號得到確認,或父進程被終止。
現(xiàn)在您已了解了進程是如何創(chuàng)建和銷毀的,您已經(jīng)為處理運行您系統(tǒng)的進程作了更好的準(zhǔn)備,尤其是大量使用多進程的系統(tǒng),例如 Apache。如果您需要執(zhí)行某些故障排除,能夠跟蹤某個特定進程的進程樹還允許您將任何應(yīng)用程序追溯到創(chuàng)建它的進程。
Unix操作系統(tǒng)的知識,我們就先介紹到這里了。
【編輯推薦】















 
 
 
 
 
 
 