上节我们讲了,通过通过调用 Int 13/AH=08h中断,可以得到u盘chs结构的数据信息,程序博主已经上传到百度云了,有兴趣的读者可以下载下来,将程序编译后,写到u盘中,然后从u盘启动(真机启动,或是用qemu从u盘启动都可以)。
下面是博主的两个u盘的chs结构,大家可以看看。
大家可以发现,u盘每个 cyliner的扇区数都是从第1到第63,
而博主8GB的u盘的head是从0到254,
2GB的u盘的head是0到63
因为《30天自制os》的作者只读了软盘的10个cylinder,软盘10个cylinder的大小是10x2x18x512=180KB
如果我们要用u盘,那也只需要读180KB的内容到内存的0x8000就可以了,