CN1504861A - 计算机的双基本输出入系统 - Google Patents
计算机的双基本输出入系统 Download PDFInfo
- Publication number
- CN1504861A CN1504861A CNA02155708XA CN02155708A CN1504861A CN 1504861 A CN1504861 A CN 1504861A CN A02155708X A CNA02155708X A CN A02155708XA CN 02155708 A CN02155708 A CN 02155708A CN 1504861 A CN1504861 A CN 1504861A
- Authority
- CN
- China
- Prior art keywords
- bios
- rom
- program
- bios program
- processing unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种至少包含二可供选择的基本输出入系统的计算机系统,该计算机系统包含一时序电路及一基本输出入系统切换电路,用以在复数个基本输出入系统当中选择一适当且完整的基本输出入系统映像至该计算机系统的处理器的预定地址空间,该复数个基本输出入系统可由使用者直接设定其所要的基本输出入系统,其中至少有一基本输出入系统提供一检核码用以检核其它基本输出入系统是否完整,这样可避免该计算机系统加载不完整的基本输出入系统。
Description
技术领域
本发明涉及一种计算机系统的基本输出入系统(basic inout/outputsystem,BIOS)结构,特别是涉及一种包含复数个可供使用者选择的基本输出入系统程序的计算机系统。
背景技术
目前大部分计算机系统在开机时利用一中央处理器(central processorunit,CPU)来执行一储存在非易失性存储器(non-volatile memoey)内的基本输出入系统程序以完成开机的动作。该基本输出入系统程序除了提供计算机系统内元件的驱动程序及操作系统等的基本功能支持外,另包含一开机自我测试(power on self-test,POST)程序及一激活加载程序(bootstrapprogram)。该POST程序用以确保在该计算机系统内的基本元件可以正确地工作,在执行完该POST程序后,该BIOS程序接着执行该激活加载程序,执行该激活加载程序的目的在于将该操作系统的监督程序由磁盘驱动器上加载主存储器,也就是将激活码加载该主存储器以激活该操作系统,上述的程序就是传统计算机系统的开机程序。
近年来,新的计算机系统中都已渐渐将该BIOS程序转存在快闪只读存储器(flash read only memory,flash ROM)内,这样做的优点在于该快闪只读存储器可被一新的BIOS程序直接再程序化,因而可替使用者省去置换硬件装置的麻烦,这种程序更新处理的程序基本上很类似于一般软件的更新程序。然而,使许多使用者感到懊恼的是在该BIOS程序更新的程序中,若该BIOS系被不当的更新,则该不当更新的BIOS会导至计算机系统死机,在这种情况下,使用者只好乖乖地对该快闪只读存储器置执行硬件置换的麻烦的处理程序。
为了解决上述问题,许多研究人员提出了许多解决方案,譬如Bealkowski等人在1992年美国专利序号第5327531号中所提出的名称为“DataProcessing System Including Corrupt Flash ROM Recovery”的发明,该发明被本发明列为参考文献之一,Bealkowski等人的发明提供一种包含一第二非易失性存储元件的计算机系统,该第二非易失性存储元件可以是一可擦除式可编程只读存储器(erasable and programmable read only memory,EPROM),用以储存一辅助备份BIOS程序,当储存在该计算机系统中的快闪只读存储器内的主BIOS程序发生问题时,该辅助备份BIOS程序就会替代该主BIOS程序被加载到该计算机系统的CPU内的地址空间,然后执行该辅助备份BIOS程序。
但Bealkowski等人的发明并不容许使用者自由地选择将该主BIOS程序或该辅助备份BIOS程序被加载该计算机系统的CPU内的地址空间以执行开机程序,该发明仍以该主BIOS程序为优先被加载的程序,事实上并非所有情况均适用这种处理模式,在多数情况下,因为Bealkowski等人的发明的简单硬件测试程序只测试该主BIOS程序中的一个字节,所以即使该被测试的字节是正确的,也不代表该主BIOS程序就一定是完整的,以至于可能不完整的该主BIOS程序却被加载至该计算机系统的CPU内的地址空间以执行开机程序,其结果当然仍会导至计算机系统死机,而且同样需要繁琐的硬件维修程序。
发明内容
因此本发明的主要目的在于提供一种包含至少二个可供选择的基本输出入系统程序的计算机系统,而该复数个可供选择的基本输出入系统可由使用者直接设定其所要的基本输出入系统,其中至少有一基本输出入系统提供一检核码,该检核码可用以检核其它基本输出入系统是否完整,因此可避免加载不完整的基本输出入系统,以解决上述先设定主基本输出入系统程序加载所引发的问题。
本发明的用于一计算机系统中的可选择式基本输出入系统,其中该计算机系统包含一中央处理器及一芯片组,其用来支持该中央处理器,该芯片组包含一可被该中央处理器程序化的第一通用输出入缓存器。本发明的该可选择式基本输出入系统包含一主基本输出入系统程序,其可被该中央处理器执行并包含有一确认码,该确认码用来产生一储存在该第一通用输出入缓存器的确认讯号。该可选择式基本输出入系统另包含一副基本输出入系统程序,其可被该中央处理器执行,一时序电路,其用来在该计算机系统开机达一预定时间后产生一延迟讯号,以及一BIOS切换电路,用来依据该确认讯号及该延迟讯号将该主基本输出入系统程序或该副基本输出入系统程序映像至该中央处理器内的一预定的地址空间,其中当该主基本输出入系统程序被映像至该预定的地址空间时,若该BIOS切换电路在接收该确认讯号的前接收了该延迟讯号,则该BIOS切换电路会使该中央处理器进行一第一重开机动作,并将该副基本输出入系统程序映像至该预定的地址空间内,以使该中央处理器可在进行完该第一重开机动作后执行该副基本输出入系统程序。
附图说明
图1A为本发明的一计算机系统的方框图;
图1B为时序电路的电路图;
图2为本发明的一基本输出入系统切换电路的流程图;
图3为本发明的该基本输出入系统的BIOS选择码的第一实施例的流程图;
图4为本发明的该基本输出入系统的BIOS选择码的第二实施例的流程图。
具体实施方式
请参考图1A,图1A所示为本发明的一计算机系统10的简略方框图,图1A并没有显示计算机系统10所有的元件,而只显示和本发明相关的元件。计算机系统10包含一中央处理器(central processing unit,CPU)20、一连接至该CPU 20的地址译码器30、一内存40、一芯片组60、以及一重置电路(reset circuit)70。CPU地址线23将一地址传送到地址译码器30,地址译码器30即根据该地址译码而经由总线地址线34设定该内存40的输出入地址,然后,内存40就根据总线地址线34所设定的内存地址将内存数据经由数据总线42传送到CPU 20。
以上所述的系统配置处理模式基本上类似于公知技术,也就是利用地址译码器30将内存40内不同配置区域的数据映像到CPU 20内的地址空间。特别是在重开机动作中,当CPU 20从重置电路70接收一重置讯号72时,CPU 20会试着依据CPU地址线23所设定的CPU的起始地址提取其第一工作指令,典型的32位CPU中该起始地址通常是十六进制OxFFFFFFFO,而在该起始地址所储存的通常是一CPU跳跃指令,该跳跃指令将使CPU 20依据CPU地址线23所设定的一预定CPU地址开始提取指令的动作,该预定CPU地址由计算机系统10的制造商所决定,而该CPU跳跃指令被置于内存40的非易失性记忆区域中。一般而言,该BIOS程序包含该CPU跳跃指令,就本发明而言,主BIOS程序40p的最后指令及副BIOS程序40s的最后指令即是该CPU跳跃指令。在该预定地址配置的信息辅助下,地址译码器30可依据从BIOS切换电路50接收的MHINIT及BHINIT线,使得CPU 20选择主BIOS程序40p或选择副BIOS程序40s执行数据提取的动作。当该MHINIT为高电平而该BHINIT为低电平时,地址译码器30将使主BIOS程序40p映像到该预定CPU内的地址空间,当该MHINIT为低电平而该BHINIT为高电平时,地址译码器30则将使副BIOS程序40s映像到该预定CPU内的地址空间。譬如,根据该CPU跳跃指令,如果由CPU地址线23所设定的该预定CPU地址为0x000F0000,则可设定地址译码器34使得BIOS程序40p或40s的起始指令按照该二条MHINIT及BHINIT线映像至地址0x000F0000。上述该BIOS映像功能的执行方法基本上类似于公知技术。
芯片组60用以提供CPU 20所需的总线逻辑支持,在许多设计中,地址译码器30可以是芯片组60内的副零件,芯片组60基本上包含复数个通用输出入(general purpose input/output,GPIO)缓存器,该复数个GPIO缓存器可被CPU20程序化以传送在计算机系统10内的相关讯号值到相关的硬件元件。在本发明的一较佳实施例中,芯片组60包含二个GPIO缓存器:一第一GPIO缓存器GPIO1,用以送出一确认讯号61至BIOS切换电路50;及一第二GPIO缓存器GPIO2,用以送出一选择讯号62至BIOS切换电路50。时序电路80用以在计算机系统10开机一预定延迟时距后,传送一延迟讯号85至BIOS切换电路50,该预定延迟时距只用以确保CPU 20在开机后有足够时间以执行主BIOS程序40p内的确认码405,所以计算机系统10的设计人员在决定该预定延迟时距的长短时,必需考虑到CPU 20的处理速度及从加载主BIOS程序40p到执行确认码405之间的所有CPU 20可能接收到的介入执行码,一般而言,大部分计算机系统10在计算机电源稳定后的延迟时距大约是介于半秒到一秒之间。
图1B显示时序电路80的概略电路图,如同一般公知技术,在开机后,延迟讯号线85会在一段由电阻82及电容84所决定的延迟时距后会转为高电平。
BIOS切换电路50被设计用以在计算机系统10开机后,将MHINIT讯号保持高电平及将BHINIT讯号保持低电平,主BIOS程序40p因此可以被映像至CPU 20的该预定地址空间内,然后被CPU 20来执行。时序电路80被设计在开机后该预定延迟时距内将延迟讯号85先保持在低电平,然后转为高电平,并送出延迟讯号85到BIOS切换电路50。芯片组60被设计在计算机系统10开机后将确认讯号61保持在低电平,也就是说,使确认讯号61的起始状态是在低电平。当CPU 20执行主BIOS程序40p时,主BIOS程序40p内的确认码405会设定芯片组60内的GPIO1缓存器,用以将确认讯号61转为高电平,并将确认讯号61送到BIOS切换电路50。在计算机系统10开机后,如果延迟讯号85在确认讯号61之前被BIOS切换电路50接收到,则BIOS切换电路50会将该MHINIT设定为低电平而将该BHINIT设定为高电平,并送一重置讯号57到重置电路70以重置CPU 20。在该MHINIT为低电平而该BHINIT为高电平的条件下,地址译码器30将副BIOS程序40s映像到CPU 20的该预定地址空间内,此后重置线72就不再作用,而CPU 20就开始执行副BIOS程序40s。不过如果确认讯号61在延迟讯号85之前就已经被BIOS切换电路50所接收,则BIOS切换电路50会忽略延迟讯号85的作用,此时,CPU 20就不需执行该重置动作。
图2显示BIOS切换电路50的操作程序流程图100,流程图100包含下列详细工作步骤:
步骤101:所有这些讯号线均被设为开机时的内定值,也就是说,延迟讯号线85被设定为低电平,GPIO1缓存器被设定为使确认讯号线61为低电平,GPIO2缓存器被设定为使选择讯号线62选择主BIOS程序40p的讯号值,然后,将该MHINIT设定为高电平而将该BHINIT设定为低电平,用以使主BIOS程序40p可以被映像到CPU 20的预定地址空间内。
步骤102:在经过该预定延迟时距后,时序电路80会使延迟讯号线85转为高电平,然后送出延迟讯号85到BIOS切换电路50,此时如果工作正常,主BIOS程序40p将有足够时间执行确认码405以使确认讯号线61转为高电平,再将确认讯号61送到BIOS切换电路50。不过,如果主BIOS程序40p为不完整,则确认码405将不会被执行,而确认讯号线61会保持在低电平,并且没有确认讯号61会被送到BIOS切换电路50。后续处理在有关选择切换至副BIOS程序40s的条件描述中会有详细说明。
步骤103:如果确认讯号61在延迟讯号85的前被接收,则继续执行步骤104,否则跳到步骤107。
步骤104:确认已映像的BIOS程序40p或40s是完整的,故应保留在所映像的CPU 20的预定地址空间内,而延迟讯号则可被忽略。
步骤105:检查选择讯号62是否有改变,如果有改变则继续执行步骤106,否则退回到步骤104。
步骤106:如果选择讯号62显示所选择的是主BIOS程序40p,则将MHINIT设定为高电平而将BHINIT设定为低电平,否则将MHINIT设定为低电平而将BHINIT设定为高电平。重置讯号线57用以要求重置电路70去重置CPU20,该重置动作并不会影响选择讯号线62的值,被选择的主BIOS程序40p或副BIOS程序40s因此就根据选择讯号线62的值而被映像至CPU 20的预定地址空间内,然后在CPU重置讯号线72不再作用下,执行所选择的BIOS程序,接着跳回到步骤104。
步骤107:如果确认讯号61并没有在延迟讯号85之前被BIOS切换电路50接收,并且主BIOS程序40p又不完整,则忽略选择线62,并将MHINIT设定为低电平而将BHINIT设定为高电平以将副BIOS程序40s映像至CPU 20的预定地址空间内,再利用重置讯号线57要求重置电路70去重置CPU 20,当完成副BIOS程序40s的映像处理后,CPU 20即在重置动作后执行副BIOS程序40s。
步骤106的程序是使计算机系统10得以执行主BIOS程序40p与副BIOS程序40s间的切换选择,该选择可由CPU 20利用GPIO2缓存器对选择讯号线62的设定而完成,该计算机系统10因此致能一可供使用者选择的BIOS操作模式。在步骤102程序中,时序电路80与BIOS切换电路50的工作是用以确保当主BIOS程序40p不完整时,计算机系统10可以自动地切换到副BIOS程序40s,因为当主BIOS程序40p不完整而又被映像到CPU 20的预定地址空间时,CPU 20必然会因诸如无限循环(infinite loop)之类的非法指令而死机无法工作,此时,确认码405就无法被执行,因此在该预定延迟时距后,计算机系统10也就会切换到副BIOS程序40s。
内存40内同时包含易失性与非易失性存储器,其中该非易失性存储器可以是快闪只读存储器,用以储存主BIOS程序40p、副BIOS程序40s、以及复数个BIOS安装参数40v,这些BIOS安装参数40v用以储存机器相关信息,譬如硬盘参数、日期及时间数据、及总线参数等等,并可为主BIOS程序40p与副BIOS程序40s所共享。不过其也可用另一种可能的设计所取代,也就是有二组BIOS安装参数,可分别储存于一个或复数个快闪只读存储器,其中一组BIOS安装参数专为主BIOS程序40p所用,而另一组BIOS安装参数则专为副BIOS程序40s所用,因此主BIOS程序40p与副BIOS程序40s的执行功能可以完全独立,所以计算机系统10就可以致能二种不同的机器操作模式。基本上,主BIOS程序40p与副BIOS程序40s均具有公知BIOS程序功能的程序代码,譬如开机自我测试(power-on self-test,POST)码、低阶元件支持码、激活加载程序代码等等,除此之外,主BIOS程序40p还包含确认码405、检核码404、及选择码403等。如前所述,CPU 20执行确认码405内的指令会将该GPIO1缓存器程序化以送出确认讯号61至BIOS切换电路50。总之,执行确认码405的最主要的功用在于确认主BIOS程序40p可以正常工作,也就是确认计算机系统10不需切换到副BIOS程序40s。至于CPU 20执行检核码404内的指令是用以检核副BIOS程序40s是否存在且完整,该检核程序主要是执行对副BIOS程序40s的核对和(checksum)计算,并比较该核对及数值等与记号数值(signature)404s是否相等。选择码403内的指令用以使CPU 20致能使用者去设定在BIOS安装参数40v内的一选择参数40b,并根据选择参数40b设定GPIO2缓存器,所以选择码403的主要功用是提供对主BIOS程序40p与副BIOS程序40s的使用者选择功能。
请参考图3,图3所示为本发明的该基本输出入系统的选择码403的第一实施例的操作程序流程图,该流程图包含下列详细工作步骤:
步骤201:将主BIOS程序40p映像至CPU 20的预定地址空间内,然后CPU 20执行主BIOS程序40p,此时,主BIOS程序40p会执行许多基本开机程序,譬如自我测试程序、安装程序等等,所有这些程序的执行时间均必需小于时序电路70所设的预定延迟时距。
步骤202:CPU 20执行确认码405程序化该GPIO1缓存器以送出确认讯号61到BIOS切换电路50,因而避免图2的步骤107状况发生。在步骤201的程序中,若主BIOS程序40p已检测到内部有错误发生,则最好先不执行本步骤202,而以循环方式停留在步骤201,并等待BIOS切换电路50将副BIOS程序40s映像至CPU 20的预定地址空间内。
步骤203:检查BIOS安装参数40v中的选择参数40b,如果选择参数40b显示需要切换到副BIOS程序40s,则继续执行步骤204,否则跳至步骤207。
步骤204:在需要切换到副BIOS程序40s的情况下,确保副BIOS程序40s是存在的,并对副BIOS程序40s执行核对和计算,用以确保该核对和数值等于记号数值404s。特别要注意的是,主BIOS程序40p必需被设计以知道在CPU地址空间的那里可以找到副BIOS程序40s,而这也是制造商的设计技巧之一。
步骤205:若果副BIOS程序40s是存在且通过核对和数值检核测试,则继续执行步骤206,否则,主BIOS程序40p必需继续被执行,并跳至步骤207。
步骤206:设定GPIO2的值使得选择讯号线62的值显示所要执行的是副BIOS程序40s,这将改变选择讯号62的值,并将激活BIOS切换电路50的步骤105程序而重置CPU 20,副BIOS程序40s因此被映像至CPU 20的该预定地址空间内,在适当设定该GPIO2缓存器后,就等待该重置程序的执行。
步骤207:在主BIOS程序40p必需继续被执行情况下,继续正常BIOS操作,直到结束加载操作系统的该激活加载程序代码的执行动作。
大部分BIOS程序均有软件安装特性,也就是可以在该POST程序中致能使用者去改变BIOS安装值40v而设定BIOS状态,主BIOS程序40p与副BIOS程序40s均有此种设定功能,也就是提供使用者设定及储存选择参数40b的功能。
图4显示另一种执行主BIOS程序40p与副BIOS程序40s之间的BIOS选择码403的切换操作程序流程图,该流程图包含下列详细工作步骤:
步骤301:将主BIOS程序40p映像至CPU 20的预定地址空间内,然后CPU 20执行主BIOS程序40p,此时,主BIOS程序40p会执行许多基本开机程序,譬如自我测试程序、安装程序等等,所有这些程序的执行时间必需小于时序电路70所设的预定延迟时距。
步骤302:检查BIOS安装参数40v中的选择参数40b,如果选择参数40b显示需要切换到副BIOS程序40s,则跳至步骤305,否则继续执行步骤303。
步骤303:在主BIOS程序40p需要继续被执行的情况下,CPU 20执行确认码405程序化该GPIO1缓存器以送出确认讯号61到BIOS切换电路50,因而可避免图2的步骤107状况发生。
步骤304:继续正常BIOS操作,直到结束加载操作系统的该激活加载程序代码的执行动作为止。
步骤305:在需要切换到副BIOS程序40s的情况下,确保副BIOS程序40s确实存在,并对副BIOS程序40s执行该核对和计算,用以确保该核对和数值等于记号数值404s。
步骤306:如果副BIOS程序40s是存在且通过由检核码404所执行的核对和数值检核测试,则继续执行步骤307,否则,主BIOS程序40p必需继续被执行,并跳回至步骤303。
步骤307:保持在循环等待状态,直到接收从时序电路80所送来的延迟讯号85,此时确认码405不会被执行,而BIOS切换电路50会执行步骤107,也就是副BIOS程序40s将被加载并执行。
在上述本发明的各种说明步骤中,其并非一成不变的,譬如说,在某些特殊的硬件状态下,利用选择码403直接程序化重置电路70以执行CPU 20的重置动作是可能的,在这种况下,当选择讯号62改变时,BIOS切换电路50并不会产生重置讯号57,而只是等待选择码403去执行必需的重置动作。只要对本发明的该较佳实施例做适当的更改,就可以使计算机系统10具有可支持更多BIOS程序及允许使用者选择等的功能,在这种设计下,也可进一步地去致能BIOS切换电路50以重置时序电路80使得延迟讯号85在执行完所有重置动作后才被接收,而不是在一开机后马上被接收,在这种处理模式下,每一BIOS程序均提供其各自确认码,而BIOS切换电路50则可在所有BIOS程序之间循环执行检核确认,直到有一BIOS程序被BIOS切换电路50成功地确认。
除上述之外,本发明也可提供一不完整BIOS程序的恢复操作,譬如说,如果执行主BIOS程序40p的检核码404发现副BIOS程序40s为不完整,则检核码404也可令功能完整的主BIOS程序40p覆写入副BIOS程序40s,此时,主BIOS程序40p和副BIOS程序40s完全相同。不过,如前所述,如果副BIOS程序40s具有独立的一组BIOS安装参数40v,则即使主BIOS程序40p和副BIOS程序40s有相同的程序代码,这种状态仍具有允许使用者提供二种独立机器安装状态的功能。这种主BIOS程序40p覆写入副BIOS程序40s的程序并不一定采用直接拷贝的方式来完成,该覆写操作也可能要根据许多指南、CPU 20跳跃指令、及BIOS安装参数40v的存取而决定再定位的覆写状况,不过这种覆写操作属于公知技术的范围,故不予赘述。以一简单实施例而言,假设有一单纯的拷贝覆写操作被执行,使主BIOS程序40p覆写入副BIOS程序40s的内存配置区,则利用一零散内存空间配置表或配置算法,就可以改变副BIOS程序40s的预定配置空间,而副BIOS程序40s的程序功能也可以和主BIOS程序40p完全相同。同理,副BIOS程序40s也可以被提供和主BIOS程序40p类似的检核码,该检核码可用以确认主BIOS程序40p是完整的,并当任何BIOS程序被检测到不完整时,该检核码也可用以修正该不完整的BIOS程序。
如上所述,相较于公知技术,本发明提供一时序电路配合一BIOS切换电路,用以在复数个BIOS程序当中选择一适当而完整的BIOS程序映像至一计算机系统的CPU的预定地址空间内。当一被映像的BIOS程序无法正常工作时,则不会传送一确认讯号到该BIOS切换电路,因此当该BIOS切换电路从该时序电路接收到一延迟讯号后,就会映像另一BIOS程序以取代目前不完整的BIOS程序。另外,利用对非易失性存储器内的选择参数设定,使用者可自行选择所要映像的BIOS程序,并确保至少有一BIOS程序可被成功地加载以激活该计算机系统。此外,至少有一BIOS程序提供一检核码,该检核码可用以检核其它BIOS程序是否完整,因此可避免加载不完整的BIOS程序。
以上所述仅为本发明的较佳实施例,凡按照本发明权利要求所作的同等变化与修饰,均应被涵盖在本发明的保护范围之中。
Claims (9)
1、一种用于一计算机系统的可选择式基本输出入系统,该计算机系统包含有:一中央处理器;以及一芯片组,用来支持该中央处理器,该芯片组包含有一可被该中央处理器程序化的第一通用输出入缓存器;其特征在于,
该可选择式基本输出入系统包含有:
一主基本输出入系统程序,其可被该中央处理器执行并包含有一确认码,该确认码用来产生一储存于该第一通用输出入缓存器的确认讯号;
一副基本输出入系统程序,其可被该中央处理器执行;
一时序电路,用来在该计算机系统开机一预定时间之后产生一延迟讯号;以及
一BIOS切换电路,用来依据该确认讯号及该延迟讯号将该主基本输出入系统程序或该副基本输出入系统程序映像至该中央处理器的一预定的地址空间内;
其中当该主基本输出入系统程序被映像至该预定的地址空间内时,若该BIOS切换电路在接收该确认讯号之前接收了该延迟讯号,则该BIOS切换电路会使该中央处理器进行一第一重开机动作,并将该副基本输出入系统程序映像至该预定的地址空间内,以使该中央处理器可在进行完该第一重开机动作后执行该副基本输出入系统程序。
2、如权利要求1所述的可选择式基本输出入系统,其特征在于,若该BIOS切换电路在接收该确认讯号之后才接收了该延迟讯号,则该BIOS切换电路不会使该中央处理器进行该第一重开机动作。
3、如权利要求2所述的可选择式基本输出入系统,其特征在于,该延迟讯号传送至该BIOS切换电路的时间点经适当地设定,以使该中央处理器可在该延迟讯号传送至该BIOS切换电路之前执行该确认码。
4、如权利要求3所述的可选择式基本输出入系统,其特征在于,该主基本输出入系统程序另包含有一检核码,该中央处理器可执行该检核码以检核该副基本输出入系统程序的数据的完整性。
5、如权利要求4所述的可选择式基本输出入系统,其特征在于,该主基本输出入系统程序另包含有一选择码,用来执行下列步骤:
呼叫该检核码,以判断该副基本输出入系统程序是否存在并且完整;
如果该副基本输出入系统程序存在且完整,则在该确认码被执行之前有效地暂停该中央处理器的运算动作,以等待由该时序电路所产生的该延迟讯号;以及
如果该副基本输出入系统程序不存在或不完整,则使该中央处理器执行该确认码。
6、如权利要求4所述的可选择式基本输出入系统,其特征在于,该主基本输出入系统程序另包含有一选择码,用来执行下列步骤:
呼叫该确认码;
呼叫该检核码,以判断该副基本输出入系统程序是否存在并且完整;以及
如果该副基本输出入系统程序存在且完整,则使该中央处理器进行一第二重开机动作,并使该BIOS切换电路将该副基本输出入系统程序映像至该预定的地址空间内,以使该中央处理器可在进行完该第二重开机动作后执行该副基本输出入系统程序。
7、如权利要求6所述的可选择式基本输出入系统,其特征在于,该芯片组另包含有一第二通用输出入缓存器,用来提供一选择讯号给该BIOS切换电路,该BIOS切换电路会依据该选择讯号在该第二重开机动作进行完后将该主基本输出入系统程序或该副基本输出入系统程序映像至该预定的地址空间内,而该选择码另用来执行下列步骤:
如果该副基本输出入系统程序存在且完整,则使该第二通用输出入缓存器产生该选择讯号,以选择该副基本输出入系统程序。
8、如权利要求7所述的可选择式基本输出入系统,其特征在于,另包含有一非易失性存储器用来保存一选择参数,该选择参数可被调整且可被该中央处理器读取,而该选择码会依据该选择参数来程序化该第二通用输出入缓存器。
9、如权利要求4所述的可选择式基本输出入系统,其特征在于,在该副基本输出入系统程序不完整的情形下,该检核码另可用来使该副基本输出入系统程序被该主基本输出入系统程序所覆写。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 02155708 CN1239986C (zh) | 2002-12-03 | 2002-12-03 | 计算机的双基本输入输出系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 02155708 CN1239986C (zh) | 2002-12-03 | 2002-12-03 | 计算机的双基本输入输出系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1504861A true CN1504861A (zh) | 2004-06-16 |
CN1239986C CN1239986C (zh) | 2006-02-01 |
Family
ID=34236042
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 02155708 Expired - Lifetime CN1239986C (zh) | 2002-12-03 | 2002-12-03 | 计算机的双基本输入输出系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1239986C (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100369001C (zh) * | 2005-08-15 | 2008-02-13 | 英业达股份有限公司 | 主要及备份基本输出入系统的选择装置 |
CN100397348C (zh) * | 2004-08-27 | 2008-06-25 | 华擎科技股份有限公司 | 切换系统模块的方法以及装置 |
CN101470613A (zh) * | 2007-12-28 | 2009-07-01 | 华硕电脑股份有限公司 | 电脑系统及其基本输入输出系统的侦错方法与开机方法 |
CN101295254B (zh) * | 2007-04-28 | 2010-05-26 | 英业达股份有限公司 | 利用电源按钮切换基本输入输出系统的计算机系统及方法 |
US8015449B2 (en) | 2007-12-28 | 2011-09-06 | Asustek Computer Inc. | Computer, and method for error-detecting and booting of BIOS thereof |
CN102200933A (zh) * | 2010-03-23 | 2011-09-28 | 深圳华北工控股份有限公司 | 一种基于双SPI Flash的系统BIOS自动修复方法 |
CN101458647B (zh) * | 2007-12-12 | 2012-11-21 | 鸿富锦精密工业(深圳)有限公司 | 双bios电路 |
CN104077153A (zh) * | 2013-03-28 | 2014-10-01 | 昆达电脑科技(昆山)有限公司 | 烧录电脑系统的韧体的方法 |
CN111813037A (zh) * | 2020-06-11 | 2020-10-23 | 中国长城科技集团股份有限公司 | 一种开机控制方法、开机控制装置及电子设备 |
-
2002
- 2002-12-03 CN CN 02155708 patent/CN1239986C/zh not_active Expired - Lifetime
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100397348C (zh) * | 2004-08-27 | 2008-06-25 | 华擎科技股份有限公司 | 切换系统模块的方法以及装置 |
CN100369001C (zh) * | 2005-08-15 | 2008-02-13 | 英业达股份有限公司 | 主要及备份基本输出入系统的选择装置 |
CN101295254B (zh) * | 2007-04-28 | 2010-05-26 | 英业达股份有限公司 | 利用电源按钮切换基本输入输出系统的计算机系统及方法 |
CN101458647B (zh) * | 2007-12-12 | 2012-11-21 | 鸿富锦精密工业(深圳)有限公司 | 双bios电路 |
CN101470613A (zh) * | 2007-12-28 | 2009-07-01 | 华硕电脑股份有限公司 | 电脑系统及其基本输入输出系统的侦错方法与开机方法 |
US8015449B2 (en) | 2007-12-28 | 2011-09-06 | Asustek Computer Inc. | Computer, and method for error-detecting and booting of BIOS thereof |
CN102200933A (zh) * | 2010-03-23 | 2011-09-28 | 深圳华北工控股份有限公司 | 一种基于双SPI Flash的系统BIOS自动修复方法 |
CN104077153A (zh) * | 2013-03-28 | 2014-10-01 | 昆达电脑科技(昆山)有限公司 | 烧录电脑系统的韧体的方法 |
CN111813037A (zh) * | 2020-06-11 | 2020-10-23 | 中国长城科技集团股份有限公司 | 一种开机控制方法、开机控制装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN1239986C (zh) | 2006-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7870378B2 (en) | Electronic system with NAND flash memory storing boot code and highly reliable boot up method | |
US7290097B2 (en) | Nonvolatile memory | |
US6442067B1 (en) | Recovery ROM for array controllers | |
US20080141016A1 (en) | Computer System and Related Method for Preventing Failure of Updating BIOS Programs | |
KR101211503B1 (ko) | 부팅 시스템, 그 시스템을 구비한 화상형성장치 및 그제어방법 | |
JP2005190201A (ja) | 情報処理装置および該装置用のromイメージ生成装置 | |
CN1556950A (zh) | 通过储存在序列存取内存中的激活码的计算机系统起始 | |
CN1239986C (zh) | 计算机的双基本输入输出系统 | |
CN101051275A (zh) | 新存储器体系结构中用直接存储器访问来系统引导的方法 | |
US9336082B2 (en) | Validating persistent memory content for processor main memory | |
CN102081574A (zh) | 用于加快系统的唤醒时间的方法和系统 | |
CN102331958A (zh) | Linux系统下硬盘启动的方法 | |
CN101075213A (zh) | 只读存储器数据修补电路和方法、及其嵌入式系统 | |
CN100536027C (zh) | 与非闪存的读取方法 | |
US8065563B2 (en) | System for booting from a non-XIP memory utilizing a boot engine that does not have ECC capabilities during booting | |
JP2003196104A (ja) | 高可用性ファームウェアロードのためのシステム | |
US6532546B2 (en) | Computer system for dynamically scaling busses during operation | |
CN1725180A (zh) | 对可编程逻辑器件在线升级的方法及装置 | |
US20070050612A1 (en) | Boot program update and restoration system and method thereof | |
DE102008005863A1 (de) | Verfahren zum Reparieren eines Halbleiterspeicherbauelements und Halbleiterspeicherbauelement | |
CN1645354A (zh) | 用于嵌入式可配置逻辑数组的内电路配置结构 | |
CN1694069A (zh) | 用于配置计算机系统的系统和方法 | |
US7036005B2 (en) | Method and apparatus for modifying the contents of revision identification register | |
CN1567208A (zh) | 一种使用多个启动程序存储器的处理器系统及方法 | |
CN114489743A (zh) | 一种片上可编程系统的程序烧写及加载运行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term |
Granted publication date: 20060201 |
|
CX01 | Expiry of patent term |