计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

用扩展INT13H研析并恢复大容量硬盘分区信息链表

2015-04-12 01:09
导读:计算机论文论文,用扩展INT13H研析并恢复大容量硬盘分区信息链表怎么写,格式要求,写法技巧,科教论文网展示的这篇文章是很好的参考:用扩展INT13H研析并恢复大容量硬盘分区信息链表江西

用扩展INT13H研析并恢复大容量硬盘分区信息链表

江西宜春学院计算机系 刘 健

内容摘要:本文利用扩展INT13H的磁盘地址数据包及相关调用,分析了整个分区链表并给出了链表中任一结点分区信息丢失或被破坏之后的一种恢复方法。

关键字:扩展INT13H、数据包、分区信息、链表、恢复

一、 扩展INT13H相关读写接口规范概述

扩展INT13H接口设计的目的是为了扩展BIOS的功能,使之能处理柱面数大于1024的硬盘,并支持移动存贮介质的锁定、解锁和弹出等各类新增功能。

1、 数据类型定义:

BYTE 一字节; WORD 二字节; DWORD 四字节; QWORD 八字节;

磁盘读写地址数据包DRWAP(Disk Read Write Address Packet),利用该数据包中断INT13H可以直接读写处理目前主流硬盘上的任一扇区,匆需理会传统磁盘概念中的通过柱面号、磁头号及扇区号(CHS)的物理扇区定位方式。

DRWAP结构如下:

Struct DRWAP

{ BYTE PacketSize;//数据包所占字节数,有10H和18H两种,本文用前者

BYTE Reserved;//保留字节,设为00H

WORD Blockcount;//传输的数据块个数(最大值为7FH),以扇区为单位

DORD TransferBuffer;//传输缓冲区地址(SEG:OFFSET)

QORD AbsoluteBlockNumber;//磁盘起始绝对扇区号(主引导扇区为0号)

}

AbsoluteBlockNumber与传统CHS的关系如下:

AbsoluteBlockNumber=(Cylinder*NumHeads Head)*SectorPerTrack Sector-1

DRWAP数据包的获取及实际操作

2、 定义磁盘读写地址数据包获取指定扇区之内容

入口参数:AH=42H; DL=80H; DS:SI=DRWAP首地址

出口参数:CF=NC OK;CF=CY ERROR

二、分区信息链表解析

读取主引导扇区操作过程:(为操作的连续性,本文不采用传统INT13H的功能号02)磁盘读写地址数据包按如下方式定义:

进入DEBUG状态之后,DS和SI采用当前默认值,假设为DS=1216,SI=0000 则E命令或F命令从1216:0000处输入以下16个字节内容

1216:0000 10 00 01 00 00 02 16 12-00 00 00 00 00 00 00 00

数据包长度=10H=16个字节 保留字节=00H 要传输的扇区个数=0001H=1个

缓冲区地址DS:SI=1216:0200 磁盘起始绝对扇区号=0000000000000000H=0号

-A100

1216:0100 MOV AH,42

MOV DL,80

INT 13

    上一篇:探讨计算机网络中心的雷电防护技术毕业 下一篇:没有了