一,制作真正的IPL(啟動程序裝載器) 今天的目的是將昨天的啟動程序裝載器來裝載程序。 ①:磁盤最初的512字節是啟動區。為了裝載下一個512字 ...
天自制操作系統 筆記 CPU的 位模式 進度回顧 上一篇中實現了啟用鼠標 鍵盤的功能。屏幕上會顯示出用戶按鍵 點擊鼠標的情況。這是通過設置硬件的中斷函數實現的,可以說硬件本身的設計就具有事件驅動的性質,所以軟件層面上才有基於事件的消息機制。 但上一篇沒有說明中斷的來龍去脈,本篇就從頭到尾描述一下CPU與此相關的設置問題。 Segment 位的CPU使用 條地址線,能區分 G個內存地址。每個內存地 ...
2014-06-03 17:43 7 5442 推薦指數:
一,制作真正的IPL(啟動程序裝載器) 今天的目的是將昨天的啟動程序裝載器來裝載程序。 ①:磁盤最初的512字節是啟動區。為了裝載下一個512字 ...
《30天自制操作系統》筆記(13)——總結 進度回顧 上一篇介紹了操作系統實現多任務的方法。操作系統利用CPU的far模式的JMP指令、寄存器TR、GDT、TSS和PIT中斷這些功能實現了多任務,可見CPU在設計時就考慮到了計算機要具有多任務處理的能力。也就是說,CPU、PIC等硬件支持 ...
《30天自制操作系統》筆記(03)——使用Vmware 進度回顧 在上一篇,實現了用IPL加載OS程序到內存,然后JMP到OS程序這一功能;並且總結出下一步的OS開發結構。但是遇到了真機測試和U盤啟動的一些問題。本篇就來解決之。 遇到的問題 物理機測試 簡單來說,把軟盤(U盤)做成 ...
《30天自制操作系統》筆記(07)——內存管理 進度回顧 上一篇中處理掉了絕大部分與CPU配置相關的東西。本篇介紹內存管理的思路和算法。 現在想想,從軟件工程師的角度看,CPU也只是一個軟件而已:它的功能就是加載指令、執行指令和響應中斷,而響應中斷也是在加載指令、執行指令。就像火車沿着一條 ...
光盤中文翻譯版:https://github.com/yourtion/30dayMakeOS.git 原版光盤(含iso文件):https://github.com/sky5454/30daysMakeOS-Origin-ISOfiles.git 原版光盤git版本:https ...
暑假果然是滋生懶散的溫床. (╯‵□′)╯︵┻━┻ 好久不動都忘記之前做到哪里了, 上次好像做到了C語言的引入, 這一節所做的東西都相當輕松, 將會繪制出操作系統的基本界面. 繪圖的原理 按照書中所說, 將值寫入到顯存中就能在屏幕上顯示相應的像素 ...
《30天自制操作系統》筆記(09)——繪制窗口 進度回顧 上一篇中介紹了圖層式窗口管理的思路和算法。在此基礎上,本篇就解決繪制窗口及其簡單的優化問題。 這里稍微吐槽一下《30天自制操作系統》原作者。全書我剛剛看了三分之一,寫得確實不錯,但是我能感受到原作者是習慣用匯編語言和匯編思維來寫程序 ...
上傳,方便不好使用光驅的同學。 鏈接:https://pan.baidu.com/s/1UILb2e8PvlK8JbzT4ASOtw 密碼:edop ...