返學(xué)費網(wǎng) > 培訓(xùn)機構(gòu) > 全國IT培訓(xùn)中心
【千夏軟體】認(rèn)為手機android app開發(fā)那個不叫嵌入式,android app只需要用java在上層進(jìn)行應(yīng)用開發(fā)就好
嵌入式涉及的知識太龐大,硬體部分需要對邏輯電路非常熟悉,需要做很多周邊的電路設(shè)計,軟體部分需要學(xué)習(xí)系統(tǒng)程式設(shè)計和底層驅(qū)動開發(fā)的知識,我們在arm開發(fā)的時候做的非常非常底層 verilog設(shè)計電路,針對硬體寫驅(qū)動。
以android手機系統(tǒng)為例,嵌入式應(yīng)用開發(fā)是底層開發(fā)的系統(tǒng)及電腦晶片里的控制程式,而android應(yīng)用軟體開發(fā)的是我們看得到的手機系統(tǒng)視窗里顯示、使用的這些手機軟體。兩種開發(fā)使用語言不同、收入也區(qū)別很大,底層開發(fā)雖然不簡單,但可以做的人很多,android應(yīng)用程式開發(fā)因為目前安卓太火爆,而且這類軟體盈利點多,人才需求大。如果你是選學(xué)習(xí)方向的,肯定是選擇android更有前途,至少10年內(nèi)是沒問題的,智慧手機、平板、電視、汽車、家電、樓宇等等都需要android應(yīng)用軟體。
數(shù)碼嵌入式技術(shù)主要面向于DSP研發(fā),嵌入式軟體開發(fā)是個廣義的方面,它主要是從事嵌入式研發(fā)軟體程式設(shè)計方面的,因為嵌入式研發(fā)即包括硬體電路設(shè)計研發(fā),也包括軟體程式開發(fā),同時還有作業(yè)系統(tǒng)研發(fā)。
什么叫做嵌入式開發(fā),嵌入式開發(fā)和普通開發(fā)的區(qū)別?嵌入式開發(fā)就是指在嵌入式作業(yè)系統(tǒng)下進(jìn)行開發(fā),一般常用的系統(tǒng)有WinCE,Palm,現(xiàn)在又多了Symbian等,其實只要會C++,在哪里都差不多,都有相應(yīng)的SDK開發(fā)包。用微控制器匯編開發(fā)也算是嵌入式,用高階一點的處理器,arm7,arm9,powerpc什么的開發(fā)起來,不過要加作業(yè)系統(tǒng)而已,也屬于嵌入式的開發(fā)
嵌入式框架和框架的區(qū)別是什么?嵌入式框架與框架網(wǎng)頁類似,不同之處在于嵌入式框架及其內(nèi)容嵌入在現(xiàn)有網(wǎng)頁中。任何可以放入普通網(wǎng)頁的內(nèi)容都可以放到嵌入式框架中。可以像處理普通框架一樣自定義嵌入式框架,還可以在此框架中啟用滾動條。使用嵌入式框架而不是框架的好處之一是:制作嵌入內(nèi)容時不需要單獨建立框架網(wǎng)頁。 嵌入式框架的用處很多: 可以插入合同讓網(wǎng)站訪問者填寫。 可以給出其他網(wǎng)頁外觀的示例。 可以用作表單容器。 可以用作顯示產(chǎn)品和價格的滾動框
嵌入式和微控制器的區(qū)別是什么 嵌入式,一般都是帶系統(tǒng)的。把一個作業(yè)系統(tǒng)移植進(jìn)微控制器里面,例如Linux之類的系統(tǒng)。移植進(jìn)微控制器后,程式設(shè)計的時候會有很多不一樣的地方。
微控制器的話,就是一塊整合塊。不帶系統(tǒng)的程式設(shè)計。
什么是嵌入式開發(fā)?嵌入式開發(fā)是什么?
本文為新手小白解釋什么是嵌入式開發(fā),希望對你們有所幫助。
首先來看一下什么是嵌入式:嵌入式技術(shù)是以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),并且軟硬體可裁剪,適用于應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計算機系統(tǒng)技術(shù)。它最初起源于微控制器技術(shù), 是各類數(shù)字化的電子、機電產(chǎn)品的核心,主要用于實現(xiàn)對硬體裝置的控制、監(jiān)視或管理等功能。進(jìn)入21世紀(jì)計算機應(yīng)用的各行各業(yè)中90%左右的開發(fā)將涉及到嵌入式開發(fā)。全球嵌入式軟體市場年增長率超過12.5%,嵌入式系統(tǒng)帶來的工業(yè)年產(chǎn)值達(dá)一萬億美無,中國未來三年嵌入式軟體產(chǎn)業(yè)將保持40%以上的年復(fù)合增長率。
另外,做軟體實際上有高下之分,開發(fā)語言從機器語言、匯編到C、C++,再到紅透半邊天的Java、C#等,該學(xué)哪種呢?為什么有些開發(fā)者工資低,而有些開發(fā)者千金難求?為什么3年的Java高階程式設(shè)計師薪水僅僅8k-10k,而一個Linux底層C語言程式設(shè)計師兩年經(jīng)驗就敢要10k的薪水?
原因歸根結(jié)底是門檻。比如月薪15k的Linux嵌入式開發(fā)職位,門檻就有 Linux系統(tǒng)、Shell程式設(shè)計、Linux開發(fā)環(huán)境、C語言、ARM硬體平臺、資料結(jié)構(gòu)、Linux核心、驅(qū)動程式等,粗略數(shù)數(shù)就有8道關(guān)口,他需要非常熟悉整個的計算機體系,能做出實際的產(chǎn)品,而Java的開發(fā)者卻僅僅是會使用名叫Java的語言工具,始終高高飄在眾多層次之上,開發(fā)專案非???,甚至可以不知道OSI模型,很可能自始至終都是軟體藍(lán)領(lǐng)。華清遠(yuǎn)見-星創(chuàng)客培訓(xùn)完的應(yīng)屆畢業(yè)生,月薪可達(dá)到10k,幫你越過這些門檻。
嵌入式開發(fā)本身也有高下之分,至少包含嵌入式應(yīng)用程式工程師和底層的驅(qū)動核心工程師兩種。前者同樣是使用現(xiàn)成工具進(jìn)行簡單勞動,比如使用J2ME開發(fā)小游戲或者進(jìn)行一些介面開發(fā),而后者是根據(jù)晶片具體情況把作業(yè)系統(tǒng)(如Linux)移植到上面,同時編寫必要的驅(qū)動程式,改寫相應(yīng)的核心程式碼。很顯然后者是一個公司真正的技術(shù)核心。而技術(shù)核心的工資很可能是其他開發(fā)者的數(shù)倍。
嵌入式開發(fā)課程突出強制和專案,學(xué)習(xí)不僅僅是學(xué)習(xí)幾項技術(shù),而是構(gòu)建你的知識體系。比如學(xué)習(xí)嵌入式開發(fā),就要從基礎(chǔ)Linux,C語言,資料結(jié)構(gòu)開始,到ARM,匯編,Linux核心、驅(qū)動等,更重要的是更多的專案練習(xí),設(shè)計至少5個專案,多達(dá)10000行強制核心程式碼的編寫可以讓你真正獲得知識。英語課程或者日語課程的學(xué)習(xí),為進(jìn)入外企或者出國做準(zhǔn)備。
以上就是關(guān)于什么是嵌入式開發(fā)所講述的內(nèi)容,希望對你們有幫助。
嵌入式開發(fā) 這個概念太大了 籠統(tǒng)的可以包括太多 我是沒法給你說完的,籠統(tǒng)的說就是比如打籃球的姚明對你說他是個運動員,而不給你說他是籃球運動員一樣。
嵌入式系統(tǒng)開發(fā)我理解的是可包括偏軟體的系統(tǒng)開發(fā)和偏硬體的系統(tǒng)開發(fā)倆個“門派”,偏軟體系統(tǒng)開發(fā)比如做linux的,需要學(xué)好C語言和C++,有扎實的程式設(shè)計基礎(chǔ),但是也需要了解一定的硬體知識,因為比如做的時候你得首先了解硬體再使能夠在其成功執(zhí)行并能引導(dǎo)系統(tǒng)和完成各種初始化工作。另外還得學(xué)好資料結(jié)構(gòu),編譯原理,作業(yè)系統(tǒng)。 偏硬體的話就得學(xué)好電子硬體各類知識,比如做arm9的話要學(xué)會使用其datasheet手冊,要會組合語言,有一定的程式設(shè)計能力。總之嵌入式系統(tǒng)這行的門檻比較高,一般都需要軟硬兼懂。
作業(yè)系統(tǒng)開發(fā)的話我理解的話,比如linux,你要知道如何編寫應(yīng)用程式,如何編譯,如何配置裁剪和移植核心,如何制作檔案系統(tǒng),如何編寫和向硬體新增各硬體或者I0介面的驅(qū)動和QT圖形化介面的制作。這類都是PC上開發(fā)程式設(shè)計,然后將編譯調(diào)試出的比如.bin檔案燒寫到嵌入式平臺上再執(zhí)行,即所謂的交叉編譯。 總之這類工作就是上面我認(rèn)為的偏軟的嵌入式系統(tǒng)開發(fā)。
總之如果要學(xué)嵌入式,無論做哪個方向,門檻都是比較高的,軟硬兼吃。至于你說的三者的關(guān)系總結(jié),我以為就是A>B>C。
單板計算機基于單一電路板而構(gòu)建的完整計算機,包括微處理器、記憶體、乙太網(wǎng)、I/O、視訊和音訊輸出。設(shè)計的核心架構(gòu)是微處理器。第一臺真正的單板計算機可能是基于 Intel 8080 CPU 構(gòu)建的 MYCRO-1。 單板計算機具有類似其他插入卡的構(gòu)型,專門應(yīng)用于底板中。某些架構(gòu)完全視單板計算機而定,如 PICMG、ISA、PCI、Compact PCI、VME 等架構(gòu)。
嵌入式硬體和軟體的區(qū)別是什么? 嵌入式系統(tǒng)是由軟體和硬體組成的整體。
硬體部分可以分成嵌入式處理器和外部裝置。
處理器是整個系統(tǒng)的核心,負(fù)責(zé)處理所有的軟體程式以及外部裝置的訊號。
外部裝置在不同的系統(tǒng)中有不同的選擇。
比如在汽車上,外部裝置主要是感測器,用于采集資料;
而在一部手機上,外部裝置可以是鍵盤、液晶螢?zāi)坏取?br> 軟體部分可以分成兩層,最靠近硬體的是嵌入式作業(yè)系統(tǒng)。
作業(yè)系統(tǒng)是軟硬體的介面,負(fù)責(zé)管理系統(tǒng)的所有軟體和硬體資源。
作業(yè)系統(tǒng)還可以通過驅(qū)動程式與外部裝置打交道。
最上層的是應(yīng)用軟體,應(yīng)用軟體利用作業(yè)系統(tǒng)提供的功能開發(fā)出針對某個需求的程式,供使用者使用。
使用者最終是和應(yīng)用軟體打交道,例如在手機上編寫一條簡訊,使用者看到的是簡訊編寫軟體的介面,而看不到里面的作業(yè)系統(tǒng)以及嵌入式處理器等硬體。
一般來說,嵌入式硬體指邏輯電路、嵌入式處理器、微控制器、儲存系統(tǒng)和硬體設(shè)計技巧等。
嵌入式硬體開發(fā)工程師主要編寫嵌入式系統(tǒng)硬體總體方案和詳細(xì)方案,要求理解嵌入式系統(tǒng)架構(gòu),有一定的C語言基礎(chǔ),熟悉ARM、PROTEL設(shè)計軟體,有四層板開發(fā)經(jīng)驗。
國內(nèi)通常所說的嵌入式硬體指利用處理器開發(fā)外部裝置方面。
嵌入式軟體就是嵌入在硬體中的作業(yè)系統(tǒng)和開發(fā)工具軟體,它在產(chǎn)業(yè)中的關(guān)聯(lián)關(guān)系體現(xiàn)為:晶片設(shè)計制造→嵌入式系統(tǒng)軟體→嵌入式電子裝置開發(fā)、制造。
嵌入式軟體就是基于嵌入式系統(tǒng)設(shè)計的軟體,它也是計算機軟體的一種,同樣由程式及其文件組成,可細(xì)分成系統(tǒng)軟體、支撐軟體、應(yīng)用軟體三類,是嵌入式系統(tǒng)的重要組成部分。
但國內(nèi)通常所說的嵌入式軟體主要指最靠近硬體的系統(tǒng)軟體與支撐軟體部分。
嵌入式就是嵌入式,嵌入式里面分,軟體開發(fā)和硬體開發(fā) 3G 是指
JAVA+安卓 3G就是軟體開發(fā),沒有硬體
嵌入式系統(tǒng)的應(yīng)用和開發(fā)
基于嵌入式系統(tǒng)的具體產(chǎn)品應(yīng)用是計算機工程史上的里程碑。深入到了各行各業(yè),其已成為高科技領(lǐng)域中必不可少的工具。 我下面為你整理了關(guān)于嵌入式系統(tǒng)的應(yīng)用和開發(fā)的文章,希望對你有所幫助。
1嵌入式系統(tǒng)簡介
嵌入式系統(tǒng)可以抽象出一個典型的組成模型,其可劃分為硬件層、軟件層及功能層。
1.1嵌入式系統(tǒng)定義
嵌入式系統(tǒng)最通用的定義是以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪、功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計算機[1]。
根據(jù)IEEE9(國際電氣和電子工程師協(xié)會)的定義,嵌入式系統(tǒng)也可定義為控制監(jiān)視或輔助設(shè)備機器和車間運行裝置。
嵌入式系統(tǒng)的定義很多,統(tǒng)一起來很難。對于其定義有疑問的部分研究人員將嵌入式系統(tǒng)定義為:“嵌入式系統(tǒng)是以嵌入式微處理器為內(nèi)核,以微電子技術(shù),計算機技術(shù),電子技術(shù)、對象技術(shù)為基礎(chǔ),軟硬件可根據(jù)對象需要所設(shè)置,并且嵌入到對象器件內(nèi),適用于應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用智能化的控制系統(tǒng)?!盵2]
1.2嵌入式系統(tǒng)的特點
嵌入式系統(tǒng)是面向?qū)I(yè)應(yīng)用領(lǐng)域的,從其應(yīng)用角度分析,具有以下特點:
(1)硬件層,是所有軟件的運行基礎(chǔ),嵌入式系統(tǒng)至少擁有一個高性能處理器為硬件平臺。如ARM處理器。
(2)軟件層,其能擴充和充分發(fā)揮硬件層功能。嵌入式系統(tǒng)需有一個多任務(wù)操作系統(tǒng)的軟件平臺,來控制管理計算機硬件和軟件資源以及合理的組織計算機工作流程。如Liunx,UC/OSⅡ等操作系統(tǒng)。
(3)嵌入式系統(tǒng)是先進(jìn)的技術(shù)及資金密集、知識產(chǎn)業(yè)化不斷創(chuàng)新的集成系統(tǒng)。其將先進(jìn)的電子科學(xué)技術(shù)與各行各業(yè)的具體應(yīng)用相結(jié)合。
(4)是面向用戶、產(chǎn)品及特定應(yīng)用的。
(5)具有較長的生命周期。與實際產(chǎn)品相結(jié)合,并與產(chǎn)品升級同步進(jìn)行。
(6)對程序質(zhì)量要求較高。一般都將系統(tǒng)中的軟件固化在存儲器中,大部分都具有較高的實時性。
(7)嵌入式系統(tǒng)不具備在其上進(jìn)行進(jìn)一步開發(fā)的能力。需要借助專門的開發(fā)工具和環(huán)境來滿足產(chǎn)品設(shè)計完成后的程序功能修改工作。
2基于ARM的嵌入式系統(tǒng)技術(shù)應(yīng)用及開發(fā)方法
2.1ARM的技術(shù)應(yīng)用特點
ARM(Advanced RISC Machines)是一種嵌入式微處理器,它具有低功耗、低成本、高性能的特點,采用RISC體系結(jié)構(gòu),大量使用寄存器,具有高效的指令系統(tǒng),在實際嵌入式應(yīng)用中,只保留和嵌入式應(yīng)用緊密相關(guān)的功能硬件,去除其他的冗余功能部分,來實現(xiàn)嵌入式應(yīng)用的特殊要求[3]?;贏RM微處理器的嵌入式系統(tǒng)不同于單片機、DSP系統(tǒng),其高性能的特點,在硬件部分的電路板設(shè)計方面是比較困難的,絕大多數(shù)的ARM板都要在4層以上。其實ARM最關(guān)鍵的是軟件部分的操作系統(tǒng),系統(tǒng)開發(fā)應(yīng)更側(cè)重于軟件方面,包括系統(tǒng)裁減,底層驅(qū)動和應(yīng)用程序等。
2.2ARM嵌入式系統(tǒng)的開發(fā)流程
基于ARM的嵌入式系統(tǒng)設(shè)計的開發(fā)流程如圖1所示。
2.3ARM嵌入式系統(tǒng)的開發(fā)方法
(1)建立系統(tǒng)的開發(fā)環(huán)境
嵌入式系統(tǒng)資源受限制,如果在其硬件平臺上直接編寫軟件,比較困難。因此根據(jù)其特點須在特定的開發(fā)環(huán)境下進(jìn)行。搭建相應(yīng)的軟硬件平臺:在宿主機(HOST)也就是PC機上安裝開發(fā)工具,并將編寫好的軟件程序進(jìn)行交叉編譯生成二進(jìn)制代碼,最后將其移植到目標(biāo)板的特定位置運行。這種在宿主機(HOST)環(huán)境下開發(fā),在目標(biāo)板(TARGET)上運行的開發(fā)模式叫交叉開發(fā)模式,交叉開發(fā)模型如圖2所示。
(2)Boot Loader引導(dǎo)程序開發(fā)
Boot loader是在嵌入式操作系統(tǒng)內(nèi)核運行前運行的一段程序,與我們經(jīng)常提到的BIOS功能相近,每種體系結(jié)構(gòu)都有與其相匹配的Boot Loader。通過Boot loader程序的運行,可以初始化硬件設(shè)備,建立系統(tǒng)的內(nèi)存空間映射圖,這樣就可以將系統(tǒng)的軟、硬件環(huán)境設(shè)定在一個合適的狀態(tài),方便于最終調(diào)用操作系統(tǒng)內(nèi)核,并且為運行用戶應(yīng)用程序準(zhǔn)備好正確的環(huán)境。
Boot loader程序由匯編和C程序兩部分組成,程序執(zhí)行過程也分為匯編和C程序代碼部分兩個階段。匯編程序與硬件設(shè)備相關(guān),不便移植,第一階段需要完成初始化看門狗、設(shè)置中斷異常向量表、堆棧、配置存儲器等,之后再跳轉(zhuǎn)到第二階段的C語言程序入口處。C程序代碼部分主要完成初始化本階段所需要的外部設(shè)備,調(diào)用NANDFLASH的API函數(shù),配置SDRAM空間,并將用戶的`程序代碼從NANDFLASH存儲器中復(fù)制到SDRAM中,最后再跳轉(zhuǎn)到用戶程序的入口[4]。
3嵌入式技術(shù)的應(yīng)用領(lǐng)域
嵌入式技術(shù)無處不在,已經(jīng)深入到了生活的各個領(lǐng)域,為我們的生活帶來了很大的方便。
(1)無線通訊領(lǐng)域。特別是智能手機,全球95%的手機采用了ARM芯片,隨著手機功能愈像電腦,手機更需要功能強大的嵌入式芯片?,F(xiàn)在,全球售出的每一部手機中平均就有2.4塊ARM芯片。
(2)工業(yè)控制領(lǐng)域。基于ARM核的32位微控制器芯片逐漸向低端微控制器應(yīng)用領(lǐng)域擴展,在工業(yè)控制領(lǐng)域發(fā)揮了很大的作用。
(3)網(wǎng)絡(luò)應(yīng)用。網(wǎng)絡(luò)寬帶技術(shù)不斷發(fā)展,基于ARM技術(shù)的ADSL芯片也逐步進(jìn)入競爭范圍,并取得一定優(yōu)勢。而且,語音及視頻處理也應(yīng)用了ARM技術(shù),同時對DSP的應(yīng)用領(lǐng)域提出了新的挑戰(zhàn)。
(4)儀器儀表方面。有智能儀器、智能儀表、醫(yī)療器械、色譜儀、示波器等。
(5)民用方面。如電子玩具、電子字典、游戲機、錄像機、復(fù)讀機、投影儀、照相機、空調(diào)、冰箱、洗衣機、調(diào)制解調(diào)器、防盜控制器、激光驅(qū)動器、變速控制器、汽車點火控制器、避雷控制、農(nóng)業(yè)節(jié)水控制系統(tǒng)、保安控制系統(tǒng)等方面。
(6)導(dǎo)航控制方面。如導(dǎo)彈控制、航天導(dǎo)航系統(tǒng)、電子干擾系統(tǒng)等。
(7)數(shù)據(jù)處理方面。如圖文圖表終端、復(fù)印機、硬盤驅(qū)動器等。
(8)農(nóng)業(yè)交通方面。智能公路(汽車導(dǎo)航、流量控制、信息監(jiān)測與汽車服務(wù))、植物工廠(特種植物工廠、無土栽培技術(shù)、智能種子工程)、虛擬顯示VR機器人、信息家電(家用電器的網(wǎng)絡(luò)化)等等。
除此以外,眾多領(lǐng)域都用到了基于ARM微處理器的嵌入式技術(shù),在生活的各個領(lǐng)域得到了廣泛的應(yīng)用。
;嵌入式系統(tǒng)是計算機軟件和硬件的綜合體,崗位包括:ESE(嵌入式軟件工程師);ADE(嵌入式應(yīng)用開發(fā)工程師);FWE(嵌入式底層開發(fā)工程師);FEC(嵌入式固件開發(fā)工程師),你可以先下載全套嵌入式視頻課自學(xué),看是否感興趣。
課程內(nèi)容主要包括:
①C,Java核心編程:c語言核心編程,Java核心編程;
②Linux核心操作與算法:Linux系統(tǒng)使用,Linux-c編程核心技術(shù),精品數(shù)據(jù)結(jié)構(gòu),Linux-c編程精髓;
③核心操作與算法:Linux系統(tǒng)編程,Linux網(wǎng)絡(luò)編程核心技術(shù),UI編程,Java核心編程,安卓核心技術(shù);
④ARM+Linux底層開發(fā):數(shù)字電路,ARM編程核心,Linux系統(tǒng)開發(fā),嵌入式Linux驅(qū)動開發(fā);
⑤大型項目實踐:每期安排各類型真實的項目,詳細(xì)可以點我下載資料。
互聯(lián)網(wǎng)行業(yè)目前還是最熱門的行業(yè)之一,學(xué)習(xí)IT技能之后足夠優(yōu)秀是有機會進(jìn)入騰訊、阿里、網(wǎng)易等互聯(lián)網(wǎng)大廠高薪就業(yè)的,發(fā)展前景非常好,普通人也可以學(xué)習(xí)。
想要系統(tǒng)學(xué)習(xí),你可以考察對比一下開設(shè)有相關(guān)專業(yè)的熱門學(xué)校,好的學(xué)校擁有根據(jù)當(dāng)下企業(yè)需求自主研發(fā)課程的能力,能夠在校期間取得大專或本科學(xué)歷,中博軟件、南京課工場、南京北大青鳥等開設(shè)相關(guān)專業(yè)的學(xué)校都是不錯的,建議實地考察對比一下。
祝你學(xué)有所成,望采納。
1、平臺開發(fā)種類不同
嵌入式系統(tǒng)開發(fā)是對于除了電腦之外的所有電子設(shè)備上操作系統(tǒng)的開發(fā),開發(fā)對象有手機,掌上電腦,機電系統(tǒng)等,一般由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及用戶的應(yīng)用程序等四個部分組成。
軟件一般是用某種程序設(shè)計語言來實現(xiàn)的。通常采用軟件開發(fā)工具可以進(jìn)行開發(fā)。軟件分為系統(tǒng)軟件和應(yīng)用軟件,并不只是包括可以在計算機上運行的程序。
軟件開發(fā)平臺源于繁瑣的實踐開發(fā)過程中。開發(fā)人員在實踐中將常用的函數(shù)、類、抽象、接口等進(jìn)行總結(jié)、封裝,成為了可以重復(fù)使用的“中間件”,而隨著“中間件”的成熟和通用,功能更強大、更能滿足企業(yè)級客戶需求的——軟件開發(fā)平臺應(yīng)運而生。
2、資源限制不同
嵌入式系統(tǒng)通常是一個資源受限的系統(tǒng),因此直接在嵌入式系統(tǒng)的硬件平臺上編寫軟件比較困難,有時候甚至是不可能的。目前一般采用的解決辦法是首先在通用計算機上編寫程序,然后通過交叉編譯生成目標(biāo)平臺上可以運行的二進(jìn)制代碼格式,最后再下載到目標(biāo)平臺上的特定位置上運行。
軟件實現(xiàn)的根據(jù)是計算機語言。時至今日,計算機語言發(fā)展為算法語言、數(shù)據(jù)庫語言、智能模擬語言等多種門類,在幾十種重要的算法語言中,C&C++語言日益成為廣大計算機軟件工作人員的親密伙伴,這不僅因為它功能強大、構(gòu)造靈活。
更在于它提供了高度結(jié)構(gòu)化的語法、簡單而統(tǒng)一的軟件構(gòu)造方式,使得以它為主構(gòu)造的SDE數(shù)據(jù)庫的基礎(chǔ)成分——子程序庫的設(shè)計與建設(shè)顯得異常的方便。
3、工具使用不同
嵌入式系統(tǒng)開發(fā)需要與底層的硬件設(shè)備進(jìn)行通信和交互操作。與設(shè)備相關(guān)。主要是對設(shè)備控制和操作。對編譯器的要求較高,不同處理器平臺有各自的編譯器和調(diào)試軟件。需要專門的調(diào)試工具,尤其是一些專用設(shè)備。
與底層操作通過系統(tǒng)軟件的接口函數(shù)API來實現(xiàn),與設(shè)備無關(guān)。主要是數(shù)據(jù)處理和UI界面處理。對編譯器沒有特別的要求,通常使用一些通用的編譯器和調(diào)試軟件。
4、代碼質(zhì)量要求
嵌入式系統(tǒng)對代碼的質(zhì)量要求高,要求可執(zhí)行的程序占用的存儲空間少。由于多任務(wù)同時運行,產(chǎn)生的錯誤比較多,因此在穩(wěn)定性和性能上要求很高。
軟件開發(fā)對代碼的質(zhì)量沒有特別的要求,在存儲空間上也沒有太多的限制。在穩(wěn)定性和性能方面沒有嵌入式系統(tǒng)要求那么嚴(yán)格。
參考資料來源:百度百科-嵌入式系統(tǒng)開發(fā)
參考資料來源:百度百科-軟件開發(fā)
只要一個電話
我們免費為您回電