《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 工控機嵌入式操作系統Linux概述
工控機嵌入式操作系統Linux概述
摘要: 而Linux作為一種優秀的FreeOS,近幾年在嵌入式領域異軍突起,成為了最有潛力的嵌入式操作系統。
Abstract:
Key words :

        Linux嵌入式系統操作系統開發簡介

   嵌入式系統是以應用為中心,以計算機技術為基礎、軟硬件均可裁剪、適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。其發展已有二十多年的歷史,國際上也出現了一些著名的嵌入式操作系統,如VxWorks,Palm OS,Windows CE等等,但這些操作系統均屬于商品化產品,價格昂貴且由于源代碼不公開導致了諸如對設備的支持 ,應用軟件的移植等一系列的問題。而Linux作為一種優秀的Free OS,近幾年在嵌入式領域異軍突起,成為了最有潛力的嵌入式操作系統。

   嵌入式Linux融合了嵌入式和Linux的特點,其開發與一般的應用程序開發相比有著自己的特點,下面簡要的介紹一下嵌入式Linux開發的一般過程。

   了解硬件是首要的一步,這是嵌入式開發的特點決定的。了解硬件指的是了解整個硬件,判斷硬件對于當前的應用來說是否合適。嵌入式系統中需要使用到CPU和各種外圍設備,由此需要收集相關硬件的資料,包括CPU,芯片手冊和各種外圍設備的手冊以及相關的各種電路圖等,并對整體系統有較深入的了解。

   了解硬件后,下一步就該準備需要使用的Linux工具以及其他工具,這些工具包括:針對所用CPU的編譯器/匯編器/連接器,相應的庫工具,目標文件分析/管理工具,符號查看器等等。幸運的是,由于Linux的開放性,針對不同目標平臺的Linux工具都可在網上免費得到,絕大部分的這些工具都由GNU提供。所需要的其他工具還包括硬件廠商提供給公司的工具,如編程器,下載工具和查錯器等等。所有這些工具對以后的開發、調試等都可說是必不可少的。

   做好以上的準備工作后,就要進入實質性的工作階段了。首先需要安排內存地址,如SDRAM的內存地址,Flash的內存地址等,這需要與實際應用和硬件狀況相結合來考慮,要根據硬件的限制以及實際應用的需要對內存地址進行合理的安排,同時要注意內存地址的安排要具有一定的伸縮性,以便于將來需要改動時所做的變動達到最小。一般來說,嵌入式Linux的內存地址安排體現在連接腳本當中。

   接著就該進入編寫啟動代碼和機器相關代碼階段了。各種不同目標系統,甚至相同目標系統的啟動代碼和機器相關代碼也是不相同的。啟動代碼一般需要完成硬件初始化,裝載內核及安裝根文件系統以及開始內核執行的工作,不同目標平臺的啟動代碼一般可通過參考Linux下已有的啟動代碼和相關CPU的手冊進行編寫。

   啟動代碼和機器相關代碼編程完成并可以啟動系統后,下一步就可以開始驅動程序的編寫了。Linux編寫驅動程序與一般情況下編寫驅動程序并沒有太大的區別,都需要對相關的硬件作出了解,同時需要遵循Linux編寫驅動程序的一些規則進行,編寫完一個驅動程序后,一般就寫一個相應的測試程序已便隨時進行測試。Linux下各種不同類型的設備都有相當多的驅動程序源碼可以參考,因此實際編寫時更多的時間是花在對特定硬件特性的熟悉上。

   除了以上提到的這些步驟外,進行實際開發時,很多時候還要進行庫(這里所提到的庫均指C庫),GUI和系統程序的移植。這是因為嵌入式Linux中所用的庫一般不能直接使用標準庫,而需要進行精簡,雖然已有些精簡的C庫如uClibc等可供使用,但還是需要經常對其進行修改。嵌入式Linux常用的GUI有Microwindows,MiniGUI,QT/Embedded,TinyX等等,各自均有其使用的場合,所針對的目標平臺和應用層次也不一樣,必須根據實際需要進行選擇。系統程序如mount,ls等等有些是應用時所必須的,有些則是進行調試時所需要的,初始時則需要一些通用的系統程序即可。

        Linux嵌入式系統操作系統開發簡介

   嵌入式系統是以應用為中心,以計算機技術為基礎、軟硬件均可裁剪、適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。其發展已有二十多年的歷史,國際上也出現了一些著名的嵌入式操作系統,如VxWorks,Palm OS,Windows CE等等,但這些操作系統均屬于商品化產品,價格昂貴且由于源代碼不公開導致了諸如對設備的支持 ,應用軟件的移植等一系列的問題。而Linux作為一種優秀的Free OS,近幾年在嵌入式領域異軍突起,成為了最有潛力的嵌入式操作系統。

   嵌入式Linux融合了嵌入式和Linux的特點,其開發與一般的應用程序開發相比有著自己的特點,下面簡要的介紹一下嵌入式Linux開發的一般過程。

   了解硬件是首要的一步,這是嵌入式開發的特點決定的。了解硬件指的是了解整個硬件,判斷硬件對于當前的應用來說是否合適。嵌入式系統中需要使用到CPU和各種外圍設備,由此需要收集相關硬件的資料,包括CPU,芯片手冊和各種外圍設備的手冊以及相關的各種電路圖等,并對整體系統有較深入的了解。

   了解硬件后,下一步就該準備需要使用的Linux工具以及其他工具,這些工具包括:針對所用CPU的編譯器/匯編器/連接器,相應的庫工具,目標文件分析/管理工具,符號查看器等等。幸運的是,由于Linux的開放性,針對不同目標平臺的Linux工具都可在網上免費得到,絕大部分的這些工具都由GNU提供。所需要的其他工具還包括硬件廠商提供給公司的工具,如編程器,下載工具和查錯器等等。所有這些工具對以后的開發、調試等都可說是必不可少的。

   做好以上的準備工作后,就要進入實質性的工作階段了。首先需要安排內存地址,如SDRAM的內存地址,Flash的內存地址等,這需要與實際應用和硬件狀況相結合來考慮,要根據硬件的限制以及實際應用的需要對內存地址進行合理的安排,同時要注意內存地址的安排要具有一定的伸縮性,以便于將來需要改動時所做的變動達到最小。一般來說,嵌入式Linux的內存地址安排體現在連接腳本當中。

   接著就該進入編寫啟動代碼和機器相關代碼階段了。各種不同目標系統,甚至相同目標系統的啟動代碼和機器相關代碼也是不相同的。啟動代碼一般需要完成硬件初始化,裝載內核及安裝根文件系統以及開始內核執行的工作,不同目標平臺的啟動代碼一般可通過參考Linux下已有的啟動代碼和相關CPU的手冊進行編寫。

   啟動代碼和機器相關代碼編程完成并可以啟動系統后,下一步就可以開始驅動程序的編寫了。Linux編寫驅動程序與一般情況下編寫驅動程序并沒有太大的區別,都需要對相關的硬件作出了解,同時需要遵循Linux編寫驅動程序的一些規則進行,編寫完一個驅動程序后,一般就寫一個相應的測試程序已便隨時進行測試。Linux下各種不同類型的設備都有相當多的驅動程序源碼可以參考,因此實際編寫時更多的時間是花在對特定硬件特性的熟悉上。

   除了以上提到的這些步驟外,進行實際開發時,很多時候還要進行庫(這里所提到的庫均指C庫),GUI和系統程序的移植。這是因為嵌入式Linux中所用的庫一般不能直接使用標準庫,而需要進行精簡,雖然已有些精簡的C庫如uClibc等可供使用,但還是需要經常對其進行修改。嵌入式Linux常用的GUI有Microwindows,MiniGUI,QT/Embedded,TinyX等等,各自均有其使用的場合,所針對的目標平臺和應用層次也不一樣,必須根據實際需要進行選擇。系統程序如mount,ls等等有些是應用時所必須的,有些則是進行調試時所需要的,初始時則需要一些通用的系統程序即可。

  除了智能數字終端領域以外,Linux在移動計算平臺、智能工業控制、金融業終端系統,甚至軍事領域都有著廣泛的應用前景。這些Linux被統稱為“嵌入式Linux”。下面就來看看都有哪些嵌入式Linux在以上領域縱橫馳騁吧!

  RT-Linux

  這是由美國墨西哥理工學院開發的嵌入式Linux操作系統。到目前為止,RT-Linux已經成功地應用于航天飛機的空間數據采集、科學儀器測控和電影特技圖像處理等廣泛領域。RT-Linux開發者并沒有針對實時操作系統的特性而重寫Linux的內核,因為這樣做的工作量非常大,而且要保證兼容性也非常困難。為此,RT-Linux提出了精巧的內核,并把標準的Linux核心作為實時核心的一個進程,同用戶的實時進程一起調度。這樣對Linux內核的改動非常小,并且充分利用了Linux下現有的豐富的軟件資源。

  uClinux

  uCLinux是Lineo公司的主打產品,同時也是開放源碼的嵌入式Linux的典范之作。uCLinux主要是針對目標處理器沒有存儲管理單元MMU(Memory Management Unit)的嵌入式系統而設計的。它已經被成功地移植到了很多平臺上。由于沒有MMU,其多任務的實現需要一定技巧。uCLinux是一種優秀的嵌入式Linux版本,是micro-Conrol-Linux的縮寫。它秉承了標準Linux的優良特性, 經過各方面的小型化改造,形成了一個高度優化的、代碼緊湊的嵌入式Linux。雖然它的體積很小,卻仍然保留了Linux的大多數的優點:穩定、良好的移植性、優秀的網絡功能、對各種文件系統完備的支持和標準豐富的API。它專為嵌入式系統做了許多小型化的工作,目前已支持多款CPU。 其編譯后目標文件可控制在幾百KB數量級,并已經被成功地移植到很多平臺上。

  Embedix

  Embedix是由嵌入式Linux行業主要廠商之一Luneo推出的,是根據嵌入式應用系統的特點重新設計的Linux發行版本。Embedix提供了超過25種的Linux系統服務,包括Web服務器等。系統需要最小8MB內存,3MB ROM或快速閃存。Embedix基于Linux 2.2內核,并已經成功地移植到了Intel x86和PowerPC處理器系列上。像其它的Linux版本一樣,Embedix可以免費獲得。Luneo還發布了另一個重要的軟件產品,它可以讓在Windows CE上運行的程序能夠在Embedix上運行。Luneo還將計劃推出Embedix的開發調試工具包、基于圖形界面的瀏覽器等。可以說,Embedix是一種完整的嵌入式Linux解決方案。

  XLinux

 XLinux是由美國網虎公司推出,主要開發者是陳盈豪。他在加盟網虎幾個月后便開發出了基于XLinux的、號稱是世界上最小的嵌入式Linux系統,內核只有143KB,而且還在不斷減小。XLinux核心采用了“超字元集”專利技術,讓Linux核心不僅可能與標準字符集相容,還含蓋了12個國家和地區的字符集。因此,XLinux在推廣Linux的國際應用方面有獨特的優勢。

  PoketLinux

  PoketLinux由Agenda公司采用、作為其新產品“VR3 PDA”的嵌入式Linux操作系統。它可以提供跨操作系統構造統一的、標準化的和開放的信息通信基礎結構,在此結構上實現端到端方案的完整平臺。PoketLinux資源框架開放,使普通的軟件結構可以為所有用戶提供一致的服務。PoketLinux平臺使用戶的視線從設備、平臺和網絡上移開,由此引發了信息技術新時代的產生。在PoketLinux中,稱之為用戶化信息交換(CIE),也就是提供和訪問為每個用戶需求而定制的“主題”信息的能力,而不管正在使用的設備是什么。

  MidoriLinux

  由Transmeta公司推出的MidoriLinux操作系統代碼開放,在GUN普通公共許可(GPL)下發布,該公司有個名為“MidoriLinux計劃”。“MidoriLinux”這個名字來源于日本的“綠色”——Midori,用來反映其Linux操作系統的環保外觀。

  紅旗嵌入式Linux

  由北京中科院紅旗軟件公司推出的嵌入式Linux是國內做得較好的一款嵌入式操作系統。目前,中科院計算所自行開發的開放源碼的嵌入式操作系統——Easy Embedded OS(EEOS)也已經開始進入實用階段了。該款嵌入式操作系統重點支持p-Java。系統目標一方面是小型化,另一方面能重用Linux的驅動和其它模塊。由于有中科院計算所的強大科研力量做后盾,EEOS有望發展成為功能完善、穩定、可靠的國產嵌入式操作系統平臺。

  思考與展望

  以上列舉的眾多嵌入式Linux操作系統中,國內對于uClinux和RT-Linux研究的較多,很多基于它們的產品已經面世,比如華恒公司已經把uClinux成功移植,并投放到市場。
  正是由于Linux開放源代碼的特點,所以全世界的開發廠商都站在同一個起跑線上。國內的研究機構和企業也正在積極投入人力、物力,力爭在嵌入式操作系統上有所為。但應該清醒認識到,絕大多數的嵌入式系統的硬件平臺還掌握在外國公司的手中。國產的嵌入式操作系統在技術含量、兼容性、市場運作模式等方面還有很多工作要做。國家對嵌入式領域的發展也極為重視。信息產業部《2003年度電子發展基金項目指南》在軟件類重點產品項目中,第五小類就是關于嵌入式軟件與系統開發的,并提出要重點進行如下重點項目的研制與開發:嵌入式實時操作系統、嵌入式軟件集成開發平臺和嵌入式數據庫管理軟件。由于嵌入式系統研發在國內起步比較晚,我國目前還基本處于實驗室階段。但是嵌入式操作系統的巨大的商業價值和Linux的開放性,為民族軟件產業的發展提供了難得的機會。在跟蹤國外嵌入式操作系統最新技術的同時,國內廠商要堅持自主產權,力爭找到自己的突破點,探索出一條適合中國國情的嵌入式操作系統的發展道路。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久久777| 国产精品毛片a∨一区二区三区|国 | 欧美另类人妖| 你懂的亚洲视频| 麻豆91精品| 麻豆精品网站| 免费看的黄色欧美网站| 麻豆成人综合网| 你懂的国产精品永久在线| 另类尿喷潮videofree| 久久嫩草精品久久久久| 美女精品视频一区| 欧美国产一区二区在线观看| 欧美激情综合在线| 欧美日韩一区二区精品| 国产精品久久久久秋霞鲁丝| 国产精品久久| 国产日韩欧美综合一区| 激情欧美一区| 亚洲人被黑人高潮完整版| 日韩天堂在线视频| 亚洲综合电影一区二区三区| 欧美一区二区三区在线观看| 亚洲电影第1页| 99re热精品| 亚洲专区国产精品| 欧美自拍偷拍午夜视频| 久久影院午夜论| 欧美黑人国产人伦爽爽爽| 欧美三级欧美一级| 国产九区一区在线| 在线观看日韩| av成人免费观看| 先锋影音久久| 亚洲精品欧美一区二区三区| 亚洲影院免费| 久久久99精品免费观看不卡| 欧美国产精品日韩| 国产精品欧美一区喷水| 黄色综合网站| 99国内精品久久久久久久软件| 亚洲一区二区黄| 久久精品视频免费播放| 在线视频你懂得一区二区三区| 亚洲欧美综合一区| 六月婷婷久久| 国产精品theporn| 韩日精品视频| av不卡在线看| 久久精品国产久精国产思思| 夜夜夜精品看看| 久久精品免费电影| 欧美日韩国产三区| 国产一区二区精品久久99| 亚洲人成久久| 翔田千里一区二区| 99国产精品视频免费观看| 欧美一区二区成人6969| 嫩草伊人久久精品少妇av杨幂| 国产精品vvv| 亚洲国产精品毛片| 性久久久久久久久久久久| 日韩午夜免费视频| 久久国产天堂福利天堂| 欧美日韩国产页| 黄色成人av在线| 亚洲午夜av在线| 亚洲日本电影| 欧美一区二视频| 欧美日韩国产在线播放网站| 韩国av一区二区三区在线观看| av不卡在线观看| 亚洲日本理论电影| 久久激情视频久久| 欧美日韩直播| 亚洲福利视频二区| 欧美一区国产一区| 亚洲欧美日本精品| 欧美极品影院| 在线看日韩av| 久久精品99国产精品日本| 校园激情久久| 欧美日韩国内自拍| 亚洲国产成人午夜在线一区| 欧美一区亚洲二区| 午夜视黄欧洲亚洲| 欧美三级视频在线| 亚洲国产精品va在看黑人| 久久精品国产2020观看福利| 欧美中文在线免费| 国产精品美女久久久浪潮软件 | 国产一区二区三区的电影| 亚洲图片在线观看| 中文一区在线| 欧美黄色aa电影| 亚洲国产va精品久久久不卡综合| 久久精品视频在线播放| 久久精品一二三区| 国产一区二区三区久久悠悠色av| 亚洲综合日韩中文字幕v在线| 亚洲一区二区三区四区视频 | 一区二区三区四区五区在线| 99国产麻豆精品| 欧美激情精品| 亚洲全部视频| 亚洲靠逼com| 欧美激情第一页xxx| 亚洲高清中文字幕| 亚洲黄一区二区| 久久综合色8888| 韩国福利一区| 久久精品一二三区| 久久蜜桃av一区精品变态类天堂| 国产午夜久久久久| 欧美中文在线免费| 麻豆精品网站| 亚洲国产成人av在线| 亚洲日本激情| 欧美激情精品久久久久久蜜臀 | 欧美中文字幕在线视频| 国产毛片一区| 性久久久久久久久| 久久亚洲高清| 1000部精品久久久久久久久| 亚洲欧洲日韩综合二区| 欧美激情精品久久久久久免费印度| 亚洲国产毛片完整版| 日韩写真视频在线观看| 欧美日韩美女在线观看| 中文欧美在线视频| 性欧美大战久久久久久久免费观看 | 亚洲女ⅴideoshd黑人| 欧美在线观看日本一区| 国语自产偷拍精品视频偷 | 国产一区二区三区观看| 亚洲第一中文字幕| 欧美电影免费观看网站| 日韩视频在线免费| 性亚洲最疯狂xxxx高清| 国产一区二区三区四区五区美女| 亚洲国产免费看| 欧美精品一区二区三区视频| 中国av一区| 久久精品毛片| 亚洲国产精品久久久久秋霞影院 | 99这里只有精品| 性欧美激情精品| 伊人春色精品| 在线午夜精品自拍| 国产精品久久久久久久午夜片| 亚洲欧美在线播放| 美女主播一区| 99在线热播精品免费| 欧美在线亚洲综合一区| 在线精品观看| 亚洲一区二区在| 狠狠干狠狠久久| 在线亚洲欧美视频| 国产一区二区三区免费在线观看| 亚洲另类黄色| 国产乱码精品一区二区三区忘忧草| 亚洲国产精品毛片| 欧美午夜不卡在线观看免费 | 一本久道久久综合婷婷鲸鱼| 欧美中文字幕视频| 亚洲三级视频在线观看| 久久9热精品视频| 亚洲欧洲一区二区三区久久| 欧美一区二区三区在线观看| 亚洲福利精品| 欧美一级成年大片在线观看| 亚洲黄色免费电影| 欧美一区二区三区免费视| 亚洲国产精品久久久久久女王| 欧美一区二区三区日韩视频| 亚洲电影免费观看高清完整版 | 卡一卡二国产精品| 在线中文字幕一区| 欧美成人精品在线| 亚洲一区三区在线观看| 欧美精品国产精品日韩精品| 性色av一区二区三区| 欧美日韩黄色大片| 亚洲国产成人av好男人在线观看| 一区二区三区欧美亚洲| 亚洲人体1000| 国产小视频国产精品| 一区二区欧美激情| 在线不卡视频| 久久国产精品黑丝| 亚洲视频观看| 欧美精品日韩一区| 亚洲第一精品福利| 国产精品亚洲片夜色在线| av不卡免费看| 在线精品视频一区二区| 欧美专区一区二区三区| 一区二区三区国产盗摄| 欧美精品一区视频| 亚洲成色精品|