- 相關推薦
QNX操作系統及網絡設備驅動模塊
摘要:介紹嵌入式操作系統QNX的微內核結構、基于io-net的網絡子系統、網絡設備驅動程序的組成;給出以以太網網設備驅動程序為例的詳細說明,包括初始化、從網絡設備接收數據,向網絡設備發送數據和網絡設備信息的統計。關鍵詞:QNX 網絡 驅動程序
QNX是業界公認的X86平臺上最好的嵌入式實時操作系統之一。它具有獨一無二的微內核實時平臺,建立在微內核和完全地址空間保護基礎之上,實時、穩定、可靠,已經完成到PowerPC、MIPS、ARM等內核的移植,成為在國內廣泛應用的嵌入式實時操作系統。本文簡單介紹QNX內核和網絡結構的特點,針對目前熱門的網絡應用環境,討論QNX網絡設備驅動程序的結構和編寫。
1 QNX內核簡介
QNX的微內核結構是它區別于其它操作系統的顯著特點。目前嵌入式系統中,操作系統和應用程序之間的關系大概可以歸納為圖1~圖3所示的三種情況。
平板式內存結構,如圖1所示,所有的程序都使用同一個地址空間,不加保護;應用程序可以自由訪問所有空間,效率較高,但是任何應用程序指針錯誤都可能會導致內核崩潰。
大內核內存結構,如圖2所示,操作系統內核和各種驅動程序、網絡協議在同一個地址空間,應用程序在單獨空間;內核模塊同處于一個保護空間,運行效率高,應用程序無法直接訪問保護空間,系統穩定性大大提高。缺點是,由于內核模塊(例如網絡驅動)處于保護空間,因此調試困難,任何驅動程序的修改都要重新編譯內核,無法做到驅動的動態加載和卸載。
QNX的微內核結構,如圖3所示,內核獨立自處于一個被保護的地址空間;驅動程序、網絡協議和應用程序處地程序空間中。
微內核結構的優點:①驅動程序、網絡協議、文件系統等操作系統模塊和內核相互獨立,任何模塊的故障都不會導致內核的崩潰;②驅動程序、網絡協議、文件系統和應用程序都處于程序空間,都調用相同的內核API,開發與調試和應用程序沒有區別;③操作系統功能模塊可以根據需要動態地加載或卸載,不需要編譯內核。在高可靠性要求的情況下,可以編寫監視模塊,對可靠性要求高的模塊進行監視,必要的時候重新啟動或重新加載而無須重啟系統。高可靠性的內核結構使QNX具備了高可靠性嵌入式操作系統的本質特征。
在具有高可靠性內核的基礎上,QNX的創新設計使它同樣具有很高的效率。QNX最為引人注目的地方是,它是UNIX的同胞異構體,保持了和UNIX的高度相似性,絕大多數UNIX或LINUX應用程序可以在QNX下直接編譯生成。這意味著為數眾多的穩定成熟的UNIX、LINUX應用可以直接移植到QNX這個更加穩定高效的實時嵌入式平臺上來。
2 QNX網絡結構
QNZ網絡子系統由三個部分組成:網絡
[1] [2] [3] [4] [5]
【QNX操作系統及網絡設備驅動模塊】相關文章:
操作系統與模塊支持層隔離機制的研究04-26
由要素驅動 走向創新驅動05-01
模塊接口卡·什么是AIM模塊04-26
模塊接口卡·什么是ISDN網絡模塊04-26
模塊接口卡·什么是語音傳真模塊04-26
貨車與后輪驅動05-02
什么是操作系統04-26
什么是操作系統04-26
什么是操作系統04-26
什么是操作系統04-26