中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

linux內核有哪些模塊

發布時間:2020-09-30 15:35:03 來源:億速云 閱讀:145 作者:小新 欄目:建站服務器

這篇文章將為大家詳細講解有關linux內核有哪些模塊,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

一、進程調度模塊

Linux以進程作為系統資源分配的基本單位,并采用動態優先級的進程高級算法,保證各個進程使用處理機的合理性。進程調度模塊主要是對進程使用的處理機進行管理和控制。

【進程創建】:

在Linux環境編程時,一般采用fork()/vfork()函數(fork 是 創建一個子進程,并把父進程的內存數據copy到子進程中;vfork是 創建一個子進程,并和父進程的內存數據share一起用)來創建新的進程,當然,那是在用戶空間的函數,它會調用內核中的clone()系統調用,由clone()函數繼續調用do_fork()完成進程的創建。

fork()/vfork()/_clone--->clone()--->do_fork()--->copy_process()

【進程撤銷】:

進程終止后,需要通知內核以便內核釋放進程所擁有的資源,包括內存、打開文件以及其他資源,如信號量。進程終止的一般方式是調用exit()庫函數,該函數釋放C函數庫所分配的資源,執行編程者所注冊的每個函數,并結束從系統回收進程的那個系統調用。

【進程切換】:

進程切換又稱為任務切換、上下文切換。它是這樣一種行為,為了控制進程的執行,內核掛起當前在CPU上運行的進程,并恢復以前掛起的某個進程的執行。

在本質上,每個進程切換由兩部分組成:

切換頁全局目錄以安裝一個新的地址空間;切換內核態堆棧和硬件上下文,因為硬件上下文提供了內核執行新進程所需要的所有信息,包括CPU寄存器,主要有switch_to()函數完成。

【進程調度】:

現代的Linux中,調度算法可以在固定時間內(與可運行進程數量無關)選中要運行的進程。首先,我們必須知道進程可以分為實時進程與普通進程。每個LInux進程總是按照如下的調度類型被調度:先進先出的實時進程、時間片輪轉的實時進程、普通的分時進程。調度算法根據進程是普通進程還是實時進程而有很大不同。

二、進程間通信模塊

進程間通信主要用于控制不同進程之間在用戶空間的同步、數據共享和交換。由于不同的用戶進程擁有不同的進程空間,因此進程間的通信要借助于內核的中轉來實現。一般情況下,當一個進程等待硬件操作完成時,會被掛起。當硬件操作完成,進程被恢復執行,而協調這個過程的就是進程間的通信機制。

進程間通信模塊保證了Linux支持多種進程間通信機制,包括管道、命名管道、消息隊列、信號量和共享內存等。

三、內存管理模塊

Linux的內存管理模塊采用先進的虛擬存儲機制,實現對多進程的存儲管理。它提供了十分可靠的存儲保護措施,對進程賦予不同的權限,用戶不能直接訪問系統的程序和數據,保證了系統的安全性。同時,為每個用戶進程分配一個相互獨立的虛擬地址空間。

四、文件系統模塊

Linux 的文件系統模塊采用先進的虛擬文件系統(VFS)技術,屏蔽了各種文件系統的差別,為處理各種不同的文件系統提供了統一的接口,支持多種不同的物理文件系統達90多種。同時,Linux把各種硬件設備看作一種特殊的文件來處理,用管理文件的方法管理設備,非常方便、有效。

五、網絡接口模塊

Linux具有最強大的網絡功能。網絡接口模塊通過套接字(Socket)機制實現計算機之間的網絡通信,并采用網絡層次模型提供對多種網絡協議和網絡硬件設備的支持。

網絡接口提供了對各種網絡標準的實現和各種網絡硬件的支持。網絡接口一般分為網絡協議和網絡驅動程序。網絡協議部分負責實現每一種可能的網絡傳輸協議。網絡設備驅動程序則主要負責與硬件設備進行通信,每一種可能的網絡硬件設備都有相應的設備驅動程序。

關于linux內核有哪些模塊就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

襄汾县| 墨玉县| 台南市| 贵德县| 阿克| 溧水县| 鄂尔多斯市| 锡林浩特市| 西盟| 清远市| 大渡口区| 合江县| 南安市| 大石桥市| 手机| 滨州市| 杭锦旗| 丹棱县| 金寨县| 正安县| 蚌埠市| 新津县| 米脂县| 安庆市| 衡南县| 台东县| 大庆市| 溆浦县| 石屏县| 图木舒克市| 甘洛县| 松潘县| 阳朔县| 砚山县| 雷山县| 湛江市| 石台县| 怀安县| 布尔津县| 宁陕县| 乐陵市|