内核 汇编 img文件格式 FAT12格式

最近搞了下汇编。最初还是看了一本病毒的书,里面代码都是汇编的,很多看不懂,如int 21h等,于是乎就学了下汇编,收获颇大。建议想学内核的学下汇编先。

汇编有好几种,主要是格式的问题,有intel格式和AT&T格式的,各有自己的特点,很难说孰优孰劣。主要的环境有这么几种,masm、nasm、gas(gcc 的一部分)。后来看了一本write your own os 的书,照着做,写了个bootloader,boot部分也就是mbr(前512字节,即第一扇区),程序在在mbr中搜索loader.bin,在loader.bin中进入保护模式,完成分页,分段,及中断控制等工作,整个代码很简单,也很初级,下一步是实现进程。我想把前段时间工作总结下。

首先说.img文件格式,img文件为二进制格式,遵从fat12规范。 要介绍文件格式,首先从存储介质说起,存储介质通常都以 sector 的形式分块,通常一个 sector 512 字节,磁盘就是一块又一块的 sector 构成的。为了实现文件系统,即以文件的形式对磁盘进行操作,磁盘的第一个 sector 为引导扇区,存储一些启动信息及代码等,接下来的扇区为 FAT 表, FAT 表有两个,即 FAT1 FAT2 FAT 表里面用到一种数据结构来表示文件。由于文件的大小不同,有的文件占用 1 个扇区,有的文件占用多个扇区,为了表示一个文件中的扇区数,在对文件进行描述时,给出其占用的第一个区块号,在 FAT 表区,在扇区对应的位置填入下一区块编号,若为最后一个区块,则填入 FFF fat12 ),在 FAT12 格式中,每一个扇区对应 FAT 表中的 12 位, FAT16 16 位, FAT32 32 位。 FAT12 文件描述采用 32 字节,存储在根目录区中。  

FAT12存在一个数据结构,叫做BPB(BIOS parameter block),其存在磁盘的第一扇区中。

  
(由于无法插入图片,图文版将以pdf出现)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值