嵌入式按照通俗的話來說,就是在已有的硬件上移植操作系統(tǒng)卸耘。這樣的解釋大家可能不太明白退敦,那我再換一個(gè)角度解釋。單片機(jī)大家應(yīng)該都知道吧蚣抗,單片機(jī)的工作模式是利用軟件編程控制硬件侈百,實(shí)現(xiàn)一些功能。嵌入式是在軟件與硬件之間加入一個(gè)操作系統(tǒng)。兩者的區(qū)別如圖所示:
單片機(jī): ?軟件 —— ?硬件 ? ? ? ? ? ? ? ? ?
嵌入式: ?軟件 ——操作系統(tǒng)——硬件
二者的區(qū)別就在于钝域,嵌入式有一個(gè)操作系統(tǒng)讽坏。
知道單片機(jī)與嵌入式的差別是有無(wú)操作系統(tǒng),那我們就應(yīng)該知道以下幾個(gè)問題:
什么是操作系統(tǒng)网梢?
有無(wú)操作系統(tǒng)震缭,有什么區(qū)別?
大家不要急战虏,容我慢慢道來拣宰。
1.什么是操作系統(tǒng)?
操作系統(tǒng)(Operating System烦感,簡(jiǎn)稱OS)是管理和控制計(jì)算機(jī)硬件與軟件資源的計(jì)算機(jī)程序巡社,是直接運(yùn)行在“裸機(jī)”上的最基本的系統(tǒng)軟件,任何其他軟件都必須在操作系統(tǒng)的支持下才能運(yùn)行手趣。
簡(jiǎn)單地說晌该,操作系統(tǒng)是用戶和計(jì)算機(jī)的接口,同時(shí)也是計(jì)算機(jī)硬件和其他軟件的接口绿渣。
2.有無(wú)操作系統(tǒng)朝群,有什么區(qū)別?(這也是我們?yōu)槭裁匆氩僮飨到y(tǒng)的原因)
我們知道中符,單片機(jī)通過軟件直接控制硬件姜胖。因此就會(huì)出現(xiàn)一個(gè)問題:當(dāng)用戶想在另一個(gè)新的硬件平臺(tái)實(shí)現(xiàn)相同的功能。
軟件程序一定會(huì)發(fā)生改動(dòng)淀散。
軟件開發(fā)者必須要先了解這個(gè)新的硬件平臺(tái)右莱,才能進(jìn)行軟件編程。
綜上兩點(diǎn)档插,單片機(jī)有以下兩點(diǎn)缺點(diǎn):
軟件開發(fā)者必須懂硬件慢蜓,降低了開發(fā)效率。
軟件移植差郭膛。(不要問我什么移植性晨抡,自己百度去)
嵌入式是通過操作系統(tǒng),間接控制硬件则剃。因此當(dāng)硬件平臺(tái)發(fā)生改變凄诞,但是依舊與操作系統(tǒng)兼容,那么軟件程序就不會(huì)改變忍级。并且軟件開發(fā)人員不需要了解硬件帆谍,只要學(xué)會(huì)操作系統(tǒng)中功能的調(diào)用,極大地提高了效率轴咱。因此嵌入式引入了操作系統(tǒng)汛蝙,相比于單片機(jī)有以下幾點(diǎn)優(yōu)點(diǎn):
軟件移植性好烈涮。
軟件開發(fā)人員不需要懂硬件,極大地提高了開發(fā)效率窖剑。?
操作系統(tǒng)提供了很多開源的軟件坚洽,工具,庫(kù)西土。
可以實(shí)現(xiàn)多任務(wù)讶舰。(所謂的多任務(wù)就是快速切換)。
操作系統(tǒng)中有一些網(wǎng)絡(luò)協(xié)議需了,因此嵌入式是可以上網(wǎng)的跳昼,提供了大量的網(wǎng)絡(luò)資源,實(shí)現(xiàn)遠(yuǎn)程控制肋乍。
嵌入式也不是完全沒有缺點(diǎn)的鹅颊,那就是它的價(jià)格昂貴。因?yàn)榍度胧降挠布|(zhì)量比單片機(jī)的質(zhì)量要高的多墓造。比如你在一個(gè)51單片機(jī)上移植一個(gè)操作系統(tǒng)堪伍,那是無(wú)法工作的,因?yàn)橛布簧稀?/p>
3.移植操作系統(tǒng)的步驟有哪些觅闽?
移植 bootloader
裁剪和編譯內(nèi)核
制作文件系統(tǒng)
4.什么樣的系統(tǒng)可以被稱作嵌入式系統(tǒng)帝雇?
我們知道嵌入式是進(jìn)行系統(tǒng)開發(fā)的一種技術(shù),那么它就必須滿足:開源的代碼或提供使用的方法蛉拙。
ps:轉(zhuǎn)自https://blog.csdn.net/xyd2017/article/details/69372349