{eval=Array;=+count(Array);}
畢業三年多,一直從事嵌入式設備開發,分享一點經驗。
對于應屆生來說,嵌入式開發的經驗不會有太多,所以要求也不會太高。
嵌入式開發常用的是C語言,所以需要你有扎實的功底,這一點很重要,數據結構算法,指針,函數,網絡編程。
有了上面的基礎以后,可以考慮下面的:
熟悉如何去構建嵌入式系統,boot loader,kernel,rootfs。
Linux內核,包括網絡,文件系統,進程調度,設備驅動,系統調用,對于操作系統的理解,有助你理解你的軟件是怎么工作的,即使不專業從事內核的開發,也會有助于寫出高質量的代碼。
對通用的總線以及常用外設有了解,比如PCI,I2C,SPI,NORFLAH,NANDFLASH。
熟悉某一款處理器,比如ARM,匯編指令,cache,MMU,總線的概念。
在這個過程中,你還會設計到一些工具,比如cross toolchain(ld,gcc,gdb,objdump…),make, bash。
再往后,你需要能夠知道軟硬件,如何工作的,如何能夠寫出更高效的代碼(cache對齊,提高cache命中率,SMP多核spinlock影響),對一些復雜的系統問題能夠定位(系統的性能瓶頸分析,定位手段,比如火焰圖)。
再往上發展,可以考慮成為系統架構師,能夠提出軟硬件方案,綜合成本,性能,功能。到這個階段,無論是創業還是打工,都是一個不錯的選擇。
0
回答0
回答0
回答0
回答5
回答10
回答0
回答0
回答0
回答0
回答