计算机系统和中继器的制作方法

文档序号:6410171阅读:212来源:国知局
专利名称:计算机系统和中继器的制作方法
技术领域
本发明涉及装备有多个外部存储器件(例如硬盘)的计算机系统和有选择地把多个外部存储器件连接到计算机系统的外部存储器件转换设备。具体地,本发明涉及计算机系统和能保持和管理数据的中继器。
迄今,计算机系统主要使用的大容量外部存储器件一直是带形磁介质。然而,在现在的条件下,硬盘被用作计算机系统的大容量外部存储器件,它在大容量和高速性能方面都是优秀的。在个人计算机中,主要用低容量存储器件(如软盘)作为外部存储器件,但硬盘随着其价格的降低,也被采用了。
然而,一方面硬盘具有上述优点,另一方面具有不能小型化的弱点。如前所述,硬盘的容量大,一旦发生错误,足以破坏所有的存贮内容,破坏量是非常巨大的。针对这种情况,公开号为1-276354的日本专利提出了一镜象盘系统(镜象硬盘)。按照这种镜象硬盘,两片硬盘驱动器(以下简称为HDD)被连接到计算机系统,每片HDD都固定存储有相同的数据以相互支持。如果产生错误,计算机系统就使用另一片正常的HDD进行工作。
然而,这种传统的镜象盘系统要由计算机的CPU执行的特殊控制程序控制运行。该控制程序实现控制以监视每片HDD的处理状态。然后,控制程序实现控制把相同的数据写入多个HDD(工作系统HDD和支持系统HDD),并从工作系统HDD读出数据。如果工作系统HDD发生错误,控制程序进行控制把数据只写入支持系统HDD,并从中读出数据。因此,为了把传统的镜象盘系统结合入现有的计算机系统,除了该控制程序外,相应于控制程序的专用HDD也必须被整体结合。就是说,结合镜象盘系统之前所使用的HDD不能用作镜象盘系统的HDD。结果,初始阶段的投资巨大,现有的HDD没有价值。
根据本发明的计算机系统包括一中央处理器,多个外部存储器件和中继器,该中继器连接到中央处理单元和多个外部存储器件,用于传输多个外部存储器件中的一个指定外部存储器件的数据写入指令,该指令来自中央处理单元而送给指定外部存储器件以及其他外部存储器件。
根据本发明的中继器连接于中央处理单元和多个外部存储器件之间,用于传输多个外部存储器件中的一个指定外部存储器件的数据写入指令,该指令来自中央处理单元而送给指定外部存储器件以及其他外部存储器件。
因此,来自中央处理单元的写入指令传送给指定的外部存储器件,也传送给其他外部存储器件。所以,外部存储器件的镜象反射操作不用中央处理单元执行特殊的软件就能完成。现有的存贮器件也可用作外部存储器件。
注意如果在传送写入指令时,关于更新的外部存储器件和支持外部存储器件进行扇形区为基础的同步,则它们的存贮内容的相互匹配能可靠地得以保证,系统的可靠性得以提高,而不依赖具体软件。
结合附图以及以下的详细说明,能更充分地了解本发明。所述说明仅仅是举例性的,因此不是对本发明的限制。图中

图1的框图示出本发明实施例的计算机系统的构造;图2的流程图示出图1的单控制单元和盘控制器的处理过程;图3的流程图继续示出图1的单控制单元和盘控制器的处理过程;图4是对所述实施例的计算机系统的数据流的解释图。
现参阅图1-4讨论本发明的实施例。
图1的框图示出本发明实施例的计算机系统的构造。如图1所示,该实施例中的计算机系统由计算机1和两个硬盘驱动器单元(第一HDD 3和第二HDD 4)组成,它们与连接设备2连接。
计算机1包括有CPU 11。CPU 11指示和控制构成计算机系统的各部件间数据的传输和接收。
第一HDD 3是更新外部存储器件,最新的数据总是写入其中。第二HDD 4在转换设备2处于镜象盘模式时起支持外部存储器件的作用,与第一HDD 3相同的数据被写入其中;在转换设备2处于并行模式时起独立于第一HDD 3的更新外部存储器件的作用。
转换设备2辅助CPU 11控制数据的交换,CPU 11不能直接控制HDD 3和4。转换设备2对镜象盘模式和并行模式进行转换。在并行模式中,转换设备2只对CPU 11指定的HDD3或4发出读写指令,在镜象盘模式中,转换设备2根据HDD 3、4中的错误条件向HDD3、4两者或其中的一个发出读写指令。
为更详细的描述,转换设备2的构成是直接向计算机1的CPU11发出数据和从CPU 11接收数据的接口6,与接口6连接的盘控制器5,连接到盘控制器5、且连接到每个HDD 3、4的信号控制单元7,连接到信号控制单元7的开关8,第一HDD状态保持存储器9,第二HDD状态保持存储器10,和设备控制器12。
在写过程中,盘控制器5经接口6从CPU 11接收写指令(包括规定写目标HDD的信息和要写入的数据),然后将其传送给信号控制单元7。在读过程中,盘控制器5经接口6从CPU 11接收读指令(包括规定读HDD的信息和规定要读出的数据的地址的信息),然后,将其传送到信号控制单元7。接着,盘控制器5从信号控制单元7接收读出数据,经接口6把同样的数据传送到CPU 11。
开关8由转换设备2的外部手动控制,使信号控制单元7在并行模式(闭合时)和镜象盘模式(断开时)之间转换。
各HDD状态保持存储器9、10用于记录各个HDD是正常(记录为“0”)还是产生错误(记录为“1”)。
信号控制其7是一定序器,根据开关8的状态在上述镜象盘模式和并行模式间进行转换,根据各模式和每条指令中规定读或写目标HDD的数据把读写指令从盘控制器5传送到HDD 3和4。当接收写或读指令时(其写或读目标被设置到第一HDD 3或第二HDD 4),即并行模式时,信号控制器7把指令传送到指定的HDD 3或4。当以镜象盘模式接收写或读指令时(其写或读目标被设置到第一HDD 3),信号控制器7把指令传送到第一HDD 3和第二HDD 4两者。
连接到信号控制器7的还有设备控制器12,用于控制各个单元,例如HDD 3、4的电动机。它根据信号控制单元7的指示控制各HDD3、4各部分的工作(如盘旋转控制,头跟踪控制)。即,当发出的写指令是镜象盘模式时,信号控制单元7与设备控制器12共同工作并同步地发出包含在写指令中的数据,使数据被同步地写入各HDD 3、4的每个相应的扇形区。因而,同样的处理过程不变地在HDD 3、4的相应扇形区实现,盘的磁性表面在逻辑方面和物理方面都是一致的并继续形成,从而,有可能防止可预见错误的产生。
图2和图3是流程图,示出了信号控制单元7执行的序列控制的顺序。第一个流程的处理过程从计算机系统电源的起动开始。在起动后的第一步S01,检查开关8的状态。当开关8闭合时处理过程进入并行模式,通知CPU 11实现两个硬盘驱动器的连接(S02)。CPU 11接收该通知,认为第一HDD 3和第二HDD 4是相互独立的驱动器,因而能够发出写和读指令,即使HDD 3或HDD 4中的任一个被指定为写或读目标。
在下一步SO3,检查CPU 11是否接收读指令。如果没有接收读指令,则在步鄹S04检查CPU 11是否接收写指令。如果没有接收写指令,过程返回步鄹S03,重复上述检查过程。
当在步鄹S04检查到已接收到写指令时,在步鄹S05,信号控制单元7检查哪一个驱动器是这个写指令的目标硬盘驱动器(HDD 3或4)。如果确定该写指令的目标驱动器是第一HDD 3,则在步鄹S06将写指令发送到第一HDD 3。接收该写指令的第一HDD 3的设备驱动单元继续在盘的数据记录表面上记录包含在写指令中的写数据。在步鄹S07,信号控制单元7接收来自第一HDD 3的结果,说明写过程是否成功。另一方面,如果确定该写指令的目标驱动器是第二HDD 4,则在步鄹S08将写指令发送到第二HDD 4。接收该写指令的第二HDD4的设备驱动单元继续在盘的数据记录表面上记录包含在写指令中的写数据。在步鄹S09,信号控制单元7接收来自第二HDD 4的结果,说明写过程是否成功。
在任何情况下,在步鄹S07或S09收到的结果是否说明写过程的成功要在下一个步鄹S10进行检查。如果成功(OK),则在步鄹S11通知CPU 11成功。如果不成功(NG),则在步鄹S12通知CPU11不成功。不管哪一种情况,过程返回步鄹S03,以等待下一个写或读指令。
在另一方面的同时,当在步鄹S03确定收到读指令时,信号控制单元7在步鄹S13检查哪一个驱动器是该读指令的目标硬盘驱动器HDD 3或4。然后,如果确定该读指令的目标驱动器是第一HDD 3,则在步鄹S14将读指令发送到第一HDD 3。接收该读指令的第一HDD3的设备驱动单元从包含在读指令中的数据地址位置读取数据。在下一步鄹S15,信号控制单元7接收来自第一HDD 3的读数据。另一方面,如果确定该读指令的目标驱动器是第二HDD 4,则在步鄹S16将读指令发送到第二HDD 4。接收该读指令的第二HDD 4的设备驱动单元从包含在读指令中的数据地址位置读取数据。在步鄹S17,信号控制单元7接收来自第二HDD 4的读数据。
在任何情况下,在步鄹S15或S17收到的读数据是否正常接收要在下一个步鄹S18进行检查。如果读数据是正常接收(OK),则在步鄹S19通知CPU 11读数据。如果没正常接收(NG),则在步鄹S20通知CPU 11不成功。不管何种情况,过程返回步鄹S03,以等待下一个写或读指令。
与另一方面同时,如果在步鄹S01确定开关8是断开,则处理过程进入上述镜象盘模式,通知CPU 11,只有一个硬盘驱动器被连接(S21)。CPU 11接收该通知,只发出指定第一HDD 3作为写或读目标驱动器的写或读指令。在下一步鄹S22,2-比特可变“结果”重新置位为“00”。
在下一步S23,检查CPU 11是否接收读指令。如果没有接收读指令,则在步鄹S24检查CPU 11是否接收写指令。如果没有接收写指令,过程返回步鄹S23,重复上述检查过程。
若在步鄹S24确定已接收到写指令,则在步鄹S25,信号控制单元7检查第一HDD状态保持存贮器9的值。如果其值为“1”(不正常),则过程直接进到步鄹S31。如果其值为“0”(正常),则处理过程进到步鄹S26。在步鄹S26,写指令被发送到第一HDD 3。就是说,信号控制单元7发送写指令,其中,第一HDD 3被指定为写目标驱动器。接收该写指令的第一HDD 3的器件驱动单元继续把包含在写指令中的写数据记录到盘的数据记录表面。
在下一步鄹S27,信号控制单元7从第一HDD 3接收一结果,说明写过程是否是成功。然后,在步鄹S28,检查步鄹S27收到的结果是否说明了写指令成功。如果是成功(OK),在步鄹S29,可变“结果”的LSB(最低有效位)被置位为“1”。如果是不成功(NG),则在步鄹S30,第一HDD 3的状态保持存储器9被置位为“1”。不管哪一种情况,处理过程都将进到步鄹S31。
在步鄹S31,产生第二HDD 4的写指令数据。就是说,只有在步鄹S26发送给第一HDD 3的写指令中的写目标驱动器被重新写入第二HDD 4。
在下一步鄹S32,检查第二HDD状态保持存储器10的值。如果其值为“1”(不正常),则处理过程直接进到步鄹S38。如果其值为“0”(正常),则处理过程进到步鄹S33。在步鄹S33,写指令发送到第二HDD 4。就是说,信号控制单元7发送在步鄹S31产生的写指令。接收该写指令的第二HDD 4的器件驱动单元继续把包含在写指令中的写数据记录到盘的数据记录表面。在这个时候,第二HDD 4的器件驱动单元记录对每个扇形区同步的数据,所以,相同的数据被记录在第一、二HDD 3、4的相同扇形区。
在下一步鄹S34,信号控制单元7从第二HDD 4接收一结果,说明写过程是否是成功。然后,在步鄹S35,检查步鄹S34收到的结果是否说明了写指令成功。如果是成功(OK),在步鄹S36,可变“结果”的MSB(最高有效位)被置位为“1”。如果是不成功(NG),则在步鄹S37,第二HDD 4的状态保持存储器10被置位为“1”。不管哪一种情况,处理过程都将进到步鄹S38。
在步鄹S38,检查可变“结果”的值。如果其值是“0(00)”则在步鄹S39通知CPU 11写过程是不成功。如果其值是“3(11)”则在步鄹S42通知CPU 11写过程是成功。如果其值是“1(01)”或“2(10),则在步鄹S40通知CPU 11写过程是成功,并在步鄹S41导致一中断,指明器件中存在错误。该中断在CPU 11中被OS(操作系统)或器件驱动器进行处理,通知运算器存在器件错误。运算器接收该错误通知,知到镜象盘处于无后备状态,但能够如常继续工作(在这种情况下,在没有错误发生时,数据被写入第一HDD 3或第二HDD 4,并从中读出)。当希望恢复镜象盘状态时,运算器暂时停止整个计算机系统,其后,用一新驱动器代替导致非正常状态的硬盘驱动器(HDD)。然后,运算器把写入硬盘驱动器(HDD)的没有错误的数据复制到新的硬盘驱动器,重新起动计算机系统。无论何种情况,处理过程返回到步鄹S22,以等待下一次写或读指令。
另一方面,若在步鄹S23确定已接收到写指令,则在步鄹S43,信号控制单元7检查第一HDD状态保持存贮器9的值。如果其值为“1”(不正常),则过程直接进到步鄹S48。如果其值为“0”(正常),则处理过程进到步鄹S44。在步鄹S44,读指令被发送到第一HDD 3。就是说,信号控制单元7发送读指令,其中,第一HDD 3被指定为读目标驱动器。接收该读指令的第一HDD 3的器件驱动单元从包含在读指令中的数据地址位置读取数据。
在下一步鄹S45,信号控制单元7从第一HDD 3接收并读取数据。然后,在步鄹S46,检查在步鄹S45收到的读数据是否正常接收。如果读数据是正常接收(OK),在步鄹S42,通知CPU 11读过程是成功,如果读数据是不正常接收(NG),在步鄹S47,第一HDD 3状态保持存储器9的值被置位为“1”,然后,处理过程进到步鄹S48。
在步鄹S48,产生第二HDD 4的读指令数据。就是说,只有在步鄹S44发送给第一HDD 3的写指令中的读目标驱动器被重新写入第二HDD 4。
在下一步鄹S49,检查第二HDD状态保持存储器10的值。如果其值为“1”(不正常),则处理过程直接进到步鄹S54。如果其值为“0”(正常),则处理过程进到步鄹S50。在步鄹S50,读指令发送到第二HDD 4。就是说,信号控制单元7发送在步鄹S 48产生的读指令。接收该读指令的第二HDD 4的器件驱动单元包含在读指令中的数据地址位置读取数据。
在下一步鄹S51,信号控制单元7从第二HDD 4接收读数据。然后,在步鄹S52,检查在步鄹S51收到的读数据是否正常接收。如果读数据是正常接收(OK),在步鄹S42,通知CPU 11读过程是成功,处理过程返回到步鄹S22。如果读数据是不正常接收(NG),在步鄹S53,第一HDD 3状态保持存储器9的值被置位为“1”,在步鄹S54通知CPU 11读过程是不成功,然后,处理过程回到步鄹S22。
下面,参阅附图4,描述本发明的实施例中所构成的计算机系统的操作。图4(a)示出的情况是这样的,连接设备2处于镜象盘模式,因为连接设备2的开关8是断开的,但在每个设备中都没有错误发生。如图4(a)所示,在每个HDD 3、4中还没有看到不正常现象,即使当CPU 11知到只有单元HDD 3并向其输出写指令,它也把写指令发送到第一HDD以及第二HDD 4。如果相同的数据写入两个HDD3、4的状态以这种方式完成镜象作用来保证,则从一个HDD读取数据就足够了。然后,连接设备2唯一地从第一HDD 3读取数据用于更新。
图4(b)示出的情况是这样的,连接设备2处于镜象盘模式,但在第二HDD 4中有错误,或者说,连接设备2处于并行模式,因为开关8处于闭合状态。在这种情况下,连接设备2只向CPU 11规定的写目标驱动器第一HDD 3发送写指令,也只从第一HDD 3读取数据。
本实施例中强调的重点是关于硬件的扇形区同步。因此,没有专门进行扇形区内容的整理。换言之,这意味着,在没有错误发生的情况下,在扇形区实现相同的物理处理,就不太需要整理。因此,也不需要开发特殊用途的软件。即使在读指令来自中央处理单元1时,也不进行整理过程。所以,与大部分通用镜象盘器件一样读指令以相同的方式传送到一个HDD,只有在这个HDD中出现错误的情况下才传送到另一个HDD。
如上所述,根据本发明,所称的镜象盘系统是根据硬盘构成的,所以,除了使用现有的外部存储器件保持数据外,不需要开发计算机系统执行的特殊目的的软件。
在对更新的外部存储器件和所取的备用存储器件的每个相应扇形区取同步的同时,可以写入数据。采用这种结构,可以构成高可靠系统,而制造数据整理/监视单元。
如上所述,显然,存在很多变形。这些变形都没有脱离本发明的精神和范围,它们都包括在所附的权利要求中。
权利要求
1.一种计算机系统,包括一中央处理单元;多个外部存储器件;和一中继器,连接到所述中央处理单元和所述多个外部存储器件,用于传输所述多个外部存储器件中一个特定外部存储器件的数据写指令,该数据写指令来自所述中央处理单元,传送给这个特定外部存储器件和其他外部存储器件。
2.根据权利要求1的计算机系统,其特征在于,所述中继器根据外部操作指令在第一状态和第二状态之间转换,在所述第一状态时,数据写指令被传送到所述一个指定的外部存储器件和所述其他外部存储器件,在所述第二状态时,数据写指令只被传送到所述一个指定的外部存储器件。
3.根据权利要求1的计算机系统,其特征在于,所述中继器包括错误检查装置,用于检查在每个所述外部存储器件中是否产生错误,并把写指令只传送给没有错误的所述外部存储器件。
4.根据权利要求1的计算机系统,其特征在于,当根据数据写指令使数据写入所述外部存储器件的一个外部存储器件时,所述中继器通知所述中央处理单元写过程是成功的。
5.根据权利要求1的计算机系统,其特征在于,所述中继器传输所述多个外部存储器件中一个特定外部存储器件的数据读指令,该数据读指令来自所述中央处理单元,只传送给这个特定外部存储器件。
6.一中继器,连接于一中央处理单元和多个外部存储器件之间,传输所述多个外部存储器件中一个特定外部存储器件的数据写指令,该数据写指令来自所述中央处理单元,传送给所述一个特定外部存储器件和其他外部存储器件。
全文摘要
一连接设备的信号控制单元,在从CPU接收写指令时,如第一HDD的状态保持存储器的值说明在第一HDD中没有错误,则把写指令传送给第一HDD。如第二HDD的状态保持存储器的值说明在第二HDD中没有错误,则把写指令也传送给第二HDD。
文档编号G06F11/20GK1136682SQ9610353
公开日1996年11月27日 申请日期1996年2月13日 优先权日1995年2月13日
发明者酒井道元 申请人:翼系统株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1