发信人: likaiwpf()
整理人: (1999-07-16 08:16:38), 站内信件
|
【 以下文字转载自 Hacker 讨论区 】 【 原文由 问大侠 所发表 】 8848.net 自我介绍| 广告服务| 网络营销服务| 联系我们| 邮件周刊| 友情 连接
硬件发烧友
到目前为止,几乎所有电脑都存在千年虫隐患!请参阅本文详细介绍
发言者:tytc
发表时间:14:01:58 1999/6/14
计算机硬件千年虫问题解决方案(Chinabyte中)
测试软件下载:http://y2k.363.net,http://patent.126.com
(计算机Y2K又有一个洞:几乎所有电脑硬件都未解决RTC时钟问题,详见中计报6 月3日)
现在各大电脑厂商生产的电脑已经可以安全度过2000年世纪交替这个困扰, 对于
以前的一部分不能正确度过2000年的机型通常有如下几种解决方案:
(1)BIOS升级方法
对于586以上系统,可以通过升级BIOS来解决2000年问题;根据不同系统所用 的
主板版本的不同,采用相应的2000年兼容的BIOS进行升级,使之能2000年兼容。
(2)补丁程序
有些较早的机型,由于其BIOS是不可刷新的,有些电脑厂商提供补丁程序,如程 序
fix2000.sys来解决此问题。应用补丁程序在系统启动时对RTC时钟日期进行判定 ,程
序应用方法:将fix2000.sys拷贝至C:盘根目录
在Config.sys系统文件的首行加上如下命令行:DEVICE=C:\FIX2000.SYS
这种方法的缺点是如果系统受到病毒感染又会使y2k问题重现。
(3)使用硬件方式比如“2000世纪卡”,可以在不变动原BIOS芯片的情况下,解 决
PC硬件BIOS Y2K问题。
以上三种方式中,第一和第二种方式有很大的风险。针对不同机器的BIOS升级 ,很
有可能造成原BIOS芯片被破坏,从而使原系统无法正常工作。实际实施时会遇到 很多
问题,所以几乎所有厂商都申明不承担第一和第二种方式“升级BIOS”造成系统 崩溃
的责任。
2000世纪卡采用的是BIOS Enabler卡,该卡可以解决PC BIOS“Y2K”问题, 适
用于各种PC BIOS。该方案适用于解决潜在的闰年问题、以及其它与年份有关的问 题,
并且都能正确、 在不影响其它功能的情况下,监测日期与时间。
2000世纪卡仅占用主板的一个ISA槽口,能确保当DOS和Windows应用程序需要 系
统日期或时间时,从BIOS提供正确的日期和时间。
上电以后,PC机将系统时间设定为RTC时间(计算机的实时钟芯片)。当DOS 和
Windows需要时间和日期信息时,系统调用将传递给BIOS,从系统时钟返回系统时 间。
由于不符合2000年标准的RTC芯片只能跟踪年(十位、个位),不能跟踪世纪(千 位、
百位),而不符合2000年标准的BIOS,年00可表示1900年或1980年。2000世纪卡 能捕
获给BIOS的系统请求,确保返回正确的世纪和年份。因此,当不符合2000年BIOS 年标
准的BIOS返回00或80时,2000世纪卡返回正确的世纪和年份。另外,世纪变换时 ,
2000世纪卡将会重置系统的CMOS设置,确保随后的年份正确。同时,2000世纪卡 还能
确保闰年以及随后的闰年日期正确。
一、2000年世纪卡主要特征
1.16位ISA工业标准总线:将它插入计算机任一个16位ISA或EISA插槽中即可 。
2.能自动更正电脑2000年日期记录:开机后,2000世纪卡能够自动使BIOS升 级,
正确设定电脑日期记录;在电脑运行的任何时刻,“2000世纪卡”能够自动更正 电脑
2000年的日期记录。
3.ROM映射地址可选:“2000世纪卡”提供了一组跳线,消除同原系统扩展B IOS
的冲突。
4.计算机2000世纪卡的兼容性:适用于IBM PC及100%兼容机。支持DOS3.0以 上,
MS WINDOWS 3X,MS WINDOWS95,WINDOWS NT等操作系统,同时也适用于网络用户 。
该卡经过严格测试,可解决BIOS和非RTC相关的2000年问题。
二、认识计算机2000世纪卡
“计算机2000世纪卡”上设置了6个跳线,通过这六个跳线可将卡的硬件地址 设
置在C800-DC00之间,默认设置地址为CC00H。
三、测试你的PC是否存在2000年问题
方法一:手工测试法
改变系统时间日期为:12311999 23:59:55 等两分钟后关机。开机后用DATE 查询
系统日期如果时间为01012000则你的PC已解决计算机2000年问题,否则你的PC存 在
2000年问题。
继续改变系统日期02292000,用DATE查询系统日期如果是则你的PC已能正常 工作,
否则您的PC仍存在2000年计时问题。
方法二:软件测试法
使用世界权威的软件和硬件的测试、认证机构美国软件实验室(NSTL)提供的 专用
测试软件2000.exe测试,有关2000世纪卡照片及专用测试软件可从http://y2k.3 63.com
中下载。
四、2000世纪卡BIOS升级原理
BIOS调用来检索或设置 RTC 日期和时间,该调用是通过时钟服务 BIOS 中断(I NT
1Ah)实现的。1Ah提供的两个主要服务可以用来管理日期和时间信息,两者均可 使用相同
的输入或输出寄存器:
读取时钟功能(调用04H)
设置时钟功能(调用05H)
寄存器值定义:
CL=年(0-99),CH=世纪(19或20)
DH=月(1-12),DL=天(1-31)
BIOS校正原理:
更改读取实时钟日期功能04H:增加对日期的判定和修正。
如果年份<80(CL)并且世纪年(CH)=19,将CH加1
将更改后的CH值(世纪年)=20返回给操作系统
更改设置实时钟日期功能05H:
如果年份<80并且世纪年=19,将RTC中的世纪年更新为20
在1999-12-31以后一旦执行读取日期功能,BIOS会自动将RTC中的世纪更新为20,
根据上述原理在程序设计时,2000世纪卡接管机器BIOS RTC时钟,当时钟走至19 99-12-31
23:59:58时,将世纪卡接管的RTC时钟拔至2000-01-01 00:00:00,实现向20 00年的跨
越,因而在开机状态过渡2000年时,操作系统时钟与RTC、CMOS时钟不同步,这对 系统应
用没有影响,作为一种硬件解决方案,该卡较为彻底地解决了PC机过渡2000年问 题,特别
是对于众多无法找到BIOS升级软件的机型不失为一种很好的解决办法,目前该卡 已通过国
家信息产业部2000年问题工作小组指定认证机构的严格测试认证,并申请了国家 专利(专
利号98122241.2)。值得一提的是,该卡是在BIOS层解决电脑硬件千年虫问题,对 于一些非
DOS操作系统,如UNIX等如果不是通过调用BIOS而是通过驱动程序来直接访问实时 钟,或且
如果该BIOS芯片不兼容MC146818标准,那么这些操作系统或程序进行直接读实时 钟时也会
出现错误(指存在y2k问题的电脑硬件)。本方案已收录在电脑报Y2K光盘及中国计 算机报第
6期Y2K专题光盘中。
---------------------------------------------------------------------- ----------
回应:
---------------------------------------------------------------------- ----------
回复以上发言
您的姓名:
密 码:
电子邮件:
您的主页:
主页标题:
链接图像:
发言主题:
发言内容:
-- ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.104.232.217] -- ※ 转载:.月光软件站 http://www.moon-soft.com.[FROM: 202.103.30.250]
|
|