• 招生咨詢熱線:4008-569-579 
  • 手機版
    用手機掃描二維碼直達商品手機版
招生咨詢熱線
4008-569-579
機構(gòu)主頁 > 培訓(xùn)資料 > 嵌入式開發(fā):嵌入式與非嵌入式操作系統(tǒng)
機構(gòu)主頁 > 培訓(xùn)資料>嵌入式開發(fā):嵌入式與非嵌入式操作系統(tǒng)

嵌入式開發(fā):嵌入式與非嵌入式操作系統(tǒng)

來源:廣州達內(nèi)教育        時間:2023-05-30        熱度:40℃        返回列表

  什么是嵌入式設(shè)備?如果你使用過電子設(shè)備,比如智能手機或家用電器,那么你很可能已經(jīng)接觸過這些設(shè)備。簡單地說,嵌入式設(shè)備是設(shè)計用于執(zhí)行特定任務(wù)的“簡單”設(shè)備。在嵌入式開發(fā)中,這些設(shè)備在驅(qū)動或運行簡單的單任務(wù)環(huán)境中起著不可替代的作用。


  沒有操作系統(tǒng)的設(shè)備驅(qū)動程序(裸機設(shè)備)


  不是每臺計算機都需要操作系統(tǒng)來運行;在許多情況下,操作系統(tǒng)是不必要的。對于相對簡單且控制不復(fù)雜的功能,單任務(wù)體系結(jié)構(gòu)完全能夠支持它們的工作。


  嵌入式系統(tǒng)的一些現(xiàn)實例子包括公交卡讀卡器、冰箱、微波爐和簡單的移動電話。除此之外,不需要復(fù)雜任務(wù)(如多任務(wù)調(diào)度、文件系統(tǒng)或內(nèi)存管理)的計算機不依賴于操作系統(tǒng)。


  此類系統(tǒng)中的典型軟件架構(gòu)包括無限循環(huán)設(shè)備中斷測試,輪詢設(shè)備。裸機設(shè)備實現(xiàn)了一些類似于單芯片設(shè)備或微控制器(MCU)的功能。如果裸機設(shè)備包括一個驅(qū)動器,它應(yīng)該能夠勝任微控制器的工作。


  在這樣的嵌入式開發(fā)系統(tǒng)中,雖然沒有操作系統(tǒng),但設(shè)備驅(qū)動程序必須仍然存在。設(shè)備驅(qū)動接口直接提交給應(yīng)用軟件,并且應(yīng)用軟件直接訪問設(shè)備驅(qū)動接口而不跨越任何層次結(jié)構(gòu)。設(shè)備驅(qū)動程序還包括直接與硬件功能配合使用的接口功能,無需任何附加功能。


  帶有設(shè)備驅(qū)動程序的操作系統(tǒng)


  當系統(tǒng)包含操作系統(tǒng)時,設(shè)備驅(qū)動程序會是什么樣子?


  首先,非嵌入式操作系統(tǒng)的設(shè)備驅(qū)動硬件操作可能仍然至關(guān)重要。如果沒有這個部分,設(shè)備驅(qū)動程序和硬件就不能相互交互。




  其次,我們還需要將設(shè)備驅(qū)動程序合并到內(nèi)核中。為了實現(xiàn)這種融合,我們必須在所有設(shè)備驅(qū)動程序中設(shè)計操作系統(tǒng)內(nèi)核的接口。操作系統(tǒng)規(guī)定了這些類型的接口,并且在結(jié)構(gòu)上獨立于特定于一類設(shè)備的設(shè)備。


  因此,當有操作系統(tǒng)時,設(shè)備驅(qū)動程序成為連接硬件和內(nèi)核的鏈接。操作系統(tǒng)的存在將不可避免地要求設(shè)備驅(qū)動程序附加更多的代碼和功能,從而將單個“驅(qū)動硬件設(shè)備操作”變成一個模塊,用于從操作系統(tǒng)內(nèi)部與硬件交互。


  它以操作系統(tǒng)API的形式出現(xiàn),不再提供直接接口。在獲得操作系統(tǒng)后,設(shè)備驅(qū)動程序變得越來越復(fù)雜。問題是,在這種情況下,操作系統(tǒng)應(yīng)該做什么?


  首先,一個復(fù)雜的軟件系統(tǒng)需要處理多個并發(fā)任務(wù)。如果沒有操作系統(tǒng),完成多任務(wù)并發(fā)是一項挑戰(zhàn)。其次,操作系統(tǒng)為嵌入式開發(fā)工程師提供了內(nèi)存管理機制。


  舉個典型的例子,大多數(shù)基于MMU的處理器、Windows、Linux和其他傳統(tǒng)操作系統(tǒng)都支持每個進程單獨訪問4GB內(nèi)存??傊?,操作系統(tǒng)給設(shè)備驅(qū)動程序帶來了哪些優(yōu)勢?


  操作系統(tǒng)為設(shè)備驅(qū)動程序帶來問題,以實現(xiàn)向更高級別的應(yīng)用程序提供方便操作的目的。如果所有設(shè)備驅(qū)動程序的設(shè)計理念都是操作系統(tǒng)提供獨立于設(shè)備的接口,那么應(yīng)用程序?qū)⒖梢允褂媒y(tǒng)一的系統(tǒng)調(diào)用接口訪問各種設(shè)備。對于UNIX的VxWorks、Linux和其他操作系統(tǒng),應(yīng)用程序可以讀取和寫入文件,并通過write()和read()函數(shù)訪問不同的字符設(shè)備和塊設(shè)備。這與設(shè)備和工作的具體類型無關(guān),因此非常方便。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部