首頁  >  文章  >  運維  >  linux和vxworks的差別是什麼

linux和vxworks的差別是什麼

WBOY
WBOY原創
2022-07-11 16:45:039007瀏覽

linux和vxworks的差別:1、內核結構不同,vxworks是微內核,只提供基本的服務,而linux是巨集內核,除了基本的服務、內核還包含檔案系統、網路協定等; 2.運行模式不同,vxworks應用程式在“實模式”下,無用戶模式和內核模式之分,而linux採用“保護模式”,用戶進程、執行緒運行在用戶模式下,內核執行緒運行與內核模式。

linux和vxworks的差別是什麼

本教學操作環境:linux7.3系統、Dell G3電腦。

linux和vxworks的差別是什麼

自己目前開發的嵌入式開發所用的作業系統是VxWorks,以前讀大學的時候用的最多的是linux作業系統,但是,對於這兩種作業系統到底有什麼差別,還真沒有真正去細心的總結過,被別人問起時,難免有些尷尬的感覺,畢竟自己是學嵌入式開發的,竟然對嵌入式開發系統了解的不深入,今天專門抽動時間好好的總結下,二者到底有什麼差別?

##內核結構#運行模式 室,用戶程式直接操作物理地

 

          VxWorks       

#微內核,內核只提供了基本

的服務,如:任務管理,內
存管理,中斷處理等

宏內核,除了基本的服務,內

#核還包括檔案系統,網路協定

應用程式運行在“實模式”

下,無用戶模式和內核模式
之分

採用“保護模式” ,用戶進

程、執行緒運行在用戶模式下,
內核執行緒運行於內核模式

# #記憶體存取與記憶體保護

核心採用實儲存管理方式,所有任務運行於同一物理地

址,不能直接地提供記憶體護,

不能防錯誤蔓延

 

##核心採用虛擬儲存管理方式,以

戶具有獨立的位址空間,用戶進

程只能存取本進程的虛擬空間提供
了記憶體保護,可以防止錯誤蔓延

執行單位

         任務

#       進程、執行緒

請求核心服務方式

  函數調用,更快

    系統調用,更安全

即時性

        硬即時

#           軟體即時

####################################################################################################################################################

VxWorks主要應用於電信層級的數通等產品,而linux主要應用於消費性、工控產品等

微內核、巨集內核

##內核中提供各種服務的成分與使用這種服務的進程之間形成一種client/server關係,這種服務並不一定非得留在核心中,它本身也可以被設計實現成“服務進程”,其中必須留在核心中的部分只有進程間的通信,如果把這些服務從核心轉移到進程的層次上,那麼核心本身的結構就可以大大減小和減化,而各個服務進程也可以單獨設計、實現及調試。

微核心便是將服務轉移到進程上的一種核心模式,主要應用在即時系統和嵌入式系統上,主要是因為通常這些系統都不帶磁碟,整個系統必須都放在EPROM中,常常受到儲存空間的限制,而且所需的服務也比較單一,如PSOS,VxWorks等。

巨集核心是一種傳統的核心結構,它將行程管理,記憶體管理等各項服務功能都放到核心中去,通常用在通用式核心上,如UNIX,linux等.

裝置驅動部分的比較和分析

由於linux作業系統和linux引導裝載器在結構上的分離,使得它兩個之間的裝置驅動程式不能夠通用,當然在晶片的硬體初始化一些硬體相關的程式碼上可以互相借鏡。而VxWorks的BOOTROM和運作版本的裝置驅動是相同的,因為它的運作版本和BOOTROM的結構是一致的,使用同一作業系統核心。 linux作業系統的裝置驅動運行在內核空間,用戶進程運行在用戶空間。在linux作業系統中,核心空間和使用者空間的記憶體管理和映射方式是不同德,應用程式和裝置驅動在資料交換時會涉及到不同的記憶體空間,會影響到一定效率,但這個問題可以透過修改系統記憶體空間配置等方法來解決。 VxWorks作業系統沒有分開內核空間和用戶空間,設備驅動和應用都運行於同一空間,相互之間的內存都可以訪問,數據交換非常方便,但是這種結構的穩定性就不如linux系統好,兩種作業系統都提供了許多設備驅動的資源和模板。但是由於linux的開源特性,它提供的設備驅動的種類和數量遠遠超過了VxWorks.

推薦學習:

Linux視頻教程#

以上是linux和vxworks的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn