趣談Linux作業系統-劉超-極客時間

wuwu發表於2019-04-24

極客時間出品的《趣談Linux作業系統》由劉超所作,劉超是網易杭州研究院雲端計算技術部首席架構師,《趣談Linux作業系統》課程作者。本專欄課程將帶你入門Linux作業系統。

《趣談Linux作業系統》課程封面圖

《趣談Linux作業系統》背景介紹

作業系統在計算機中承擔著“大管家”的角色。它合理分配計算機硬體和軟體資源,並處理多種基本事務,比如管理與配置記憶體、決定系統資源供需的優先次序、控制輸入與輸出裝置、操作網路與管理檔案系統等,還提供一個讓使用者與系統互動的操作介面。在劉超看來,Linux 作業系統這個“大管家”的角色,就好比一家公司的老闆。

假設我們現在的目標是把這家公司做上市,怎麼做呢?至少要經歷以下四個發展階段:

Linux 作業系統工作流程圖

這樣一來,你是不是就能設身處地理解到,作業系統就是協調各種資源,幫助我們成事的。你就不再侷限於原有的“外部思維”,而是進入 Linux 內部,全方位理解計算機的工作原理,掌握程式的執行機制。如此,你的併發程式設計、程式設計和效能分析能力都會上升一個層次,開發效率會得到質的提升。在遇到實際問題時,你也能從系統層面出發,去編寫程式碼和解決問題。

《趣談Linux作業系統》作者介紹

《趣談Linux作業系統》作者劉超

劉超,網易杭州研究院雲端計算技術部首席架構師。曾在 EMC 從事分散式儲存系統開發,在惠普從事 OpenStack 的開發和架構設計,目前在網易從事容器、Kubernetes 和微服務的架構工作,出版有《Lucene 應用開發解密》。

2018 年 5 月,他在極客時間開設的“趣談網路協議”專欄,已有超過 30000 人訂閱。這次,他將延續“趣談”的風格,為你奉上一堂精彩的 Linux 作業系統基礎課。

他將以 Linux 4.x 的核心原始碼為基礎,用一個完整的創業故事,配合生動詳實的圖片,深入剖析 Linux 作業系統的方方面面。他會教你快速上手 Linux 命令,掌握學習 Linux 的方法和路徑,帶你詳細推演 Linux 核心的工作原理,讓你對 Linux 作業系統的細節和全貌都有個完整的認識,並能站在一定高度去理解和優化當下的工作。

《趣談Linux作業系統》模組介紹

專欄分為三大模組,共 52 講。

入門準備篇
這一模組首先為你精心準備了一套入門測試題,你可以檢驗一下自己的水平,然後根據測試結果,明確學習目標,之後再結合 Linux 作業系統的學習路徑,設定自己的爬坡計劃,為進入正式學習做好準備。

核心原理篇
將帶你快速上手幾個 Linux 命令,學會系統呼叫;進而講到程式管理、記憶體管理、檔案系統、輸入輸出系統;最後講到程式間的通訊、網路系統和虛擬化、容器化。帶你搞清 Linux 作業系統的核心原理和工作機制,學習背後的程式設計和實現原理,學會從系統層面編寫程式碼和解決問題。

實戰串講篇
將帶你搭建一個作業系統實驗環境,並用創業故事串起整個作業系統的知識點,幫助你複習、鞏固每一模組細碎的知識點,並把它們有機地連線起來。另外,這一模組同樣為你準備了一套期末測試題,幫你檢驗學習效果,查漏補缺,形成閉環。

《趣談Linux作業系統》課程目錄

入門準備篇

開篇詞丨為什麼要學習Linux作業系統?

入學測驗:你究竟對作業系統瞭解多少?

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

核心原理篇

第一部分Linux作業系統綜述

你可以把Linux核心當成一家軟體外包公司的老闆

快速上手幾個Linux命令:每家公司都有自己的黒話

學會幾個系統呼叫:我們們公司能接哪些型別的專案?

第二部分系統初始化

X86體系結構:有了開放的架構,才能打造開放的營商環境

MBIOS到BootLoader:創業伊始,有活兒老闆自己上

核心初始化:生意做大了就得成立公司

系統呼叫:公司成立好了就要開始接專案

第三部分程式管理

程式:公司接這麼多專案,如何管?

執行緒:如何讓複雜的專案並行執行?

程式資料結構(上):專案多了就需要專案管理系統

程式資料結構(下):專案多了就需要專案管理系統

排程(上):如何制定專案管理流程?

排程(下):如何制定專案管理流程?

程式的建立:如何發起一個新專案?

執行緒的建立:如何執行一個新子專案?

第四部分記憶體管理

記憶體管理:為客戶保密,專案組獨享會議室封閉開發

程式空間管理:專案組還可以自行佈置會議室

實體記憶體管理:會議室管理員如何分配會議室?

記憶體對映:如何找到正確的會議室?

第五部分檔案系統

檔案系統:專案成果要歸檔,我們就需要檔案庫

硬碟檔案系統:如何最合理地組織檔案庫的文件?

虛擬檔案系統:文件多了就需要檔案管理系統

檔案快取:常用文件應該放在觸手可得的地方

第六部分輸入輸出系統

輸入與輸出:如何建立售前售後生態體系?

字元裝置:如何建立直銷模式?

塊裝置:如何建立代理商銷售模式?

第七部分程式間通訊

程式間通訊:遇上大專案,需要專案組之間合作才能完成

訊號:專案組A完成了,如何及時通知給專案組B?

管道:專案組A完成了,如何交接給專案組B?

函IPC (上):不同專案組之間搶資源,如何協調?

龜IPC (下):不同專案組之間搶資源,如何協調?

第八部分網路系統

Socket通訊:遇上特大專案,要學會和其他公司合作

Socket核心資料結構:如何成立特大專案合作部?

接收網路包:如何搞明白合作伙伴想讓我們做什麼?

傳送網路包:如何表達我們想讓合作伙伴做什麼?

第九部分虛擬化

虛擬機器:如何成立子公司,讓公司變集團?

計算虛似化:如何建立獨立的辦公室,自己招人?

儲存虛擬化:如何建立自己保管的單獨檔案庫?

網路虛擬化:如何成立獨立的合作部?

第十部分容器化

容器:大公司為保持創新,鼓勵內部創業

Namespace技術:內部創業公司應該獨立經營

CGroup技術:內部創業公司應該獨立核算成本

資料中心的作業系統:上市敲鐘

核心原理篇總結與答疑

實戰串講篇

搭建作業系統實驗環境(上):授人以魚不如授人以漁

搭建作業系統實驗環境(下):授人以魚不如授人以漁

知識串講(上):用一個創業故事串起作業系統知識點

知識串講(下):用一個創業故事串起作業系統知識點

期末測試:你真的把Linux作業系統搞明白了嗎?

實戰串講篇總結與答疑

訂閱價格:

為回報猿人學的粉絲,所有通過我分享的二維碼購買的使用者,請加我微訊號:dismissmewp,備註:返現。

享受完其它優惠後,我再給大家立即返¥12元現金。

趣談Linux作業系統 課程返現

猿人學banner宣傳圖

我的公眾號:猿人學 Python 上會分享更多心得體會,敬請關注。

***版權申明:若沒有特殊說明,文章皆是猿人學 yuanrenxue.com 原創,沒有猿人學授權,請勿以任何形式轉載。***

相關文章