A. 嵌入式操作系統有哪些
嵌入式操作系統是一段在嵌入式系統啟動後首先執行的背景程序,用戶的應用程序是運行於其上的各個任務,它根據各個任務的要求,進行資源(包括存儲器、外設等)管理、消息管理、任務調度、異常處理等工作。在有嵌入式操作系統支持的系統中,每個任務有一個優先順序,根據各個任務的優先順序,動態地切換各個任務,保證對實時性的要求。經過多年的發展,比較流行的嵌入式操作系統如下:
1、VxWorks
VxWorks 操作系統是美國WindRiver公司於1983年設計開發的一種實時嵌入式操作系統(RTOS),由於具有高性能的系統內核和友好的用戶開發環境。
VxWorks的突出特點:可靠性、實時性和可裁減性。它是目前嵌入式系統領域中使用最廣泛、市場佔有率最高的操作系統。它支持多種處理器,如x86、i960、Sun Sparc、Motorola Mc68xxx、MIPS RX000、Power PC等。大多數的VxWorks API是專有的,採用GNU的編譯和調試器,具有集成開發環境Tornado 系列。
它屬於商業型操作系統,目前國內很多大的公司都採用此操作系統進行嵌入式系統的開發,如中興通訊、華為等。
2、pSOS
該系統是一個模塊化、高性能的實時操作系統,專為嵌入式微處理器設計,提供一個完全的多任務環境,在定製的或者商業化的硬體上具有高性能和高可靠性,可以讓開發者根據操作系統的功能和內存需求定製每一個應用所需的系統。開發者可以利用它來實現從簡單的單個獨立設備到復雜的、網路化的多處理器系統。
3、Windows Embedded
Windows Embedded 產品家族是Microsoft的產品,主要是用於建立支持具有豐富應用程序和服務的32嵌入時系統,從而針對廣泛的用戶需求提供靈活解決方案。此外,同支持更快的“產品上市速度”並降低開發成本,Windows Embedded 產品家族還能保證開發人員立於競爭前沿。目前Windows Embedded產品家族主要有Windows CE 3.0 和Windows NT Embedded 4.0。
4、Palm OS
Palm OS是著名的網路設備製造商3COM旗下的Palm Computing掌上電腦公司的產品,在PDA市場上佔有很大的市場份額。它具有開放的操作系統應用程序介面(API),開發商可以根據需要自行開發所需要的應用程序。
從全球范圍來看,由於Handspring公司和SONY公司也被授權使用Palm OS操作系統,致使Palm OS的市場份額佔到將近90%。Palm OS的優勢在於可以讓用戶靈活方便地定製操作系統以適合自己的習慣,而且其市場運作經驗豐富,資本雄厚,目前也正在通過第三方軟體商進行軟體的中文化工作。
5、OS-9
Microwave的OS-9是為微處理器關鍵實時任務而設計的`操作系統,廣泛應用於高科技產品中,包括消費電子產品、工業自動化、無線通信產品、醫療儀器、數字電視/多媒體設備。它提供了很好的安全性和容錯性。與其它的嵌入式系統相比,它的靈活性和可升級性非常突出。
6、LynxOS
Lynx Real-time Systems 的LynxOS式一個分布式、嵌入式、可規模擴展的實時操作系統,它遵循PosIX.la、PosIX.lb和PosIX.1c標准。LynxOS支持線程的概念,提供256個全局用戶線程優先順序;提供一些傳統的、非實時系統的服務特性,包括基於調用需求的虛擬內存、一個基於Motif的用戶圖形界面、與工業標准兼容的網路系統以及應用開發工具。
7、QNX
QNX是加拿大QNX公司的產品。QNX是在x86體繫上開發出來的,這和別的RTOS不太一樣,別的大多RTOS都是從68K的CPU上開發成熟,然後再移植到x86體繫上來的,但是QNX是直接在x86上面開發,只是近年才在68K等CPU上使用。
QNX是一個實時的、可擴充的操作系統,它部分遵循PosIX相關標准,如PosIX.1b實時擴展。它提供了一個很小的微內核以及一些可選的配合進程。其內核僅提供4種服務:進程調度、進程間通信、底層網路通信和中斷處理。其進程在獨立的地址空間運行。所有其它OS服務,都體現為協作的用戶進程,因此QNX內核非常小巧(QNX 4.x大約為12KB),而且運行速度極快。這個靈活的結構可以使用戶根據實際的需求,將系統配置成微小的嵌入式操作系統或者包括幾百個處理器的超級虛擬機操作系統。
由於QNX具有強大的圖形界面功能,因此很適合作為機頂盒、手持設備(掌上電腦、手機)、GPS設備的實時操作系統使用。
8、嵌入式linux
自由免費軟體Linux的出現對目前商用嵌入式操作系統帶來了沖擊。它可以移植到多個有不同結構的CPU和硬體平台上,具有很好的穩定性、各種性能的升級能力強,而且開發更容易。
國際上許多大型跨國企業,已經選中了Linux操作系統作為開發嵌入式產品的工具。如韓國三星公司、美國Transmeta公司等。國內也有很多廠家推出了基於Linux的嵌入式系統,如中科紅旗軟體技術有限公司既開發了嵌入式Linux系統基本開發平台,有提供了可供裁減的嵌入式Linux圖形用戶界面、窗口系統和網路瀏覽器,並與其它廠商合作開發了許多產品,包括PDA、機頂盒、彩票機等。
9、μC/OS-II
μC/OS-II是源代碼公開的實時嵌入式內核,是由美國人Jean J. Labrosse撰寫,其性能完全可以與商業產品競爭。它是基於μC/OS的,在1992年以來已經有很多成功的商業應用。它可在絕大多數8位、16位、32位甚至64位微處理器、微控制器、數字信號處理器(DSP)上運行。
目前嵌入式系統的開發工具平台主要包括以下幾種:
(1)實時在線模擬系統ICE(In-Circuit Emulator)
(2)高級語言編譯器(Compiler Tools)
(3)源程序模擬器(Simulator)
B. 嵌入式LINUX開發板怎樣通過USB外接無線wifi實現系統和應用程序的升級更新
開發板
能連wifi就說明可以接入區域網了,在開發板上開一個tcp服務,通過tcp上傳升級包到板子上,然後執行
刷機
或者更新應用的操作就好了,跟新應用程序的話只需要解壓替換就好了,要注意檢查文件的
MD5
什麼的,要是需要刷機的話,文件有問題,刷完機板子就起不來了
C. 嵌入式linux的簡介
嵌入式linux 是將日益流行的Linux操作系統進行裁剪修改,使之能在嵌入式計算機系統上運行的一種操作系統。嵌入式linux既繼承了Internet上無限的開放源代碼資源,又具有嵌入式操作系統的特性。嵌入式Linux的特點是版權費免費;購買費用媒介成本技術支持全世界的自由軟體開發者提供支持網路特性免費,而且性能優異,軟體移植容易,代碼開放,有許多應用軟體支持,應用產品開發周期短,新產品上市迅速,因為有許多公開的代碼可以參考和移植,實時性能RT_Linux Hardhat Linux 等嵌入式Linux支持,實時性能穩定性好安全性好。
如果分別讓10位工程師給出嵌入式系統的定義,將得到10個不同的答案。一般來說,大部分的嵌入式系統執行特定的任務。我們假定最簡單的嵌入式系統包括輸入/輸出功能,以及一些控制邏輯,該系統基於它的配置執行某些類型的功能。按照這個標准,可以認為一個包含實現控制邏輯74123計數器以及一個狀態是一個嵌入式系統。也許可以補充說,該系統必須可通過存儲在固件中的軟體進行編程。這個新的嵌入式系統定義包括輸入/輸出(I/O),以及存儲在系統固件中的控制邏輯。一個帶有滑鼠、鍵盤、網路連接並運行圖形用戶界面(GUI,graphical user interface)多任務操作系統的桌面計算機顯然滿足這些要求,但我們能認為它是一個嵌入式系統嗎?
如果桌面計算機不是一個嵌入式系統,那麼手持設備呢?它們有I/O功能,可以運行存儲在固件中的控制邏輯。有人說,桌面計算機和手持設備都有通用計算機設備,可以運行軟體來執行許多不同的任務,與之不同的是,嵌入式系統(例如,洗碗機控制器或飛行導航系統)主要是為特定任務而設計的。這種特定的功能限定使嵌入式設備有功能上的唯一性。如果是這樣,為什麼一些嵌入式系統設計成具有附加的功能,如存儲在非易失性存儲器中的程序,並且具有運行可以完成原始設計范圍之外的任務的多任務操作系統的能力呢?
在過去,區分嵌入式系統和通用計算機比簡單得多。例如,可以很容易地區分出一個基於8051的T1分幅卡嵌入式系統和一台Sun UNIX工作站。從功能方面很難區分一台Sun工作站和一個包含PowerPC以及32MB內存和16MB快閃記憶體的機頂盒。這樣的機頂盒可以運行帶GUI的多任務操作系統,可現場升級,可以同時運行多個程序(如視頻控制器、數字錄像和Java虛擬機),還可以進行安全的網際網路在線交易。很難判斷這種機頂盒是否是一個嵌入式系統。顯然,硬體性能的提升和價格的下降使通用計算機和嵌入式系統之間的界限變得很模糊,技術的進步使得我們很難定義什麼是嵌入式。
D. 嵌入式linux 通過網頁WEB 升級文件系統,flash_eraseall可以擦除對應的扇區,但是擦除
你需要直接寫數據到指定位置?你不會是按照文件寫入的吧?
這個最好用 dd 命令直接復制數據流,你的源鏡像位置正確,寫入的開始位置對應,後面就都對上了。
不然,你的系統讀取數據時,就不能按照扇區位置讀取,只能按照文件系統檢索文件分配表檢索位置去讀取文件。
E. 嵌入式linux
嵌入式 Linux是以Linux為基礎的嵌入式作業系統,它被廣泛應用在行動電話、個人數字助理(PDA)、媒體播放器、消費性電子產品以及航空航天等領域中。
嵌入式linux 是將日益流行的Linux操作系統進行裁剪修改,使之能在嵌入式計算機系統上運行的一種操作系統。嵌入式linux既繼承了Internet上無限的開放源代碼資源,又具有嵌入式操作系統的特性。嵌入式Linux的特點是版權費免費;購買費用媒介成本技術支持全世界的自由軟體開發者提供支持網路特性免費,而且性能優異,軟體移植容易,代碼開放,有許多應用軟體支持,應用產品開發周期短,新產品上市迅速,因為有許多公開的代碼可以參考和移植,實時性能RT_Linux Hardhat Linux 等嵌入式Linux支持,實時性能穩定性好安全性好。
如果分別讓10位工程師給出嵌入式系統的定義,將得到10個不同的答案。一般來說,大部分的嵌入式系統執行特定的任務。我們假定最簡單的嵌入式系統包括輸入/輸出功能,以及一些控制邏輯,該系統基於它的配置執行某些類型的功能。按照這個標准,可以認為一個包含實現控制邏輯74123計數器以及一個狀態是一個嵌入式系統。也許可以補充說,該系統必須可通過存儲在固件中的軟體進行編程。這個新的嵌入式系統定義包括輸入/輸出(I/O),以及存儲在系統固件中的控制邏輯。一個帶有滑鼠、鍵盤、網路連接並運行圖形用戶界面(GUI,graphical user interface)多任務操作系統的桌面計算機顯然滿足這些要求,但我們能認為它是一個嵌入式系統嗎?
如果桌面計算機不是一個嵌入式系統,那麼手持設備呢?它們有I/O功能,可以運行存儲在固件中的控制邏輯。有人說,桌面計算機和手持設備都有通用計算機設備,可以運行軟體來執行許多不同的任務,與之不同的是,嵌入式系統(例如,洗碗機控制器或飛行導航系統)主要是為特定任務而設計的。這種特定的功能限定使嵌入式設備有功能上的唯一性。如果是這樣,為什麼一些嵌入式系統設計成具有附加的功能,如存儲在非易失性存儲器中的程序,並且具有運行可以完成原始設計范圍之外的任務的多任務操作系統的能力呢?
在過去,區分嵌入式系統和通用計算機比簡單得多。例如,可以很容易地區分出一個基於8051的T1分幅卡嵌入式系統和一台Sun UNIX工作站。從功能方面很難區分一台Sun工作站和一個包含PowerPC以及32MB內存和16MB快閃記憶體的機頂盒。這樣的機頂盒可以運行帶GUI的多任務操作系統,可現場升級,可以同時運行多個程序(如視頻控制器、數字錄像和Java虛擬機),還可以進行安全的網際網路在線交易。很難判斷這種機頂盒是否是一個嵌入式系統。顯然,硬體性能的提升和價格的下降使通用計算機和嵌入式系統之間的界限變得很模糊,技術的進步使得我們很難定義什麼是嵌入式。
……………………………………………………………………………………
嵌入式linux的前景和待遇都不錯,一般從事嵌入式的待遇在6000-15000之間。雖然嵌入式很難,但是也可以自學嵌入式。
關於如何學習嵌入式,我剛才看到一篇很不錯的文章,是一個專科生介紹自己如何自學嵌入式,並找到嵌入式的工作,裡面介紹了他的學習方法和學習過程,希望對你有幫助。
先做個自我介紹,我07年考上一所很爛專科民辦的學校,學的是生物專業,具體的學校名稱我就不說出來獻丑了。09年我就輟學了,我在那樣的學校,一年學費要1萬多,但是根本沒有人學習,我實在看不到希望,我就退學了。
退學後我也迷茫,大專都沒有畢業,我真的不知道我能幹什麼,我在糾結著我能做什麼。所以輟學後我一段時間,我想去找工作,因為我比較沉默寡言,不是很會說話,我不適合去應聘做業務。我想應聘做技術的,可是處處碰壁。
一次偶然的機會,我才聽到嵌入式這個行業。那天我去新華書店,在計算機分類那邊想找本書學習。後來有個女孩子走過來,問我是不是讀計算機的,有沒有興趣學習嵌入式,然後給我介紹了一下嵌入式現在的火熱情況,告訴我學嵌入式多麼的有前景,給我了一份傳單,嵌入式培訓的廣告。聽了她的介紹,我心裡癢癢的,確實我很想去學會一門自己的技術,靠自己的雙手吃飯。
回家後,我就上網查了下嵌入式,確實是當今比較熱門的行業,也是比較好找工作的,工資也是相對比較高。我就下決心想學嵌入式了。於是我去找嵌入式培訓的相關信息,說真的,我也很迷茫,我不知道培訓是否真的能像他們宣傳的那樣好,所以我就想了解一段時間再做打算。
後來,我在網路知道看到一篇讓我很鼓舞的文章,是一個嵌入式高手介紹沒有基礎的朋友怎麼自學入門學嵌入式,文章寫的很好,包含了如何學習,該怎麼學習。他提到一個方法就是看視頻,因為看書實在太枯燥和費解的,很多我們也看不懂。這點我真的很認同,我自己看書往往看不了幾頁。
我在想,為什麼別人都能自學成才,我也可以的!我要相信自己,所以我就想自學,如果實在學不會我再去培訓。
主意一定,我就去搜索嵌入式的視頻,雖然零星找到一些嵌入式的視頻,但是都不系統,我是想找一個能夠告訴我該怎麼學的視頻,一套從入門到精通的視頻,一個比較完整的資料,最好能有老師教,不懂可以請教的。
後來我又找到一份很好的視頻,是在IT學習聯盟網站推出的一份視頻《零基礎嵌入式就業班》(喜歡《零基礎嵌入式就業班》的可以復制 sina.lt/qKh 粘貼瀏覽器地址欄按回車鍵即打開)。裡面的教程還不錯,很完整,可以讓我從基礎的開始學起。視頻比較便宜。
下面介紹下我的學習流程,希望對和我一樣完全沒有基礎的朋友有所幫助。
收到他們寄過來的光碟後,我就開始學習了,由於我沒有什麼基礎,我就從最簡單的C語言視頻教程學起,話說簡單,其實我還是很多不懂的,我只好請教他們,他們還是很熱心的,都幫我解決了。C語言我差不多學了一個禮拜,接下來我就學了linux的基本命令,我在他們提供linux虛擬機上都有做練習,敲linux的基本命令,寫簡單的C語言代碼,差不多也就三個禮拜。我每天都在不停的寫一些簡單的代碼,這樣一月後我基本掌握了C和linux的基本操作。
接下來我就去學習了人家的視頻的培訓教程,是整套的,和去參加培訓沒有多大的區別,這一看就是兩個月,學習了ARM的基本原理,學習嵌入式系統的概念,也掌握了嵌入式的環境的一些搭建,對linux也有更深層次的理解了,明白了嵌入式應用到底是怎麼做的,但是驅動我只是有一點點的了解,這個相對難一點,我想以後再慢慢啃。
這兩個月,除了吃飯睡覺,我幾乎都在學習。因為我知道幾乎沒有基礎,比別人差勁,我只能堅持努力著,我不能放棄,我必要要靠自己來養活自己,必須學好這門技術,然後我就把不懂的問題總結記下來,這樣慢慢積累了一段時間,我發現自己真的有點入門了。
最後的一個月,我就去看關於實踐部分的內容,了解嵌入式項目具體的開發流程,需要什麼樣的知識,我就開始准備這方面的知識,也就是學習這方面的視頻,同時他們建議我去找了找一些嵌入式面試的題目,為自己以後找工作做准備。我就到網上找了很多嵌入式的題目,把他們理解的記下來,這樣差不多准備了20天左右
我覺得自己差不多入門了,會做一些簡單的東西了。我就想去找工作看看,於是我就到51job瘋狂的投簡歷,因為我學歷的問題,專科沒有畢業,說真的,大公司沒有人會要我,所以我投的都是民營的小公司,我希望自己的努力有所回報。沒有想過幾天過後,就有面試了,但是第一次面試我失敗了,雖然我自認為筆試很好,因為我之前做了准備,但是他們的要求比較嚴格,需要有一年的項目經驗,所以我沒有被選中。
後來陸續面試了幾家公司,終於功夫不負有心人。我終於面試上的,是在閔行的一家民營的企業,公司規模比較小,我的職務是嵌入式linux應用開發,做安防產品的應用的。我想我也比較幸運,經理很看重我的努力,就決定錄用我,開的工資是3500一個月,雖然我知道在上海3500隻能過溫飽的生活,但是我想我足夠了。我至少不用每天都要靠父母養,我自己也能養活自己的。我想只要我繼續努力,我工資一定會翻倍的。
把本文寫出來,希望能讓和我一樣的沒有基礎的朋友有信心,其實我們沒有必要自卑,我們不比別人笨,只要我們肯努力,我們一樣會成功。
希望我的回答能幫助到你。
…………………………………………………………
F. 嵌入式Linux,更新應用程序到板子上時,不想動根文件系統,只更新應用程序,要怎麼個燒錄法
跟目錄下的bin,是系統工具,一般屬於超級用戶才具有使用許可權,而usr下面的bin則是普通用戶和你自己安裝的一些軟體工具通用的存放路徑。bin進行二進制可執行文件的意思。存放的當然都是可執行的工具了。如果是源碼包安裝的話,你可以通過configure來指定安裝路徑。
G. tftpd32怎麼升級嵌入式linux
Linux驅動程序的使用可以按照兩種方式編譯,一種是靜態編譯進內核,另一種是編譯成模塊以供動態載入。由於uClinux不支持模塊動態載入,而且嵌入式LINUX不能夠象桌面LINUX那樣靈活的使用insmod/rmmod載入卸載設備驅動程序
H. 嵌入式開發中linux內核升級,給上層應用帶來的區別
沒什麼區別,內核的核心功能只不過是進行任務調度,升級到天上也是這個功能。而你的linux應用程序是和硬體驅動聯系在一起的。只要你的硬體沒變,驅動沒變,應用程序不會變化。
I. 如何在嵌入式linux系統目標板上升級ip netns補丁
什麼是嵌入式系統? 一個嵌入式系統(EmbeddedSystem)就是一個計算機硬體和軟體的集合體,也許還包括其他一些機械部件。它是為完成某種特定的功能而設計的。一個很好的例子就是電子手錶。幾乎每個人都有一塊,並且每天都有上千萬的人們在 使用著...
J. 嵌入式LINUX開發板怎樣通過USB外接無線wifi實現系統和應用程序的升級更新
開發板能連wifi就說明可以接入區域網了,在開發板上開一個tcp服務,通過tcp上傳升級包到板子上,然後執行刷機或者更新應用的操作就好了,跟新應用程序的話只需要解壓替換就好了,要注意檢查文件的MD5什麼的,要是需要刷機的話,文件有問題,刷完機板子就起不來了