扇区 磁道,修复0磁道扇区损坏软盘的新方法

修复0磁道扇区损坏软盘的新方法 - 电脑诊所 - 电脑教程网

修复0磁道扇区损坏软盘的新方法

日期:2006-12-21   荐:
  修复0磁道扇区损坏软盘的新方法

 

  摘 要:本文介绍一种修复0磁道扇区损坏软盘的新方法,该思想新颖、手段巧妙、原理可靠、实现容易、效果良好,是一种首创的软修复新方法。该方法对于恢复大部分0磁道扇区损坏软盘,变废为宝,特别是对硬盘也适用,符合当前兴起的“绿色电脑”精神,具有全面推广、普遍适用的现实指导意义,是一种行之有效的好方法。  关键词:修复 0磁道 扇区 磁盘参数 引导扇区 分配表 根目录 众所周知,当软盘出现0磁道扇区损坏后,DOS系统以及现行的各种磁盘工具软件都拒绝使用,因而造成相当一部分资源的报废。其实这些宝贵资源都完全能够使用 (如借助于笔者开发的DISK.COM,详见《中国计算机用户》93.9),特别是大部分可以修复好并能在DOS 系统下使用。笔者新发明了一种修复0磁道扇区损坏软盘的好方法,其原理通用于各种软、硬磁盘。 DOS系统为了管理磁盘文件,占用了0面0磁道的全部扇区和1面0磁道的部分扇区或更多。这些扇区是DOS磁盘文件系统的重要部位,不容许有坏扇区存在。这部分是由3项内容构成:DOS引导扇区(BOOT)一个;文件分配表(FAT)两个;文件根目录区(DIR)。经过反复试验、研究证明:上述3项内容中只有文件分配表可以有一个出错,换言之就是其中可以有坏扇区 (当然其备用功能就消失了,另一个出错则不能正常存取文件。其中 DR-DOS 6.0仅容许第二分配表错,MS-DOS 3.3、5.0和6.0容许任意一个出错),其余不容许有坏扇区。 根据以上结论,满足上述条件就可以正常使用磁盘。因此,只要将损坏的扇区排除在外即可,或者将其移到一个文件分配表中(另一个必须保证全为好扇区)。如何移动是关键,逻辑扇区的位置是根据物理扇区格式化后确定的,一般是不能变更的。笔者经过对磁盘I/O参数表的分析和研究,发现了磁盘参数与容量及各部分扇区起始位置等之间的关系,终于发现了“新大陆”,找到了修复、利用0磁道扇区损坏软盘的好方法。 综上所述,不难得知:可以修复并在DOS系统下使用的软盘极限条件是0面0磁道1扇区必须是好的,其余都好办。反之,则只能由DISK.COM使用。 一、实现的手段 1、设置保留扇区数,将坏扇区包容进去。如:设保留扇区数为2,可将0面0磁道2扇区划入保留之列(此方法在MS-DOS 3.3和DR-DOS 6.0下通过,MS-DOS 5.0和6.0无效)。 2、设置文件分配表个数,减少或增加个数,以便于将坏扇区排除在外(此方法在DR-DOS 6.0和MS-DOS 3.3下通过,MS-DOS 5.0和6.0无效)。 3、设置文件分配表扇区数,同上,同时须相应修改每簇扇区数(此方法在DR-DOS 6.0 以及MS-DOS 3.3、5.0和6.0下通过)。 4、设置每簇扇区数,同上,同时须相应修改文件分配表个数。原则是总簇数乘以1.5除以512小于文件分配表个数,总簇数等于总扇区数除以每簇扇区数(此方法在DR-DOS 6.0以及 MS-DOS 3.3、5.0和6.0下通过,但MS-DOS时须每簇扇区数是以2为底的幂)。 5、设置文件根目录项数,减少项数以达到缩小根目录占用的扇区数,进而将坏扇区排除。每扇区的目录项数为16(此方法在DR-DOS 6.0以及MS-DOS 3.3至6.0下通过,详见本报 93年12月21日第93版)。 为方便广大读者使用本方法,现将标准软盘容量和位置参数列表于表一,DEBUG 程序装入时的几个有关参数地址列表于表二。 表一

--------------------------------------------------------------------------------类别\规格 5.25"低密 3.5"低密 5.25"高密 3.5"高密

--------------------------------------------------------------------------------标称容量 360KB 720KB 1.2MB 1.44MB总扇区数 720 1440 2400 2880引导扇区数 1 1 1 1引导扇区位置 0:0:1(100) 0:0:1(100) 0:0:1(100) 0:0:1(100)分配表个数 2 2 2 2 分配表扇区数 2X2 3X2 7X2 9X2第一分配表位置 0:0:2(300) 0:0:2(300) 0:0:2(300) 0:0:2(300)第二分配表位置 0:0:4(700) 0:0:5(900) 0:0:9(1100) 0:0:11(1500)根目录项数 112 112 224 224根目录扇区数 7 7 14 14根目录起始位置 0:0:6(B00) 0:0:8(F00) 1:0:1(1F00) 1:0:2(2700)系统占用 12(0CH) 14(0EH) 29(1DH) 33(21H)数据区扇区数 708 1426 2371 2847数据区起始位置 1:0:4(1900) 1:0:8(1D00) 0:1:2(3600) 1:0:16(4300)

--------------------------------------------------------------------------------注:0:0:1表示0面0磁道1扇区,(100)表示DEBUG装入时的段地址,其余相同。

表二

--------------------------------------------------------------------------------地址\类别 每簇扇区数 保留扇区数 分配表个数 根目录项数 分配表扇区数

--------------------------------------------------------------------------------段地址 10D 10E 110 111 116

--------------------------------------------------------------------------------

二、修复的步骤 1、采用格式化或磁盘工具软件尽量修复并获得坏扇区位置。 2、根据坏扇区位置以及参考表一和实现的手段与适用条件,借助于DEBUG 调试程序,修改有关参数,调整坏扇区位置,使之落入数据区或其中一个分配表区。 3、对于数据区中的坏扇区进行标注,如借助于PCTOOLS等软件。 三、修复实例 损坏情况:3.5"低密盘0:0:2,0:1:2,0:2:2,0:3:2坏。 1、根据坏扇区位置,如在MS-DOS系统下使用,第一个坏扇区在第一分配表头一个扇区,其它3个坏扇区均在数据区。因此,只要将正常格式化盘的引导扇区、第二分配表和根目录区内容写到坏盘相应位置即可。具体操作如下: 将一片格式化好的空盘插入B驱动器(假定B驱动器为3.5英寸高密)。C>DEBUG↓ ;进入DEBUG-L100,1,0,E↓ ;装入整个磁盘文件系统内容取出好盘,插入坏盘。-A5000↓ ;键入一段汇编程序XXXX:5000 MOV AX,301↓ ;写1个扇区内容MOV BX,100↓ ;对准引导扇区MOV CX,1↓ ;0道1扇区MOV DX,1↓ ;B盘0面INT 13↓ ;调磁盘中断MOV AX,305↓ ;写5个扇区内容MOV BX,900↓ ;对准第2分配表MOV CX,5↓ ;0道5扇区MOV DX,1↓ ;B盘0面INT 13↓ ;调磁盘中断MOV AX,305↓ ;写5个扇区MOV BX,F00↓ ;对准根目录区MOV CX,1↓ ;0道1扇区MOV DX,101↓ ;B盘1面INT 13↓ ;调磁盘中断XXXX:502A ↓ ;退出汇编程序-G=5000,502A↓ ;执行键入程序如写入出错(不是AX=0005)可按[F3]键再执行一次。Q↓ ;退出DEBUG 此时在MS-DOS 3.3、5.0或6.0下就可以由DIR命令列出,正常使用还须标注坏扇区。 如用PCTOOLS 5.5:C>PC↓;[Ctrl]-B(如不能读坏盘则先插入好盘);D↓(选DISK菜单);换入坏盘;V↓(选Verify Disk功能)。标注后的软盘就可以放心大胆地使用,但只有一个有效文件分配表,为了便于区分可建立一个带有修复字样的卷标。 2、如在DR-DOS 6.0下使用,须将第一个坏扇区移到保留扇区中,其它坏扇区均在数据区,故可将分配表后内容顺延一扇区,具体操作如下:先将好盘插入驱动器。C>DEBUG↓ ;进入DEBUG-L100,1,0,E↓ ;装入整个磁盘文件系统内容取出好盘,插入坏盘。-E10E,2↓ ;设2个保留扇区-M300,1AFF,500↓ ;后移1个扇区-A5000↓ ;键入一段汇编程序XXXX:5000 MOV AX,301↓ ;写1个扇区内容MOV BX,100↓ ;对准引导扇区MOV CX,1↓ ;0道1扇区MOV DX,1↓ ;B盘0面INT 13↓ ;调磁盘中断MOV AX,307↓ ;写7个扇区内容MOV BX,500↓ ;对准第1分配表MOV CX,3↓ ;0道3扇区MOV DX,1↓ ;B盘0面INT 13↓ ;调磁盘中断MOV AX,306↓ ;写6个扇区内容MOV BX,1100↓ ;接前面扇区MOV CX,1↓ ;0道1扇区MOV DX,101↓ ;B盘1面INT 13↓ ;调磁盘中断XXXX:502A ↓ ;退出汇编程序-G=5000,502A↓ ;执行键入程序如写入出错(不是AX=0006)可按[F3]键再执行一次。Q↓ ;退出DEBUG 此时在DR-DOS 6.0下就可以由DIR命令列出,正常使用还须标注坏扇区。 方法同上。此盘可以完全正常地使用,因两个文件分配表都是好的。 注意:修复好的软盘不要再进行格式化,可以用删除、拷贝等命令操作。如坏扇区不落在第一文件分配表或采用缩小扇区方法解决,则可以在MS-DOS和DR-DOS系统下共同使用。由于篇幅关系,本文不多介绍,读者可根据原理仿效。 本文介绍的修复方法,其实并不真正对磁盘处理,而是通过磁盘参数的修改,巧妙地避开坏扇区,实质上属于一种软修复。实践证明,这是一种行之有效、安全可靠的好方法,特别是开创了0磁道扇区损坏盘继续应用的新天地,具有普遍推广的实用价值。     参考文献 [1] 赫建.可充分利用磁盘空间的软件编制.中国计算机用户.1993.9[2] 赫建.巧妙增加软磁盘容量.中国计算机报.1993.12.21[3] [美]Steven Armbrust,Ted Forgeron.DOS/BIOS使用详解.北京:电子工业出版社,1989.4


[1] [2]  

原刊载于《中国计算机报》1994.1.25,89版 此为稿件原文

(出处:http://www.sheup.com)


 [1] [2] 

原刊载于《中国计算机报》1994.1.25,89版 此为稿件原文

(出处:http://www.sheup.com)


 [1] [2] [3] 

标签: