一种解决微机跨越2000年世纪过渡问题的方法技术

技术编号:2888066 阅读:172 留言:0更新日期:2012-04-11 18:40
本发明专利技术是解决微机跨越2000年世纪过渡问题的方法,其特征是把微机跨越2000年扩展卡通过I/O插槽接插应用于微机通用总线上,该卡有一存储器存储程序和数据,其存储内容的全部或部分符合微机启动时,自动将控制权转移至该卡上的规则,该程序是用于解决微机跨越2000年过渡问题的程序,该程序可使扩展卡在机器启动之初获得控制权,对CMOS内容进行监控并自动进行二十世纪到二十一世纪过渡。本发明专利技术能根本解决微机跨越2000年过渡问题,通用性好、成本低、使用简便。(*该技术在2018年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术是,属微机应用技术。在微机(PC)中包含有一种实时时钟电路RTC,该电路主要是为微机提供系统日期和时间。该电路以不同的形式广泛存在于从PC-XT、PC-286、PC-386、PC-486甚至PC-586中,由于该电路设计之初未考虑到世纪过渡的问题,因此,该时钟在1999年12月31日之后,会跳回到1900年1月1日,从而导致电脑对日期的识别出现错误,并由此可能引起很多意想不到的问题,这是一个目前世界关注的难题。为了解决该问题,目前有些厂家通过更新原有微机上的BIOS的版本来实现,但采用该方法时有一定的局限性。例如因为用户较分散,要更换用户手中电脑的BIOS将耗费大量的人力物力,并且由于是更换主板上的部件,因此在更换操作上也较为麻烦。而且有些机型厂家已经宣布不再支持,用户要更改这些BIOS将更加无从着手。还有一些解决办法是采用纯软件的办法,但这种软件解决办法只能针对某一类型的操作系统来进行解决,并且容易因为重装系统等原因而失败。本专利技术的目的就是为了解决微机(实时时钟电路RTC)跨越2000年的世纪过渡问题,研究专利技术一种能方便、快捷并能较为彻底解决微机跨越2000年世纪过渡问题的方法。本专利技术是通过下述技术方案来实现的本专利技术的解决微机跨越2000年世纪过渡问题的方法是把一种微机跨越2000年扩展卡通过微机的I/O插槽接插应用于微机通用总线上,该卡上含有一块用于程序和数据存储的存储器,其地址就落在C8000H-DFFFFH的某一区间,该存储器内容的全部或一部分符合微机启动时自动将控制权转移至该卡上程序的规则,该规则为偏移O,是55H;偏移1,是AAH;偏移2,是存储模块的长度,长度内所有字节相加,其结果的低两位是OOH;该存储器中的程序便是用于解决微机跨越2000年世纪过渡问题的程序,该程序提取微机CMOS中的日期数据,并取一个二位数的年份做为一个基准,当CMOS中的二位数年份小于该基准年份时,将CMOS中的世纪位改为20,而当CMOS中二位数年份大于该基准年份时,将CMOS中的世纪位改为19,基准年份可选40或50;该程序便可在机器启动之初获得控制权,对CMOS内容进行监控并自动进行二十世纪到二十一世纪的过渡,并可以在此时修改实时中断08H或1CH的中断向量,以便实时对CMOS内容进行监控并自动进行二十世纪到二十一世纪的过渡;上述的微机跨越2000年扩展卡的硬件电路方框原理图如附图说明图1所示,其电路原理图如图2所示。该扩展卡由译码器2、存储器3、缓冲器4连接构成,其相互连接关系为存储器3分别通过片选信号线和数据信号线分别与译码器2和缓冲器4相电气连接,而译码器2、缓冲器4又分别通过地址线和数据线与微机的I/O插槽1相电气连接;前述的微机跨越2000年扩展卡中存储器存储的程序的程序流程图如图2和图3所示,其程序流程步骤包括主启动程序流程步骤和实时中断子程序流程步骤,其中主程序流程步骤为(1)程序开始;(2)修改实时中断向量,可以是INT08H或INT1CH的中断向量,将该向量指向本程序的实时中断程序;(3)读取CMOS中的有关年的数据存入变量year;(4)任意取一个二位数A作为参考年份,该二位数一般取50或40;(5)判断year是否大于A;(6)若大于A的话,把CMOS中的世纪位改为19H;(7)若小于A的话,把CMOS中的世纪位改为20H;(8)读取CMOS中的月、日数据;(9)利用世纪、年、月、日数据计算该日是星期几;(10)将该星期数据写入CMOS中第六位;(11)退出。实时中断子程序步骤为(1)程序开始;(2)读取CMOS中的年数据;(3)判断该数据是否大于主程序中选取的常数A;(4)若大于A的话,往CMOS中的世纪位写入19H;(5)若小于A的话,往CMOS中的世纪位写入20H;(6)计算星期几并写入;(7)退出。(注CMOS中的年是CMOS的09H位;月是CMOS的08H位;日是CMOS的07H位;时是CMOS的04H位;分是CMOS的02H位;秒是CMOS的OOH位;世纪是CMOS的32H位;星期是CMOS的06H位。)本专利技术的工作原理如下微机用来处理日期、时间是一块CMOS电路(RTC时钟),该电路在系统关机时由一小块电池供电,以保证其中的数据不丢失,并且时钟可以继续往前走。其中与时间有关的数据有如下几个位移含义00H 秒02H 分04H 时06H期07H日08H月09H年32H世纪下面就微机跨越2000年扩展卡的两个运行状态作如下的阐述(1)系统启动在以微机为平台的机器中,CPU在RESET之后都会跳到地址FFFF:0执行,在这个位置存有一条跳向系统BIOS的指令,BIOS接收到控制之后,首先对机器进行自检,完成机器的初始化。之后为了让各扩展卡完成初始化工作,BIOS将对内存C8000H-DFFFFH中以每2K字节为单位进行检查,判断该字节空间是否满足以下所有条件偏移0,是55H;偏移1,是AAH;偏移2,是ROM模块的长度;偏移3,是模块的可执行代码起始位;该模块长度内的所有字节相加,其结果的低两位是00H;若以上条件全部满足,BIOS将认为在该ROM模块中包含有需要初始化的程序,从而将控制权转往该模块的可执行代码的起始位(偏移3),这种传递其实是一条CALL语句。在模块初始化完成后,用一条RET语句就能将控制转回系统BIOS。微机中的显示卡等扩展卡就是利用该原理进行初始化的。正因为微机的启动有以上特点,因此,我们就可以制作一块BIOS修正卡(称为微机跨越2000年扩展卡),该卡上带有一块存储器,地址就落在C8000H-DFFFFH的某一区间,且该存储器的内容完全符合系统转移控制所要求的内容。这样跨越2000扩展卡就可以在机器启动之初就获得控制权,对CMOS内容进行监控,并自动进行二十一世纪过渡(采用窗口技术,年份<基准年份,世纪位改为20,年份>基准年份的,世纪位改为19):(2)实时监察在微机系统中,为了给用户的某些实时处理程序提供一些CPU时间片,系统定时器通道0大约每秒产生18.2次中断,中断号是08H和1CH。这样,我们的微机跨越2000年扩展卡就可以在初始化时,将中断08H或1CH的中断向量改为指向该扩展卡上的一小段实时中断处理程序。执行完这一小段程序后再跳回执行系统中的其他实时中断程序。这一小段程序也是用来监控CMOS中的世纪位,并用来保证该世纪位的正确性。这样的话就可以在机器开机状态下保证机器可以自动过渡二十一世纪。综上所述,利用本技术方案,我们就可以使机器无论是在开机状态还是在关机状态下都能正确处理2000问题。本专利技术具有如下的优点和有益效果(1)本专利技术通用性好,成本低由于本专利技术立足于微机通用的I/O插槽,因此利用本专利技术可以解决从PC/XT到PC/586等一系列机型的RTC时钟的跨越2000年过渡问题。并且成本低,适合大规模生产应用;(2)使用简便应用本专利技术时,用户只需将跨越2000年扩展卡插入电脑的I/O插槽中,无需再安装任何其它软件,即可解决问题;(3)对微机跨越2000年问题提供硬件层次的根本的解决由于本扩展卡在操作系统启动之前就已经发挥作用,因此,对微机跨越2000年问题解决得较为彻底。下面对说明书附图进一步说明如下图1为微机跨本文档来自技高网...

【技术保护点】
一种解决微机跨越2000年世纪过渡问题的方法,其特征在于:其是把微机跨越2000年扩展卡通过微机I/O插槽接插应用于微机通用总线上,该卡上含有一块用于程序和数据存储的存储器,其地址就落在C8000H-DFFFFH的某一区间,该存储器内容的全部或一部分符合微机启动时自动将控制权转移至该卡上程序的规则,该规则为:偏移0,是55H;偏移1,是AAH;偏移2,是存储模块的长度,长度内所有字节相加,其结果的低两位是OOH;该存储器中的程序便是用于解决微机跨越2000年世纪过渡问题的程序,该程序有提取微机CMOS中的日期数据,并取一个二位数的年份做为一个基准,当CMOS中的二位数年份小于该基准年份时,将CMOS中的世纪位写为20H,而当CMOS中二位数年份大于该基准年份时,将CMOS中的世纪位写为19H,基准年份可选40或50;该程序便可在机器启动之初获得控制权,对CMOS内容进行监控并自动进行二十世纪到二十一世纪的过渡。

【技术特征摘要】

【专利技术属性】
技术研发人员:欧阳雪源陈年华冯伯冲
申请(专利权)人:中国银行惠州分行
类型:发明
国别省市:44[中国|广东]

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1