
?
學習編程,作業系統是你必須要掌握的基礎知識,那么作業系統到底是什么呢?
這還用說么,作業系統不就是Windows、Linux、Mac、IOS、Android、IOS這類我們天天都在用的東西么?
此話不假,但是作業系統作為計算機科學里的一門基礎學科,肯定不能這么接地氣對不對,總的來點高大上的概念,震懾一下你們吧,
根據百度百科的介紹,作業系統是管理計算機硬體與軟體資源的計算機程式,同時也是計算機系統的內核與基石,作業系統需要處理如管理與配置記憶體、決定系統資源供需的優先次序、控制輸入設備與輸出設備、操作網路與管理檔案系統等基本事務,作業系統也提供一個讓用戶與系統互動的操作界面,
這個介紹足夠高大上了吧,那么到底啥是作業系統呢,簡單來說,作業系統就是管理計算機硬體和軟體資源的一種軟體,計算機里的硬碟、滑鼠鍵盤、顯示幕等設備,都要由它來管理,你打開游戲、打開瀏覽器或者是看電影,也都要通過作業系統來執行,
沒有了作業系統,電腦就失去了靈魂,只是一堆硬體而已,
了解了作業系統的基本概念之后,接下來我們再來看看,為什么我們要學習作業系統呢?
首先,當然是因為面試要考啦,
其次,無論你學習什么編程語言,和都避免不了和作業系統打交道,比如你學習Java,用到多執行緒技術,實際上作業系統才是負責管理行程和執行緒的,所以Java里的執行緒常常要和作業系統的執行緒或者行程一一對應,
此外,你會學習到記憶體分配的知識,比如c++里可以直接分配一段記憶體,此時實際上是呼叫作業系統提供的API進行記憶體分配,
作業系統不僅負責管理行程和執行緒的調度、記憶體的分配和管理,以及設備和IO的處理,還要負責管理檔案系統和網路,
最重要的是,作業系統要負責把代碼從硬碟加載到記憶體,再告訴cpu去讀取記憶體代碼,這是一切計算機運行的基礎,
如果不懂作業系統,你在未來學習編程語言的高級特效,涉及到執行緒行程調度,記憶體分配,或者是學習Linux相關的知識時,都會一頭霧水,所以,只有學會了作業系統,我么才能夠更好地學習其他語言和技術,
今天我們就來推薦一份關于作業系統的優質書單!請查收!
作業系統書單

?
深入理解計算機系統
深入理解計算機系統(第2版) 這本書的全名是:Computer Systems:A Programmer’s Perspective,所以它又被稱為 CSAPP,如果想打下扎實的計算機基礎又不想把作業系統計算機結構編譯原理這些書統統讀一遍,閱讀深入理解計算機系統是最有效率的方式,
Randal E. Bryant,1981年于麻省理工學院獲得計算機博士學位,1984年至今一直任教于卡內基-梅隆大學,
David R. O’Hallaron卡內基梅隆大學電子和計算機工程系教授,

?
作業系統導論
這是一本關于現代作業系統的書,全書圍繞虛擬化、并發和持久性這3個主要概念展開,介紹了所有現代系統的主要組件(包括調度、虛擬記憶體管理、磁盤和I/O子系統、檔案系統 ),
本書共50章,分為3個部分,分別講述虛擬化、并發和持久性的相關內容,本書大部分章節均先提出特定的問題,然后通過書中介紹的技術、演算法和思想來解決這些問題,筆者以對話形式引入所介紹的主題概念,行文詼諧幽默卻又鞭辟入里,力求幫助讀者理解作業系統中虛擬化、并發和持久性的原理,
本書內容全面,并給出了真實可運行的代碼(而非偽代碼),還提供了相應的練習,適合高等院校相關專業教師教學和高校學生自學,
作者簡介
雷姆茲·H.阿帕希杜塞爾(Remzi H.Arpaci-Dusseau)和安德莉亞·C.阿帕希杜塞爾
(Andrea C.Arpaci-Dusseau)夫婦是美國威斯康星大學計算機科學教授,二人都從事計算機作業系統方面的教學和研究,

?
30天自制作業系統
《30天自制作業系統》是一本兼具趣味性、實用性與學習性的作業系統圖書,作者從計算機的構造、匯編語言、C語言開始解說,讓讀者在實踐中掌握演算法,在這本書的指導下,從零撰寫所有代碼,30天后就可以制作出一個具有視窗系統的32位多任務操作系,
《30天自制作業系統》適合作業系統愛好者和程式設計人員閱讀,
作者簡介
川合秀實(Hidemi Kawai),生于1975年,是一位以“輕量化”編程思想見長的“非主流”開發者,2000年因自行開發的OSASK專案而名聲大噪,OSASK是一個開源的32位微型作業系統,它并非以Linux等內核為基礎,而是完全從零開始開發,在一張軟盤的容量下實作了GUI、多任務、多語言等高級特性,啟動時間只需1秒,本書的內容可以看成是作者以OSASK為藍本,教會讀者從零開始開發一個作業系統,同時可以讓初學者在撰寫作業系統的程序中,了解作業系統背后更多的知識,
更多優質書單推薦!
搞定JVM基本原理和面試題,看看這幾本書妥妥夠了!
還搞不定Java多執行緒和并發編程面試題?你可能需要這一份書單!
這份Java Web必讀書單,值得所有Java工程師一看!
【程式員書單】一個為程式員推薦好書的公眾號,每天為你pick精品書單,優質學習資源和軟體工具,關注前沿技術與行業資訊,更關注你的自我提升,作者黃小斜是阿里巴巴 Java 工程師,希望陪你一起一年讀50本書!

?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/193096.html
標籤:Java
下一篇:單鏈表二進制加一資料結構耿國華
