源碼下載網(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í)上,蘋(píng)果直接修改了BSD代碼。蘋(píng)果也在BSD的基礎(chǔ)上做了很多工作。我們可以看到許多相似的地方。例如,MacOS的防火墻也是基于BSD-PF的,著名的kqueue也在MacOS中。
在Mac OS上,圖形系統(tǒng)是蘋(píng)果獨(dú)有的、封閉源代碼的,BSD層是開(kāi)源的,但蘋(píng)果并沒(méi)有完全復(fù)制BSD代碼。在過(guò)去的10年中,蘋(píng)果做了很多工作,比如近年來(lái)推出的文件系統(tǒng)APFs,llvm作為系統(tǒng)編譯器,現(xiàn)在FreeBSD也使用llvm作為系統(tǒng)編譯器。
為什么中國(guó)不基于bsd開(kāi)發(fā)操作系統(tǒng),之后再閉源?
其實(shí)操作系統(tǒng)寫(xiě)起來(lái)并不難,很多大學(xué)的課程都有一個(gè)簡(jiǎn)單的操作系統(tǒng)。實(shí)際上,主要問(wèn)題是生態(tài)問(wèn)題。如果完全重寫(xiě),如何解決軟件的根本問(wèn)題。至于不需要軟件生態(tài)的系統(tǒng),我們一直都有,比如太湖之光系統(tǒng)和嵌入式實(shí)時(shí)系統(tǒng)。