首頁  >  文章  >  運維  >  linux開發要學習什麼內容

linux開發要學習什麼內容

王林
王林原創
2020-04-30 15:16:483806瀏覽

linux開發要學習什麼內容

一、C語言

C語言是內嵌領域中主要的程式語言。重點在於理解C語言的基礎程式設計以及高階程式設計知識,包括:基本資料型別、陣列、指標、結構體、鍊錶、檔案操作、佇列、堆疊等。

二、Linux基礎

詳細了解Linux下的目錄結構、基本指令、編輯器VI、編譯器GCC、偵錯器GDB和Make 專案管理工具,、Shell Makefile腳本編寫等知識,以及嵌入式開發環境的建構。

三、Linux系統程式設計

重點學習標準I/O庫,Linux多任務程式設計中的多進程和多線程,以及進程間通訊(pipe、FIFO、訊息佇列、共享記憶體、signal、信號量等),同步與互斥對共享資源存取控制等重要知識,主要提升對Linux應用開發的理解與程式碼偵錯的能力。

(影片教學推薦:linux影片教學

四、Linux網路程式設計

重點學習網路程式設計相關API,熟練TCP協定伺服器的程式設計方法與並發伺服器的實現,了解HTTP協定及其實作方法,熟悉UDP廣播、多播的原理及程式設計方法,掌握混合C/S架構網路通訊系統的設計,熟悉HTML、Java等Web程式設計技術及實作方法。

五、資料結構與演算法

此階段的學習重點在於理解資料結構與演算法的基礎內容,包括順序表、鍊錶、佇列、堆疊、樹、圖、雜湊表、各種查找排序演算法等應用及其C語言實作過程。

六、C 、QT

本階段重點掌握物件導向程式設計的基本想法以及C 的重要內容。圖形介面程式設計是嵌入式開發中非常重要的一環。由於QT具有跨平台、物件導向、豐富API、支援2D/3D渲染、支援XML、多國語等強大功能,在嵌入式領域的GUI開發中得到了廣範的應用,在本階段透過基於QT圖形庫的學習使學員可以熟練地編寫GUI程序,並移植QT應用程式到Cortex-A8平台。包括IDE使用、QT元件及佈局管理器、資訊與插槽機制的應用、滑鼠、鍵盤及繪圖事件處理及檔案處理的應用。

七、Cortex A8 、Linux 平台開發

透過基於ARM Cortex-A8處理s5pv210了解晶片手冊的基本閱讀技巧,掌握s5pv210系統資源、時脈控制器、電源管理、異常中斷控制器、nand flash控制器等模組,為底層平台搭建做好準備。

Linux平台包括核心裁減、核心移植、交叉編譯、GNU工具使用、核心調試、Bootloader介紹、製作與原理分析、根檔案系統製作以及向核心中添加自己的模組,並在s5pv210實驗平台上運行自己製作的Linux系統,整合部署Linux系統整個流程。同時了解Android作業系統開發流程。

八、驅動開發

本階段的學習要熟悉Linux的核心機制、驅動程式與用戶級應用程式的接口,掌握系統對設備的並發操作。熟悉所開發硬體的工作原理,具備ARM硬體介面的基礎知識,熟悉ARM Cortex-A8處理器s5pv210各資源、掌握Linux設備驅動原理框架,熟悉工程常見Linux高階字元設備、區塊設備、網路設備、USB設備等驅動開發,在工作中能獨立勝任底層驅動開發。

推薦教學:linux教學

以上是linux開發要學習什麼內容的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn