入門推薦書籍1:《計算機的心智:作業系統之哲學原理》(建議看第一版)。要閱讀這本書,除了幾個概念(比較常見的是"中斷"),完全不需要任何基礎(沒錯,不需要C和任何語言的知識),看故事一樣就可以将作業系統的程序、線程、記憶體、IO、多核全部有個了解。當然,這本書隻能淺層次、全面地了解作業系統,适合入門作業系統。
入門推薦書籍2:《Operating Systems: Three Easy Pieces》(OSTEP),總共50章。如果說上面推薦的《計算機的心智》是看故事,那麼這本書就是從知識點的角度去系統性地認識作業系統,但偏偏沒有任何難度。本書2019年6月出了中文版《作業系統導論》。
入門推薦書籍3:《Operating.System.Concepts.10th》,中文版《作業系統概念》,OSTEP描述的多是原理和概念,作業系統概念是細節加原理加概念,寫作方式是比較大衆化的方式,本書結合OSTEP看,基本上能将作業系統相關的基礎都了解清楚。
入門推薦書籍4:《Linux-UNIX系統程式設計手冊(上、下冊)》或《UNIX環境進階程式設計》(APUE),系統程式設計的體系中,有關程序、記憶體等方面的内容,對于了解作業系統也是非常有幫助的,這可能需要一點C基礎,至少,要能看的懂C。
作業系統修煉秘籍
本秘籍隻專注于介紹作業系統中的一些概念和術語,從前向後循序漸進,是以建議從前向後不要跳過,否則斷層而突然出現的概念導緻看不懂。
- 每天3分鐘作業系統修煉秘籍(1):秘籍簡介
- 每天3分鐘作業系統修煉秘籍(2):并行的假象和分時系統
- 每天3分鐘作業系統修煉秘籍(3):了解一點重要的作業系統發展曆史
- 每天3分鐘作業系統修煉秘籍(4):核心态和使用者态
- 每天3分鐘作業系統修煉秘籍(5):中斷
- 每天3分鐘作業系統修煉秘籍(6):系統調用
- 每天3分鐘作業系統修煉秘籍(7):Idle程序
- 每天3分鐘作業系統修煉秘籍(8):虛拟記憶體簡介
- 每天3分鐘作業系統修煉秘籍(9):虛拟記憶體分段
- 每天3分鐘作業系統修煉秘籍(10):棧空間之使用者棧和核心棧
- 每天3分鐘作業系統修煉秘籍(11):分頁和頁表
- 每天3分鐘作業系統修煉秘籍(12):頁翻譯——快速位址轉換
- 每天3分鐘作業系統修煉秘籍(13):OOM和Swap分區
- 每天3分鐘作業系統修煉秘籍(14):兩個緩沖空間:kernel buffer和io buffer
- 每天3分鐘作業系統修煉秘籍(15):IO操作和DMA、RDMA
- 每天3分鐘作業系統修煉秘籍(16):程序間通信(1):簡介
- 每天3分鐘作業系統修煉秘籍(17):程序間通信(2):管道
- 每天3分鐘作業系統修煉秘籍(18):程序間通信(3):套接字
- 每天3分鐘作業系統修煉秘籍(19):程序間通信(4):檔案映射和記憶體共享
- 每天3分鐘作業系統修煉秘籍(20):程序間通信(5):消息隊列和信号
- 每天3分鐘作業系統修煉秘籍(21):程序間通信(6):信号量
- 每天3分鐘作業系統修煉秘籍(22):程序間通信(7):鎖
- 每天3分鐘作業系統修煉秘籍(23):程式如何變成程序
- 每天3分鐘作業系統修煉秘籍(24):程序表和程序資料結構以及上下文切換
- 每天3分鐘作業系統修煉秘籍(25):程序狀态以及狀态轉換
- 每天3分鐘作業系統修煉秘籍(26):程序排程算法圖解說明
- 每天3分鐘作業系統修煉秘籍(27):Linux程序排程和調整優先級
- 每天3分鐘作業系統修煉秘籍(28):Linux程序的建立
- 每天3分鐘作業系統修煉秘籍(29):Linux程序退出和wait/waitpid
- 每天3分鐘作業系統修煉秘籍(30):Linux僵屍程序和孤兒程序
- 每天3分鐘作業系統修煉秘籍(31):并行和并發
番外篇
- 1.關于彙編和計算機的一些基本知識
- 2.關于寄存器和CPU執行指令的一些基本知識
- 3.關于CPU的一些基本知識總結
- 4.關于總線的一些基本知識總結
- 5.關于CPU上的高速緩存
- 6.關于多CPU、多核和多線程
- 7.作業系統中随處可見的抽象
作者:駿馬金龍
出處:http://www.cnblogs.com/f-ck-need-u/
Linux運維交流群:921383787
Linux系列文章:https://www.junmajinlong.com/linux/index/
Shell系列文章:https://www.junmajinlong.com/shell/index/
網站架構系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html
MySQL/MariaDB系列文章:https://www.cnblogs.com/f-ck-need-u/p/7586194.html
Perl系列:https://www.junmajinlong.com/perl/index
Go系列:https://www.cnblogs.com/f-ck-need-u/p/9832538.html
Python系列:https://www.cnblogs.com/f-ck-need-u/p/9832640.html
Ruby系列:https://www.junmajinlong.com/ruby/index
作業系統系列:https://www.junmajinlong.com/os/index/
精通awk系列:https://www.junmajinlong.com/shell/awk/index