嵌入式軟件開發(fā)與非嵌入式軟件開發(fā)區(qū)別? 設(shè)備驅(qū)動開發(fā)與裸機驅(qū)動開發(fā)區(qū)別? 嵌入式開發(fā)與傳統(tǒng)單片機開發(fā)區(qū)別? 如果面試遇到這樣的問題: 三個問題的答案一致。 答:嵌入式軟件與非嵌入式軟件(設(shè)備驅(qū)動開發(fā)與裸機驅(qū)動開發(fā)/嵌入式開發(fā)與傳統(tǒng)單片機開發(fā))的最大的區(qū)別就是有無操作系統(tǒng)。 對于無操作系統(tǒng)的開發(fā): 1. 應(yīng)用軟件與驅(qū)動的耦合度過高,一旦硬件發(fā)生變化那么相對應(yīng)的驅(qū)動也會發(fā)生變化,緊接著應(yīng)用程序也需要做相應(yīng)的修改,這樣帶來的后果就是我們應(yīng)用程序的可移植性很差。 2. 無操作系統(tǒng)的系統(tǒng)結(jié)構(gòu)比較單一、功能簡單,只能提供單任務(wù)機制而且一般軟件架構(gòu)通常都是在一個無限循環(huán)中對設(shè)備中斷進行檢測或者輪詢。 3. 它的接口驅(qū)動是不進過操作系統(tǒng)直接提交給軟件工程師應(yīng)用。 對于有操作系統(tǒng)的開發(fā): 有操作系統(tǒng)的存在則大大降低了應(yīng)用軟件與硬件平臺的耦合度,它充當了我們硬件與應(yīng)用軟件之間的紐帶,使得應(yīng)用軟件只需要調(diào)用系統(tǒng)軟件的應(yīng)用程序接口API就可以讓硬件去完成要求的開發(fā),而應(yīng)用軟件則不需要關(guān)心硬件到底是如何工作的。這將大大提高我們應(yīng)用程序的可移植性和開發(fā)效率。同時操作系統(tǒng)還有強大的任務(wù)調(diào)度機制(進程線程),支持多任務(wù)。 以下課程可免費試聽C語言、電子、PCB、STM32、Linux、FPGA、Python、安卓等。 想學(xué)習(xí)的你和我聯(lián)系預(yù)約就可以免費聽課了。宋工Q35--24-65--90-88 Tel/WX:173--17--95--19--08 |