在大硬盘上运行2·13H的体会

Author: 广东 何管略 Date: 1992-10-09

        (1)早期装入大硬盘中的各种字库,一般能正常运行。后期加装的字库,有些却不能正常打印、显示。
        (2)原来正常运行的字库,经过消除文件中的不连续簇号、调整文件顺序、消除文件之间的空白族号等,优化硬盘的技术处理之后,个别字库变成不能正常打印、显示。
        我们用造字程序检查,屏幕显示却又全都正常。原因何在?经过反复思考、对比、分析,我们发现下列特征:
        (1)能够正常运行的字库文件,存放位置靠近零磁道,在硬盘上的簇号较小。
        (2)不能正常打印、显示的字库文件,存放位置远离零磁道在硬盘上的族号较大。
        我们用PC Tools,将那些族号较大的字库文件,逐个复制到靠近零磁道的位置上。重新运行2.13H系统,分别测试各种字库的显示的打印功能,结果全部正常。
        现在,我们可以灵活、方便地打印、显示16、24、40点阵的各种宋体、仿宋体、黑体、楷体、繁体汉字;高低大小,精粗胖瘦,繁简兼备,琳琅满目。
        此项实践成果,在理论上如何解释呢?
        原来,2.13H系统开始运行以后,在连接硬盘中的各种字库时,只顺次登录该字库文件在硬盘上的起始扇区号及其连续扇区数。当要显示或打印某个汉字时,才根据其在字库中的逻辑位置,推算出它在硬盘中存放位置的扇区号,调用读盘功能,提供相应的字型码。
        2.13H系统,预留给起始扇区号的登录位置是两个字节,它只能登录64K以内的数。所以,当字库文件的起始扇区号大于64K时,系统不能正常读写。
        不难设想:在数据区的起始部分,已经装满32MB的大硬盘上,继续安装2.13H系统,或字库文件的话,可能不会正常。