在linux2.6以後的核心版本當中,乙個核心任務可以被搶占,從而提高系統的實時性。可以極大地增強
系統的使用者互動性。就如使用者覺得滑鼠單擊的時候得到了更快速的相應。但是2.6以後的核心還是存在一些
不可搶占的區間,例如中斷上下文,軟中斷上下文和自旋鎖鎖住的區間。如果給linux打上rt-preempt補丁,
則軟中斷和中斷都被執行緒化了,自旋鎖也被互斥體替換,linux核心變得能支援硬實時,linux2.6以後的核心
仍然存在中斷,軟中斷,自旋鎖等原子上下文程序無法搶占執行的情況。原因是linux本身只提供軟實時能力
的原因。
改進的執行緒模型。
2.6以後的核心版本使用nptl模型,操作速度得以極大的提高。
虛擬記憶體的變化
從虛擬記憶體的角度來看,新核心融合了r-map(反向對映)技術,顯著改善虛擬記憶體在一定大小負載下的效能
建立方向對映,通過頁結構體快速尋找到頁面的對映。
檔案系統
核心增加了對日誌檔案系統的支援。解決了之前版本的不足。增加了對posix標準訪問的控制支援,可以給
指定的檔案在檔案系統中潛入元資料。
音訊高階linux音訊體系結構。
新的音訊體系結構支援usb音訊和midi裝置。並支援全雙工重放等功能。
匯流排,裝置和驅動模型(這個比較關心)
匯流排,裝置,驅動三者之間因為一定的關係性而實現對裝置的控制。匯流排是三者聯絡起來的基礎。通過一種
匯流排型別,將裝置和驅動聯絡起來。匯流排型別中的match()函式用來匹配裝置和驅動,當匹配操作完成之後就會執
行驅動程式中的probe()函式。
電源管理
支援高階配置和電源介面。用於調整cpu在不同負載下工作於不同的時鐘頻率。目前核心電源管理相對比較完
善聯網和ipsee
核心加入了對ipsee的支援。刪除了原來內建的http伺服器khttpd,加入了對新的nfsv4 客戶機/伺服器的支援。
並且改進了對ipv6的支援。
使用者介面層
核心重寫了幀緩衝/控制台層,人機介面曾還加入了對近乎所有介面裝置的支援。
在 arm linux的**在時鐘,dma,pinmux,計時器刻度等諸多方面都進行了優化,刪除了arch/arm/mach-***/include/mach
頭檔案目錄,以至於linux3.7以後的核心可以支援多平台,即同乙份核心映象執行於多家soc公司的多個晶元,實
現乙個linux可使用所有的arm系統。
linux核心的組成
linux核心原始碼包含如下:
在arch目錄下,存放的是各個平台以及各個平台的晶元對linux核心程序排程,記憶體管理,中斷等的支援,以及每個
具體的soc和電路板的板級支援**。
block:塊裝置驅動程式i/o排程
crypto:常用加密雜湊演算法(如aes,sha)還有一些crc校驗演算法
documentation:核心部分的通用解釋和注釋。
driver:裝置的驅動程式,每個不同的驅動占用乙個子目錄
fs:所支援的各種檔案系統
init:核心的初始化**,著名的start_kernel()就位於init/main.c當中。
ipc:程序間通訊的**。
lib:庫檔案**.
mm:記憶體管理**,和平台相關的則放在arch/*/linux
net:網路相關的**,實現各種常見的網路協議。
security:主要是乙個selinux的模組
sound:alsa,oss音訊裝置的驅動核心**和常用裝置驅動。
usr:實現用於打包和壓縮的cpio等
include:核心api級別標頭檔案。
核心一般要做到drives與arch的軟體按構架的分離,驅動當中不包含板級資訊,讓驅動跨平台。同時核心的通用部分
則與具體的硬體剝離。
先到這裡,愛你yz
linux系統目錄結構與層級命令使用
筆者使用的是ubuntu,這裡以ubuntu為例子。一 目錄層級結構說明 1 根目錄 所有的目錄都掛在其下 2 boot 存放ubuntu核心和系統啟動檔案。系統啟動時這些檔案先被裝載。3 etc 系統的配置檔案目錄。密碼檔案 設定網絡卡資訊 環境變數的設定等都在此目錄中,許多網路配置檔案也在其中。...
證書的層級結構
一 點睛 使用者需要使用認證機構的公鑰,對證書上的數字簽名進行驗證。那麼,對於用來驗證數字簽名的認證機構的公鑰,怎樣才能判斷它是合法的呢?對於認證機構的公鑰,可以由其他認證機構施加數字簽名,從而對認證機構的公鑰進行驗證,即生成一張認證機構的公鑰證書。乙個認證機構來驗證另外乙個認證機構的公鑰,這樣的關...
android View的層級結構
我們看到最頂層就是phonewindow decorview,接著decorview下面有乙個linearlayout,linearlayout下面有兩個framelayout 上面那個framelayout是用來顯示標題欄的,這個demo中是乙個textview,當然我們還可以定製我們的標題欄,利...