嵌入式操作系統(tǒng)中設備管理和驅(qū)動程序的開發(fā)
隨著計算機技術的飛速發(fā)展,嵌入式操作系統(tǒng)廣泛用于航空航天.工業(yè)控制.通訊等領域.其主要通過對計算機及機電系統(tǒng)接口的管理來實現(xiàn)對其它設備的控制.監(jiān)視和管理功能.本文介紹了中斷技術.緩沖技術.通道技術以及DMA 技術等四種嵌入式操作系統(tǒng)設備管理.并通過虛擬儀器labview 程序設計對嵌入式操作系統(tǒng)驅(qū)動程序進行了開發(fā)設計.
1 嵌入式操作系統(tǒng)及其硬件設備
嵌入式操作系統(tǒng)(Embedded Operating System,簡稱:
EOS),是指在嵌入式系統(tǒng)中包含有操作系統(tǒng)的計算機系統(tǒng),它是嵌入式系統(tǒng)設計的核心,是控制.輔助系統(tǒng)運行的重要單元.其主要包括軟件層和硬件層.典型的嵌入式系統(tǒng)如圖1 所示;
圖1
EOS 常見主要有Windows Embedded 操作系統(tǒng).嵌入式Linux 操作系統(tǒng).VxWorks 操作系統(tǒng).手機類的Android操作系統(tǒng).手機類iOS 操作系統(tǒng).uClinux 系統(tǒng)等.EOS可以分為實時性嵌入式操作系統(tǒng)以及非實時性嵌入式操作系統(tǒng).實時性主要是針對通信領域以及控制方面來進行的,非實時性則主要是針對消費類進行的.硬件層主要包括嵌入式處理器以及嵌入式外圍設備,嵌入式處理器主要包括微處理器.微控制器.DSP 處理器(即數(shù)字信號處理器).嵌入式片上系統(tǒng)芯片等具有控制功能的硬件設備.
嵌入式外圍設備則是指除了嵌入式微處理器之外的硬件設備,主要包括用于存儲功能的存儲設備.用于通信連接功能的通訊設備以及顯示類設備等.
2 嵌入式操作系統(tǒng)中設備管理
EOS 中設備管理主要是指對嵌入式操作系統(tǒng)中的嵌入式處理器(包括微處理器.微控制器.DSP 處理器以及嵌入式片上系統(tǒng)芯片)以及嵌入式外圍設備進行管理.嵌入式外圍設備具體包括:ROM 存儲器.RAM 存儲器.SRAMDRAM 存儲器.FLASH 存儲器.EPROM 存儲器.嵌入式計算機與機電系統(tǒng)接口(如串口.以太網(wǎng)接口.I2C接口.USB 接口以及紅外接口等).觸摸屏幕.LCD 顯示屏幕等.嵌入式微處理器的設計是基于計算機系統(tǒng)的處理器進行的,主要包括Power PC.Aml86/88.ARM 等;嵌入式微控制器多用于工業(yè)方面的控制,實現(xiàn)嵌入式微控制器擴展功能的模塊主要包括I/O 接口.D/A 與A/D 轉(zhuǎn)換接口等.嵌入式片上系統(tǒng)芯片主要包括CPU 單元(中央處理器).外部電路.外部接口.存儲模塊等.
對設備進行管理的目的主要有兩方面:第一是通過對設備的管理使設備的利用率得到提高;第二是通過對設備的管理使得操作系統(tǒng)更簡潔.友好,有利于操作方式簡便.統(tǒng)一.首先關于設備的利用率,是通過中斷技術.緩沖技術.通道技術以及DMA技術等對系統(tǒng)各種設備統(tǒng)一管理,可以提高I/O 接口以及CPU 等運行效率.
在計算機應用中,EOS 的設備管理即是對計算機進行控制,本文主要從計算機控制角度介紹EOS 的設備管理.
計算機設備控制管理技術是一種主要作用于嵌入式計算機及機電系統(tǒng)接口應用中的技術,主要包括中斷技術.緩沖技術.通道技術以及DMA 技術等.中斷技術是指在嵌入式系統(tǒng)中,通過中斷驅(qū)動的方式對I/O 接口進行管理控制,流程是檢測I/O 接口控制器所處狀態(tài),或出錯或準備就緒.讀取指令,然后向RAM 寫入指令,或傳送完成或沒有完成,沒有完成便向I/O 接口控制器發(fā)送一條指令;緩沖技術可以用來減少CPU 與I/O 接口匹配不符的矛盾,緩沖系統(tǒng)主要分為硬件緩沖以及軟件緩沖,硬件緩沖是指用作緩沖器功能的專用寄存器,軟件緩沖是指EOS 中劃出的用于緩沖的區(qū)域,緩沖也可分為循環(huán)緩沖.單緩沖以及雙緩沖等;通道技術是指與設備控制器一起,通過通道程序?qū)崿F(xiàn)對I/O 接口的控制管理,其特點是指令中含有的信息量較大,對I/O 接口的指令主要分為I/O 指令和通道指令;DMA 技術即直接存儲器訪問模式,可以進一步使CPU 對I/O 接口干預減少,主要包含數(shù)據(jù)預處理.傳送數(shù)據(jù).數(shù)據(jù)后處理等階段.
3 嵌入式操作系統(tǒng)中設備驅(qū)動程序的開發(fā)關于EOS 中設備驅(qū)動程序的開發(fā),本文主要基于的驅(qū)動程序開發(fā)環(huán)境是虛擬儀器labview 程序設計,并且涉及DSP 應用以及捷聯(lián)慣導系統(tǒng)(SINS)中陀螺儀信號的檢測和分析等.