想從事linux環(huán)境下開發(fā)?
一、熟悉 Linux 系統(tǒng),基本命令
安裝 Linux 系統(tǒng),學會基本操作,熟悉文件系統(tǒng),shell 腳本以及常用命令
二、了解程序開發(fā)過程
搭建開發(fā)環(huán)境,了解 Linux 上程序開發(fā)過程。
學會使用文本編輯工具 Vim,編譯工具 gcc, as, 連接工具 ld, 調試工具 gdb, make 工具,會寫 makefile。
用 C 語言實現(xiàn)并編譯自己的測試程序。
三、嘗試系統(tǒng)編程
試著在 Linux 上用 C 語言進行系統(tǒng)編程,
其中需要調用 Linux 系統(tǒng)庫函數(shù) (API)。
例如,實現(xiàn)一個需要進行網(wǎng)絡通信、操作文件的多線程/進程程序。
以此深入了解 Linux 系統(tǒng)運行機制。
四、學習內(nèi)核
上面學的差不多了,感興趣的同學可以接著學習 Linux 內(nèi)核。Linux 內(nèi)核模塊如下圖
五、驅動開發(fā)
從這里開始,就不是必須的了。有興趣的朋友可以深入學習。但是學習驅動開發(fā)無疑要把前面的都要學好。
六、嵌入式系統(tǒng)開發(fā)
學好 Linux 是嵌入式系統(tǒng)開發(fā)的基礎。
嵌入式開發(fā)包括很多方向,有硬件、軟件,以及系統(tǒng)級別。
硬件要學單片機,ARM、MIPS,DSP 等各種 MCU,Verilog, RTL, 具體就不多說了,跟 Linux 關系不太大。
軟件的話,需要了解交叉編譯,以及嵌入式環(huán)境下 C 語言的特殊用法,例如 volatile、 位操作、寄存器操作、大小端、程序跳轉等。
系統(tǒng)級,要了解 Linux 內(nèi)核裁剪、移植、編譯、調試,還有 Bootloader 、設備驅動等
linux服務器開發(fā)免費學習地址:https://ke.qq.com/course/417774?flowToken=1013300