回覆列表
  • 1 # 一碗五香牛肉

    畢業三年多,一直從事嵌入式裝置開發,分享一點經驗。

    對於應屆生來說,嵌入式開發的經驗不會有太多,所以要求也不會太高。

    嵌入式開發常用的是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影響),對一些複雜的系統問題能夠定位(系統的效能瓶頸分析,定位手段,比如火焰圖)。

    再往上發展,可以考慮成為系統架構師,能夠提出軟硬體方案,綜合成本,效能,功能。到這個階段,無論是創業還是打工,都是一個不錯的選擇。

  • 中秋節和大豐收的關聯?
  • 從此煙雨落京城,一人撐傘兩人行相近意思的詩句?