嵌入式作業系統linux系統
1.1嵌入式系統的特點
嵌入式系統是以應用為中心、以計算機技術為基礎,軟硬體可剪裁,適合於應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統.。嵌入式系統突出的特點是以應用為設計目標,與通用的計算機系統相比,它具有以下特點:
(1)專用性:由於嵌入式系統的用途固定、成本敏感,所以其軟硬體夠用即可。
(2)實時響應:嵌入式系統往往是某種訊號處理和控制的核心處理環節,必須滿足控制系統的時限要求,所以必須具有實時處理的特徵。
(3)併發處理:在嵌入式系統的應用環境中,系統處理的事件往往是多個的,而且有可能同時發生,所以嵌入式系統一般具有併發特點。
(4)穩定可靠:嵌入式系統使用環境不定,往往使用條件惡劣,故其穩定性和可靠性是系統必須具備的條件。
(5)形式多樣:嵌入式系統應用於國民經濟各個領域,造成其品種繁多,形式多樣。
(6)開發相對困難:嵌入式系統往往資源有限,它的開發依賴於通用計算機上的軟硬體裝置以及各種邏輯分析儀,混合訊號示波器等。所以嵌入式系統的開發相對困難。
1.2嵌入式作業系統的選擇
隨著微處理器的生產,**低廉、結構小巧的cpu和外設連線提供了穩定可靠的硬體架構,那麼限制嵌入式系統發展的瓶頸就突出在軟體方面。當前,嵌入式作業系統主要有palm os,windows ce,epoc,linux,qnx,ecos,lynx。高階嵌入式系統要求許多有高階的功能,如圖形使用者介面和網路支援。微軟的windows ce也有此類功能,但是卻不具備大多數嵌入式系統要求的實時效能,而且很難移植。現在需要的是乙個便宜,可提供高階嵌入式所必須特性的作業系統,linux 可以支援不同的裝置,支援不同的配置。嵌入式linux作業系統以**低廉、功能強大又易於移植而正在被廣泛採用。本文也選用了嵌入式linux來作為應用程式執行的軟體平台。
1.3linux作業系統的分析
linux是目前最為流行的一款具有開放源**的作業系統,不僅在pc平台,還在嵌入式領域中應用很廣。linux是乙個網路作業系統,成熟並且穩定。其作為一種可剪裁的軟體平台系統,是開發嵌入式裝置產品的絕好資源,遍布全球的眾多linux愛好者又能給予linux開發者很強大的技術支援。嵌入式linux的核心精簡、支援良好的多工、適用於不同的cpu體系架構,如x86、arm、mips、sparc等,這些特點使得嵌入式linux很適合嵌入式系統。
linux系統帶有unix使用者熟悉的完善的開發工具,幾乎所有的unix系統應用軟體都已經移植到了linux上。linux還提供了很強大的網路功能,有多種可選擇視窗管理器(x windows),並且很容易得到強大的語言編譯器,如gcc、g++等。
linux支援多種檔案系統,包括ext2、ext3、iso9660、nfs、jffs、romfs、ntfs、yaffs等,linux引入了虛擬檔案系統vfs(virtual filesystem)對各類檔案系統進行統一的管理,為各類檔案系統提供乙個統一的操作介面和應用程式設計介面。這樣,所有的檔案系統對系統中的程式和核心來說看上去都是一樣的。linux系統中的vfs層使得使用者可以同時在系統中透明的掛接很多不同的檔案系統。不同的檔案系統有不同的特點,因此要根據儲存裝置的硬體特性、系統需求等在不同的應用場合選擇不同的檔案系統。在嵌入式linux應用中,主要的儲存裝置為ram和rom,常用的基於儲存裝置的檔案系統型別包括:jffs、yaffs、ramdisk、cramfs等。本文在linux系統應用中選用的檔案型別為yaffs[9]。
linux系統和裝置驅動程式之間使用的是標準的互動介面。字元裝置、網路裝置、塊裝置的驅動程式,當核心請求服務時,都使用同樣的裝置,即linux系統核心可以用同樣的方法來使用完全不同的各種裝置。
linux系統大致可分為3層:靠近硬體的底層是核心,即linux作業系統的常駐記憶體部分;中間層是核心之外的shell層,亦即作業系統的系統程式部分;最高層是應用層,即使用者程式部分,包括各種文字處理程式、語言編譯程式及遊戲程式等。
漫談人機介面測試
正文 本文列數了軟體黑盒測試過程中,在被測試軟體中可能存在的常見軟體問題。本文不會詳細討論基本的軟體測試思想與常用技術,僅針對在軟體黑盒測試過程中若干的問題做描述,並提供個人的參考測試意見與防範意見,希望可以為初學者提供些許幫助。俗話說 人靠衣裳馬靠鞍 良好的外觀往往能夠吸引眼球,激發顧客 使用者 ...
人機介面設計
1 介面設計的原則 易學性 learnability 系統應容易學習和掌握,不應對使用者有額外的知識和技能要求。使用者可以通過兩種途徑來學習系統,即 系統的聯機手冊 系統功能的操作演示及例子。使用者熟悉性 user familiarity 介面應以使用者導向的名稱和觀念為主,而不是以計算機的概念為主...
論人機介面的操作
我們操作乙個東西,需要考慮到人機互動。老式的計算機聽說是通過紙袋來進行的,這顯然不符合互動良好原則。最近買了乙個乙個小玩意,這個裝置是通過紅色led和藍色led的閃爍來指示執行狀態的。我真的不知道設計者怎麼如此 不考慮使用者體驗 作為乙個搞技術的人,辨別其操作就很困難,更何談乙個普通的使用者呢。這就...