linux有5大模組:1、程序排程模組,主要是對程序用的處理機進行管理和控制;2、程序間通訊模組,主要用於控制不同程序間在使用者空間的同步、資料共享和交換;3、記憶體管理模組,採用先進的虛擬儲存機制,實現對多程序的儲存管理;4、檔案系統模組等。
本教程操作環境:linux5.9.8系統、dell g3電腦。
linux 核心包含有五大子模組:程序排程模組、程序間通訊模組、記憶體管理模組、檔案系統模組、網路介面模組。
一、程序排程模組
linux以程序作為系統資源分配的基本單位,並採用動態優先順序的程序高階演算法,保證各個程序使用處理機的合理性。程序排程模組主要是對程序使用的處理機進行管理和控制。
【程序建立】:
在linux環境程式設計時,一般採用fork()/vfork()函式(fork 是 建立乙個子程序,並把父程序的記憶體資料copy到子程序中;vfork是 建立乙個子程序,並和父程序的記憶體資料share一起用)來建立新的程序,當然,那是在使用者空間的函式,它會呼叫核心中的clone()系統呼叫,由clone()函式繼續呼叫do_fork()完成程序的建立。
fork()/vfork()/_clone--->clone()--->do_fork()--->copy_process()【程序撤銷】:
程序終止後,需要通知核心以便核心釋放程序所擁有的資源,包括記憶體、開啟檔案以及其他資源,如訊號量。程序終止的一般方式是呼叫exit()庫函式,該函式釋放c函式庫所分配的資源,執行程式設計者所註冊的每個函式,並結束從系統**程序的那個系統呼叫。
【程序切換】:
程序切換又稱為任務切換、上下文切換。它是這樣一種行為,為了控制程序的執行,核心掛起當前在cpu上執行的程序,並恢復以前掛起的某個程序的執行。
在本質上,每個程序切換由兩部分組成:
【程序排程】:
現代的linux中,排程演算法可以在固定時間內(與可執行程序數量無關)選中要執行的程序。首先,我們必須知道程序可以分為實時程序與普通程序。每個linux程序總是按照如下的排程型別被排程:先進先出的實時程序、時間片輪轉的實時程序、普通的分時程序。排程演算法根據程序是普通程序還是實時程序而有很大不同。
二、程序間通訊模組
程序間通訊主要用於控制不同程序之間在使用者空間的同步、資料共享和交換。由於不同的使用者程序擁有不同的程序空間,因此程序間的通訊要借助於核心的中轉來實現。一般情況下,當乙個程序等待硬體操作完成時,會被掛起。當硬體操作完成,程序被恢復執行,而協調這個過程的就是程序間的通訊機制
程序間通訊模組保證了linux支援多種程序間通訊機制,包括管道、命名管道、訊息佇列、訊號量和共享記憶體等。
三、記憶體管理模組
linux的記憶體管理模組採用先進的虛擬儲存機制,實現對多程序的儲存管理。它提供了十分可靠的儲存保護措施,對程序賦予不同的許可權,使用者不能直接訪問系統的程式和資料,保證了系統的安全性。同時,為每個使用者程序分配乙個相互獨立的虛擬位址空間。
四、檔案系統模組
linux 的檔案系統模組採用先進的虛擬檔案系統(vfs)技術,遮蔽了各種檔案系統的差別,為處理各種不同的檔案系統提供了統一的介面,支援多種不同的物理檔案系統達90多種。同時,linux把各種硬體裝置看作一種特殊的檔案來處理,用管理檔案的方法管理裝置,非常方便、有效。
五、網路介面模組
linux具有最強大的網路功能。網路介面模組通過套接字(socket)機制實現計算機之間的網路通訊,並採用網路層次模型提供對多種網路協議和網路硬體裝置的支援。
網路介面提供了對各種網路標準的實現和各種網路硬體的支援。網路介面一般分為網路協議和網路驅動程式。網路協議部分負責實現每一種可能的網路傳輸協議。網路裝置驅動程式則主要負責與硬體裝置進行通訊,每一種可能的網路硬體裝置都有相應的裝置驅動程式
tensorflow 有哪些模組
原文 作為深度學習的最熱門工具之一,tensorflow可以為我們的模型搭建以及資料運算帶來極大的便利。作為一門工具,必不可少地是要對它有乙個全域性的了解。私以為,如果對它的整體的模組架構有乙個了解的話,再結合自己的興趣與需要,能夠節約更多的時間去思考自己的網路結構設計,完善更多細節。登陸到tens...
spring有哪些主要模組?
spring框架的七大模組 1.spring core 框架的最基礎部分,提供 ioc 容器,對 bean 進行管理。2.spring context 基於 bean,提供上下文資訊,擴充套件出jndi ejb 電子郵件 國際化 校驗和排程等功能。3 spring dao 提供了jdbc的抽象層,它...
光模組引數有哪些?
在現代資訊網路彙總,光纖通訊佔據著主導地位,隨著網路的覆蓋越來越廣泛和通訊容量的不斷增加,通訊鏈路的提公升也是必然的發展,光模組在光通訊網路中實現著光電訊號的轉換,是光纖通訊的主要器件之一。但是,我們平時都說光模組,那麼,光模組的引數有哪些?你知道嗎?在本文中,飛速 fs 將給大家做詳細的介紹。光模...