mac 和 linux核心簡單比較

2021-08-11 11:05:34 字數 780 閱讀 3410

macos核心原始碼官方鏈結

核心概述(我覺得有意思的部分)

os x:完整作業系統

核心:darwin 包含 xnu (混合式核心,包含1. mach微核心,2. bsd層建立在mach之上,3. i/o kit). 有趣的是,xnu's not unix.

xnu給使用者態主要提供bsd的介面,不僅有posix相容的系統呼叫,也有bsd獨有的呼叫。同時也提供少量mach介面(竟然稱之為api)

由於純微核心只有學術價值,因此os x使用的是混合核心。

xnu不是bsd的完整實現,比如bsd的brk()是缺失的;xnu的kext和bsd的kmod不相容。

沒有像linux那樣使用者可見的檔案系統procfs,但還是可以使用sysctl命令

i/o kit是c++實現的,但只用到c++的嚴格子集

開機流程,自行對比linux

(摘自《mac os x for unix geek》一書)

和linux軟硬體對比的個人總結

efi對應bios

nvram對應cmos

boot.efi對應grub

launched對應init

kext對應ko

對比單核心和微核心的架構

單核心:

微核心:

SIFT ORB FAST簡單比較

sift 畫素點和鄰域畫素點作比較,得到畫素灰度極值 為了消除邊緣響應,邊緣採用harris角點,fast orb 檢測畫素灰度變化明顯的地方 sift 計算畫素梯度及分布,從而確定旋轉角度 orb灰度質心法 確定影象塊的像素質心,連線幾何中心和質心構成向量,根據此向量確定旋轉角 theta。將關鍵...

ext jquery 簡單比較 jquery

ext jq 1.ext體積大,jquery更專注於簡化最基礎的開發工作.所以使用起來,也就感覺更像是使用原始的js進行開發一樣 2.ext介面美觀,jq一般 3.ext 復用性強 4.ext相容性還是有點小問題,jq相容性良好 5.ext不易除錯,6.ext使頁面是只留下body,搜尋引擎無法收錄...

myisam與innodb簡單比較

myisam 這個是預設型別,它基於傳統的isam型別,它是儲存記錄和檔案的標準方法.與其他儲存引擎比較,myisam具有檢查和修復 的大多數工具.myisam 可以被壓縮,而且它們支援全文搜尋.它們不是事務安全的,而且也不支援外來鍵。如果事物回滾將造成不完全回滾,不具有原子性。如果執行大量的sel...