源碼下載網(wǎng) iOS和macOS是基于BSD的嗎?
iOS和macOS是基于BSD的嗎?PC機(jī)上的BSD直接管理硬件,BSD與MacOS和IOS的硬件之間有一層微內(nèi)核Mach。MacOS圖形界面的系統(tǒng)調(diào)用建立在BSD之上,應(yīng)用層也可以直接調(diào)用微內(nèi)核的消
iOS和macOS是基于BSD的嗎?
PC機(jī)上的BSD直接管理硬件,BSD與MacOS和IOS的硬件之間有一層微內(nèi)核Mach。MacOS圖形界面的系統(tǒng)調(diào)用建立在BSD之上,應(yīng)用層也可以直接調(diào)用微內(nèi)核的消息接口。
我已經(jīng)閱讀了BSD和MacOS的應(yīng)用層代碼,例如route命令的源代碼。密碼是有血緣關(guān)系的。事實(shí)上,蘋果直接修改了BSD代碼。蘋果也在BSD的基礎(chǔ)上做了很多工作。我們可以看到許多相似的地方。例如,MacOS的防火墻也是基于BSD-PF的,著名的kqueue也在MacOS中。
在Mac OS上,圖形系統(tǒng)是蘋果獨(dú)有的、封閉源代碼的,BSD層是開源的,但蘋果并沒有完全復(fù)制BSD代碼。在過去的10年中,蘋果做了很多工作,比如近年來推出的文件系統(tǒng)APFs,llvm作為系統(tǒng)編譯器,現(xiàn)在FreeBSD也使用llvm作為系統(tǒng)編譯器。
為什么中國(guó)不基于bsd開發(fā)操作系統(tǒng),之后再閉源?
其實(shí)操作系統(tǒng)寫起來并不難,很多大學(xué)的課程都有一個(gè)簡(jiǎn)單的操作系統(tǒng)。實(shí)際上,主要問題是生態(tài)問題。如果完全重寫,如何解決軟件的根本問題。至于不需要軟件生態(tài)的系統(tǒng),我們一直都有,比如太湖之光系統(tǒng)和嵌入式實(shí)時(shí)系統(tǒng)。