啟動信息,將啟動信息讀取至第二計算機系統(tǒng)的內(nèi)存中,并根據(jù)啟動信息啟動第二計算機系統(tǒng)的操作系統(tǒng)。
[0040]本發(fā)明實施例提供的方法、裝置及系統(tǒng),將操作系統(tǒng)的啟動信息存儲在KV存儲設備中,因此,對于相同的操作系統(tǒng)來說,只需要存儲一份啟動信息,與現(xiàn)有技術相比,節(jié)約了空間。另外,當有多個計算機系統(tǒng)的操作系統(tǒng)需要啟動、且該多個計算機系統(tǒng)運行的操作系統(tǒng)相同時,第一個計算機系統(tǒng)的操作系統(tǒng)啟動后,該操作系統(tǒng)的啟動信息會緩存在KV存儲設備的內(nèi)存中,在其他計算機系統(tǒng)的操作系統(tǒng)啟動時,計算機系統(tǒng)就可以在KV存儲設備的緩存中獲取啟動信息,并根據(jù)該啟動信息啟動操作系統(tǒng),與現(xiàn)有技術相比,其他的計算機系統(tǒng)不需要在KV存儲設備的持久性存儲介質(zhì)中讀取啟動信息,因此,可以大大的提高操作系統(tǒng)的啟動速度。
【附圖說明】
[0041]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0042]圖1為現(xiàn)有技術中的物理計算機系統(tǒng)與KV存儲設備的連接示意圖;
[0043]圖2為本發(fā)明實施例提供的一種操作系統(tǒng)啟動的方法的流程圖;
[0044]圖3為本發(fā)明實施例提供的一種B1S配置界面中的啟動裝置順序的不意圖;
[0045]圖4為本發(fā)明實施例提供的一種GRUB配置界面示意圖;
[0046]圖5為本發(fā)明實施例提供的又一種操作系統(tǒng)啟動的方法的流程圖;
[0047]圖6為本發(fā)明實施例提供的一種計算機系統(tǒng)的結構示意圖;
[0048]圖7為本發(fā)明實施例提供的又一種計算機系統(tǒng)的結構示意圖;
[0049]圖8為本發(fā)明實施例提供的又一種計算機系統(tǒng)的結構示意圖;
[0050]圖9為本發(fā)明實施例提供的再一種計算機系統(tǒng)的結構示意圖;
[0051]圖10為本發(fā)明實施例提供的一種操作系統(tǒng)啟動的系統(tǒng)的組成示意圖。
【具體實施方式】
[0052]下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0053]如圖1所示,為一種物理計算機系統(tǒng)與鍵值(Key-Value,簡稱KV)存儲設備的連接示意圖,多個物理計算機系統(tǒng)可以通過以太網(wǎng)同時與KV存儲設備連接,多個物理計算機系統(tǒng)以及該物理計算機系統(tǒng)中的虛擬計算機系統(tǒng)均可以根據(jù)主鍵信息獲取KV存儲設備中存儲的數(shù)據(jù)。其中,如圖1所示,物理計算機系統(tǒng)1中運行的操作系統(tǒng)為Linux操作系統(tǒng),物理計算機系統(tǒng)2中運行的操作系統(tǒng)為Windows操作系統(tǒng),物理計算機系統(tǒng)3和物理計算機系統(tǒng)4中的虛擬計算機系統(tǒng)運行的操作系統(tǒng)為Linux操作系統(tǒng)。在KV存儲設備中,存儲的每個值(Value)都對應一個主鍵信息(Key),該主鍵信息為該值的索引,物理計算機系統(tǒng)或虛擬計算機系統(tǒng)均可以根據(jù)該主鍵信息獲取到該值。典型的KV存儲設備如Seagate KineticIP Drive (也稱為希捷Kinetic IP盤),該KV存儲設備對外提供兩個以太接口作為物理連接。
[0054]本發(fā)明實施例提供一種操作系統(tǒng)啟動的方法,如圖2所示,包括:
[0055]201、計算機系統(tǒng)根據(jù)至少一個主鍵信息在KV存儲設備的內(nèi)存中讀取所述計算機系統(tǒng)的操作系統(tǒng)的啟動信息,所述至少一個主鍵信息對應的值為所述啟動信息。
[0056]需要說明的是,本發(fā)明實施例中提供的方法可以用于物理計算機系統(tǒng)中的操作系統(tǒng)的啟動,該情況下,本發(fā)明實施例的執(zhí)行主體為物理計算機系統(tǒng),例如,如圖1所示,本發(fā)明實施例提供的方法可以用于物理計算機系統(tǒng)1中的Linux操作系統(tǒng)的啟動;本發(fā)明實施例中提供的方法也可以用于虛擬計算機系統(tǒng)中的操作系統(tǒng)的啟動,該情況下,本發(fā)明實施例的執(zhí)行主體為虛擬計算機系統(tǒng),例如,如圖1所示,本發(fā)明實施例提供的方法可以用于物理計算機系統(tǒng)3中的虛擬計算機系統(tǒng)中的Linux操作系統(tǒng)的啟動。
[0057]若在執(zhí)行步驟201后計算機系統(tǒng)在KV存儲設備的內(nèi)存中讀取到計算機系統(tǒng)的操作系統(tǒng)的啟動信息,計算機系統(tǒng)執(zhí)行步驟202,若計算機系統(tǒng)在KV存儲設備的內(nèi)存中未讀取到該啟動信息,計算機系統(tǒng)執(zhí)行步驟203。
[0058]202、所述計算機系統(tǒng)將所述啟動信息讀取至所述計算機系統(tǒng)的內(nèi)存中,并根據(jù)所述啟動信息啟動所述操作系統(tǒng)。
[0059]203、所述計算機系統(tǒng)根據(jù)所述至少一個主鍵信息在所述KV存儲設備的持久性存儲介質(zhì)中讀取所述計算機系統(tǒng)的操作系統(tǒng)的啟動信息,若所述計算機系統(tǒng)在所述KV存儲設備的持久性存儲介質(zhì)中讀取到所述啟動信息,所述計算機系統(tǒng)從所述KV存儲設備的持久性存儲介質(zhì)中將所述啟動信息讀取至所述KV存儲設備的內(nèi)存中,再從所述KV存儲設備的內(nèi)存中將所述啟動信息讀取至所述計算機系統(tǒng)的內(nèi)存中,并根據(jù)所述啟動信息啟動所述操作系統(tǒng)。
[0060]需要說明的是,KV存儲設備包括內(nèi)存和持久性存儲介質(zhì),內(nèi)存用于緩存數(shù)據(jù),當KV存儲設備掉電后內(nèi)存中的數(shù)據(jù)會丟失,但持久性存儲介質(zhì)中的數(shù)據(jù)不會丟失。
[0061]具體的,主鍵信息是預先設置的,在KV存儲設備中,上述至少一個主鍵信息對應的值即計算機系統(tǒng)的操作系統(tǒng)的啟動信息。若KV存儲設備中包括多個操作系統(tǒng)的啟動信息,不同的操作系統(tǒng)的啟動信息不同,則預先設置的主鍵信息也不同。
[0062]具體的,計算機系統(tǒng)在獲取啟動信息的過程中,首先會從KV存儲設備的內(nèi)存中讀取啟動信息,若在KV存儲設備的內(nèi)存中讀取到啟動信息,則將該啟動信息讀取到該計算機系統(tǒng)的內(nèi)存中,并且根據(jù)該啟動信息啟動操作系統(tǒng);若在KV存儲設備的內(nèi)存中未讀取到啟動信息,則在KV存儲設備的持久性存儲介質(zhì)中讀取該啟動信息,若在該持久性存儲介質(zhì)中讀取到該啟動信息,則將該啟動信息讀取到KV存儲設備的內(nèi)存中,再從KV存儲設備的內(nèi)存中將該啟動信息讀取到該計算機系統(tǒng)的內(nèi)存中,并根據(jù)該啟動信息啟動操作系統(tǒng),當計算機系統(tǒng)將啟動信息讀取到KV存儲設備的內(nèi)存中后,KV存儲設備的內(nèi)存中會緩存有該啟動?目息。
[0063]需要說明的是,若計算機系統(tǒng)在KV存儲設備的內(nèi)存和持久性存儲介質(zhì)中都沒有讀取到該啟動信息,則計算機系統(tǒng)從下一塊KV存儲設備中讀取該啟動信息。
[0064]可選的,若另一計算機系統(tǒng)的操作系統(tǒng)與所述計算機系統(tǒng)的操作系統(tǒng)相同、且所述另一計算機系統(tǒng)的操作系統(tǒng)為在所述計算機系統(tǒng)的操作系統(tǒng)啟動之后啟動的操作系統(tǒng),所述另一計算機系統(tǒng)根據(jù)所述至少一個主鍵信息在所述KV存儲設備的內(nèi)存中讀取所述啟動信息,將所述啟動信息讀取至所述另一計算機系統(tǒng)的內(nèi)存中,并根據(jù)所述啟動信息啟動所述另一計算機系統(tǒng)的操作系統(tǒng)。
[0065]需要說明的是,在計算機系統(tǒng)的操作系統(tǒng)啟動之后,啟動信息會被緩存在KV存儲設備的內(nèi)存中,因此當上述另一計算機系統(tǒng)的操作系統(tǒng)啟動時,可以直接根據(jù)上述至少一個主鍵信息在KV存儲設備的內(nèi)存中讀取啟動信息,而不用在KV存儲設備的持久性存儲介質(zhì)中讀取啟動信息,可以提高該另一計算機系統(tǒng)的啟動效率。上述另一計算機系統(tǒng)的操作系統(tǒng)與上述計算機系統(tǒng)的操作系統(tǒng)相同,但不是同一操作系統(tǒng)。
[0066]可選的,所述啟動信息包括:B10S啟動信息、啟動管理器引導信息和操作系統(tǒng)啟動映像;該情況下,所述計算機系統(tǒng)根據(jù)至少一個主鍵信息在KV存儲設備的存儲介質(zhì)中讀取所述計算機系統(tǒng)的操作系統(tǒng)的啟動信息,包括:
[0067]所述計算機系統(tǒng)根據(jù)第一主鍵信息在所述KV存儲設備的存儲介質(zhì)中讀取所述B1S啟動信息,根據(jù)第二主鍵信息在所述KV存儲設備的存儲介質(zhì)中讀取所述啟動管理器引導信息,根據(jù)第三主鍵信息在所述KV存儲設備的存儲介質(zhì)中讀取所述操作系統(tǒng)啟動映像,所述存儲介質(zhì)為所述內(nèi)存或所述持久性存儲介質(zhì)。
[0068]具體的,啟動管理器可以為GRUB (GRand Unified Bootloader)、LILO (LinuxLoader)等。下文中均以啟動管理器為GRUB為例進行說明。
[0069]示例性的,第一主鍵信息可以為:key = “res:b1s.boot”,該主鍵信息對應的值為B1S啟動信息(B1S boot);第二主鍵信息可以為key =“res:grub.conf ”,該主鍵信息對應的值為GRUB引導信息(Grub boot);第三主鍵信息可以為key =“res:kernel.boot”,該主鍵信息對應的值為操作系統(tǒng)啟動映像(boot image)。當然,第一主鍵信息、第二主鍵信息和第三主鍵信息還可以設置為其他值,本發(fā)明實施例對此不進行限制。
[0070]需要說明的是,計算機系統(tǒng)在上電后,計算機系統(tǒng)中的B1S進行硬件自檢,確定計算機硬件能否滿足運行的基本條件,若計算機硬件可以滿足運行的基本條件時,B1S在KV存儲設備中讀取B1S啟動信息后,確定B1S啟動信息中的內(nèi)容(包括B1S版本,MAGIC (魔術字)號,GRUB引導信息對應主鍵信息以及GRUB引導信息的長度等)是否有效,若