乾貨!史上最全嵌入式工程師職業成長路徑+技能圖譜
在你學完嵌入式並打算找工作時,你是否遇到這樣的情況:面試中你感覺良好,面試官問你的各種嵌入式理論,做實際項目也能對答如流,感覺十拿九穩,勝券在握,但面試過後待通知,確是無盡的等待不了了之。其實,用人單位除了對你能否勝任工作職責,對嵌入式基礎知識考核以外,也有很大部分會看重你的個人資歷。作為職場新人,在嵌入式行業初次入行還是會比較吃虧的。
成為嵌入式工程師,進階高手行列。新人必學的基本知識就包括:計算機原理、C語言、數據結構、數電和模電知識,除此之外,還需要你掌握一定的單片機編程能力和運用技巧。平日做項目實驗,要時刻培養自己的閱讀和思考能力,遇到不懂的問題,要學會藉助搜索工具查閱相關學習資料,多動手、多做筆記,最好先上手一塊板子,在實踐中逐步摸索,通過實操加深對課本知識點原理的理解。
嵌入式新人技能提升,對自己的培養需要從廣度、深度兩方面來考慮。廣度的學習,讓自己學習更多軟體技能,比如:學習嵌入式軟體開發,同時也要學習非嵌入式軟體開發、可編程邏輯器件的開發;學習項目管理,也學習開發和測試的技能... 嘗試技能的培養,讓自己發掘自身優勢和興趣點,為以後專註於某一個領域,比如研究嵌入式軟體的測試。
培養自己的動手解決問題的能力,其次要合理規劃好一些成熟的成長路線,包括技術線、管理線;另一方面,也提倡在整體框架下建立自己獨特的路線。不過,小編這裡介紹一套嵌入式技術快速入手技法,能夠幫到職場小白在較短時間內成為嵌入式高手。以下是成為一名合格嵌入式工程師的職場成長路徑,及各個階段所需學習、提升的技能知識點供大家學習。
嵌入式Linux開發第一學習階段,主要打好基礎,學好C編程,Linux系統編程。
1、C語言編程基礎;
2、嵌入式開發基礎:Linux概述安裝,Shell命令,vim編輯器,GCC,GDB,Makefile,交叉開發環境構建;
3、嵌入式Linux系統編程:Shell編程,文件編程,串口編程,進程編程,線程編程,網路編程;
4、嵌入式項目開發:數據採集控制系統,串口伺服器;
嵌入式Linux開發第二學習階段,掌握ARM彙編程序設計,驅動程序設計。
1、ARM體系結構:ARM體系,ARM指令,Thumb指令,彙編程序設計,邏輯程序開發;
2、Linux內核移植:bootloader,內核配置,文件系統;
3、驅動程序開發:驅動架構模型,字元設備驅動,塊設備驅動,網路驅動;
4、嵌入式項目開發:智能家居系統,視頻監控系統;
嵌入式Linux開發第三學習階段,掌握C 面向對象程序設計,Qt編程。
1、C 語言編程基礎;
2、QT編程開發:QT開發基礎,QT布局與控制項,QT繪圖,QT事件,QT網路通信,QT資料庫,QT移植;
3、嵌入式項目開發:車載監控管理系統,工業能源管理系統;
為幫助大家儘快掌握學習嵌入式Linux,從看懂硬體工作原理、學會嵌入式軟體操作、理解數字電路、微處理器結構、嵌入式Linux系統組成應用,掌握基本的應用基礎、驅動基礎,再逐步深入學習Linux系統編程、驅動開發和Linux內核分析。編者精選了十本經典的嵌入式Linux系統學習全階書籍(包含基礎入門 設備驅動 系統內核開發),供大家學習參考。
1. Linux從入門到精通——Linux典藏大系
本資料提供10G 配套隨書光碟內容、課程PPT講義、視頻教程、嵌入式開發軟體、工具安裝程序及對應開發環境。
Linux典藏大系:Linux從入門到精通。課程共29章,分為7篇。內容包括Linux概述、Linux安裝、Linux基本配置、桌面環境基本操作、Shell基本命令、文件和目錄管理、軟體包管理、磁碟管理、用戶與用戶組管理、進程管理、網路配置、瀏覽網頁、收發郵件、文件傳輸和共享、遠程登錄、多媒體應用、圖像瀏覽和處理、印表機配置、辦公軟體的使用、Linux編程工具、Shell編程、伺服器基礎知識、Apache伺服器、vsftpd伺服器、Samba伺服器、NFS伺服器、任務計劃、防火牆和網路安全、病毒和木馬防範等。
本書籍非常適合廣大Linux初中級用戶、開源軟體愛好者和大專院校學生閱讀,同時也非常適合準備從事Linux下開發的各類人員。
2. ARM體系架構與編程
本書共為分14章,對ARM處理器的體系結構、指令系統和開發工具進行了比較全面的介紹。其中包括ARM體系、ARM程序設計模型、ARM彙編語言程序設計、ARM C/C 語言程序設計、ARM連接器的使用、ARM集成開發環境CodeWarrior IDE的介紹及高性能的調試工具ADW的使用。並在此基礎上介紹一些典型的基於ARM體系的嵌入式應用系統設計的基本技術。通過閱讀本書,可以使讀者掌握開發基於ARM的應用系統的各方面的知識。
本書既可作為學習ARM技術的培訓材料,也可作為嵌入式系統開發人員的參考手冊。
3. 嵌入式Linux應用開發完全手冊
書籍全面介紹了嵌入式Linux系統開發過程中,從底層系統支持到上層GUI應用的方方面面,內容涵蓋Linux操作系統的安裝及相關工具的使用、配置,嵌入式編程所需要的基礎知識(交叉編譯工具的選項設置、Makefile語法、ARM彙編指令等),硬體部件的使用及編程(囊括了常見硬體,比如UART、I*IC、LCD等),UBoot、Linux內核的分析、配置和移植,根文件系統的構造(包括移植busybox、glibc、製作映象文件等),內核調試技術(比如添加kgdb補丁、棧回溯等),驅動程序編寫及移植(LED、按鍵、擴展串口、網卡、硬碟、SD卡、LCD和USB等),GUI系統的移植(包含兩個GUI系統:基於Qtopia和基於X),應用程序調試技術。
4. Linux就該這麼學
本書基於RHEL 7系統編寫,面向零基礎讀者,從Linux基礎知識講起,然後漸進式地提高內容難度,詳細講解Linux系統中各種服務的工作原理和配置方式,以匹配真實生產環境對運維人員的要求,突顯內容的實用性。本書每章都帶有大量的圖、表、命令示例以及課後習題,旨在增強讀者的理解能力並鞏固所學知識。
5. Linux命令行大全
本書主要介紹Linux命令 行的使用,循序漸進,深入淺出,引導讀者全面掌握命令行的使用方法。
書籍共分為四大部分。第一部分開始了對命令行基本語言的學習之旅,包括命令結構、文件系統的導引、命令行的編輯以及關於命令的幫助系統和使用手冊。第二部分主要講述配置文件的編輯,用於計算機操作的命令行控制。第三部分講述了從命令行開始執行的常規任務。類UNIX操 作系統,比如Linux,包含了很多「經典的」命令行程序,這些程序可以高 效地對數據進行操作。第四部分介紹了shell編程,這是一個**的初級技術,並且容易學習,它可以使很多常見的系統任務自動運行。通過學習 shell編程,讀者也可以熟悉其他編程語言的使用。
6. Linux設備驅動開發詳解
隨書提供2.2G配套全書源程序,及驅動部分源碼。
本書介紹了Linux設備驅動開發理論、框架與實例,詳細說明了自旋鎖、信號量、完成量、中斷頂/底半部、定時器、內存和I/O映射以及非同步通知、阻塞I/O、非阻塞I/O等Linux設備驅動理論,以及字元設備、塊設備、tty設備、I2c設備、LCD設備、音頻設備、USB設備、網路設備、PCI設備等Linux設備驅動架構中各個複雜數據結構和函數的關係,並講解了Linux驅動開發的大量實例,使讀者能夠獨立開發各類Linux設備驅動。
7. Linux內核完全注釋
Linux內核完全注釋 V3.0對Linux早期操作系統內核(v0.11)全部代碼文件,進行了詳細全面的注釋和說明,旨在使讀者能夠在盡量短的時間內,對Linux的工作機理獲得全面而深刻的理解,為進一步學習和研究Linux系統打下堅實的基礎。書中首先以Linux源代碼版本的變遷歷史為主線,詳細介紹了Linux系統的發展歷史,著重說明了各個內核版本之間的重要區別和改進方面,給出了選擇0.11(0.95)版作為研究的對象的原因。本書依據內核源代碼的組織結構,對所有內核程序和文件進行了注釋和詳細說明。
8. Linux內核情景分析
這本書採取類似於英語教學中行之有效的情景會話的教學方法,全面深入地剖析了Linux最新版本核心源代碼,並對Linux核心的獨特優點和需要進一步改進的問題作了精闢的評述。上冊的內容包括預備知識、存儲管理、中斷和系統調用、進程和進程調度、文件系統以及傳統的Unix進程通訊六章。下冊的內容包括設備驅動、多處理器SMP系統結構以及系統引導和初始化四章。
9. Linux設備驅動程序
本書是經典著作《Linux 設備驅動程序》的第三版。該版本已針對 Linux 內核的 2.6.10 徹底更新過了。內核的這個版本針對常見任務完成了合理化設計及相應的簡化,比如即插即用,利用sysfs 文件系統和用戶空間交互,以及標準匯流排上的多設備管理等等。本書提供了完整的示常式序,不需要特殊的硬體即可編譯和運行這些示常式序。本書還在單獨的章節中講述了 pci、usb 和 tty(終端)子系統。
對期望了解操作系統內部工作原理的讀者來講,本書也深入闡述了地址空間、非同步事件以及 i/o 等方面的內容。本書主要介紹:完整的字元、塊、tty(終端)及網路驅動程序驅動程序的調試、中斷、計時問題、並發、鎖定和對稱多處理器系統(smp)、內存管理和 dma、驅動程序模型和 sysfs、熱插拔設備、對常見匯流排的描述,包括 scsi、pci、usb 和 ieee1394(火線)
10.UNIX網路編程卷(1 2)
本書分為上下兩卷,是UNIX 網路編程的經典之作。第1卷深入地介紹了如何使用套接字API進行網路編程。全書不但介紹了基本編程內容,還涵蓋了與套接字編程相關的高級主題,對於客戶/伺服器程序的各種設計方法也作了完整的探討,還深入分析了流這種設備驅動機制。
第2卷主要從對Posix IPC 和System V IPC 的內部結構開始討論,全面深入地介紹了4 種IPC 形式:消息傳遞(管道、FIFO、消息隊列)、同步(互斥鎖、條件變數、讀寫鎖、文件與記錄鎖、信號量)、共享內存(匿名共享內存、具名共享內存)及遠程過程調用(Solaris門、Sun RPC)。附錄中給出了測量各種IPC 形式性能的方法。
十本嵌入式Linux工程師必讀經典全階學習書籍,資料截圖如下:
10G 嵌入式Linux設計從入門到精通學習資料(隨書光碟、視頻教程、開發軟體工具)
2.2G 嵌入式Linux項目源碼、驅動源程序代碼
如何領取以上全部嵌入式Linux學習資料?
長按以下二維碼,掃碼進群後完成任務,即可馬上領取!
若掃碼失敗,可聯繫學院助教小包