www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > 小林coding
[導(dǎo)讀]大家好,我是小林。之前我小林把自己寫的操作系統(tǒng)系列文章的整理過PDF:小林的圖解系統(tǒng),大曝光!。不過我這個(gè)PDF偏向理論知識(shí)多一些,實(shí)戰(zhàn)的內(nèi)容少一些。最近有個(gè)讀者說,他把自己學(xué)習(xí)????課程的筆記整理成了一個(gè)PDF,已經(jīng)開源至Github,我也看了下,確實(shí)很不錯(cuò),非常硬核。??課...

大家好,我是小林。


之前我小林把自己寫的操作系統(tǒng)系列文章的整理過 PDF:小林的圖解系統(tǒng),大曝光!。


不過我這個(gè) PDF 偏向理論知識(shí)多一些,實(shí)戰(zhàn)的內(nèi)容少一些。


最近有個(gè)讀者說,他把自己學(xué)習(xí) 課程的筆記整理成了一個(gè) PDF,已經(jīng)開源Github,我也看了下,確實(shí)很不錯(cuò),非常硬核。


課程一直被公認(rèn)為學(xué)習(xí)操作系統(tǒng)的神級(jí)課程,其課程使用了一個(gè)小型的操作系統(tǒng) 還有一份配套的手冊(cè)來教學(xué)。雖然資料齊全但由于是英文,加之內(nèi)容本身的復(fù)雜性,上手還是有一些難度。


這里有一份開源的資料《給操作系統(tǒng)捋條線》,詳細(xì)講解了 系統(tǒng),除了源碼中的一些腳本文件幾乎覆蓋講述了所有代碼,從硬件到軟件各個(gè)方面都有所講述。這份資料恰如其名字一般實(shí)實(shí)在在地給操作系統(tǒng)捋了一條線出來,能夠讓讀者知道計(jì)算機(jī)從上電那一刻開始,操作系統(tǒng)是如何一步步建立起來的,是如何運(yùn)行起來的。資料的鏈接如下:


https://github.com/Rand312/xv6.git


https://gitee.com/rand_cs/xv6.git


全文將操作系統(tǒng)分為了五個(gè)大的部分:?jiǎn)?dòng),中斷,文件系統(tǒng),進(jìn)程,控制臺(tái),其他部分比如說內(nèi)存管理,鎖等等都是分散在那五大部分里面。每個(gè)部分作者都盡量細(xì)致到各個(gè)方面,并且附有詳細(xì)的文字描述或者流程圖。


比如說啟動(dòng)流程圖



再比如中斷流程圖



又比如讀寫文件的流程圖





看著這些圖感覺還行是吧,較為繁雜的部分基本都有類似的流程圖,《給操作系統(tǒng)捋條線》是真的如其名字一般將操作系統(tǒng)捋了 “一條線”  出來。其部分內(nèi)容截圖如下:

部分截圖《給操作系統(tǒng)捋條線》根據(jù) 主要講述了以下問題問題:


啟動(dòng)部分:首先便是啟動(dòng)部分, 的計(jì)算機(jī)啟動(dòng)過程與常見那幾大步驟稍稍不同,但本質(zhì)一樣,除了 揉在一起了,其他的沒什么,比較常規(guī),再者就是多處理器的情況可能大家不太熟悉,這一塊大概有這么一些問題:


  • 啟動(dòng)的大概過程, 這五個(gè)步驟是怎樣的?
  • 實(shí)模式保護(hù)模式的特點(diǎn),如何過渡?
  • ,段寄存器,段選擇子,段描述符,分段,平坦模式的簡(jiǎn)單認(rèn)識(shí)?
  • 分頁(yè)機(jī)制的特點(diǎn),如何開啟的?
  • 邏輯地址,虛擬地址,線性地址,物理地址各類地址什么意思,如何轉(zhuǎn)化?
  • 操作系統(tǒng)如何自舉,內(nèi)核如何從磁盤加載到內(nèi)存的?
  • 文件的簡(jiǎn)單認(rèn)識(shí)?
  • 多處理器的情況下計(jì)算機(jī)是如何啟動(dòng)的,什么是 什么是 ,通用啟動(dòng)算法是啥?
文件系統(tǒng): 將文件系統(tǒng)分為了 7 層,磁盤 緩存 日志 目錄 路徑 文件描述符,大概有這些問題:


  • 磁盤的簡(jiǎn)單認(rèn)識(shí),磁盤驅(qū)動(dòng)程序如何實(shí)現(xiàn)(如何讀寫磁盤)?
  • 如何設(shè)計(jì)一個(gè)簡(jiǎn)單的日志系統(tǒng),為什么日志系統(tǒng)能夠保證數(shù)據(jù)的一致性?
  • ,文件,目錄,目錄項(xiàng),文件描述符,文件結(jié)構(gòu)體,硬鏈接,軟鏈接各種名詞到底什么意思,它們之間又有什么關(guān)系?
  • 如何理解一切皆文件,為什么 , 這兩個(gè)系統(tǒng)調(diào)用就可以讀寫任意類型的文件?
  • 一些常見的文件系統(tǒng)調(diào)用比如 , 等等如何實(shí)現(xiàn)的?
中斷異常與系統(tǒng)調(diào)用:有時(shí)不加強(qiáng)調(diào)在 的架構(gòu)下一般統(tǒng)稱為中斷,它們實(shí)際的處理過程都差不多,只不過中斷來源不同而已,都是中斷源觸發(fā)中斷,生成中斷向量,然后 根據(jù)中斷向量去處理中斷,這一塊兒大概有這些問題:


  • 中斷和異常有什么區(qū)別?


  • 什么是軟件中斷? 軟件中斷和軟中斷是一個(gè)東西嗎?


  • 中斷控制器 、(、) 的簡(jiǎn)單認(rèn)識(shí),了解其基本工作原理?


  • 中斷的處理過程是怎樣的?


    • 向量號(hào),,門描述符(中斷門、陷阱門等)的簡(jiǎn)單認(rèn)識(shí)
    • 如何定位中斷服務(wù)程序(向量號(hào),,,門描述符,段描述符等之間的關(guān)系)?
    • 所謂的保存現(xiàn)場(chǎng)與恢復(fù)現(xiàn)場(chǎng)到底什么意思?
    • 中斷期間棧是如何變化的(用戶棧如何變化到內(nèi)核棧,內(nèi)核棧又如何變化到用戶棧)?
  • 多處理器下中斷有何不同,又是如何處理的?


  • 系統(tǒng)調(diào)用大致過程是怎樣的?


  • 系統(tǒng)調(diào)用時(shí)用戶態(tài)下程序的參數(shù)如何傳遞給內(nèi)核?


進(jìn)程: 只支持進(jìn)程,不支持線程,另外由于支持多處理器,在調(diào)度方面需要額外的鎖來避免競(jìng)爭(zhēng),有這么一些問題:


  • 系統(tǒng)調(diào)用是如何實(shí)現(xiàn)的(如何創(chuàng)建一個(gè)進(jìn)程)?
  • 第一個(gè)進(jìn)程又是如何創(chuàng)建的?
  • 系統(tǒng)調(diào)用是如何實(shí)現(xiàn)的,程序是如何從磁盤加載到內(nèi)存然后運(yùn)行的?
  • 程序與進(jìn)程的區(qū)別?
  • 調(diào)度器如何實(shí)現(xiàn),一個(gè)進(jìn)程如何被調(diào)度上 ?
  • 常見的調(diào)度算法及其優(yōu)缺點(diǎn)?
  • 進(jìn)程如何切換的,一些資源如寄存器,,頁(yè)表是如何變化的?
  • 如何實(shí)現(xiàn)進(jìn)程的休眠和喚醒,, 函數(shù)如何實(shí)現(xiàn)?
  • 如何實(shí)現(xiàn)的等待與退出,, 函數(shù)如何實(shí)現(xiàn)?
  • 僵尸進(jìn)程,孤兒進(jìn)程什么意思,如何解決?
  • 進(jìn)程是啥,有什么作用,如何實(shí)現(xiàn)?
  • 程序是從 開始執(zhí)行的嗎(簡(jiǎn)單了解了解運(yùn)行庫(kù))?
  • 堆到底是個(gè)什么玩意兒?如何實(shí)現(xiàn)?如何組織管理?
內(nèi)存管理: 的內(nèi)存管理較為簡(jiǎn)單,使用的是空閑鏈表法將空閑內(nèi)存組織起來,有這么一些問題:


  • 的物理內(nèi)存是如何管理的,虛擬內(nèi)存又是如何管理的,如何分配與回收內(nèi)存?
  • 虛擬地址空間物理地址空間應(yīng)該如何理解?
  • 為什么一般情況下 0 地址不能訪問,事實(shí)上 0 地址就真的不能訪問嗎?
鎖:鎖就其本身的實(shí)現(xiàn)上來說不難,難的是鎖的使用,內(nèi)核中的各種問題各種情況極其復(fù)雜,這里只簡(jiǎn)單聊聊:


  • 常見的兩種鎖,自旋鎖、休眠鎖如何設(shè)計(jì)?
  • 常見死鎖判斷,如何解決
控制臺(tái):主要是處理輸入輸出部分,特指鍵盤的輸入和顯示器的輸出,另外再有就是串口的使用,大概有這么一些問題:


  • 鍵盤、顯卡、串口的簡(jiǎn)單認(rèn)識(shí),鍵盤驅(qū)動(dòng),顯卡驅(qū)動(dòng),串口驅(qū)動(dòng)如何實(shí)現(xiàn)?
  • 按下一個(gè)鍵到輸出到屏幕這之間發(fā)生了什么?
  • 組合鍵的特殊功能是如何實(shí)現(xiàn)的?
  • 打印函數(shù) 是如何實(shí)現(xiàn)的, 兩系統(tǒng)調(diào)用的完整過程?
  • 為什么文件描述符 0、1、2 就表示標(biāo)準(zhǔn)輸入輸出錯(cuò)誤呢?
  • 如何實(shí)現(xiàn)一個(gè)簡(jiǎn)單的 ?
  • 重定向什么意思,如何實(shí)現(xiàn)?
  • 管道什么意思,如何實(shí)現(xiàn)?
  • 一些常用命令如 、等等如何實(shí)現(xiàn)的?



本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

北京2025年9月5日 /美通社/ -- 9月4日,在北京市人民政府新聞辦公室舉行的"一把手發(fā)布?京華巡禮"系列主題新聞發(fā)布會(huì)上,北京經(jīng)開區(qū)對(duì)外發(fā)布,北京經(jīng)濟(jì)技術(shù)開發(fā)區(qū)(簡(jiǎn)稱"北京經(jīng)開區(qū)&q...

關(guān)鍵字: 人工智能 模型 開源 AI

杭州2025年9月2日 /美通社/ -- 9 月 13–14 日,GOSIM HANGZHOU 2025 大會(huì)將在杭州隆重啟幕。本次大會(huì)由 GOSIM 全球開源創(chuàng)新匯主辦、CSDN 承辦,以國(guó)際化、社區(qū)化、強(qiáng)互動(dòng)為特色,...

關(guān)鍵字: SIM 開源 OS GO

首個(gè)采用高分辨率太陽(yáng)觀測(cè)數(shù)據(jù)訓(xùn)練的太陽(yáng)物理學(xué)人工智能 (AI) 基礎(chǔ)模型,旨在深入探索太陽(yáng)動(dòng)態(tài)表面,對(duì)可能干擾地球和太空技術(shù)的太陽(yáng)天氣做出有效規(guī)劃。 該模型已發(fā)布在 Hugging Face 開源平臺(tái),旨在加快...

關(guān)鍵字: IBM NASA 開源 模型

上海2025年8月22日 /美通社/ --?8月21日,移遠(yuǎn)通信正式推出開源生態(tài)新品——PI-SC200U智能生態(tài)開發(fā)板。憑借高性能、開源化、全接口三大優(yōu)勢(shì),其精準(zhǔn)覆蓋邊緣網(wǎng)...

關(guān)鍵字: 開源硬件 PI 4G 開源

深圳2025年8月4日 /美通社/ -- 近日,電子元件和工業(yè)品數(shù)字化全球供應(yīng)商歐時(shí)RS聯(lián)合四方維(Supplyframe)創(chuàng)新中心成功舉辦 "歐時(shí)RS創(chuàng)客沙龍——Arduino主題開放日"。活動(dòng)聚焦開源硬件與編程領(lǐng)軍平...

關(guān)鍵字: Arduino 開源 創(chuàng)客 智能未來

上海2025年8月1日 /美通社/ -- 7月28日,2025世界人工智能大會(huì)"大模型智塑全球產(chǎn)業(yè)新秩序"論壇在上海徐匯西岸成功召開。開源大模型為全球產(chǎn)業(yè)帶來新的變革和潛力,技術(shù)加速迭代創(chuàng)新,應(yīng)用與產(chǎn)...

關(guān)鍵字: 人工智能 AI SI 開源

上海2025年7月28日 /美通社/ -- 在世界人工智能大會(huì)(WAIC)期間,榮耀正式發(fā)布自研多模態(tài)感知大模型——MagicGUI大模型。作為榮耀推出的首個(gè)GUI開源大模型...

關(guān)鍵字: GUI MAGIC 開源 模型

深圳2025年7月25日 /美通社/ -- 在人工智能持續(xù)演進(jìn)、大模型加速應(yīng)用、邊緣計(jì)算架構(gòu)日益成熟的推動(dòng)下,智能終端正邁向更高性能、更強(qiáng)感知與更高開放性的全新階段...

關(guān)鍵字: 開源 高通 模型 智能終端

北京 2025年7月17日 /美通社/ -- 隨著AI迅速向邊緣領(lǐng)域挺進(jìn),對(duì)智能邊緣器件的需求隨之激增。然而,要在小尺寸的微控制器上部署強(qiáng)大的模型,仍是困擾眾多開發(fā)者的難題。開發(fā)者需要兼顧數(shù)據(jù)預(yù)處理、模型選擇、超參數(shù)調(diào)...

關(guān)鍵字: 開源 嵌入式設(shè)備 AI ADI

北京 2025年7月3日 /美通社/ -- 近日,北京積算科技有限公司(以下簡(jiǎn)稱"積算科技")正式推出GPU裸金屬算力服務(wù)套件,幫助客戶實(shí)現(xiàn)并行環(huán)境的分鐘級(jí)部署與出廠級(jí)性能校準(zhǔn),在GPU裸金屬算力上...

關(guān)鍵字: 金屬 GPU 性能優(yōu)化 操作系統(tǒng)
關(guān)閉