资源预览内容
第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
第9页 / 共9页
亲,该文档总共9页全部预览完了,如果喜欢就下载吧!
资源描述
面向对象程序设计磁盘工具(ASM汇编)Ap0006307 黎智峰系统设计要求面向过程的开发语言。仿照Windows界面,能运用菜单和窗口显示。 可对硬盘任意扇区和CMOS进行读取、编辑、写入、备份、恢复等操作,包括MBR、DBR等重要特殊扇区的操作。 支持多个硬盘,能显示各硬盘的分区情况。较友善的界面和操作提示。 具体开发环境软件名称:Disk Assistant (磁盘助手)软件环境:MS-DOS 6.22 或以上(包括Win9x下的MS-DOS方式) 硬件环境:支持扩展中断13的一个或多个硬盘 开发环境:Microsoft Masm 6.11、Link 5.31 主要功能选择不同硬盘动态选择不同分区重点设计对扇区编辑的模块根据输入定位到硬盘上存在的任意扇区并可以进行操作显示硬盘的各种信息和分区列表有一定的警告信息以防止误操作程序开始检测运行环境检测硬盘参数选择硬盘MBR以及各DPT的处理DBR以及各Boot的处理任意扇区的处理CMOS的处理显示硬盘逻辑、物理信息和分区情况屏蔽硬盘部分功能符合运行不符合运行系统架构图主要核心难题及解决大容量硬盘的读写 中断13的容量瓶颈: 10位二进制表示柱面数 8位二进制表示磁头数 6位二进制表示扇区数最大容量1024*255*63=8.4(G)解决办法:使用扩展中断13可扩展性分区搜索算法分析问题的提出 本分区的始终相对数据和下一分区的始终相对数据有类似中断13的限制。本分区或下一分区大于8.4G时,相对数据始终为一个确定的值(C1024,H255,S63),很多磁盘工具软件都是利用相对数据来计算分区容量和寻找下一分区的位置,这样就会导致计算和寻找错误。分区搜索算法分析问题解决 尽管相对数据为确定数,但引导扇区数和分区占用扇区数是实际数据,把两个数据相加得到的扇区数就是该分区占用的扇区数,而且也是下一分区分区表所在的分区,就可以一直搜索下一分区。 利用分区表中位置1c6h-1c9h的引导扇区绝对数和1cah-1cdh的分区总扇区数计算下一个分区的分区表所在的绝对扇区数,分区总数计数器加1,再检测两个数据段,如果1dah-1ddh全为0,则该分区为最后分区,搜索结束。 谢谢!
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号