02 | 學習路徑:爬過這六個陡坡,你就能對Linux瞭如指掌

第一個坡:拋棄舊的思惟習慣,熟練使用 Linux 命令行git

推薦書籍shell

若是你想全面學習 Linux 命令,推薦你閱讀《鳥哥的 Li...編程

 

第二個坡:經過系統調用或者 glibc,學會本身進行程序設計vim

推薦書籍 網絡

《UNIX 環境高級編程》,這本書有代碼,有介紹,有原理併發

第三個坡:瞭解 Linux 內核機制,反覆研習重點突破socket

推薦書籍 《深刻理解 LINUX 內核》學習

第四坡:閱讀 Linux 內核代碼,聚焦核心邏輯和場景命令行

開源軟件代碼紛繁複雜,一開始看確定暈,找不着北。設計

開始閱讀代碼不要糾結一城一池的得失,不要每一行都必定要搞清楚

它是幹嗎的,而要聚焦於核心邏輯和使用場景。

推薦書籍:《LINUX 內核源代碼情景分析》

第五坡:實驗定製化 Linux 組件,已經沒人能阻擋你成爲內

核開發工程師了

須要仔細配置

最後一坡:面向真實場景的開發,實踐沒有終點

# 學習路徑

## Step1: 熟悉Linux命令行

基礎:--help、man
進階:sed、awk、正則、管道、grep、find、shell腳本、vim、git

## Step2: 系統調用和glibc => 編程

+ 進程樹 fork
+ 進程同步 信號量
+ 應用層與傳輸層的分界線 socket編程

> [《UNIX環境高級編程》]()

## Step3: Linux內核機制

> [《深刻理解Linux內核》]()
> 這本書內核版本比較老~

## Step4: 閱讀Linux內核源碼,聚焦核心邏輯和場景

+ 虛擬化 kvm
+ 網絡 內核協議棧

> [《Linux內核源碼情景分析》]()

## Step5:實驗定製化Linux組件

> 專欄最後兩個實驗

## Step6: 面向真實場景開發,實踐~

+ 併發與並行
+ 鎖與保護
+ 擴展性和兼容性

相關文章
相關標籤/搜索