自製作業系統day1
途中遇到的問題:
按書上說明做好第乙個helloos.img的時候作者提供的16位軟體不相容,想用vm裝,一上午死活裝不上去,甚至想強行把.img變成.iso,後來才知道img是軟盤映像,不能新增cd或者硬碟的驅動。解決之後成功hello world。
dw 1 ;beginning of fat
db 2 ;number of fat(must be 2)
dw 224 ;根目錄大小(一般為224項)
dw 2880 ;該磁碟大小)必須為2880扇區)
db 0xf0 ;磁碟種類(必須位0xf0)
dw 9 ;length of fat(9 section)
dw 18 ;the number of section one track has(磁軌)
dw 2 ;磁頭數(必須是2)
dd 0 ;不使用分割槽
dd 2880 ;重寫一次磁碟大小
db 0,0,0x29 ;意義不明,固定
dd 0xffffffff ;(maybe)卷標號碼
db "lj-os " ;磁碟名稱(11b)
db "fat12 " ;磁碟格式名稱(8b)
resb 18 ;空18b
;程式主體
db 0xb8,0x00,0x00,0x8e,0xd0,0xbc,0x00,0x7c
db 0x8e,0xd8,0x8e,0xc0,0xbe,0x74,0x7c,0x8a
db 0x04,0x83,0xc6,0x01,0x3c,0x00,0x74,0x09
db 0xb4,0x0e,0xbb,0x0f,0x00,0xcd,0x10,0xeb
db 0xee,0xf4,0xeb,0xfd
;資訊顯示部分
db 0x0a,0x0a ;2個換行
db "hello, world!"
db 0x0a
db 0
resb ox1fe-$ ;填寫0x00直到0xfe,$代指前已輸入的132個位元組
db 0x55,0xaa
;啟動區外部分的輸出
db oxf0,0xff,0xff,0x00,0x00,0x00,0x00,0x00
resb 4600
db oxf0,0xff,0xff,0x00,0x00,0x00,0x00,0x00
resb 1469432
30天自製作業系統day1
一 先說說書中的軟體 cons 9x.bat檔案 和 cons nt.bat作用相同,只是用於windows95平台,所以相應的程式為command。run.bat檔案 內容是copy helloos.img z tools qemu fdimage0.bin 此句是將helloos.img複製為f...
30天自製作業系統筆記 DAY1
作業系統課上的level3決定做這個了,下午馬原大概看了一下第一章,是關於扇區啟動的,晚上試了一下,遇到幾個問題,總結一下。1.現在沒有軟盤了 使用了u盤作為啟動器,使用usbbit或win32diskmanager來將img裝載到u盤上,現在u盤變為1.35m,模擬為了fat12的軟盤 2.開機無...
30天自製作業系統
第一天的內容很少,是一些簡單的基礎知識,在這裡我就沒有必要寫出來了,只說出大概的輪廓了,然後我會對其中的幾點進行詳細的解釋。文章的第一天的輪廓大概是這樣的,作者首先用二進位制編輯器做了乙個顯示二進位制的程式,然後用彙編完全db的形式,後又進行改善,最後以比較標準的組合語言編寫,但程式主體部分還沒有翻...