30天自製作業系統中edimg的含義

2021-07-31 08:57:33 字數 797 閱讀 9412

在學習30天自製作業系統時,遇到乙個問題就是:

$(edimg)   imgin:../z_tools/fdimg0at.tek \

wbinimg src:ipl.bin len:512 from:0 to:0 \

copy from:haribote.sys to:@: \

imgout:haribote.img

書上說是製作映象檔案,但是沒有非常清楚的說明白。

弄清楚這個問題,首先需要將fat12檔案系統弄清楚,

fat12檔案系統分為四個部分,【引導扇區】、【fat檔案分配表1和2】、【根目錄區】、【使用者資料區】

0x0000 、0x0200 、0x1400、0x2600 、0x4200

也就是是說根目錄的位址是0x2600

而實際檔案存放資料的位址為0x4200

當儲存乙個檔案時,實際上修改了三個地方的資料,【fat檔案分配表1和2】、【根目錄區】、【使用者資料區】

他們的含義可以從目錄檢視:

而根據實際的二進位制檔案也可以證實這點.

首先檢視最後

0x4200的位址的資料,

該資料就是外部檔案haribote.sys檔案實際經過nask.exe 轉換為二進位制資料後的資料

而檢視位址0x2600的資料

該資料首先是haribotesys的大寫,沒有點,接著是一段亂碼,總共32個位元組,至於原因可以從上文所給的鏈結

中找到。

再看fat檔案分配表1,

最開頭的三個位元組固定,f0 ff ff

接著就是檔案所在的簇了,fat12 (512個位元組是乙個簇)

30天自製作業系統

第一天的內容很少,是一些簡單的基礎知識,在這裡我就沒有必要寫出來了,只說出大概的輪廓了,然後我會對其中的幾點進行詳細的解釋。文章的第一天的輪廓大概是這樣的,作者首先用二進位制編輯器做了乙個顯示二進位制的程式,然後用彙編完全db的形式,後又進行改善,最後以比較標準的組合語言編寫,但程式主體部分還沒有翻...

30天自製作業系統 導讀

說明 這是8月15日即將上市的一本新書,本文的摘選也可以命名為 30天自製作業系統 上市之前必讀。本書幽默,有趣,可以說是技術書裡的幽默書,讓您讀起來絕對不會感到乏味。在本書上市之前,您一定先要讀下此篇文章,可以避免在學習中走更多的閱讀彎路,因為更多的讀者會問,七百多頁,30天?是的,看完此篇內容,...

30天自製作業系統 startHaribote

haribote os tab 4 org 0x8400 mov si,msg call putloop mov al,0x13 mov ah,0x00 int 0x10 fin hltjmp fin msg db 0x0a db test db 0 putloop mov al,si add si...