有效的網站建設公司/seo黑帽教程視頻
[手寫OS]動手實現(xiàn)一個OS之第一步-環(huán)境以及引導扇區(qū)
環(huán)境準備
- 一臺可用計算機(linux我不知道,我用的Windows)
- 匯編編譯器NASM
- 一個方便的軟盤讀寫工具
- VirtualBox
匯編編譯器NASM
官網地址:https://www.nasm.us/pub/nasm/snapshots/latest/win64/(windows的地址)
直接下載地址:https://www.nasm.us/pub/nasm/snapshots/latest/win64/nasm-2.17rc0-20230220-installer-x64.exe (我的版本是 2.17)
下載后得到:
然后點擊安裝
選擇好你要安裝的位置,記住自己安裝在哪兒了(之后配置環(huán)境變量有用!)
然后一路 Next
結束后,找到你的軟件安裝位置
并設置環(huán)境變量(這些步驟就不用講了吧)
一個方便的軟盤讀寫工具
在linux中有dd命令,windows要下載:[http://www.chrysocome.net/downloads/dd-0.5.zip][http://www.chrysocome.net/downloads/dd-0.5.zip]
解壓,準備好其中的dd.exe
Virtual Box
下載地址: https://www.oracle.com/virtualization/virtualbox/
開始
-
找一個文件夾,例如我在F盤下有一個MyOS文件夾
在此處創(chuàng)建一個虛擬磁盤
在此打開cmd命令窗口 輸入
diskpart
彈出窗口
輸入
create vdisk file="F:\MyOS\dingst.vhd" maximum=10 type=fixed
解釋:
- file= :創(chuàng)建你的虛擬磁盤位置文件
- maximum= : 創(chuàng)建10M
- type=fixed: 固定分區(qū)
執(zhí)行后可以看到
-
編寫引導扇區(qū)匯編文件
org 07c00h mov ax,cs mov ds,ax mov es,ax call Disp jmp $ Disp:mov ax,BootMsgmov bp,axmov cx,16mov ax,01301hmov bx,000chmov dl,0int 10h BootMsg: db "Hello, My OS!" times 510 - ($-$$) db 0 dw 0xaa55
并保存為 hello.asm
-
通過之前的匯編器編譯該文件
nasm .\hello.asm -o .\boot.bin
編譯成boot.bin二進制文件
-
通過軟盤讀寫工具dd.exe將boot.bin寫入到dingst.vhd中
先將dd.exe復制到當前文件夾下
然后在命令窗口中執(zhí)行:
.\dd if=.\\boot.bin of=.\\dingst.vhd
出現(xiàn)下面的內容說明已經寫入成功
使用VirtualBox啟動你寫的這個系統(tǒng)
打開VirtualBox > 新建
內存開個4M,不要給自己整復雜了!
選擇已有的虛擬磁盤文件
找到你的寫好的那個虛擬磁盤文件
然后啟動,等待,成功!