CN102135910B - 切换操作系统的方法及使用此方法的电子装置 - Google Patents

切换操作系统的方法及使用此方法的电子装置 Download PDF

Info

Publication number
CN102135910B
CN102135910B CN201110056317.3A CN201110056317A CN102135910B CN 102135910 B CN102135910 B CN 102135910B CN 201110056317 A CN201110056317 A CN 201110056317A CN 102135910 B CN102135910 B CN 102135910B
Authority
CN
China
Prior art keywords
operating system
section
resource description
description list
declare
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.)
Active
Application number
CN201110056317.3A
Other languages
English (en)
Other versions
CN102135910A (zh
Inventor
王江波
李凯
王小龙
张�雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Via Technologies Inc filed Critical Via Technologies Inc
Priority to CN201110056317.3A priority Critical patent/CN102135910B/zh
Priority to TW100112055A priority patent/TWI528284B/zh
Priority to EP11004183.7A priority patent/EP2495655B1/en
Publication of CN102135910A publication Critical patent/CN102135910A/zh
Priority to US13/304,402 priority patent/US8898495B2/en
Application granted granted Critical
Publication of CN102135910B publication Critical patent/CN102135910B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • G06F9/441Multiboot arrangements, i.e. selecting an operating system to be loaded
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Power Sources (AREA)

Abstract

一种切换操作系统的方法及使用此方法的电子装置。电子装置具有处理器、包括第一区段与第二区段的系统存储器及储存有系统固件的存储器单元。上述方法中,在切换至第一操作系统时,通过系统固件使用第一资源描述表宣告一区段为可用状态,以及宣告二区段为保留状态,使得第一操作系统工作第一区段处于工作状态,而第二操作系统于第二区段处于省电状态。在切换至第二操作系统时,通过系统固件使用第二资源描述表宣告第二区段为可用状态,以及宣告第一区段为保留状态,使得第二操作系统于第二区段处于工作状态,而第一操作系统于第一区段处于省电状态。本发明可使操作系统的切换更加地快速,并且更省电。

Description

切换操作系统的方法及使用此方法的电子装置
技术领域
本发明有关于一种多操作系统的使用方法及其应用,且特别是有关于一种切换操作系统的方法及使用此方法的电子装置。 
背景技术
随着科技的进步,市面上的电子装置为了满足使用者的需求,而需要同时具备多种功能。其中,随着使用需求的不同,使用者会在同一电子装置上安装多个操作系统。例如,同时安装麦金塔(Macintosh)操作系统以及微软视窗操作系统。一般而言,在两个操作系统之间进行切换有两种方法,一种是重新开机进入另一个操作系统,另一种是利用虚拟技术(virtualization technology)来达到在两个操作系统之间的切换。 
举例来说,可通过虚拟机器软件来运行两个操作系统,也就是通过一虚拟操作系统来控制硬件的行为并且提供信息给两个操作系统,使得第一操作系统与第二操作系统成为虚拟操作系统的从属操作系统(client operating system)。据此,便可通过虚拟操作系统在第一操作系统与第二操作系统之间进行切换。另外,亦可在第一操作系统之下利用虚拟技术来启动第二操作系统。也就是说,当切换至第二操作系统时,第一操作系统仍在执行当中,故对于系统来说是耗电的。 
然而,传统作法不是耗费许多时间在等待重新开机,就是要利用中介软件在两个操作系统之间进行切换而导致系统过度耗电。而且,利用中介软件在这些操作系统之间进行切换的方法中,处理器会同时执行两个操作系统,其处理速度势必会受到影响。
发明内容
本发明提供一种切换操作系统的方法,可于多个操作系统之间快速进行切换。 
本发明提供一种电子装置,将系统存储器切割为多个区块以分别给多个操作系统来使用。 
本发明提出一种切换操作系统的方法,适用于具有处理器及系统存储器的电子装置。本方法中,在切换至第一操作系统时,通过使用第一资源描述表宣告系统存储器中的第一区段为可用状态及宣告系统存储器中的第二区段为保留状态,来使得位于该第一区段中的第一操作系统处于工作状态,并且使得位于该第二区段中的第二操作系统处于省电状态。在切换至第二操作系统时,通过使用第二资源描述表宣告第二区段为可用状态及宣告第一区段为保留状态,来使得第二操作系统于第二区段处于工作状态,并且使得第一操作系统于第一区段处于省电状态,其中第一操作系统和第二操作系统不会同时处于工作状态。 
本发明提出一种电子装置,包括处理器、系统存储器以及存储器单元。其中,系统存储器与存储器单元分别耦接至处理器。系统存储器包括第一区段与第二区段。存储器单元储存系统固件、第一资源描述表与第二资源描述表。在电子装置切换至第一操作系统时,系统固件通过使用第一资源描述表宣告第一区段为可用状态及宣告第二区段为保留状态,来使得位于该第一区段中的第一操作系统处于工作状态,并且使得位于该第二区段中的第二操作系统处于省电状态。在电子装置切换至第二操作系统时,系统固件通过使用第二资源描述表宣告第二区段为可用状态及宣告第一区段为保留状态,来使得第二操作系 统于第二区段处于工作状态,并且使得第一操作系统于第一区段处于省电状态,其中第一操作系统和第二操作系统不会同时处于工作状态。 
基于上述,本发明可于电子装置上运行多套操作系统,且同一时间只有一套操作系统在运行,而另外操作系统处于省电状态,如此可提高载入操作系统的效率。 
附图说明
图1是依照本发明的一实施例所绘示的电子装置的方块图。 
图2是依照本发明的一实施例所绘示的存储器的空间配置示意图。 
图3是依照本发明的一实施例所绘示的切换操作系统的方法流程图。 
图4是依照本发明的另一实施例所绘示的切换操作系统的方法流程图。 
图5是依照本发明的另一实施例所绘示的存储器的空间配置示意图。 
具体实施方式
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。 
具有多操作系统的电子装置在切换操作系统时,一般需要重新启动系统来进行切换,使用上相当不便。对此,本发明提出一种切换操作系统的方法,可快速地切换操作系统,并且使得未被使用的操作系统处于省电状态,进而达到系统省电的功效。为了使本发明的内容更为明了,以下特举实施例作为本发明确实能够据以实施的范例。 
图1是依照本发明的一实施例所绘示的电子装置的方块图。请参照图1,电子装置100包括处理器110、芯片组120、系统存储器130、存储器单元140及储存单元150。芯片组120例如是南北桥合一的一芯片组,其连接至处理器110。系统存储器130、存储器单元140及储存单元150分别通过芯片组120耦接至处理器110。储存单元150例如为硬盘,其安装有多个操作系统。在另一实施例中,芯片组120例如包括一北桥芯片与一南桥芯片,其中处理器110及系统存储器130耦接北桥芯片;而北桥芯片、存储器单元140及储存单元150耦接南桥芯片。 
存储器单元140例如为只读存储器(Read-Only Memory,ROM),其用以储存系统固件(firmware)以及资源描述表。在本实施例中,假设安装了两个操作系统,则存储器单元140则储存有两个资源描述表,例如为第一资源描述表与第二资源描述表,以分别提供给两个操作系统来使用。在此,系统固件例如为基本输入输出系统(Basic Input Output System,BIOS)。 
系统存储器130包括二个区块,即,操作系统区块与系统保留区块。上述操作系统区块包括多个区段以分别提供给多个操作系统来使用。在本实施例中,操作系统区块中的这些区段至少包括第一区段与第二区段。举例来说,图2是依照本发明的一实施例所绘示的系统存储器的空间配置示意图。请参照图2,系统存储器130在运行的时候分为三个部分,即,区块210、区块220以及区块230。其中,区块210及区块230为系统保留区块,操作系统无法使用它,而区块220则为操作系统可以使用的区块,即操作系统区块。值得一提的是,上述的区块210的地址空间不以从0开始为限,因此在另一实施例中,区块210可配置于区块220中(即插入区块220中),而使区块220具有不连续的地址空间(未绘示)。 
具体而言,区块210的地址空间被系统固件和视频图形阵列(Video Graphics Array,VGA)等设备所占用,因此操作系统 不能使用。值得一提的是,上述的具有区块210的系统存储器空间配置可适用于计算机系统。但是,在某些情况下,系统存储器的空间不需配置区块210,而这样的空间配置亦可适用于大部分的电子装置,不以计算机系统为限。详细的说明是,系统存储器130在运行的时候分为二个部分,即,区块220以及区块230。其中,区块230为系统保留区块,而区块220则为操作系统可以使用的区块,而区块220的地址空间不以从0开始为限。 
区块230由系统固件声明为保留,用于在操作系统运行时执行系统固件程序(例如系统管理模式(System Management Mode,SMM))以及保存一些信息以防被操作系统破坏。由于区块230宣告为保留,因此操作系统不能使用。而区块220由系统固件声明为可用区块,操作系统一般只会工作于区块220中。 
在本实施例中,系统固件会针对多个操作系统分别提供不同的存储器区段,使得这些操作系统之间互不干扰。例如,系统固件可将系统存储器130中的区块220切割为多个区段,供储存于图1的储存单元150中的多个操作系统载入并使用。以2个操作系统(在下文中称为第一操作系统和第二操作系统)为例,将区块220区分为第一区段221和第二区段223,分别供第一操作系统和第二操作系统载入并使用。也就是说,第一操作系统会工作于第一区段221,而第二操作系统会工作于第二区段223。值得注意的是,在本实施例中,第一操作系统与第二操作系统并不会同时工作于所属的区段中,亦即二区段211与223会属于不同的电源状态。 
进一步地说,当切换至第一操作系统时,可通过系统固件使用第一资源描述表来宣告系统存储器130中的第一区段221为可用状态,以及宣告系统存储器130中的第二区段223为保留(reserved)状态,使得位于第一区段221中的第一操作系统处 于工作状态,并且使得位于第二区段223中的第二操作系统处于省电状态。上述的工作状态例如是高级配置和电源管理接口(Advanced Configuration and Power Interface,ACPI)规范中定义的S0状态;上述的省电状态例如是ACPI规范中定义的S3状态(Suspend to RAM)。另一方面,在切换至第二操作系统时,可通过系统固件使用第二资源描述表来宣告第二区段223为可用状态,以及宣告第一区段221为保留状态,使得位于第二区段223中的第二操作系统处于工作状态,并且使得位于第一区段221中的第一操作系统处于省电状态。上述的工作状态例如是ACPI规范中定义的S0状态;上述的省电状态例如是ACPI规范中定义的S3状态。 
以下进一步说明上述切换操作系统的各步骤。图3是依照本发明的一实施例所绘示的切换操作系统的方法流程图。请同时参照图1、图2及图3,在步骤S305中,在电子装置100开机时,系统固件产生第一资源描述表以宣告第一区段221为可用状态且第二区段223为保留状态,并启动第一操作系统以工作于第一区段221。例如,在电子装置100开机时,系统固件会于存储器单元140中产生第一资源描述表,并且依据第一操作系统的存储器需求,于第一资源描述表中宣告第一区段221的位置与大小。另外,系统固件会使用第一资源描述表来宣告第一区段221为可用状态且第二区段223为保留状态。 
举例来说,使用者一开始可先选择一个操作系统启动,假设在此选择的是第一操作系统。系统固件在启动第一操作系统之前,会将第一区段221宣告为可用状态,将第二区段223宣告为保留。如此一来,在启动第一操作系统之后,第一操作系统将仅工作在第一区段221。 
接着,倘若使用者想切换至第二操作系统,可利用按键(例 如热键(hot key))来进行切换动作。之后,如步骤S310所示,系统固件会接收到切换信号。然后,在步骤S315中,产生第二资源描述表以宣告第二区段223为可用状态且第一区段221为保留状态,并启动第二操作系统以工作于第二区段223。例如,由系统固件在存储器单元140中产生第二资源描述表,并且依据第二操作系统的存储器需求以及第一资源描述表,于第二资源描述表中宣告第二区段223的位置与大小。并且,宣告第二区段223为可用状态且第一区段221为保留状态。如此一来,第二操作系统将仅工作在第二区段223。 
值得一提的是,若第一区段221与第二区段223皆已分别载入第一操作系统以及第二操作系统,通过第一资源描述表会使得位于第一区段221中的第一操作系统处于工作状态,并且使得位于第二区段223中的第二操作系统处于省电状态;而通过第二资源描述表会使得位于第二区段223中的第二操作系统处于工作状态,并且使得位于第一区段221中的第一操作系统处于省电状态。换言之,以图3的步骤S305为例,由于第二区段223尚未载入第二操作系统,因此第二区段223仅宣告为保留状态。然而,以图3的步骤S315为例,由于第一区段221已载入第一操作系统,因此第一区段221虽宣告为保留状态,但位于第一区段221中的第一操作系统是处于省电状态。 
此外,在步骤S315之后,若欲进行此二操作系统的切换,已载入于第一区段221的第一操作系统与已载入第二区段223的第二操作系统于省电状态与工作状态之间切换,使用者不需花时间等待电子装置100重新载入另一操作系统,也不需要通过虚拟操作系统来切换多个操作系统。因此,相较于先前技术,本发明的操作系统切换更加地快速,并且更省电。 
图4是依照本发明的另一实施例所绘示的切换操作系统的 方法流程图。请同时参照图1、图2及图4,在步骤S401中,启动处理器110。接着,在步骤S403中,判断开机模式为一般模式或切换模式。具体而言,在电子装置100刚开机时,其开机模式为一般模式,而在其中一操作系统之下重新启动处理器110之后的开机模式则为切换模式,关于切换模式将详述于后。 
若开机模式为一般模式,执行步骤S405,产生第一资源描述表,以宣告第一区段221为可用状态且第二区段223为保留状态。在此,由于第一操作系统尚未启动,因此系统固件会于存储器单元140中产生第一资源描述表。接着,在步骤S407中,启动第一操作系统。具体而言,储存于储存单元150的第一操作系统载入第一区段221中。然后,在步骤S408中,第一操作系统工作于第一区段221。换言之,第一操作系统处于工作状态,例如处于ACPI规范中定义的S0状态。此时,使用者可以在第一操作系统下操作电子装置100。 
之后,在第一操作系统执行之下,使用者可利用按键来切换至第二操作系统。如步骤S409所示,系统固件会接收到切换信号。接着,执行步骤S411,记录之后欲再次唤醒第一操作系统所需的第一唤醒信息于第一区段221。然后,在步骤S413中,记录切换标记于存储器单元140。在此,切换标记是用来标示由第一操作系统切换至第二操作系统。然后,在步骤S415中,使第一操作系统进入省电状态。 
具体而言,在不关闭第一操作系统的情况下启动第二操作系统,会先使第一操作系统待机,进入省电状态,例如进入ACPI规范中定义的S3状态。在进入省电状态之前,先将之后欲再次唤醒第一操作系统所需的第一唤醒信息储存于第一区段221中。而在进入省电状态的过程中,系统的控制权最后会回到系统固件,系统固件会了解并储存系统的意图到存储器单元140(即, 储存用来标示由第一操作系统切换至第二操作系统的切换标记到存储器单元140),并控制处理器110重新启动。在另一实施例中,切换标记可储存于系统存储器130中。在又一实施例中,切换标记可同时储存于系统存储器130与存储器单元140中。 
之后,返回步骤S401,重新启动处理器110。然后,可通过存储器单元140中的切换标记(例如是否有记录切换标记)来判断目前的开机模式。详言之,若存储器单元140有记录切换标记,表示电子装置100并非为第一次开机的状态,故,执行步骤S417,判断第二操作系统是否已启动。若第二操作系统尚未启动,执行步骤S419,产生第二资源描述表,以宣告第二区段123为可用状态且第一区段121为保留状态。例如,由系统固件于存储器单元140中产生第二资源描述表。接着,在步骤S421中,启动第二操作系统。具体而言,储存于储存单元150的第二操作系统系载入第二区段223中。然后,在步骤S422中,第二操作系统工作于第二区段223;换言之,第二操作系统处于工作状态,例如处于ACPI规范中定义的S0状态。此时,使用者可以在第二操作系统下操作电子装置100,而此时的第一操作系统仍处于省电状态。 
具体而言,处理器110重新启动后会先进入系统固件,系统固件从存储器单元140中取得系统先前的意图(即,切换标记),知道系统欲切换至第二操作系统。于是,系统固件使用第二资源描述表宣告第一区段221为保留状态,且第二区段223为可用状态,并启动第二操作系统,如此一来第二操作系统将仅工作在第二区段223中。 
然后,在步骤S423中,在第二操作系统执行之下,接收另一切换信号。之后,在步骤S425中,记录之后欲再次唤醒第二操作系统所需的第二唤醒信息于第二区段223。然后,在步骤 S427中,记录切换标记于存储器单元140。在此,切换标记是用来标示由第二操作系统切换至第一操作系统。然后,在步骤S429中,使第二操作系统进入省电状态。 
也就是说,如果此时使用者想从第二操作系统切换到第一操作系统,要先使第二操作系统待机,进入省电状态。在进入省电状态之前,先将之后欲再次唤醒第二操作系统所需的信息保存至第二区段223。而进入的省电模式的过程中系统的控制权最后会到系统固件,系统固件将切换标记储存到存储器单元140(即,储存用来标示由第二操作系统切换至第一操作系统的切换标记到存储器单元140),并控制处理器重新启动。 
之后,返回步骤S401,重新启动处理器110。当第一操作系统与第二操作系统皆载入至系统存储器130时,即判断开机模式为切换模式且第二操作系统已启动(即二操作系统皆已载入系统存储器130),下一步则进行S431,判断所要切换到的操作系统为第一操作系统或第二操作系统,并据以唤醒第一操作系统或第二操作系统。例如,读取切换标记,以判断所要切换到的操作系统为第一操作系统或第二操作系统。 
倘若要切换到第一操作系统,如步骤S433所示,从第一区段121读取第一唤醒信息。接着,在步骤S435中,使用此第一唤醒信息来唤醒第一操作系统。然后,执行步骤S408,使得第一操作系统工作于第一区段221。此时,位于第二区段223的第二操作系统处于省电状态。此外,在唤醒第一操作系统之前,例如先将第一区段221宣告为可用状态,将第二区段223宣告为保留状态。反之,倘若要切换到第二操作系统,如步骤S437所示,从第二区段223读取第二唤醒信息。接着,在步骤S439中,使用此第二唤醒信息来唤醒第二操作系统。然后,执行步骤S422,使得第二操作系统工作于第二区段223。此时,位于第 一区段221的第一操作系统处于省电状态。此外,在唤醒第二操作系统之前,例如先将第二区段223宣告为可用状态,将第一区段221宣告为保留状态。 
以由第二操作系统切换至第一操作系统而言,当第一操作系统与第二操作系统皆已载入系统存储器130时,系统重新启动后会进入系统固件,系统固件从存储器单元140中取得切换标记,借以得知要唤醒第一操作系统。于是,系统固件宣告第一区段221为可用状态,第二区段223为保留状态,并引导系统唤醒第一操作系统。由于第一区段221在第二操作系统运行期间被宣告为保留状态,其内容没有被第二操作系统破坏,因此可依据第一区段221所储存的第一唤醒信息来唤醒第一操作系统,如此一来便实现了从第二操作系统快速地切换至第一操作系统。上述切换操作系统所花费的时间仅包括第二操作系统进入省电状态的时间以及第一操作系统被唤醒的时间,且唤醒之后能够完全恢复第一操作系统之前的工作状态。换言之,当由第二操作系统切换至第一操作系统时,系统不需关机,并再开机以载入另一操作系统。具体而言,若系统关机之后,储存于存储器的数据将消失,故需重新载入新的操作系统,如此耗费许多时间等待操作系统进行切换。 
图5是依照本发明的另一实施例所绘示的系统存储器的空间配置示意图。请参照图5,系统存储器500包括区块510、区块520及区块530。其中,区块510的地址空间被系统固件(例如为BIOS)和VGA设备所占用。区块530由系统固件声明为保留,用于在操作系统运行时执行系统固件程序以及保存一些信息以防被操作系统破坏。而区块520由系统固件声明为可用区块,操作系统一般只会工作于区块520中。 
本实施例是将区块520分割为3个区段,第一区段521为第一 操作系统使用,第二区段523为第二操作系统使用,共用区段525为两个操作系统的公用部分。如此分法是为了应对有些操作系统会要求地址空间从0开始的一段存储器地址空间来作为其运行所需的必要地址空间。一般情况下,共用区段525的大小远小于第一区段521与第二区段523的大小。 
在第一操作系统之下欲切换至第二操作系统时,先将共用区段525中的数据备份至第一区段521,才切换至第二操作系统,而当欲由第二操作系统切换回第一操作系统时,便可自第一区段521中将先前备份的共用区段525的数据恢复至共用区段525。反之,在第二操作系统之下欲切换至第一操作系统时,先将共用区段525中的数据备份至第二区段523,才切换至第一操作系统,而当欲由第一操作系统切换回第二操作系统时,便可自第二区段523中将先前备份的共用区段525的数据恢复至共用区段525。 
举例来说,以上述图4为例,可在执行步骤S405的同时,系统固件使用第一资源描述表来宣告系统存储器500中的共用区段525为可用状态,使得第一操作系统可工作于共用区段525。另外,在上述步骤S409之后,也就是在第一操作系统执行之下接收到切换信号之后,系统固件会将共用区段525内的数据备份至第一区段521。而在执行步骤S419的同时,系统固件使用第二资源描述表来宣告系统存储器500中的共用区段525为可用状态,使得第二操作系统可工作于共用区段425。 
另外,在上述启动第二操作系统以工作于第二区段523,并且接收到另一切换信号之后,也就是上述步骤S423之后,将共用区段525内的数据备份至第二区段523。而在执行到步骤S433,确定要切换至第一操作系统时,系统固件将第一区段521中备份的共用区段525内的数据恢复至共用区段525。并且,使 用第一资源描述表宣告系统存储器500中的共用区段525为可用状态,使得第一操作系统可工作于共用区段525。如此一来,共用区段525便能够被第一操作系统与第二操作系统所共用。 
综上所述,本发明的系统存储器包括操作系统区块与系统保留区块,并且于操作系统区块中切割出第一区段与第二区段以分别给第一操作系统与第二操作系统来使用。当切换至其中一操作系统时,此操作系统对应的区段被宣告为可用状态,另一区段则被宣告为保留状态。如此一来,正在执行中的操作系统仅会工作于其所对应的区段当中。另外,由于对应于第一操作系统的区段在第二操作系统运行期间被宣告为保留状态,其内容没有被第二操作系统破坏,因此第一操作系统可以被快速唤醒,并且可恢复至先前的状态。由于操作系统进入省电状态的时间与另一操作系统被唤醒的时间仅为数秒钟,比起重新开机动辄几十秒的时间要快得多,并且通过上述实施例的方法,在切换至操作系统之后能够完全恢复操作系统之前的工作状态,大幅改善了切换操作系统之后的效率。 
以上所述仅为本发明较佳实施例,然其并非用以限定本发明的范围,任何熟悉本项技术的人员,在不脱离本发明的精神和范围内,可在此基础上做进一步的改进和变化,因此本发明的保护范围当以本申请的权利要求书所界定的范围为准。 
附图中符号的简单说明如下: 
100:电子装置 
110:处理器 
120:芯片组 
130、500:系统存储器 
140:存储器单元 
150:储存单元 
210、220、230、510、520、530:区块 
221、521:第一区段 
223、523:第二区段 
525:共用区段 
S305~S315、S401~S439:切换操作系统的方法各步骤。 

Claims (20)

1.一种切换操作系统的方法,其特征在于,适用于具有一处理器及一系统存储器的一电子装置,该方法包括:
在切换至一第一操作系统时,通过使用一第一资源描述表宣告该系统存储器中的一第一区段为一可用状态及宣告该系统存储器中的一第二区段为一保留状态,来使得位于该第一区段中的该第一操作系统处于一工作状态,并且使得位于该第二区段中的一第二操作系统处于一省电状态;以及
在切换至该第二操作系统时,通过使用一第二资源描述表宣告该第二区段为该可用状态及宣告该第一区段为该保留状态,来使得该第二操作系统于该第二区段处于该工作状态,并且使得该第一操作系统于该第一区段处于该省电状态,
其中该第一操作系统和该第二操作系统不会同时处于该工作状态。
2.根据权利要求1所述的切换操作系统的方法,其特征在于,在切换至该第一操作系统及该第二操作系统的步骤之前,还包括:
在该电子装置开机时,产生该第一资源描述表以宣告该第一区段为该可用状态且该第二区段为该保留状态,并启动该第一操作系统以工作于该第一区段;
接收一切换信号;以及
产生该第二资源描述表以宣告该第二区段为该可用状态且该第一区段为该保留状态,并启动该第二操作系统以工作于该第二区段,其中该第一操作系统于该第一区段处于该省电状态。
3.根据权利要求2所述的切换操作系统的方法,其特征在于,在接收该切换信号的步骤之后,还包括:
重新启动该处理器;
判断该第二操作系统是否已启动;
若该第二操作系统未启动,产生该第二资源描述表,并启动该第二操作系统以工作于该第二区段;以及
若该第二操作系统已启动,判断所要切换到的操作系统为该第一操作系统或该第二操作系统,据以唤醒该第一操作系统或该第二操作系统。
4.根据权利要求2所述的切换操作系统的方法,其特征在于,在接收该切换信号的步骤之后,产生该第二资源描述表的步骤之前,还包括:
记录用以唤醒该第一操作系统的一第一唤醒信息于该第一区段;以及
使该第一操作系统进入该省电状态。
5.根据权利要求2所述的切换操作系统的方法,其特征在于,在产生该第二资源描述表,并启动该第二操作系统以工作于该第二区段的步骤之后,还包括:
接收另一切换信号;
记录用以唤醒该第二操作系统的一第二唤醒信息于该第二区段;以及
使该第二操作系统进入该省电状态。
6.根据权利要求2所述的切换操作系统的方法,其特征在于,产生该第一资源描述表的步骤还包括:
使用该第一资源描述表宣告该系统存储器中的一共用区段为该可用状态,使得该第一操作系统工作于该共用区段;
在接收该切换信号的步骤之后,还包括:
备份该共用区段内的数据至该第一区段;以及
使用该第二资源描述表宣告该系统存储器中的该共用区段为该可用状态,使得该第二操作系统工作于该共用区段;以及
在启动该第二操作系统以工作于该第二区段的步骤之后,还包括:
接收另一切换信号;
备份该共用区段内的数据至该第二区段;
将该第一区段中备份的该共用区段内的数据恢复至该共用区段;以及
使用该第一资源描述表宣告该系统存储器中的该共用区段为该可用状态,使得该第一操作系统工作于该共用区段。
7.根据权利要求1所述的切换操作系统的方法,其特征在于,还包括:
记录一切换标记于该电子装置的一存储器单元,以标示由该第一操作系统切换至该第二操作系统,或是由该第二操作系统切换至该第一操作系统。
8.根据权利要求7所述的切换操作系统的方法,其特征在于,还包括:
读取该切换标记,以判断所要切换到的操作系统为该第一操作系统或该第二操作系统;
若要切换到该第一操作系统,读取用以唤醒该第一操作系统的一第一唤醒信息,其中该第一唤醒信息记录于该第一区段;以及
若要切换到该第二操作系统,读取用以唤醒该第二操作系统的一第二唤醒信息,其中该第二唤醒信息记录于该第二区段。
9.根据权利要求7所述的切换操作系统的方法,其特征在于,该存储器单元包括一只读存储器。
10.根据权利要求2所述的切换操作系统的方法,其特征在于,产生该第一资源描述表的步骤包括:
依据该第一操作系统的一存储器需求,于该第一资源描述表中宣告该第一区段的位置与大小。
11.根据权利要求2所述的切换操作系统的方法,其特征在于,产生该第二资源描述表的步骤包括:
依据该第二操作系统的一存储器需求以及该第一资源描述表,于该第二资源描述表中宣告该第二区段的位置与大小。
12.根据权利要求1所述的切换操作系统的方法,其特征在于,该工作状态是ACPI规范中定义的S0状态;该省电状态是ACPI规范中定义的S3状态。
13.一种电子装置,其特征在于,包括:
一处理器;
一系统存储器,耦接至该处理器,该系统存储器包括一操作系统区块与一系统保留区块,其中该操作系统区块包括多个区段以分别提供给多个操作系统来使用,且所述区段至少包括一第一区段与一第二区段;以及
一存储器单元,耦接至该处理器,该存储器单元储存一系统固件、一第一资源描述表与一第二资源描述表,其中,
在该电子装置切换至一第一操作系统时,该系统固件通过使用该第一资源描述表宣告该第一区段为一可用状态及宣告该第二区段为一保留状态,来使得位于该第一区段中的该第一操作系统处于一工作状态,并且使得位于该第二区段中的一第二操作系统处于一省电状态;以及
在该电子装置切换至该第二操作系统时,该系统固件通过使用该第二资源描述表宣告该第二区段为该可用状态及宣告该第一区段为该保留状态,来使得该第二操作系统于该第二区段处于该工作状态,并且使得该第一操作系统于该第一区段处于该省电状态,
其中该第一操作系统和该第二操作系统不会同时处于该工作状态。
14.根据权利要求13所述的电子装置,其特征在于,
在该电子装置开机时,该系统固件产生该第一资源描述表,而依据该第一操作系统的一存储器需求,于该第一资源描述表中宣告该第一区段的位置与大小,以宣告该第一区段为该可用状态且该第二区段为该保留状态,并启动该第一操作系统以工作于该第一区段;以及
在该电子装置接收到一切换信号时,该系统固件产生该第二资源描述表,而依据该第二操作系统的一存储器需求以及该第一资源描述表,于该第二资源描述表中宣告该第二区段的位置与大小,以宣告该第二区段为该可用状态且该第一区段为该保留状态,并启动该第二操作系统以工作于该第二区段,其中该第一操作系统于该第一区段处于该省电状态。
15.根据权利要求14所述的电子装置,其特征在于,在该电子装置接收到该切换信号之后,该系统固件记录用以唤醒该第一操作系统的一第一唤醒信息于该第一区段,并且使该第一操作系统进入该省电状态,然后重新启动该处理器,以重新启动该系统固件,使得该系统固件判断该第二操作系统是否已启动,若该第二操作系统未启动,产生该第二资源描述表,并启动该第二操作系统以工作于该第二区段;若该第二操作系统已启动,判断所要切换到的操作系统为该第一操作系统或该第二操作系统,据以唤醒该第一操作系统或该第二操作系统。
16.根据权利要求14所述的电子装置,其特征在于,在该系统固件产生该第二资源描述表以及该电子装置接收另一切换信号之后,记录用以唤醒该第二操作系统的一第二唤醒信息于该第二区段,并且使该第二操作系统进入该省电状态。
17.根据权利要求14所述的电子装置,其特征在于,
该系统存储器还包括一共用区块,而该系统固件使用该第一资源描述表宣告该共用区段为该可用状态,使得该第一操作系统工作于该共用区段;
在该电子装置接收该切换信号之后,该系统固件会备份该共用区段内的数据至该第一区段,并且使用该第二资源描述表宣告该共用区段为该可用状态,使得该第二操作系统工作于该共用区段;以及
在该电子装置接收另一切换信号之后,该系统固件会备份该共用区段内的数据至该第二区段,并且将该第一区段中备份的该共用区段内的数据恢复至该共用区段,而使用该第一资源描述表宣告该共用区段为该可用状态,使得该第一操作系统工作于该共用区段。
18.根据权利要求13所述的电子装置,其特征在于,该系统固件会记录一切换标记于该电子装置的一存储器单元,以标示由该第一操作系统切换至该第二操作系统,或是由该第二操作系统切换至该第一操作系统,以通过读取该切换标记,来判断所要切换到的操作系统为该第一操作系统或该第二操作系统,其中
若要切换到该第一操作系统,该系统固件读取用以唤醒该第一操作系统的一第一唤醒信息,其中该第一唤醒信息记录于该第一区段;
若要切换到该第二操作系统,该系统固件读取用以唤醒该第二操作系统的一第二唤醒信息,其中该第二唤醒信息记录于该第二区段。
19.根据权利要求18所述的电子装置,其特征在于,该存储器单元包括一只读存储器。
20.根据权利要求13所述的电子装置,其特征在于,该工作状态是ACPI规范中定义的S0状态;该省电状态是ACPI规范中定义的S3状态。
CN201110056317.3A 2011-03-03 2011-03-03 切换操作系统的方法及使用此方法的电子装置 Active CN102135910B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201110056317.3A CN102135910B (zh) 2011-03-03 2011-03-03 切换操作系统的方法及使用此方法的电子装置
TW100112055A TWI528284B (zh) 2011-03-03 2011-04-07 切換作業系統的方法及使用此方法的電子裝置
EP11004183.7A EP2495655B1 (en) 2011-03-03 2011-05-20 Method for switching operating system and electronic apparatus using the same
US13/304,402 US8898495B2 (en) 2011-03-03 2011-11-24 Method and apparatus for switching an operating system by determining whether a boot-up mode is a general mode or a switch mode

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110056317.3A CN102135910B (zh) 2011-03-03 2011-03-03 切换操作系统的方法及使用此方法的电子装置

Publications (2)

Publication Number Publication Date
CN102135910A CN102135910A (zh) 2011-07-27
CN102135910B true CN102135910B (zh) 2014-05-14

Family

ID=44295701

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110056317.3A Active CN102135910B (zh) 2011-03-03 2011-03-03 切换操作系统的方法及使用此方法的电子装置

Country Status (4)

Country Link
US (1) US8898495B2 (zh)
EP (1) EP2495655B1 (zh)
CN (1) CN102135910B (zh)
TW (1) TWI528284B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130297924A1 (en) * 2012-04-03 2013-11-07 Insyde Software Method of running multiple operating systems on an x86-based computer
CN103713829B (zh) * 2012-09-29 2018-08-10 联想(北京)有限公司 系统切换方法、装置和电子设备
CN103795947B (zh) * 2012-10-31 2017-02-08 晨星软件研发(深圳)有限公司 使用在视频信号处理装置中的存储器空间配置方法
CN103383652B (zh) * 2013-06-28 2017-08-29 记忆科技(深圳)有限公司 计算机平台多个操作系统的切换方法
TWI588747B (zh) * 2014-01-14 2017-06-21 仁寶電腦工業股份有限公司 切換作業系統的方法及電子裝置
US9645864B2 (en) 2014-02-06 2017-05-09 Intel Corporation Technologies for operating system transitions in multiple-operating-system environments
US9934047B2 (en) * 2014-03-20 2018-04-03 Intel Corporation Techniques for switching between operating systems
CN104408372B (zh) * 2014-11-26 2017-07-28 大连国御科技有限公司 一种基于系统重载的拟态安全实现系统及方法
CN104516760B (zh) 2014-12-12 2018-01-09 华为技术有限公司 一种操作系统热切换的方法、装置及移动终端
CN104571464A (zh) * 2015-01-19 2015-04-29 宇龙计算机通信科技(深圳)有限公司 一种多操作系统的省电模式控制方法、装置和终端
CN104794014B (zh) 2015-04-08 2020-08-25 华为技术有限公司 系统运行的方法及智能终端
CN104980591B (zh) * 2015-07-10 2017-08-29 上海斐讯数据通信技术有限公司 一种用于移动终端的多系统切换方法
CN105117272B (zh) * 2015-08-21 2018-05-01 浪潮集团有限公司 一种操作系统管理器、虚拟机和操作系统间切换方法
CN105682037A (zh) * 2016-03-03 2016-06-15 惠州Tcl移动通信有限公司 一种移动终端及其操作系统的切换方法
DE102019203377B3 (de) * 2019-03-13 2020-08-13 Continental Automotive Gmbh Fahrzeugsystem, Fahrzeug und Verfahren zum Betreiben eines solchen Fahrzeugsystems
KR20210128628A (ko) * 2020-04-17 2021-10-27 에스케이하이닉스 주식회사 전자 장치와, 이를 위한 데이터 저장 장치 및 동작 방법
CN114840259A (zh) * 2021-02-02 2022-08-02 台湾积体电路制造股份有限公司 操作具有多个操作系统的用户装置的方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1700175A (zh) * 2004-05-21 2005-11-23 三星电子株式会社 用于切换操作系统的计算机系统、方法、和介质
US7299346B1 (en) * 2002-06-27 2007-11-20 William K. Hollis Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing
CN101419560A (zh) * 2008-12-05 2009-04-29 苏州壹世通科技有限公司 一种基于可扩展固件接口的操作系统切换方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001256066A (ja) * 2000-02-29 2001-09-21 Internatl Business Mach Corp <Ibm> コンピュータシステム、オペレーティングシステムの切り替えシステム、オペレーティングシステムの実装方法、オペレーティングシステムの切り替え方法、記憶媒体及びプログラム伝送装置
CN1658185A (zh) * 2004-02-18 2005-08-24 国际商业机器公司 相互独立地共存多个操作系统的计算机系统与其切换方法
KR100673681B1 (ko) * 2004-03-25 2007-01-24 엘지전자 주식회사 개인용 컴퓨터에서의 인스턴트 온 기능 실행방법
US7950020B2 (en) * 2006-03-16 2011-05-24 Ntt Docomo, Inc. Secure operating system switching
TWI362612B (en) * 2007-09-05 2012-04-21 Htc Corp System and electronic device using multiple operating systems and operating method thereof
JP4916576B2 (ja) * 2008-03-14 2012-04-11 三菱電機株式会社 マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法
WO2010099529A1 (en) * 2009-02-27 2010-09-02 Keicy Chung Central processing unit capable of multi-boot using disjoint memory spaces
US8327174B2 (en) * 2009-03-20 2012-12-04 Hewlett-Packard Development Company, L.P. Loading operating systems using memory segmentation and ACPI based context switch
US8171280B2 (en) * 2009-06-22 2012-05-01 Matthew Laue Method of running multiple operating systems on an X86-based computer system having a dedicated memory region configured as a do not use region

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7299346B1 (en) * 2002-06-27 2007-11-20 William K. Hollis Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing
CN1700175A (zh) * 2004-05-21 2005-11-23 三星电子株式会社 用于切换操作系统的计算机系统、方法、和介质
CN101419560A (zh) * 2008-12-05 2009-04-29 苏州壹世通科技有限公司 一种基于可扩展固件接口的操作系统切换方法

Also Published As

Publication number Publication date
EP2495655B1 (en) 2019-04-03
TWI528284B (zh) 2016-04-01
US8898495B2 (en) 2014-11-25
TW201237755A (en) 2012-09-16
CN102135910A (zh) 2011-07-27
EP2495655A1 (en) 2012-09-05
US20120226925A1 (en) 2012-09-06

Similar Documents

Publication Publication Date Title
CN102135910B (zh) 切换操作系统的方法及使用此方法的电子装置
CN102122250B (zh) 计算机系统及其操作系统切换方法
US8146093B2 (en) Computer multiple operation system switching method
KR102048329B1 (ko) 애플리케이션 프로그램 실행 방법 및 장치
CN101236515B (zh) 多核系统单核异常的恢复方法
KR20060131543A (ko) 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법
US9645625B2 (en) System and method for power management of computing devices in a virtual desktop infrastructure
EP2416229A2 (en) Information processing device, power control method, and program
CN103425592A (zh) 一种多进程系统中的内存管理方法及装置
KR20130022095A (ko) 정보처리 시스템에서 운영체제 전환방법
WO2020015203A1 (zh) 一种系统恢复方法及装置
CN102880477A (zh) 一种实现计算机启动的方法和计算机
CN101533355A (zh) 一种启动多操作系统的方法和装置
US9110723B2 (en) Multi-core binary translation task processing
CN102736928B (zh) 快速唤醒计算机系统方法与计算机系统
CN102262550A (zh) 计算机系统及其开关机方法
US20200125380A1 (en) Guest operating system wake-up method, device, electronic apparatus, and readable medium
WO2020093868A1 (zh) 多核芯片、系统,及其方法和存储介质
CN102279762A (zh) 在手机平台提高内存使用效率的方法
US20120185713A1 (en) Server, storage medium, and method for controlling sleep and wakeup function of the server
CN101281416A (zh) 确保系统关机完成的方法
CN102789397B (zh) 电脑系统中的多操作系统切换方法
CN109426563B (zh) 一种进程管理方法及装置
CN102681650A (zh) 一种电源控制节能方法及其对应的存储系统
CN103678018A (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