Linux嵌入式工程師技能要求: 1.C語言 具備C語言基礎、理解C語言基礎編程及高級編程,包括:數據類型、數組、指針、結構體、鏈表、文件操作、隊列、棧。 2.Linux基礎 Linux操作系統的概念、安裝方法,瞭解Linux下目錄結構、基本命令、Vim+GCC+GDB+make,shell Mak ...
Linux嵌入式工程師技能要求:
1.C語言
具備C語言基礎、理解C語言基礎編程及高級編程,包括:數據類型、數組、指針、結構體、鏈表、文件操作、隊列、棧。
2.Linux基礎
Linux操作系統的概念、安裝方法,瞭解Linux下目錄結構、基本命令、Vim+GCC+GDB+make,shell Makefile腳本文件編寫,開發環境搭建。
3.Linux系統編程
Linux系統標準I/O庫、多任務編程的多進程與多線程,進程間通信(管道、fifo、消息隊列、共用記憶體、信號、信號量等),同步與互斥對共用資源訪問控制
等重要知識,主要對Linux應用開發的理解和代碼調試的能力。
4Linux網路編程
電腦網路在嵌入式Linux系統應用開發的過程中使用十分廣泛。通過Linux網路發展、TCP/IP協議、socket編程、TCP網路編程、UDP網路編程、Web編程
等方面入手,全面瞭解Linux網路應用程式開發。重點學習網路編程相關API,掌握TCP協議伺服器的編程方法和併發伺服器的實現,瞭解HTTP協議及其實現方法,
熟悉UDP廣播、多播的原理及編程方法,掌握混合C/S架構網路通信系統的設計,掌握HTML,JavaScript等Web編程技術實現和方法。
5.數據結構與演算法
數據結構與演算法在嵌入式底層驅動、通信協議及各種引擎開發中會得到大量運用,對其掌握好壞影響程式的健壯、穩定性。此階段的學習重要理解數據結構
與演算法的基礎內容。包括:順序表、鏈表、隊列、棧、樹、圖、哈希表,各種查找排序演算法等應用及其C語言實現過程。
6.C++/Qt
C++是Linux應用開發主要語言之一,本階段需要重點掌握面向對象的編程思想和C++的重要內容。圖形化界面編程是嵌入式應用開發的重要環節。Qt由於跨平臺
、面向對象、支持2D/3D渲染,豐富的API、支持XML、多國語言等強大功能,在嵌入式GUI開發領域應用廣泛。在本階段學習Qt基於圖形庫的學習和使用,熟練GUI
編程,並移植到開發平臺上使用。掌握IDE、Qt部件及佈局管理器、信號與槽機制的應用、滑鼠、鍵盤及繪圖事件、文件處理的應用。
7.Cortex -ARM 開發平臺
掌握s5p210系統資源、時鐘控制器、電源管理、異常中斷控制器、nand flash控制器等模塊,為底層平臺搭建做準備。Linux平臺包括內核裁剪、內核移植、
交叉編譯、內核調試和Bootloader介紹、製作與原理分析、根文件系統製作及向內核中添加自己的模塊,運行自己製作的Linux系統,集成部署整個Linux整個
流程。
8.驅動開發
Linux的內核機制、驅動程式與用戶級應用程式的介面,掌握系統對設備的併發操作。熟悉開發硬體的工作原理,具備ARM硬體介面的基本知識,掌握設備
驅動原理框架。熟悉Linux高級字元設備、塊設備、網路設備、USB設備等驅動開發工作。