來源:SELF_IMPR小灰 // my0919 的博客
1、常見區(qū)別分析
2、linux、vxworks優(yōu)劣勢(shì)分析
1)vxworks采用微內(nèi)核結(jié)構(gòu),內(nèi)核的可移植性較linux好,內(nèi)核穩(wěn)定性較高,減少了內(nèi)存的開銷,進(jìn)程間通信通過**IPC(進(jìn)程間通信機(jī)制)**實(shí)現(xiàn);linux采用宏內(nèi)核結(jié)構(gòu),內(nèi)核的可移植性較vxworks差,內(nèi)核維護(hù)量大,由于包含了文件系統(tǒng)、設(shè)備驅(qū)動(dòng),系統(tǒng)內(nèi)核相對(duì)較大,增加了對(duì)內(nèi)存的需求,但是內(nèi)核模塊之間的通信直接通過函數(shù)調(diào)用實(shí)現(xiàn),提高了內(nèi)核的效率。
2)實(shí)時(shí)性方面:vxworks采用硬實(shí)時(shí)中斷響應(yīng)機(jī)制,真正做到了任務(wù)響應(yīng)要實(shí)時(shí),而且要求在規(guī)定的時(shí)間內(nèi)完成事件的處理;而linux采用軟實(shí)時(shí)機(jī)制,時(shí)間的確定性上得不到保證。因此,在實(shí)時(shí)性要求較高的一些場(chǎng)合,vxworks比linux存在較大的優(yōu)勢(shì);
3)技術(shù)方面:
A、Linux的核心和用戶進(jìn)程之間是的地址空間隔離的,每個(gè)用戶進(jìn)程之間的地址空間是隔離的,當(dāng)某一個(gè)用戶進(jìn)程崩潰的時(shí)候,不會(huì)影響操作系統(tǒng)核心和其他用戶進(jìn)程正常運(yùn)行;
B、Linux支持頁面級(jí)的內(nèi)存管理,支持換頁;
C、由于隔離的原因,使得Linux軟件的各部分之間耦合性更小,Linux的應(yīng)用程序跟核心之間有清晰的界面,POSIX API。總而言之,Linux充分利用了現(xiàn)代微處理器的MMU硬件,而vxWorks則采用平面地址空間。在某些高端設(shè)備上Linux的保護(hù)模式的確可以讓系統(tǒng)更穩(wěn)定,至少更容易找Bug。
4)其他客觀因素:導(dǎo)致網(wǎng)絡(luò)設(shè)備廠商轉(zhuǎn)向Linux的主要原因是 Linux代表產(chǎn)業(yè)鏈越來越成熟,用Linux的開發(fā)成本將遠(yuǎn)低于vxWorks。主要表現(xiàn)在:
(a)支持Linux的軟件越來越越多,而支持 vxWorks的軟件越來越少,Linux下面有很多開源軟件,而這些開源軟件多半不支持vxWorks?,F(xiàn)在用于網(wǎng)絡(luò)設(shè)備的商業(yè)軟件幾乎都支持 Linux,如:Gated、Zebos、Trillium、InterPeek的協(xié)議棧等。
(b)幾乎所有的芯片都提供Linux驅(qū)動(dòng)程序,幾乎所有的CPU、評(píng)估板都提供Linux支持。
(c)熟悉Linux的開發(fā)人員更好找。與Linux相比,vxWorks則越來越顯得曲高和寡,其生存環(huán)境也越來越差。
綜上所述,在小型、實(shí)時(shí)性要求較高的應(yīng)用場(chǎng)景下,vxworks較linux更加實(shí)用,而相對(duì)大型、且實(shí)時(shí)性要求不很嚴(yán)格的場(chǎng)景中,linux更有優(yōu)勢(shì)。
————————————————
版權(quán)聲明:本文為CSDN博主「my0919」的原創(chuàng)文章,原文鏈接:https://blog.csdn.net/my0919/article/details/86525157
聯(lián)系客服