嵌入式Linux OS與Windows CE相比的優(yōu)點(diǎn):
第一  inux是開(kāi)放源代碼,遍布全球的眾多Linux愛(ài)好者都是Linux開(kāi)發(fā)者的強大技術(shù)支持者;Windows CE目前6.0內核全部開(kāi)放,GUI不開(kāi)放。第二:Linux的內核小、效率高;Windows CE相比,占用過(guò)多的RAM。第三Linux是開(kāi)放源代碼的OS,在價(jià)格上極具競爭力,適合中國國情。Windows CE需要版權費用。第四Linux不僅支持x86芯片,還是一個(gè)跨平臺的系統。更換CPU時(shí)就不會(huì )遇到更換平臺的困擾。第五,Linux內核的結構在網(wǎng)絡(luò ) 方面是非常完整的,它提供了對包括十兆位、百兆位及千兆位的以太網(wǎng)絡(luò ),還有無(wú)線(xiàn)網(wǎng)絡(luò )、Token ring(令牌環(huán))和光纖甚至衛星的支持,目前WINCE的網(wǎng)絡(luò )功能也比較強大。
嵌入式Linux OS與Windows CE相比的弱點(diǎn):
第一:LINUX開(kāi)發(fā)難度較高,需要很高的技術(shù)實(shí)力,WINCE開(kāi)發(fā)相對較容易,開(kāi)發(fā)周期短,內核完善,主要是應用層開(kāi)發(fā)。第二:LINUX核心調試工具 不全,調試不太方便,尚沒(méi)有很好的用戶(hù)圖形界面,WINCE的GUI豐富,開(kāi)發(fā)工具強大;第三,系統維護難度大。Linux占用較大的內存,如果去掉部分 無(wú)用的功能來(lái)減小使用的內存,但是如果不仔細,將引起新的問(wèn)題。 Windows Linux 不同點(diǎn) 1. 驅動(dòng)與應用的數據交互: 對 于驅動(dòng)中分配的內存,windows 通過(guò)memorymap 將驅動(dòng)中的內存空間映射到應用層,應用和驅動(dòng)是通過(guò)不同的地址同一地址空間的數據操作;而linux中驅動(dòng)與應用層若存在數據交互的話(huà),是通過(guò) CopyToUser, CopyFromUser進(jìn)行的,看上去在這點(diǎn)上windows的效率會(huì )更高些。linux也有類(lèi)似的mmap機制?梢园褍群藨B(tài)的地址映射到用戶(hù)空間 中。 2.當應用與驅動(dòng)需要同步時(shí): Linux中是在應用中通過(guò)調用IOctl讓等待在驅動(dòng)中進(jìn)行,此時(shí)驅動(dòng)還可以處理其它任務(wù),可以得到響應的事件,并通知在等待中的任務(wù)結束,從而應用程序可以繼續執行下去。 Windows如果將等待放到驅動(dòng)中的話(huà),會(huì )發(fā)現驅動(dòng)就在那死等了,不再響應其它輸入。因此,windos中的等待是在應用中回調用waitobject函數。 3 WinCE操作系統實(shí)現了進(jìn)程/線(xiàn)程兩級管理模型。 linux本身不支持線(xiàn)程,它支持進(jìn)程一級。如果要使用線(xiàn)程的話(huà),需要使用線(xiàn)程庫。 轉自飛凌s5pv210開(kāi)發(fā)板技術(shù)討論區
|