TW201322129A - 電子裝置與其作業系統切換方法 - Google Patents
電子裝置與其作業系統切換方法 Download PDFInfo
- Publication number
- TW201322129A TW201322129A TW100142009A TW100142009A TW201322129A TW 201322129 A TW201322129 A TW 201322129A TW 100142009 A TW100142009 A TW 100142009A TW 100142009 A TW100142009 A TW 100142009A TW 201322129 A TW201322129 A TW 201322129A
- Authority
- TW
- Taiwan
- Prior art keywords
- operating system
- electronic device
- state
- processor
- executed
- Prior art date
Links
Landscapes
- Stored Programmes (AREA)
Abstract
一種電子裝置與其作業系統切換方法,上述方法包括下列步驟:執行第一作業系統,並偵測一觸發事件;當偵測到觸發事件時,執行第一作業系統的休眠程序;當觸發事件所指定的第二作業系統是第一次執行,則執行第二作業系統的開機程序;當第二作業系統並非第一次執行,則執行第二作業系統的恢復程序。上述的電子裝置和作業系統切換方法在切換作業系統時不需要重新開機,所以能大幅縮短切換作業系統所需的時間。
Description
本發明是有關於一種電子裝置與其多個作業系統(operating system),且特別是有關於一種電子裝置與其作業系統切換方法。
在現今眾多開放平台作業系統的發展下,各作業系統都擁有不同的愛好者,也充分帶給使用者不同的體驗。各家平台也都試著整合出有別於自己平台之外的優點,試著在這開放平台的競爭環境之中脫穎而出。
在這個百家爭鳴的時代,沒有任何一個作業系統能在任何應用環境都佔有絕對優勢,使用者難免會有在單一電子裝置上安裝多個作業系統的想法。但是以目前的技術來說,如果有兩個以上的作業系統安裝在單一的電子裝置上,在切換作業系統時,都需要將目前正在運行的作業系統關閉之後,再用另一個作業系統開機。每一次作業系統開機都很緩慢,可能要等待幾分鐘,進而造成使用者的切換作業系統的意願下降。
本發明提供一種電子裝置與其作業系統切換方法,以縮短作業系統的切換時間。
本發明提出一種作業系統切換方法,包括下列步驟:執行第一作業系統,並偵測一觸發事件;當偵測到觸發事件時,執行第一作業系統的休眠(hibernation)程序;當觸發事件所指定的第二作業系統是第一次執行,則執行第二作業系統的開機(boot)程序;當第二作業系統並非第一次執行,則執行第二作業系統的恢復(resumption)程序。
本發明另提出一種電子裝置,包括偵測模組和處理器。偵測模組偵測觸發事件。處理器耦接偵測模組,並執行第一作業系統。當偵測模組偵測到觸發事件時,處理器執行第一作業系統的休眠程序。當觸發事件所指定的第二作業系統是第一次執行,則處理器執行第二作業系統的開機程序。當第二作業系統並非第一次執行,則處理器執行第二作業系統的恢復程序。
上述的休眠程序可儲存作業系統的狀態,此狀態包括電子裝置執行此作業系統所使用到的所有記憶體和暫存器的內容。上述的恢復程序可將作業系統前次儲存的狀態寫回電子裝置,不需要重新開機就能迅速恢復作業系統的運作。因此本發明可大幅縮短作業系統的切換時間。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1是依照本發明一實施例的一種電子裝置100的示意圖。電子裝置100可以是任何一種可安裝執行作業系統的桌上電子裝置或行動電子裝置,例如個人電腦、筆記型電腦、平板電腦或智慧型手機。電子裝置100包括處理器(processor)110、偵測模組120、以及儲存裝置130。處理器110耦接偵測模組120和儲存裝置130。偵測模組120用於偵測觸發事件。儲存裝置130可以是硬碟或內嵌式多媒體記憶卡(embedded multimedia card)之類的任何一種非揮發性資料儲存裝置。
圖2是依照本發明一實施例的一種作業系統切換方法的流程圖。圖2的方法可由電子裝置100的處理器110執行。電子裝置100安裝有多個不同的作業系統,其中有一個作業系統是預設的。當使用者打開電子裝置100的電源,處理器110執行預設作業系統的開機程序(步驟210)。然後處理器110執行目前的作業系統(此時就是預設作業系統),同時通過偵測模組120偵測觸發事件(步驟220)。然後,處理器110檢查偵測模組120是否有偵測到觸發事件發生(步驟230)。若無觸發事件發生,則流程返回步驟220,繼續執行目前的作業系統,繼續偵測觸發事件。
如果在步驟230有觸發事件發生,表示必須切換作業系統,則處理器110執行目前的作業系統的休眠程序(步驟240)。每一個作業系統的休眠程序都如圖3所示。首先,處理器110暫停目前作業系統的所有運作(步驟320),然後將目前作業系統的狀態寫入儲存裝置130,以儲存目前作業系統的狀態(步驟340)。休眠程序至此完成。
對於每一個作業系統,其狀態包括電子裝置100執行此作業系統所使用到的所有記憶體和暫存器的內容。上述的暫存器內容包括處理器100和其他相關的控制裝置的所有暫存器內容。每一個作業系統的狀態在儲存裝置130之中各有專屬的儲存空間,分別獨立儲存。如果儲存裝置130的空間不夠,或有需要節省儲存空間,處理器110可以先壓縮作業系統的狀態,再寫入儲存裝置130。
上述觸發事件會指定電子裝置100即將切換到的下一個作業系統。接下來,處理器110檢查觸發事件所指定的下一個作業系統是不是第一次執行(步驟250)。若下一個作業系統是第一次執行,則處理器110執行下一個作業系統的開機程序,也就是傳統的作業系統開機程序(步驟260)。
回到步驟250,如果下一個作業系統並非第一次執行,則處理器110執行下一個作業系統的恢復程序(步驟270)。每一個作業系統的恢復程序都如圖4所示。因為不是第一次執行,下一個作業系統在前次執行的最後被切換時,其休眠程序會將其狀態寫入儲存裝置130。因此在恢復程序中,處理器110自儲存裝置130將下一個作業系統前次儲存的狀態寫回電子裝置100的記憶體和暫存器之中(步驟420)。如果處理器110在前次的休眠程序中曾經壓縮過下一個作業系統的狀態,則處理器110會自儲存裝置130讀出下一個作業系統的狀態,經過解壓縮再寫回電子裝置100。然後處理器110恢復下一個作業系統的運作,從前次切換時執行到的指令繼續執行下一個作業系統(步驟440)。
因為每一個作業系統的狀態都包括切換時的處理器110的所有暫存器內容,其中包括切換時處理器110執行到的指令位址,所以在恢復程序中寫回此作業系統的狀態之後,處理器110可以從上述指令位址恢復此作業系統的運作。
在步驟260或步驟270之後,下一個作業系統成為目前的作業系統,然後流程返回步驟220,執行目前的作業系統,同時偵測觸發事件。
接下來,使用者可以繼續操作電子裝置100,引起觸發事件以切換作業系統。如以上的流程所述,只要切換到的作業系統在前面有執行過,就會有前次執行的狀態存放在儲存裝置130之中,可以迅速將前次儲存的狀態寫回電子裝置100,不需要再次執行繁雜緩慢的開機程序,很快就能恢復下一個作業系統的運作。因此,本實施例的電子裝置和作業系統切換方法可大幅縮短作業系統的切換時間。
圖3的休眠程序和圖4的恢復程序可包括在電子裝置100的一個韌體(firmware)之中,例如電子裝置100的基本輸入輸出系統(BIOS: basic input/output system)。處理器110可藉由執行上述韌體而執行上述的休眠程序和恢復程序。偵測模組120可以是硬體,也可以是軟體,若是軟體,可以是上述韌體其中的一部分。
處理器110可以是多核心(multi-core)的處理器,可以平行處理上述的休眠程序和恢復程序,以加快作業系統的切換速度。例如可用一個核心執行目前作業系統的休眠程序,同時用另一個核心執行下一個作業系統的恢復程序。不過多核心的平行處理必須注意避免衝突。例如步驟420必須在步驟340完成之後才能執行,否則可能目前作業系統的狀態尚未儲存完畢就被下一個作業系統的狀態覆蓋,導致目前作業系統儲存的狀態不正確。
上述的觸發事件可觸發作業系統的切換,並且指定要切換到的下一個作業系統。舉例而言,電子裝置100可以搭配一個擴充基座500,如圖5所示。擴充基座500包括鍵盤和觸控面板等輸入介面。上述的觸發事件可以是電子裝置100連接擴充基座500,此時電子裝置100成為筆記型電腦,可以切換到適合筆記型電腦的作業系統。上述的觸發事件也可以是電子裝置100和擴充基座500分離,此時電子裝置100成為平板電腦,可以切換到適合行動裝置的作業系統。
上述的觸發事件也可以是使用者對電子裝置100的某一個硬體介面(例如按鍵或觸控面板)進行預設操作,例如按下預設的按鍵。上述的觸發事件也可以是使用者對目前作業系統的一個軟體介面進行預設操作以下達切換命令。如果電子裝置100只安裝兩個作業系統,可用同一個預設操作在兩個作業系統之間來回切換。如果電子裝置100安裝三個以上的作業系統,可將每一個作業系統對應到不同的預設操作,讓使用者藉由對應的預設操作來指定要切換到的下一個作業系統。
如果需要修改作業系統以適應上述的電子裝置和作業系統切換方法,可以使用Linux作業系統。因為Linux作業系統開放所有原始碼,比較容易修改。
綜上所述,以上實施例的休眠程序可儲存作業系統在切換時的狀態,恢復程序可快速寫回作業系統在前次切換時儲存的狀態,不需要冗長的重新開機程序,就能迅速進入下一個作業系統。相對於傳統的作業系統切換時的重新開機所需的數分鐘之久,本發明可以將作業系統的切換時間縮短至數秒鐘。因此本發明可以大幅縮短作業系統的切換時間,增進使用的便利性,提高使用者同時使用多個作業系統的意願。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100...電子裝置
110...處理器
120...偵測模組
130...儲存裝置
210~270、320、340、420、440...流程步驟
500...擴充基座
圖1是依照本發明一實施例的一種電子裝置的示意圖。
圖2至圖4是依照本發明一實施例的一種作業系統切換方法的流程圖。
圖5是依照本發明一實施例的一種電子裝置的示意圖。
210~270...流程步驟
Claims (10)
- 一種作業系統切換方法,包括:執行一第一作業系統,並偵測一觸發事件;當偵測到該觸發事件時,執行該第一作業系統的休眠程序;當該觸發事件所指定的一第二作業系統是第一次執行,則執行該第二作業系統的開機程序;以及當該第二作業系統並非第一次執行時,則執行該第二作業系統的恢復程序。
- 如申請專利範圍第1項所述之方法,在執行該第一作業系統之前更包括:執行該第一作業系統的開機程序。
- 如申請專利範圍第1項所述之方法,其中該第一作業系統和該第二作業系統由一電子裝置執行,該觸發事件為該電子裝置連接一擴充基座、該電子裝置和該擴充基座分離、一使用者對該電子裝置的一硬體介面進行一第一預設操作、或該使用者對該第一作業系統的一軟體介面進行一第二預設操作。
- 如申請專利範圍第1項所述之方法,其中該休眠程序包括:暫停該第一作業系統的所有運作;以及儲存該第一作業系統的狀態;其中該第一作業系統由一電子裝置執行,該第一作業系統的狀態包括該電子裝置執行該第一作業系統所使用到的所有記憶體和暫存器的內容。
- 如申請專利範圍第1項所述之方法,其中該恢復程序包括:寫回該第二作業系統前次儲存的狀態;以及恢復該第二作業系統的運作;其中該第二作業系統由一電子裝置執行,該第二作業系統的狀態包括該電子裝置執行該第二作業系統所使用到的所有記憶體和暫存器的內容,而且寫回該第二作業系統前次儲存的狀態的步驟包括:將該第二作業系統前次儲存的狀態寫回該電子裝置。
- 一種電子裝置,包括:一偵測模組,偵測一觸發事件;以及一處理器,耦接該偵測模組,執行一第一作業系統;當該偵測模組偵測到該觸發事件時,該處理器執行該第一作業系統的休眠程序;當該觸發事件所指定的一第二作業系統是第一次執行,則該處理器執行該第二作業系統的開機程序;當該第二作業系統並非第一次執行,則該處理器執行該第二作業系統的恢復程序。
- 如申請專利範圍第6項所述之電子裝置,其中該觸發事件為該電子裝置連接一擴充基座、該電子裝置和該擴充基座分離、一使用者對該電子裝置的一硬體介面進行一第一預設操作、或該使用者對該第一作業系統的一軟體介面進行一第二預設操作。
- 如申請專利範圍第6項所述之電子裝置,其中該電子裝置更包括:一儲存裝置,耦接該處理器,其中,在該休眠程序中,該處理器暫停該第一作業系統的所有運作,然後將該第一作業系統的狀態寫入該儲存裝置;其中該第一作業系統的狀態包括該電子裝置執行該第一作業系統所使用到的所有記憶體和暫存器的內容。
- 如申請專利範圍第6項所述之電子裝置,其中該電子裝置更包括:一儲存裝置,耦接該處理器,其中,在該恢復程序中,該處理器自該儲存裝置將該第二作業系統前次儲存的狀態寫回該電子裝置,然後恢復該第二作業系統的運作,以繼續執行該第二作業系統;其中該第二作業系統的狀態包括該電子裝置執行該第二作業系統所使用到的所有記憶體和暫存器的內容。
- 如申請專利範圍第6項所述之電子裝置,其中該休眠程序和該恢復程序包括在該電子裝置的一韌體中,該處理器藉由執行該韌體而執行該休眠程序和該恢復程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100142009A TW201322129A (zh) | 2011-11-17 | 2011-11-17 | 電子裝置與其作業系統切換方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100142009A TW201322129A (zh) | 2011-11-17 | 2011-11-17 | 電子裝置與其作業系統切換方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201322129A true TW201322129A (zh) | 2013-06-01 |
Family
ID=49032393
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100142009A TW201322129A (zh) | 2011-11-17 | 2011-11-17 | 電子裝置與其作業系統切換方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TW201322129A (zh) |
-
2011
- 2011-11-17 TW TW100142009A patent/TW201322129A/zh unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101702700B1 (ko) | 고속 컴퓨터 시동 | |
CN102207881B (zh) | 一种基于Android的操作系统快速启动方法 | |
US9189248B2 (en) | Specialized boot path for speeding up resume from sleep state | |
CN109726135B (zh) | 一种多核调试方法、装置及计算机可读存储介质 | |
US20100100719A1 (en) | Method for reducing booting time and computer using the same | |
CN113703799B (zh) | 计算设备及其bios更新方法和介质 | |
CN105993001B (zh) | 用于在操作系统之间切换的技术 | |
JP6399916B2 (ja) | 情報処理装置およびその制御方法 | |
CN101526901B (zh) | 一种电脑中查看文件的方法及装置 | |
KR101696490B1 (ko) | 부분 리부팅 복구 장치 및 방법 | |
WO2010096611A1 (en) | Concurrent execution of a smartphone operating system and a desktop operating system | |
WO2012016393A1 (zh) | 一种android移动终端冷启动的方法和装置 | |
TWI608345B (zh) | Operating system recovery method, device and terminal equipment | |
CN104516782B (zh) | 用于进行智能系统运行环境切换的方法及其设备 | |
TW201525869A (zh) | 用於雙作業系統記憶體切換的系統及方法 | |
US20190004818A1 (en) | Method of UEFI Shell for Supporting Power Saving Mode and Computer System thereof | |
US8954800B1 (en) | Recovery button for automatically entering recovery mode | |
WO2012163275A1 (zh) | 控制方法、控制装置以及计算机系统 | |
JP2010262621A (ja) | 電源制御付きコンピュータシステム及び電源制御方法 | |
US10908919B2 (en) | Booting and power management by coordinating operations between processors | |
TWI511047B (zh) | 作業系統切換方法以及使用此方法的雙作業系統電子裝置 | |
US7849300B2 (en) | Method for changing booting sources of a computer system and a related backup/restore method thereof | |
KR100994723B1 (ko) | 시스템에서 초기 구동시간을 단축시키는 선택적 서스펜드 리쥼 방법 및 그 기록매체 | |
US20200133562A1 (en) | Information processing device, controlling method and program | |
US20150317181A1 (en) | Operating system switching method |