開(kāi)發(fā)一般PC機(jī)軟件與嵌入式應(yīng)用的區(qū)別 收藏 總的來(lái)說(shuō),嵌入式開(kāi)發(fā)與一般計(jì)算機(jī)軟件開(kāi)發(fā)的區(qū)別如下: 1、終端軟件把大量的功能集中在一個(gè)程序中,代碼規(guī)模非常大,源代碼動(dòng)輒幾M、幾十M、甚至上百M(fèi);而嵌入式系統(tǒng)一般把功能分散在不同的硬件模塊中,使用分散的程序是先系統(tǒng)功能,雖然整個(gè)系統(tǒng)功能點(diǎn)很多,但是具體到某個(gè)硬件模塊,則代碼一般都比較少,基本上是幾十到幾百K; 2、終端軟件運(yùn)行在PC機(jī)上,一般來(lái)說(shuō)編寫代碼的時(shí)候是不用考慮內(nèi)存和效率的問(wèn)題(特殊情況除外);而嵌入式系統(tǒng)所使用的CPU從8位機(jī)到32位機(jī)都有,很多時(shí)候都會(huì)考慮到系統(tǒng)內(nèi)存和代碼運(yùn)行效率的問(wèn)題; 3、終端軟件大多數(shù)是訪問(wèn)數(shù)據(jù)庫(kù),使用網(wǎng)絡(luò)來(lái)互相通信;而嵌入式系統(tǒng)一般是訪問(wèn)硬件,使用串口、HDLC、USB、網(wǎng)絡(luò)等多種通信方式; 4、終端軟件的操作界面主要是圖形界面,使用鍵盤、鼠標(biāo)或者其它外設(shè)進(jìn)行操作;而嵌入式系統(tǒng)一般是提供一些接口供終端軟件訪問(wèn),不直接提供操作界面; 5、終端軟件編寫使用的語(yǔ)言多種多樣,不下幾十種;而嵌入式系統(tǒng)最常用的語(yǔ)言就是C和匯編; 6、終端軟件開(kāi)發(fā)、調(diào)試的工具都很強(qiáng)大,不需要額外的硬件支持;而嵌入式系統(tǒng)調(diào)試,一般都需要有硬件的仿真器來(lái)幫助調(diào)試,使用起來(lái)比較復(fù)雜,有時(shí)候出問(wèn)題還需要確定是代碼的問(wèn)題還是仿真器的問(wèn)題; 7、終端軟件開(kāi)發(fā)在網(wǎng)上可以查到大量的資料,有很多的源代碼可以參考或者直接使用;而嵌入式系統(tǒng)一般只能查到廠商提供的芯片資料,具體的應(yīng)用系統(tǒng)因?yàn)橛布煌?,查找到的資料和源代碼基本上只能參考,而不能直接使用; 8、終端軟件調(diào)試遇到問(wèn)題一般不用考慮硬件故障,基本上是軟件問(wèn)題;而嵌入式系統(tǒng)遇到問(wèn)題首先要確定是硬件問(wèn)題還是軟件問(wèn)題,這個(gè)問(wèn)題從系統(tǒng)的開(kāi)發(fā)一直到最后的維護(hù)階段都是一直存在的; 9、終端軟件有時(shí)可以通過(guò)升級(jí)硬件來(lái)提升系統(tǒng)的性能,不需要另外修改軟件;而嵌入式系統(tǒng)要提升性能,首先考慮的方法就是修改軟件算法或者削減不必要的功能,因?yàn)榍度胧较到y(tǒng)如果要修改硬件,必然要導(dǎo)致軟件的修改,跟重新開(kāi)發(fā)一個(gè)軟件的工作量差不多(因?yàn)檫@個(gè)問(wèn)題的存在,現(xiàn)在才有了嵌入式操作系統(tǒng),可以減輕一些軟件移植的工作量);
|
|
來(lái)自: 聯(lián)合參謀學(xué)院 > 《操作系統(tǒng)》