專利名稱:電腦系統(tǒng)中的多操作系統(tǒng)切換方法
技術(shù)領(lǐng)域:
本發(fā)明是有關(guān)于一種電腦系統(tǒng),且特別是有關(guān)于一種電腦系統(tǒng)中的多操作系統(tǒng)切換方法。
背景技術(shù):
一般來說,電腦系統(tǒng)中可以存在多個操作系統(tǒng)。于電腦系統(tǒng)開機(jī)后,電腦系統(tǒng)可以選單方式顯示多個操作系統(tǒng)供使用者進(jìn)行選擇。當(dāng)使用者選定特定操作系統(tǒng)后,電腦系統(tǒng)即加載上述特定操作系統(tǒng)。而于特定操作系統(tǒng)加載完成后,電腦系統(tǒng)即可在上述特定操作系統(tǒng)的環(huán)境下執(zhí)行相關(guān)的應(yīng)用程序。
由于使用者需要在開機(jī)時決定加載的操作系統(tǒng)。一旦選擇之后,若使用者欲進(jìn)入另一操作系統(tǒng)時,則必須關(guān)閉電腦系統(tǒng)并且重新啟動來選擇另一操作系統(tǒng)。換句話說,除了關(guān)機(jī)重選擇操作系統(tǒng)外,已知電腦系統(tǒng)并無法達(dá)成操作系統(tǒng)互相切換的方式。并且,操作系統(tǒng)切換過程的等待時間也會過長。
發(fā)明內(nèi)容
本發(fā)明提出一種電腦系統(tǒng)中的多操作系統(tǒng)的切換方法,包括下列步驟于第一操作系統(tǒng)下,觸發(fā)系統(tǒng)管理中斷使得上述電腦系統(tǒng)進(jìn)入系統(tǒng)管理模式,并將電腦系統(tǒng)的控制權(quán)由第一操作系統(tǒng)轉(zhuǎn)至基本輸入輸出系統(tǒng);備份第一操作系統(tǒng)的第一環(huán)境參數(shù);判斷電腦系統(tǒng)是否具有第二環(huán)境參數(shù);以及當(dāng)不具有第二環(huán)境參數(shù)時,正常啟動第二操作系統(tǒng);當(dāng)具有第二環(huán)境參數(shù)時,根據(jù)第二環(huán)境參數(shù),啟動第二操作系統(tǒng)。本發(fā)明提出一種具多操作系統(tǒng)的電腦系統(tǒng),包括中央處理器;控制芯片組,連接至中央處理器;內(nèi)存,連接至控制芯片組;硬盤,連接至控制芯片組;以及基本輸入輸出系統(tǒng),連接至控制芯片組;其中,電腦系統(tǒng)于第一操作系統(tǒng)下,觸發(fā)系統(tǒng)管理中斷,中央處理器使得電腦系統(tǒng)進(jìn)入系統(tǒng)管理模式,并備份第一操作系統(tǒng)的第一環(huán)境參數(shù)到內(nèi)存,并利用基本輸入輸出系統(tǒng)啟動第二操作系統(tǒng)。綜上所述,本發(fā)明在進(jìn)行操作系統(tǒng)切換時不需將電腦系統(tǒng)還原至開機(jī)時的初始狀態(tài),也不需進(jìn)入睡眠模式,因此可以節(jié)省操作系統(tǒng)之間切換的時間。為了對本發(fā)明之上述及其他方面有更佳的了解,下文特舉較佳實施例,并配合所附圖式,作詳細(xì)說明如下。
圖I所示為本發(fā)明一實施例的電腦系統(tǒng)。圖2所示為本發(fā)明一實施例之操作系統(tǒng)的切換方法流程圖。
具體實施例方式本發(fā)明使用中央處理器(CPU)的系統(tǒng)管理模式(system management mode,簡稱SMM),其可用來操控(handle)內(nèi)存或者芯片組的錯誤,或者電源管理運作(powermanagement operation)。而在進(jìn)入系統(tǒng)管理模式時,電腦系統(tǒng)的控制權(quán)會由操作系統(tǒng)轉(zhuǎn)移至基本輸入輸出系統(tǒng)(basic input output system,簡稱BIOS)。換句話說,電腦系統(tǒng)在進(jìn)入系統(tǒng)管理模式時,電腦系統(tǒng)會先暫存中央處理器的背景數(shù)據(jù)(CPU context),當(dāng)控制權(quán)轉(zhuǎn)移至基本輸入輸出系統(tǒng)后,此時我們需要備份暫存的背景數(shù)據(jù)(CPU context)以及操作系統(tǒng)儲存于內(nèi)存中的數(shù)據(jù)。而中央處理器的背景數(shù)據(jù)以及操作系統(tǒng)儲存于內(nèi)存中的數(shù)據(jù)可統(tǒng)稱為環(huán)境參數(shù)。由于電腦系統(tǒng)進(jìn)入系統(tǒng)管理模式的時間非常的短暫,使用者幾乎無法察覺,加上在不用重新啟動或睡眠恢復(fù)狀況下,因此可節(jié)省因使用重新啟動、或是睡眠恢復(fù)等方式來切換時,操作系統(tǒng)中的應(yīng)用程序、驅(qū)動程序、服務(wù)等等所需執(zhí)行對應(yīng)的時間,因此,本發(fā)明即利用系統(tǒng)管理模式來達(dá)成本發(fā)明快速地切換操作系統(tǒng)的目的。
請參照圖1,其所示為本發(fā)明一實施例的電腦系統(tǒng)。電腦系統(tǒng)100包括中央處理器110、控制芯片組120、內(nèi)存130、硬盤140、基本輸入輸出系統(tǒng)(BIOS) 150。其中,控制芯片組120中包括北橋芯片122、與南橋芯片126。其中,中央處理器110利用前端總線(frontside bus)連接至北橋芯片122,北橋芯片122利用內(nèi)存總線(memory bus)連接至內(nèi)存130。南橋芯片126利用私有總線連接至北橋芯片122,并連接至硬盤140與基本輸入輸出系統(tǒng)(BIOS)150。根據(jù)本發(fā)明的實施例,硬盤140中至少分割為第一分割區(qū)145以及第二分割區(qū)148,第一分割區(qū)145中儲存第一操作系統(tǒng),第二分割區(qū)148中儲存第二操作系統(tǒng)。再者,基本輸入輸出系統(tǒng)150可在開機(jī)過程將內(nèi)存130至少區(qū)分為第一儲存區(qū)135與第二儲存區(qū)138。當(dāng)電腦系統(tǒng)100加載第一操作系統(tǒng)時,基本輸入輸出系統(tǒng)(BIOS) 150會由硬盤140的第一分割區(qū)145來啟動(boot)第一操作系統(tǒng),并且于第一操作系統(tǒng)的環(huán)境時,第一操作系統(tǒng)的所有數(shù)據(jù)皆暫存在內(nèi)存130的第一儲存區(qū)135。同理,當(dāng)電腦系統(tǒng)100加載第二操作系統(tǒng)時,基本輸入輸出系統(tǒng)(BIOS) 150會由硬盤140的第二分割區(qū)148來啟動(boot)第二操作系統(tǒng),并且于第二操作系統(tǒng)的環(huán)境時,第二操作系統(tǒng)的所有數(shù)據(jù)皆暫存在內(nèi)存130的第二儲存區(qū)138。根據(jù)本發(fā)明的實施例,于第一操作系統(tǒng)以及第二操作系統(tǒng)中皆安裝切換驅(qū)動模塊(swap driver),當(dāng)用戶欲進(jìn)行操作系統(tǒng)切換時,利用硬件按鍵或者軟件程序方式來讓切換驅(qū)動程序發(fā)出高級配置和電源管理接口(advanced configuration and power interface,簡稱ACPI)呼叫,產(chǎn)生觸發(fā)系統(tǒng)管理中斷(system management interrupt,簡稱SMI)。此時,電腦系統(tǒng)的控制權(quán)會由操作系統(tǒng)轉(zhuǎn)移至基本輸入輸出系統(tǒng)(BIOS) 150,并且由基本輸入輸出系統(tǒng)(BIOS) 150即可進(jìn)行操作系統(tǒng)切換的動作。舉例來說,當(dāng)使用者欲由第一操作系統(tǒng)切換至第二操作系統(tǒng)時,即可利用上述方法控制切換驅(qū)動程序發(fā)出高級配置和電源管理接口(ACPI)呼叫,并且觸發(fā)系統(tǒng)管理中斷(SMI)。當(dāng)系統(tǒng)管理中斷(SMI)被觸發(fā)時,中央處理器110立刻進(jìn)入系統(tǒng)管理模式(SMM),此時備份在第一操作系統(tǒng)下的第一環(huán)境參數(shù),亦即中央處理器的背景數(shù)據(jù)(CPU context)會被暫存在內(nèi)存130中,而第一操作系統(tǒng)中的數(shù)據(jù)會備份在第一儲存區(qū)135。之后,記錄上述第一操作系統(tǒng)的第一斷點。于上述動作完成后,基本輸入輸出系統(tǒng)(BIOS) 150即可以加載第二操作系統(tǒng)。如果此電腦系統(tǒng)從未加載第二操作系統(tǒng),也就是內(nèi)存130中并無第二操作系統(tǒng)的第二環(huán)境參數(shù)時,基本輸入輸出系統(tǒng)(BIOS) 150會進(jìn)行正常啟動(boot)程序來加載第二操作系統(tǒng)。亦即,由硬盤140的第二分割區(qū)148來啟動(boot)第二操作系統(tǒng),并且于第二操作系統(tǒng)的環(huán)境時,第二操作系統(tǒng)的所有數(shù)據(jù)皆暫存在內(nèi)存130的第二儲存區(qū)138。反之,如果電腦系統(tǒng)曾經(jīng)加載過第二操作系統(tǒng),則內(nèi)存130中備份了第二操作系統(tǒng)的第二環(huán)境參數(shù),基本輸入輸出系統(tǒng)(BIOS) 150會還原先前備份于內(nèi)存130中第二操作系統(tǒng)環(huán)境下第二環(huán)境參數(shù),亦即將中央處理器的背景數(shù)據(jù)(CPU context)還原(restore)至中央處理器110,并且還原第二儲存區(qū)138中第二操作系統(tǒng)的數(shù)據(jù)。之后,即可回到第二操作系統(tǒng)當(dāng)初的第二斷點再次回到第二操作系統(tǒng)的環(huán)境。請參照圖2,其所示為本發(fā)明一實施例操作系統(tǒng)的切換方法流程圖。當(dāng)電腦系統(tǒng)處 在第一操作系統(tǒng)環(huán)境(步驟S502)時,使用者欲切換至第二操作系統(tǒng)環(huán)境。此時,控制切換驅(qū)動程序觸發(fā)系統(tǒng)管理中斷(SMI)并進(jìn)入系統(tǒng)管理模式(SMM),且控制權(quán)轉(zhuǎn)移至基本輸入輸出系統(tǒng)(BIOS)(步驟S504)。接著,備份第一操作系統(tǒng)下的第一環(huán)境參數(shù)且記錄第一斷點(步驟S506)。也就是說,先備份中央處理器的第一背景數(shù)據(jù)以及內(nèi)存中的第一數(shù)據(jù)。之后,判斷電腦系統(tǒng)是否曾經(jīng)啟動第二操作系統(tǒng)(步驟S508)。亦即,判斷電腦系統(tǒng)中是否備份第二操作系統(tǒng)的第二環(huán)境參數(shù)。當(dāng)電腦系統(tǒng)未曾啟動第二操作系統(tǒng)時,則基本輸入輸出系統(tǒng)(BIOS) 150會利用硬 盤來啟動(boot)第二操作系統(tǒng)(步驟S510)。最終,進(jìn)入第二操作系統(tǒng)環(huán)境(步驟S514)。反之,當(dāng)電腦系統(tǒng)曾經(jīng)啟動第二操作系統(tǒng)時,則基本輸入輸出系統(tǒng)(BIOS) 150會還原先前備份于內(nèi)存130中的第二環(huán)境摻數(shù),并且由第二斷點進(jìn)入第二操作系統(tǒng)(步驟S512)。也就是說,將在第二操作系統(tǒng)環(huán)境下的中央處理器的第二背景數(shù)據(jù)(CPU context)還原(restore)至中央處理器110,并且還原內(nèi)存中的第二數(shù)據(jù),并且由第二斷點進(jìn)入第二操作系統(tǒng),最終進(jìn)入第二操作系統(tǒng)環(huán)境(步驟S514)。根據(jù)本發(fā)明的實施例,當(dāng)操作系統(tǒng)進(jìn)行切換時,由第一操作系統(tǒng)環(huán)境(步驟S502)經(jīng)過步驟S512切換至第二操作系統(tǒng)環(huán)境(步驟S514),幾乎不需要花費任何等待時間。亦即,使用者不需要等待時間即可以完成操作系統(tǒng)之間的切換。當(dāng)然,由第二操作系統(tǒng)切換至第一操作系統(tǒng)的方法流程與圖2也完全相同,因此不再贅述。本發(fā)明的優(yōu)點是提出一種電腦系統(tǒng)中的多操作系統(tǒng)切換方法。本發(fā)明不需要在第一操作系統(tǒng)下進(jìn)入睡眠模式即可進(jìn)行操作系統(tǒng)的切換,而使用者也可以感覺到操作系統(tǒng)快速地進(jìn)行的切換,幾乎不需要任何等待時間。本發(fā)明的另一優(yōu)點是提出一種電腦系統(tǒng)中的多操作系統(tǒng)切換方法。本發(fā)明在進(jìn)行操作系統(tǒng)切換時不需將電腦系統(tǒng)還原至開機(jī)時的初始狀態(tài),因此可以節(jié)省操作系統(tǒng)之間切換的時間。綜上所述,雖然本發(fā)明已以較佳實施例揭露如上,然其并非用以限定本發(fā)明。任何熟習(xí)此技藝者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作各種更動與潤飾,因此本發(fā)明的保護(hù)范圍當(dāng)視權(quán)利要求書所界定者為準(zhǔn)。
權(quán)利要求
1.一種電腦系統(tǒng)中的多操作系統(tǒng)的切換方法,其特征在于,上述方法包括下列步驟 于第一操作系統(tǒng)下,觸發(fā)系統(tǒng)管理中斷使得上述電腦系統(tǒng)進(jìn)入系統(tǒng)管理模式,并將上述電腦系統(tǒng)的控制權(quán)由上述第一操作系統(tǒng)轉(zhuǎn)至基本輸入輸出系統(tǒng); 備份上述第一操作系統(tǒng)的第一環(huán)境參數(shù); 判斷上述電腦系統(tǒng)是否具有第二環(huán)境參數(shù);以及 當(dāng)不具有上述第二環(huán)境參數(shù)時,正常啟動第二操作系統(tǒng);當(dāng)具有上述第二環(huán)境參數(shù)時,根據(jù)上述第二環(huán)境參數(shù),啟動上述第二操作系統(tǒng)。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,其中觸發(fā)上述系統(tǒng)管理中斷是于上述第一操作系統(tǒng)中加載切換驅(qū)動程序,發(fā)出高級配置和電源管理接口呼叫,產(chǎn)生觸發(fā)上述系統(tǒng)管理中斷。
3.根據(jù)權(quán)利要求I所述的方法,其特征在于,其中上述第一環(huán)境參數(shù)包括中央處理器的第一背景數(shù)據(jù)以及內(nèi)存中的第一數(shù)據(jù),上述第二環(huán)境參數(shù)包括上述中央處理器的第二背景數(shù)據(jù)以及上述內(nèi)存中的第二數(shù)據(jù)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,其中上述電腦系統(tǒng)的上述內(nèi)存中包括第一儲存區(qū)與第二儲存區(qū),上述第一數(shù)據(jù)備份于上述第一儲存區(qū),上述第二數(shù)據(jù)備份于上述第二儲存區(qū)。
5.根據(jù)權(quán)利要求I所述的方法,其特征在于,其中啟動上述第二操作系統(tǒng),是使用上述電腦系統(tǒng)的硬盤來啟動。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,其中上述硬盤包括第一分割區(qū)與第二分割區(qū),上述第一分割區(qū)中儲存上述第一操作系統(tǒng),上述第二分割區(qū)中儲存上述第二操作系統(tǒng)。
7.一種具多操作系統(tǒng)的電腦系統(tǒng),其特征在于,上述電腦系統(tǒng)包括 中央處理器; 控制芯片組,連接至上述中央處理器; 內(nèi)存,連接至上述控制芯片組; 硬盤,連接至上述控制芯片組;以及 基本輸入輸出系統(tǒng),連接至上述控制芯片組; 其中,電腦系統(tǒng)于第一操作系統(tǒng)下,觸發(fā)系統(tǒng)管理中斷,上述中央處理器使得上述電腦系統(tǒng)進(jìn)入系統(tǒng)管理模式,并備份上述第一操作系統(tǒng)的第一環(huán)境參數(shù)到上述內(nèi)存,并利用上述基本輸入輸出系統(tǒng)啟動第二操作系統(tǒng)。
8.根據(jù)權(quán)利要求7所述的電腦系統(tǒng),其特征在于,其中觸發(fā)上述系統(tǒng)管理中斷是于上述第一操作系統(tǒng)中加載切換驅(qū)動模塊,使發(fā)出高級配置和電源管理接口呼叫,產(chǎn)生觸發(fā)上述系統(tǒng)管理中斷。
9.根據(jù)權(quán)利要求7所述的電腦系統(tǒng),其特征在于,其中以上述基本輸入輸出系統(tǒng)啟動上述第二操作系統(tǒng),是檢查上述電腦系統(tǒng)未備份上述第二操作系統(tǒng)的第二環(huán)境參數(shù)時,由上述硬盤啟動上述第二操作系統(tǒng);當(dāng)有備份上述第二環(huán)境參數(shù)時,根據(jù)上述第二環(huán)境參數(shù),啟動上述第二操作系統(tǒng)。
10.根據(jù)權(quán)利要求9所述的電腦系統(tǒng),其特征在于,其中上述第一環(huán)境參數(shù)包括上述中央處理器的第一背景數(shù)據(jù)以及上述內(nèi)存中的第一數(shù)據(jù);且上述第二環(huán)境參數(shù)包括上述中央處理器的第二背景數(shù)據(jù)以及上述內(nèi)存中的第二數(shù)據(jù)。
11.根據(jù)權(quán)利要求10所述的電腦系統(tǒng),其特征在于,其中上述內(nèi)存中包括第一儲存區(qū)與第二儲存區(qū),上述第一環(huán)境參數(shù)的上述第一數(shù)據(jù)備份于上述第一儲存區(qū),上述第二環(huán)境參數(shù)的上述第二數(shù)據(jù)備份于上述第二儲存區(qū)。
12.根據(jù)權(quán)利要求7所述的電腦系統(tǒng),其特征在于,其中上述硬盤包括第一分割區(qū)與第二分割區(qū),上述第一分割區(qū)中儲存上述第一操作系統(tǒng),上述第二分割區(qū)中儲存上述第二操作系統(tǒng)。
全文摘要
一種電腦系統(tǒng)中的多操作系統(tǒng)的切換方法,用以快速進(jìn)行多操作系統(tǒng)的切換,包括下列步驟于第一操作系統(tǒng)下,觸發(fā)系統(tǒng)管理中斷使得電腦系統(tǒng)進(jìn)入系統(tǒng)管理模式,并將電腦系統(tǒng)的控制權(quán)由第一操作系統(tǒng)轉(zhuǎn)至基本輸入輸出系統(tǒng);備份第一操作系統(tǒng)的第一環(huán)境參數(shù);判斷電腦系統(tǒng)是否具有第二環(huán)境參數(shù);以及當(dāng)不具有第二環(huán)境參數(shù)時,正常啟動第二操作系統(tǒng);當(dāng)具有第二環(huán)境參數(shù)時,根據(jù)第二環(huán)境參數(shù),啟動第二操作系統(tǒng)。
文檔編號G06F9/48GK102789397SQ20111013830
公開日2012年11月21日 申請日期2011年5月18日 優(yōu)先權(quán)日2011年5月18日
發(fā)明者周柏崴, 許文修, 鄧欽元 申請人:華碩電腦股份有限公司