一种实现计算设备状态转换的装置及方法

文档序号:6554092阅读:128来源:国知局
专利名称:一种实现计算设备状态转换的装置及方法
技术领域
本发明涉及的是一种实现计算设备状态转换的装置及方法,具体地说,涉及一种使用计算设备内可变存储单元备份快速恢复方法,实现计算设备的状态转换的装置及方法。
目前在计算机安全中,出于安全考虑实行内部网(办公或机密网)与外部网(如因特网)进行物理隔离;或者在家用电脑中,需要内部网(私密数据,不一定连网)与外部网(如因特网)进行物理隔离。解决这个问题从历史上看,首先采用两台电脑分别接入内网和外网,这个解决方案的成本太高,同时不能很好地在解决安全的同时解决内外网数据的安全交换;第二个解决方案是所谓的双主板方案,它的实质是把两台计算机放入一个机箱中,共用一个显示器和键盘,这个方案的成本也太高,同时也没有解决安全进行内外网数据交换的问题;然后过渡到双硬盘方案和单硬盘方案。双硬盘方案是指在一台计算机中安装两个硬盘,当需要使用内部网时,用相对于内部网的硬盘启动,并接通相对于内部网的网络联接(或不与网络连接);当需要使用外部网时,用相对于外部网的硬盘启动,并接通相对于外部网的网络联接。显然,为了安全还需要,当外部网(或内部网)启动后,使得内部网(或外部网)用硬盘及网络联接从物理上隔离(即绝对不可用,或不能有效地读写)。这样实现了一台计算机可以使用内部网及外部网,同时保证内外网隔离及内部数据安全。
显然双硬盘方案,安全地实现了内外网的隔离。但是这个方案需要两个硬盘,使得该方案的实现成本也比较高,这样就有所谓的单硬盘方案。它指的是,在一个硬盘上分两个分区,每个分区均有自己的操作系统(分别对应于内部网和外部网);然后通过选择使得计算机启动内部网或外部网。在单硬盘方案中,当系统处于外部网时,至少必须保证内部网中的数据不能被读写(这是本人的已授权发明专利94111461);同时又需要启动多个操作系统(内部网及外部网)。启动多个操作系统,比较好的方法是二次启动(待批发明专利97116855),同时它还可以解决当系统崩溃时,可以方便地恢复系统,解决了安全系统中操作系统崩溃后的安全管理问题。另外在单硬盘方案中,如果从硬盘上实现一个交换区,在外网启动时该区能读写,而在内网启动后,该区只读不写。这样将保证信息只能从外网向内网单向传递。保证内网信息绝对不可能自动泄露。当然也可以让交换区任何时候均可读写,安全性有所下降。总之在保证安全隔离的同时,可以以灵活而安全的方式实现内外网数据的安全交换。
但是,无论单硬盘方案与双硬盘方案,当我们需要从内网转换到外网、或外网转换到内网都必须重新启动计算机(为了安全也必须重新启动计算机)。对用户而言,这显然是一件很不方便的事。特别是在安全电子商务中,我们需要从外网中与网上的其它用户进行信息交流,当需要用数字签名进行某种签名保证时,希望进内网进行数字签名以保证签名的安全(签名密钥放入内网,使得任何黑客都不可能从网上取得用户的签名密钥),然后把安全签名后的信息交换到外网并送给相关用户。这样就可以把签名所用的程序及密钥放入内网保证安全,在保证安全的前提下进行安全的电子商务。
在因特网上的电子商务中,一个重要的问题就是安全性。在客户端,由于病毒的不能绝对防止、黑客进入及BO等,所以客户端计算机中的信息完全可以被盗窃。而电子商务中重要的一环是数字签名,它用于表明客户身份、签订与其他人的合同。显然这个签名所用的密钥信息被盗窃是不能忍受的安全问题。也就是说,这个密钥信息不能放在可能被泄露的地方。一种可能的解决方案是用专用计算机进行数字签名,但是这个计算机(如聪明卡)速度太慢或价格太高,这样只能用强度相对弱的加密算法。所以最好的方法是利用客户端这台计算机,它需要即1、满足该计算机能进行内外网物理隔离,保证当计算机处于外网时,从物理上保证任何程序(包括用户自己)都不能从内网中获得信息。2、在内网时用户可以选择控制性地把相关信息送到外网(为了保证安全必须保证该控制程序不能被任何病毒修改——写保护)。3、能够方便、快速地进行内外网相互转换。
显然可以把这个计算机延伸到所有计算设备,例如手持设备。当需要与网络通信时使用外网,当需要使用数字签名时进入内网,然后把经过数字签名的文件送到外网,并交给需要给的地方。
显然,利用这种状态转换的装置,可以实现一台计算机“同时”运行两套操作系统,也可以为计算机多系统教学提供方便。
本发明的目的是提出一种能够使计算设备快速切换操作系统的装置和方法,利用两套存储装置,分别用于存储计算机设备的当前状态和前一状态,能够在实现计算机设备接入的内外网物理隔离的同时,进行快速内外网转换,特别是可以进行快速安全的内外网转换。
本发明提出利用备份恢复计算设备中的可变状态寄存器来实现计算设备操作系统状态转换,这是用一种相对比较快速的转换方法实现上述目的。同时它解决在一个计算设备中同时使用多个操作系统的问题。
根据本发明的一个方面,一种实现用于计算设备状态转换的装置,它包括用于保存计算设备当前状态的存储装置,其中,计算设备当前状态为计算设备接入内网或外网的状态;
用于保存计算设备当前状态之前的一个状态的存储装置,其中,计算设备当前状态的前一个状态为计算设备接入不同于在当前状态中计算设备接入的网的网;控制转换计算设备状态的装置,耦合到保存当前状态的存储装置和保存前一状态的存储装置;其中,计算设备耦合到控制转换计算设备状态的装置,根据控制转换计算设备状态的装置的指令,通过控制转换计算设备状态的装置耦合到保存当前状态的存储装置和保存前一状态的存储装置;其中,当控制转换计算设备状态的装置收到指令要求转换状态时,在计算设备中所有有关计算设备当前状态的数据保存到保存当前状态的存储装置,然后,通过控制转换计算设备状态的装置的控制将计算设备恢复前一状态,以根据保存前一状态的存储装置存储的状态运行计算设备。
最佳地,计算设备由耦合到保存当前状态的存储装置切换到耦合到保存前一状态的存储装置后,切换前保存前一状态的存储装置用于保存切换后计算设备当前状态,而切换前保存当前状态的存储装置用于保存计算设备当前状态之前的一个状态,即对于每次切换,保存当前状态的存储装置和保存前一状态的存储装置交替保存计算设备当前状态和计算设备当前状态之前的一个状态。
可选地,保存当前状态的存储装置和保存前一状态的存储装置保存的计算设备的状态包括,内存状态、显存状态、CPU状态及各种计算设备中可变的状态。
方便地,保存当前状态的存储装置和保存前一状态的存储装置是硬盘。
可选地,控制转换计算设备状态的装置,包括存储切换软件的存储器和执行该软件的逻辑运算装置及输入输出数据、指令的接口。最好地,控制转换计算设备状态的装置包括物理转换开关,耦合到计算设备和保存当前状态的存储装置和保存前一状态的存储装置;并耦合到控制开关的装置,控制开关的装置根据接口的输出数据、指令,控制物理转换开关切换,使计算设备与保存当前状态的存储装置或保存前一状态的存储装置实现耦合,以将保存当前状态的存储装置或保存前一状态的存储装置与计算设备连接。
优选地,保存当前状态的存储装置和保存前一状态的存储装置分别包括第一内存(RAM)、第一显存和第二内存(RAM)、第二显存。
可选地,计算设备为计算机。
合适地,其中计算设备为PDA。
可选地,其中计算设备为移动电话。
根据本发明的另一方面,一种实现用于计算设备状态转换的方法,它包括接收计算设备状态转换请求,此时,计算设备接入外网或内网;在收到状态转换请求后,保存计算设备当前状态,即接入外网或内网的状态;将计算设备切换到耦合到保存有计算设备当前状态的前一状态的存储装置,以将存储装置存储的当前状态的前一状态的所有数据恢复到计算设备的对应元件,此时,计算设备接入切换前断开的网;恢复前一状态,以当前状态的前一状态运行计算设备。可选地,保存计算设备当前状态的步骤包括步骤保存计算设备的当前状态到硬盘。方便地,将计算设备切换到耦合到保存有计算设备当前状态的前一状态的存储装置的步骤包括步骤将计算设备切换到耦合到保存有计算设备当前状态的前一状态的硬盘,以将硬盘存储的当前状态的前一状态的所有数据写入计算设备的对应元件。合适地,保存计算设备当前状态采取多份存储的方法。可选地,包括,保存计算设备当前状态到第一内存和/或第一显存,将计算设备切换到耦合到保存有计算设备当前状态的前一状态的第二内存(RAM)和/或第二显存。
根据本发明的技术方案,实现了计算装置的两个状态的快速转换,特别是内外网的快速转换。


图1为本发明的实施例的示意图;下面,参照附图,描绘本发明。
在普通的计算机中,为了实现内外网隔离及转换,一般采取的方法是重新启动计算机、切换相应的硬盘(或硬盘状态)和网络连接、进入相应的操作系统。这种切换方法时间太慢,不适合需要快速切换的应用。例如我们需要从外网中获得信息,需要用内网进行数字签名(必须把加密软件及密钥放入内网以确保安全),必须先切换进内网签名后,再切换到外网把经过签名的信息通过外网发送出去。用现在的隔离计算机通过合适的软件可以做到,但是切换太慢不适用。所以方便、低成本地解决这个问题有重大意义。
计算机从理论上说就是一个状态机,可以认为它是由时钟、逻辑执行机构与可变状态寄存器构成(可变状态寄存器包括计算机中所有可以改变状态的寄存器,甚至包括程序不能直接读到的寄存器,例如CPU中程序执行地址寄存器)。计算机的执行状态可以说完全由可变状态寄存器决定,所以我们可以采用备份及恢复计算机中的可变状态寄存器来实现内外网的转换,这是一种相对比较快速的切换方法。
在这里所使用备份恢复方案中,备份的意思是把信息藏起来,需要使用的时候可以恢复出来使用,不一定使用拷贝的方式备份。同理恢复的意思是使备份的信息重现出来,以利系统使用,而不一定使用拷贝的方式恢复。
实施例1根据本发明第一种实施方式,实现计算设备安全切换装置如图1所示。其中,在实施例1中,并未使用图1中的全部元件,而只使用了部分元件,包括实施例中已接入的元件。当用户选择进行切换后,计算机执行程序把计算机当前内存中的数据及CPU10的状态(包括CPU10当前的执行地址,内部寄存器的内容)取出,存入大容量存储器(硬盘)中;然后从大容量存储器17(硬盘)中取出需转换到的状态的信息,恢复到内存及CPU10(包括CPU10当前的执行地址,内部寄存器的内容)中,并把相应的CPU10执行地址送到CPU中10,使计算机能够象保存中的操作系统重新开始执行。
该实施例的方法,实际上完全类似于计算机中普遍使用的中断服务的概念,在计算机产生中断后,中断服务程序保存现场、执行程序、恢复现场从中断处重新执行程序。但是我们方案与中断处理有本质的区别,中断服务是从计算机局部出发,解决一些需要处理的问题,然后继续执行程序,操作系统、用户程序均还在内存,并可能造成信息泄露;而我们的方案是把计算机中所有可变的存储器中的内容全部保存在大容量存储器17(硬盘)中,并保证当计算机恢复内存及CPU10状态后,切换前的信息已不在计算机中,然后通过使切换后的程序从硬件的角度不能读取保存在大容量存储器17(硬盘)中的切换前的信息。这样才能从物理上保证隔离的概念。
实施例2由于现在计算机存储器比较大,在实施例1中每一次切换均需要把内存中(可能还有显存)的信息放入硬盘,所以切换的时间比较长。所以可以采取大容量存储器用双份的方法减少备份恢复时间。根据本发明第二种实施方式的实现计算设备安全切换装置如图1所示。有一个当用户选择进行切换后,计算机执行程序把计算机当前存储器中没有进行多份存储的数据及CPU10的状态(包括CPU10当前的执行地址,内部寄存器的内容)取出,存入安全的存储器中(可以是硬盘,也可以是当前内存);然后从需要切换到的安全存储器中(可以是硬盘,也可以是需要切换到的内存)取出没有进行多份存储的数据及CPU的状态,恢复到相应的存储器中,并把相应的CPU执行地址送到CPU中10,使计算机能够象保存中的操作系统重新开始执行。
实施例3根据本发明第三种实施方式实现计算设备切换装置如图1所示。当用户通过键盘及其它输入设备111请求进行计算机切换后,CPU10回应该请求;然后执行中断服务程序(切换程序);该中断服务程序保存CPU10内部所有数据(以及主板中其它芯片中的所有可变存储器中的数据)到存储器中(例如内存11);然后通过切换控制器35控制使31、32、33、34切换;从保存CPU10数据的存储器中(例如内存21)恢复CPU10中的数据(上一次切换保存的数据);并把计算机的控制返回到正确的位置。
通过切换后,内存21通过内存控制器13与CPU10相连;显存22通过显存控制器14与CPU10相连,并由显示控制器15通过显示器16显示;硬盘(或硬盘区域23)通过硬盘控制器18与CPU10相连;局网24通过网络适配器19与CPU10相连;键盘及输入设备111与CPU10相连。
当用户需要切换回去时,通过键盘及其它输入设备111请求进行计算机切换后,CPU10回应该请求;然后执行中断服务程序(切换程序);该中断服务程序还是要保存当前CPU10内部所有数据(以及主板中其它芯片中的所有可变存储器中的数据)到存储器中(例如内存21);然后切换控制器35控制使31、32、33、34切换;从保存CPU10数据的存储器中(例如内存11)恢复CPU10中的数据(上一次切换保存的数据);并把计算机的控制返回到正确的位置。
通过切换后,内存11通过内存控制器13与CPU10相连;显存12通过显存控制器14与CPU10相连,并由显示控制器15通过显示器16显示;硬盘(或硬盘区域17)通过硬盘控制器18与CPU10相连;外网110通过网络适配器19与CPU10相连;键盘及输入设备111与CPU10相连。
该实施例的方法,实际上完全类似于计算机中普遍使用的中断服务的概念,在计算机产生中断后,中断服务程序保存现场、执行程序、恢复现场从中断处重新执行程序。但是我们方案与中断处理有本质的区别,中断服务是从计算机局部出发,解决一些需要处理的问题,然后继续执行程序,操作系统、用户程序均还在内存,并可能造成信息泄露;而我们的方案是把计算机中所有可变的存储器中的内容全部保存在大容量存储器(硬盘)中,并从物理上保证当计算机切换后不能读写切换前的数据,这是所谓的物理隔离的概念,即这种解决方案是不能用软件攻破的。因为切换前的信息已不在计算机中,这样才能从物理上保证隔离的概念。
实施例3实际上解决了在一个计算设备中同时运行两个以上的操作系统,并能快速切换的装置。但是、在实施例3中,实际上如果不对切换控制器35加以限制,则并不能绝对保证安全,例如黑客程序可以通过篡改切换程序(中断服务程序),控制切换控制器35来实现黑客攻击。所以必须绝对保证切换程序(中断服务程序)本身的安全性,既必须保证只有不能被修改的程序才能进行切换工作。这就是我们的安全实施例4。
实施例4根据本发明第四种实施方式实现计算设备切换装置如图1所示。当用户通过键盘及其它输入设备111请求进行计算机切换后,CPU10回应该请求;向安全切换控制器35发出切换请求,安全切换控制器35产生绝对不可屏蔽中断到CPU10,并把触发器置位,当CPU10收到绝对不可屏蔽中断后只能(从硬件上)进入执行固定程序36,固定程序36就是中断服务程序(切换程序);该中断服务程序保存中断前的CPU10内部所有数据(以及主板中其它芯片中的所有可变存储器中的数据)到存储器中(例如内存11);然后通过切换控制器35在触发器351已经置位的情况下,控制使31、32、33、34切换,并把触发器351复位;从保存CPU10数据的存储器中(例如内存21)恢复CPU10中的数据(上一次切换保存的数据);并把计算机的控制返回到正确的位置。
通过切换后,内存21通过内存控制器13与CPU10相连;显存22通过显存控制器14与CPU10相连,并由显示控制器15通过显示器16显示;硬盘(或硬盘区域23)通过硬盘控制器18与CPU10相连;局网24通过网络适配器19与CPU10相连;键盘及输入设备111与CPU10相连。触发器351复位。
当用户需要切换回去时,通过键盘及其它输入设备111请求进行计算机切换后,CPU10回应该请求;向安全切换控制器35发出切换请求,安全切换控制器35产生绝对不可屏蔽中断到CPU10,并把触发器置位,当CPU10收到绝对不可屏蔽中断后只能(从硬件上)进入执行固定程序36,固定程序36就是中断服务程序(切换程序);该中断服务程序保存中断前的CPU10内部所有数据(以及主板中其它芯片中的所有可变存储器中的数据)到存储器中(例如内存11);然后通过切换控制器35在触发器351已经置位的情况下,控制使31、32、33、34切换,并把触发器351复位;从保存CPU10数据的存储器中(例如内存11)恢复CPU10中的数据(上一次切换保存的数据);并把计算机的控制返回到正确的位置。
通过切换后,内存11通过内存控制器13与CPU10相连;显存12通过显存控制器14与CPU10相连,并由显示控制器15通过显示器16显示;硬盘(或硬盘区域17)通过硬盘控制器18与CPU10相连;外网110通过网络适配器19与CPU10相连;键盘及输入设备111与CPU10相连。触发器351复位。
虽然本发明通过实施例进行了描述,但本领域技术人员可在本发明的精神的范围内,作出各种变形和改进,所附的权利要求应包括这些变形和改进。
权利要求
1.一种实现用于计算设备状态转换的装置,它包括用于保存计算设备当前状态的存储装置;用于保存计算设备当前状态之前的一个状态的存储装置;控制转换计算设备状态的装置,耦合到保存当前状态的存储装置和保存前一状态的存储装置;其中,计算设备耦合到控制转换计算设备状态的装置,根据控制转换计算设备状态的装置的指令,通过控制转换计算设备状态的装置的控制,计算设备到保存当前状态的存储装置和/或保存前一状态的存储装置;当控制转换计算设备状态的装置收到指令要求转换状态时,在计算设备中所有有关计算设备当前状态的数据被保存到保存当前状态的存储装置,然后,通过控制转换计算设备状态的装置的控制,计算设备由当前状态恢复到前一状态,以根据保存前一状态的存储装置存储的状态运行。
2.根据权利要求1的装置,其中,计算设备由耦合到保存当前状态的存储装置切换到耦合到保存前一状态的存储装置,以恢复前一状态,切换前保存前一状态的存储装置用于保存切换后计算设备当前状态,而切换前保存当前状态的存储装置用于保存切换后计算设备当前状态之前的一个状态,即切换前的当前状态;对于每次切换前后,保存前一状态的存储装置和保存当前状态的存储装置交替保存计算设备当前状态和计算设备当前状态之前的一个状态。
3.根据权利要求1的装置,其中,计算设备由当前状态恢复到前一状态时,存储前一状态的存储装置的状态数据被写入内存或/计算设备。
4.根据权利要求1的装置,其中,计算设备当前状态为计算设备接入内网或外网运行的状态;当前状态之前的一个状态为计算设备上次切换前的状态,在计算设备当前状态前的一个状态时,计算设备接入不同于在当前状态中计算设备所接入的网的网。
5.根据权利要求1的装置,其中,计算设备当前状态和当前状态之前的一个状态分别运行于不同的操作系统。
6.根据权利要求1的装置,其中,计算设备当前状态和当前状态之前的一个状态包括计算设备的可变状态寄存器状态。
7.根据权利要求1的装置,其中,保存当前状态的存储装置和保存前一状态的存储装置保存的计算设备的状态包括,内存状态、显存状态、CPU状态及各种计算设备中可变的状态。
8.根据权利要求7的装置,其中,内存状态、显存状态、CPU状态及各种计算设备中可变的状态为二进制码序列数据表示的状态。
9.根据权利要求1或7的装置,其中保存当前状态的存储装置和保存前一状态的存储装置是硬盘。
10.根据权利要求1的装置,其中,控制转换计算设备状态的装置包括存储切换软件的存储器和执行该软件的逻辑运算装置及输入输出数据、指令的接口。
11.根据权利要求10的装置,其中控制转换计算设备状态的装置包括物理转换开关或软件开关,耦合到计算设备和保存当前状态的存储装置和保存前一状态的存储装置;并耦合到控制开关的装置,控制开关的装置根据接口的输出数据、指令,控制物理转换开关切换,使计算设备与保存当前状态的存储装置或保存前一状态的存储装置实现耦合。
12.根据权利要求1或11的装置,其中,保存当前状态的存储装置和保存前一状态的存储装置分别包括第一内存(RAM)、第一显存和第二内存(RAM)、第二显存。7A、根据权利要求1的装置,其中,包括两个以上存储装置,耦合到控制转换计算设备状态的装置。
13.根据权利要求1到8,10,11之一的装置,其中计算设备为计算机或PDA或移动电话。
14.根据权利要求9的装置,其中计算设备为计算机或PDA或移动电话。
15.根据权利要求12的装置,其中计算设备为计算机或PDA或移动电话。
16.一种实现用于计算设备状态转换的方法,它包括接收计算设备状态转换请求;在收到状态转换请求后,保存计算设备当前状态到保存当前状态的存储装置;将计算设备转换,以将存储装置存储的当前状态的前一状态的所有数据恢复到计算设备的对应元件;以当前状态的前一状态运行计算设备。
17.根据权利要求16的方法,其中,切换步骤包括将计算设备从一个操作系统切换到另一个操作系统。
18.根据权利要求16的方法,其中,切换步骤包括将计算设备从接入外网断开内网切换到接入内网断开外网;或将计算设备从接入内网断开外网切换到接入外网断开内网。
19.根据权利要求16的方法,其中保存计算设备当前状态的步骤包括步骤保存计算设备的当前状态到硬盘。
20.根据权利要求16或18的方法,其中将计算设备切换到耦合到保存有计算设备当前状态的前一状态的存储装置的步骤包括步骤将计算设备从耦合到硬盘切换为耦合到保存有计算设备当前状态的前一状态的硬盘,以将硬盘存储的当前状态的前一状态的所有数据写入计算设备的对应元件。
21.根据权利要求16的方法,其中保存计算设备当前状态采取多份存储的方法,即存储至少一个以上的计算设备的状态。
22.根据权利要求16的方法,包括,保存计算设备当前状态到第一内存和/或第一显存,将计算设备切换到耦合到保存有计算设备当前状态的前一状态的第二内存(RAM)和/或第二显存。
全文摘要
实现计算设备状态转换的装置包括:保存计算设备当前状态的存储装置;保存当前状态之前的一个状态的存储装置;控制转换计算设备状态的装置,耦合到上述两存储装置;其中,计算设备耦合到控制转换的装置,以根据其指令,在当前状态与前一个状态之间切换;其中,转换状态时,计算设备中有关当前状态的数据保存到保存当前状态的装置,然后,计算设备切换为耦合到保存前一状态的存储装置,并根据其存储的状态运行计算设备。
文档编号G06F21/74GK1383068SQ0111554
公开日2002年12月4日 申请日期2001年4月27日 优先权日2001年4月27日
发明者邵通 申请人:邵通
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1