讓系統跑起來 要寫一個操作系統,我們首先要有一個儲存系統的介質,原版書似乎是06年出版的,可惜那時候沒有電腦,沒想到作者用的還是軟盤,現在的電腦誰有軟驅?不得已我使用一張128M的SD卡來代替,而事實上你用的是U盤還是軟盤對我們的操作系統沒有影響 ...
暑假果然是滋生懶散的溫床. 好久不動都忘記之前做到哪里了, 上次好像做到了C語言的引入, 這一節所做的東西都相當輕松, 將會繪制出操作系統的基本界面. 繪圖的原理 按照書中所說, 將值寫入到顯存中就能在屏幕上顯示相應的像素, 在asmhead.nas 中有這一段: 調用十號中斷來指定顯卡模式, 后面的幾個MOV指令用來儲存和顯示有關的關鍵信息 為什么不直接用常量呢 , 在bootpack.c中有 ...
2014-08-06 21:45 10 1814 推薦指數:
讓系統跑起來 要寫一個操作系統,我們首先要有一個儲存系統的介質,原版書似乎是06年出版的,可惜那時候沒有電腦,沒想到作者用的還是軟盤,現在的電腦誰有軟驅?不得已我使用一張128M的SD卡來代替,而事實上你用的是U盤還是軟盤對我們的操作系統沒有影響 ...
梳理項目結構 項目做到現在, 前頭的好多東西都忘了, 還是通過Makefile重新理解一下整個項目是如何編譯的: 現在我們擁有這么9個文件: ipl10.nas ...
這一次的學習相當曲折, 主要是因為粗心, Makefile里面的錯誤導致了文件生成出現各種奇奇怪怪的問題, 弄得心力交瘁, 因此制作過程還是盡量按着作者的路子來吧. 作者提供的源碼的注釋在中文系統下是亂碼, 而且代碼的分隔用了兩個Tab, 在這里要處理一下: :%s/;.*//g 刪除所有 ...
一,制作真正的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 ...