关于U盘启动操作系统《30天自制操作系统》

原创 2015年07月09日 18:51:55

原本的启动是从img启动的,而且这个img是用FAT12文件系统进行格式化的(具体去搜索FAT12文件格式,这里给大家推荐一篇http://www.doc88.com/p-646605198560.html),那么也就是说我们的img文件符合FAT12文件系统的格式了,接下来我们用winhex这个软件来查看我们的img文件,同时比对FAT12文件系统的格式,看是否我们的img文件同FAT12文件系统描述的相同:



从上图中可以看到里面有一个haribotesys的目录项,那么我们看看我们的U盘里面是否存在这个文件


从上图可以看到U盘里面确实存在HARIBOTE.SYS这个文件,说明我们的U盘在利用fdisk来拷贝img文件的同时就已经被FAT12文件系统格式化了,那么也就是说window下我们的U盘的大小应该为1.44M了,虽然在window下我们的U盘显示的是1.44M(这个高级格式化的结果,高级格式化是将U盘格式化为特定的文件系统格式,我们的U盘被FAT12格式化了,那么window就会以FAT12文件系统定义的信息来计算大小),但是实际上我们的U盘还是4G的(这个是低级格式化的结果,4G的计算是根据U盘的head(磁头)、sector(扇区)、cylinder(柱面)来计算的,这个计算与文件系统无关)。



那么下面的目录信息是怎么写到img文件中的呢?这个就得去看看Makefile了,其实在Makefile中进行拷贝的时候主要做的工作是FAT12文件系统格式化(wbinimg src:ipl.bin len:512 from:0 to:0 ),这个时候img已经被FAT12文件系统格式化了,接下来的文件拷贝的操作就会自动的修改FAT的位图、目录等相关控制信息,然后接着是文件的拷贝(copy from:haribote.sys to:@:)这个过程其实就是一个简单的文件的拷贝过程,当然文件的拷贝过程自然会修改文件系统的相关控制信息了。



从上面的讲解,再结合前面我写的的文章——如何制作从U盘启动,可以总结出来,如果在开发过程中没有遇到启动扇区的修改(也就是说ipl.nas)的修改的话,那么可以将生成的haribote.sys直接的拷贝到U盘即可,都不用fdisk来进行拷贝了,这样是不是更加的省事了呢。


好了,今天的文章的内容就这么多了,接下来我会结合《30天自制操作系统》这本书和linux0.01的源代码来对操作系统进行分析。



相关文章推荐

30天自制操作系统——用U盘启动自制系统

最近试读了《30天自制操作系统》的前两章,感觉很有意思。 但是发现里面写的系统都是用软盘启动的,现在在大多数电脑上已经看不见软驱了,所以如果想运行书中的操作系统只能通过qemu(随书光盘中已经附...

《30天自制操作系统》U盘启动,真机运行(16天)

首先说一下到目前为止U盘启动遇到的问题,首先的一个问题是“system volume information“,目前尚未解决,这个问题可能导致U盘启动失败,我猜测可能是由于每一次重新将OS写到U盘的时...

30天自制操作系统——用U盘启动自制系统

转自:http://blog.csdn.net/nonekey/article/details/8758715 最近试读了《30天自制操作系统》的前两章,感觉很有意思。 但是发...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

30天自制操作系统(第一天)

30天自制操作系统 题前记,买入30天自制操作系统这本书已经很久了,但是一直没有仔细看,所以打算开通一个博客,每天记录自己的点滴进步。   书中说阅读本书不需要相关储备知识,但实际上我认为该书还...

30天自制操作系统U盘启动

之前在看这本书的时候,就想着做U盘启动,但是那时候知识有限,也是借助软驱从U盘启动的,实质上还是软盘启动。 这两天研究了下U盘启动,总算是成功了。晒张图,这张图是我从U盘启动后读取dx寄存器的二进制...

30天自制操作系统——用U盘启动自制系统

最近试读了《30天自制操作系统》的前两章,感觉很有意思。 但是发现里面写的系统都是用软盘启动的,现在在大多数电脑上已经看不见软驱了,所以如果想运行书中的操作系统只能通过qemu(随书光盘中已经附带)...
  • NoneKey
  • NoneKey
  • 2013年04月04日 15:09
  • 12561

《30天编写操作系统》 如何制作U盘启动

笔者看了《30天编写操作系统》 之后,很想装一下B,所以一直很想让《30天编写操作系统》 的程序不只是在虚拟机里面运行,而且还希望将这个OS放到U盘上,从U盘启动,网上寻觅了各种方法均未实现我装B的伟...

《30天编写自己的操作系统》 关于如何让虚拟机从U盘启动

注意:必须要在开启虚拟机之前将U盘插入电脑,否则虚拟机可能无法检测到U盘 下面是步骤(图) 这里要选择“电源”——>"启动进入BIOS" 进入BI...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于U盘启动操作系统《30天自制操作系统》
举报原因:
原因补充:

(最多只允许输入30个字)