《30天自制操作系統》筆記(13)——總結 進度回顧 上一篇介紹了操作系統實現多任務的方法。操作系統利用CPU的far模式的JMP指令、寄存器TR、GDT、TSS和PIT中斷這些功能實現了多任務,可見CPU在設計時就考慮到了計算機要具有多任務處理的能力。也就是說,CPU、PIC等硬件支持 ...
沒錯,就是你們這群高級程序員 其實我也是 所耳熟能詳但又講不明白的 鎖,只是本章不是如何用,也不是講它是什么原理,而是在實現我們操作系統的過程中所自然而然地產生的一個需求,並且我們從零開始來實現 鎖 本章需要和上一章 自制操作系統 熟悉而陌生的多線程 連起來看,因為正是上一章我們多線程輸出字符串時,發現了一些問題,導致我們需要想個辦法來解決,用你們高級程序員的牛逼的話來講,就是 為了解決線程不安全 ...
2020-03-08 15:48 0 971 推薦指數:
《30天自制操作系統》筆記(13)——總結 進度回顧 上一篇介紹了操作系統實現多任務的方法。操作系統利用CPU的far模式的JMP指令、寄存器TR、GDT、TSS和PIT中斷這些功能實現了多任務,可見CPU在設計時就考慮到了計算機要具有多任務處理的能力。也就是說,CPU、PIC等硬件支持 ...
自制操作系統Antz day09——實現內核 (下) 實現圖形化界面 https://www.cnblogs.com/LexMoon/p/antz09.html Antz系統更新地址: https://www.cnblogs.com/LexMoon/category/1262287.html ...
目錄 一、前景回顧 二、鎖的實現 三、使用鎖實現console函數 四、運行測試 一、前景回顧 上回我們實現了多線程,並且最后做了一個小小的實驗,不過有一點小瑕疵。 可以看到黃色部分的字符不連續,按道理應該是“argB Main”,這是為什么呢?其實仔細思考一下 ...
目錄 一、前景回顧 二、編寫makefile 三、實現Assert斷言 四、實現字符串操作函數 五、測試 一、前景回顧 上一回我們詳細地講解了整個系統的中斷工作流程,整個中斷系統比較難的地方在於中斷的執行流程,我開始學的時候對這一塊也是比較模糊的,感覺不知從何入手。現在已經很清楚 ...
一,制作真正的IPL(啟動程序裝載器) 今天的目的是將昨天的啟動程序裝載器來裝載程序。 ①:磁盤最初的512字節是啟動區。為了裝載下一個512字 ...
本書依靠的教材是於淵的《Orange'S:一個操作系統的實現》 實驗環境及工具 ArchLinux(windows也可以) 代碼編輯器Emacs(你盡情使用自己喜歡的編輯器) nasm (一個開源的匯編器,可以從sourceforge下載,也可以從Linux發行版的軟件 ...
Antz系統更新地址: https://www.cnblogs.com/LexMoon/category/1262287.html Linux內核源碼分析地址:https://www.cnblogs.com/LexMoon/category/1267413.html 在前幾天的任務中 ...
1.第一節:最小的操作系統(引導扇區) 1.1環境准備 1.vmware虛擬機: 建立一個新的空白的虛擬機,命名為Tinix.添加軟盤,使用自制的映像文件 虛擬機設置: 2.nasm編譯器 3.notepad++ 1.2制作映像文件 1.boot.asm文件 ...