《30天自制操作系統》筆記(03)——使用Vmware


《30天自制操作系統》筆記(03)——使用Vmware

進度回顧

上一篇,實現了用IPL加載OS程序到內存,然后JMP到OS程序這一功能;並且總結出下一步的OS開發結構。但是遇到了真機測試和U盤啟動的一些問題。本篇就來解決之。

遇到的問題

物理機測試

簡單來說,把軟盤(U盤)做成啟動盤后,自然想要用來啟動物理機器。畢竟這才是真正的測試。(用QEMU總沒多大的成就感)但物理機測試的麻煩在於太慢了,每次都要關掉Windows,重啟,測試,然后再重啟Windows。而且還沒辦法截圖

而用Vmware代替真機就好了,啟動速度比真機快得多,還可以截圖。而且對我來說Vmware比QEMU還有另一個好處,稍候說明。

用U盤代替軟盤

《30天自制操作系統》的作者一直在用軟盤作啟動盤,而現在基本上見不到軟盤了。我一開始用U盤代替軟盤,沒發現問題。但是在JMP到OS程序后就有問題了:JMP后計算機就沒有任何反應了。這肯定是U盤和軟盤的差異造成的,需要一些兼容性的匯編代碼。無奈我匯編語言沒好好學,目前解決不了這個問題。

解決方案

基於上述兩個麻煩的問題,我發現只有用Vmware+軟盤映像的方式才能順利進行后續的學習。Vmware代替真機測試,既解決了重啟慢、無法截圖的問題,又可以直接把haribote.img文件當做軟盤來用,這就完全虛擬出了《30天自制操作系統》中的真機環境,所以不會再有環境配置方面的問題了。

至於U盤和軟盤的差異,待我學好了匯編,再來解決也不遲。而QEMU從U盤啟動還得學啊學搜啊搜,用Vmware的話,在BIOS里選擇啟動項就好了。這也是Vmware的好處,減少要學的外圍的東西。

配置Vmware

首先創建一個Vmware虛擬機,選擇Typical,點擊Next。

選擇"I will install the operating system later.",點擊next。

選擇"Other",版本也選擇"Other",點擊next。

選擇合適的名稱和路徑,點擊next。

選擇"store virtual disk as a single file",點擊next。

點擊finish。

點擊"Edit virtual machine settings"。

選擇"Floppy",選中"Connect at power on",選擇"Use floppy image file:",點擊Browse,找到制作好的鏡像文件。選中"Read Only"。

點擊OK。

啟動虛擬機,在下圖所示的界面處點擊"F2",進入虛擬機的BIOS。

虛擬機的BIOS界面中,選擇Boot,把Legacy Floppy Drives選項調到最上面。這樣虛擬機就會從剛剛軟盤鏡像文件啟動了。

配置完成,"F10"保存,虛擬機自動重啟,效果如下!

成功!

總結

今后的學習過程是:

  1. 編碼,用makefile編譯得到*.img文件。
  2. 用make run命令啟動QEMU測試。
  3. 配置"floppy image file"(如果文件名改了),啟動Vmware進行測試。
  4. 等我學好了匯編(大概個把月吧),把U盤啟動的代碼寫寫,再用U盤測試。

 

點此查看下一篇《30天自制操作系統》筆記(04)——顯示器256色


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM