嵌入式内功.扎马步
嵌入式是門高深的學問,入門的門檻比較高,沒有幾年的苦心專研不可能有很深的造詣更談不上出什么成果。嵌入式又是一個熱門有挑戰(zhàn)性的領(lǐng)域,手機研發(fā)、游戲設(shè)備開發(fā)IPTV、數(shù)字視頻錄像機(DVR)、數(shù)字視頻廣播(DVB)、機頂盒、視頻會議系統(tǒng)、網(wǎng)絡(luò)監(jiān)控攝像頭以及可視電話等高端行業(yè)已經(jīng)滲透進我們生活,在以后還會有更好的發(fā)展情景。在這個領(lǐng)域里,有無數(shù)的有志軟件工程師在這里打拼。他們的收入不等,有的剛起步可能只有2、3K有的可能混的不錯成了大牛,有好幾十K的。不論怎樣,每個人都希望能闖出一番天地,舒舒服服過著有”米“的生活。說到自己有些慚愧,混跡多年還沒有什么建樹,好的壞的評價都有過,也不知道何時能混出個頭。不過值得慶幸的是,時光還沒有磨掉自己的那份執(zhí)著和信念。在那些無數(shù)摸索追求奮進的日子里,酸甜苦辣的滋味每每縈繞于心。我不是高手,更不是牛人,不過還是有一些心得可以和同行分享。
現(xiàn)在很多公司經(jīng)常打著諸如DSP算法及應(yīng)用軟件工程師、驅(qū)動開發(fā)工程師、FIRMWARE軟件工程師、嵌入式設(shè)計工程師、嵌入式軟件工程師之類的頭銜在網(wǎng)絡(luò)和人才市場上招人。雖然這些職位在具體事務(wù)上有些不同,但總的來說,還是非常相近的。這些企業(yè)對嵌入式研發(fā)人員的共同要求也正體現(xiàn)了嵌入式的精髓和熱門所在,歸結(jié)起來,主要有下面幾點: 1.至少精通一種MCU/MPU體系結(jié)構(gòu),如ARM、PowerPC、68K/ColdFire;
2.至少精通一種DSP體系結(jié)構(gòu),如主流的TI TMS320DM642、Blackfin 533/561、 TriMeida和BSP15,理解它們的流水線pipeline的原理和指令特性,熟悉代碼優(yōu)化,熟悉CACHE、DMA和PCI等重要設(shè)備;
3.至少精通一種嵌入式操作系統(tǒng),如VxWorks,embedded linux,WinCE,uCOS,QNX,PlamOS,Symbian。不需要深入內(nèi)核,但必須要懂得使用最基本最常用的一些功能,諸如任務(wù)管理、信號量、消息隊列,并懂得優(yōu)先級反轉(zhuǎn)和死鎖的原理和避免或解決方法;
4.至少精通一種嵌入式語言。越是底層人員越是要注意編碼規(guī)范,不要以為自己搞底層的就很牛,不書寫說明文檔和代碼注釋,讓人感覺代碼是寫給自己看的?,F(xiàn)在嵌入式已經(jīng)不是C的專利,J2EE、EmbddedC++等語言已進入這個領(lǐng)域,在以后肯定會大展拳腳;(關(guān)于C可以去看看《關(guān)于C的0x8本“經(jīng)書”[嵌入式必讀]》
http://blog.sina.com.cn/u/4a317b79010004mc)
5.熟練掌握嵌入式軟件設(shè)計、項目管理和測試的技巧。特別要注意自己的編碼規(guī)范,搞軟件的可全靠這張"臉"吃飯哦。一個人牛不牛,看代碼就知道。(關(guān)于測試可以去看看《嵌入式軟件測試的十大秘訣》
http://blog.sina.com.cn/u/4a317b790100057l) 備注:這些要求不針對嵌入式硬件工程師和比較上層的嵌入式應(yīng)用軟件開發(fā)人員。 看似簡單的幾條羅列,實際上每一個要求都需要我們好多年的項目經(jīng)驗積累,這也是國內(nèi)華為、UT斯達康等大企業(yè)要求應(yīng)聘人員必須具備至少5年軟件開發(fā)經(jīng)驗的原因(UT斯達康有時候要求8年)。如果有一天你揣著一份對高工資的期望準備在這個領(lǐng)域?qū)ひ捁ぷ骰驕蕚涮鄣皆擃I(lǐng)域,你是否信心滿滿,是否都已經(jīng)具備了這些基本的素養(yǎng)和能力呢?如果有,那我會替你高興;如果沒有,那么平靜心態(tài)繼續(xù)努力,打好這些基本功,最好從扎馬步開始!
??
最后引用周星馳的經(jīng)典臺詞激勵大家:努力啊,奮斗!。 Embedded software development is all but nothing when you are always perseverant !
現(xiàn)在很多公司經(jīng)常打著諸如DSP算法及應(yīng)用軟件工程師、驅(qū)動開發(fā)工程師、FIRMWARE軟件工程師、嵌入式設(shè)計工程師、嵌入式軟件工程師之類的頭銜在網(wǎng)絡(luò)和人才市場上招人。雖然這些職位在具體事務(wù)上有些不同,但總的來說,還是非常相近的。這些企業(yè)對嵌入式研發(fā)人員的共同要求也正體現(xiàn)了嵌入式的精髓和熱門所在,歸結(jié)起來,主要有下面幾點: 1.至少精通一種MCU/MPU體系結(jié)構(gòu),如ARM、PowerPC、68K/ColdFire;
2.至少精通一種DSP體系結(jié)構(gòu),如主流的TI TMS320DM642、Blackfin 533/561、 TriMeida和BSP15,理解它們的流水線pipeline的原理和指令特性,熟悉代碼優(yōu)化,熟悉CACHE、DMA和PCI等重要設(shè)備;
3.至少精通一種嵌入式操作系統(tǒng),如VxWorks,embedded linux,WinCE,uCOS,QNX,PlamOS,Symbian。不需要深入內(nèi)核,但必須要懂得使用最基本最常用的一些功能,諸如任務(wù)管理、信號量、消息隊列,并懂得優(yōu)先級反轉(zhuǎn)和死鎖的原理和避免或解決方法;
4.至少精通一種嵌入式語言。越是底層人員越是要注意編碼規(guī)范,不要以為自己搞底層的就很牛,不書寫說明文檔和代碼注釋,讓人感覺代碼是寫給自己看的?,F(xiàn)在嵌入式已經(jīng)不是C的專利,J2EE、EmbddedC++等語言已進入這個領(lǐng)域,在以后肯定會大展拳腳;(關(guān)于C可以去看看《關(guān)于C的0x8本“經(jīng)書”[嵌入式必讀]》
http://blog.sina.com.cn/u/4a317b79010004mc)
5.熟練掌握嵌入式軟件設(shè)計、項目管理和測試的技巧。特別要注意自己的編碼規(guī)范,搞軟件的可全靠這張"臉"吃飯哦。一個人牛不牛,看代碼就知道。(關(guān)于測試可以去看看《嵌入式軟件測試的十大秘訣》
http://blog.sina.com.cn/u/4a317b790100057l) 備注:這些要求不針對嵌入式硬件工程師和比較上層的嵌入式應(yīng)用軟件開發(fā)人員。 看似簡單的幾條羅列,實際上每一個要求都需要我們好多年的項目經(jīng)驗積累,這也是國內(nèi)華為、UT斯達康等大企業(yè)要求應(yīng)聘人員必須具備至少5年軟件開發(fā)經(jīng)驗的原因(UT斯達康有時候要求8年)。如果有一天你揣著一份對高工資的期望準備在這個領(lǐng)域?qū)ひ捁ぷ骰驕蕚涮鄣皆擃I(lǐng)域,你是否信心滿滿,是否都已經(jīng)具備了這些基本的素養(yǎng)和能力呢?如果有,那我會替你高興;如果沒有,那么平靜心態(tài)繼續(xù)努力,打好這些基本功,最好從扎馬步開始!
??
最后引用周星馳的經(jīng)典臺詞激勵大家:努力啊,奮斗!。 Embedded software development is all but nothing when you are always perseverant !
總結(jié)
- 上一篇: 思科GNS3模拟器安装包和流程
- 下一篇: Android应用源码基于安卓的个人隐私