操作系統(tǒng)共存方法及裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及計算機技術領域,尤其涉及操作系統(tǒng)共存方法及裝置。
【背景技術】
[0002]目前,用戶想將當前的業(yè)務系統(tǒng)迀移到虛擬化平臺,通常是使用P2V(Physical tovirtual,概念物理到虛擬)迀移的方式通過網絡將業(yè)務系統(tǒng)迀移到虛擬化平臺,這樣存在的問題是業(yè)務系統(tǒng)數據量比較大,迀移過程需要耗費較長時間,由此造成業(yè)務中斷的時間過長。而且迀移后產生的新數據,不能同步到原物理系統(tǒng)。用戶在初次使用虛擬化平臺時,受限于服務器硬件原因,為了驗證虛擬化平臺的穩(wěn)定性以及保證數據的安全性,希望有一種能夠直接與現有系統(tǒng)共存的方式進行服務器虛擬化,能夠在虛擬化平臺與物理系統(tǒng)之間進行安全、快速的切換,并保證數據的一致性。
[0003]在以上方式下,為了讓用戶能夠安全快速的切換到虛擬化平臺,需要找到一種不破壞操作系統(tǒng)的共存方式,即多系統(tǒng)。考慮用戶服務器系統(tǒng)主要使用Windows系統(tǒng),而我們的虛擬化平臺使用的是Linux系統(tǒng),因此,我們需要研究Windows系統(tǒng)以及Linux系統(tǒng)的共存方案。
[0004]Windows與Linux操作系統(tǒng)共存,目前主要方法是安裝多個系統(tǒng)在不同的磁盤分區(qū)上,再通過操作系統(tǒng)引導程序在啟動時選擇引導進入不同的操作系統(tǒng)。按照這種方法,想在一個已存在Windows操作系統(tǒng)的磁盤上再安裝一個Linux系統(tǒng),就需要在單獨分出一個磁盤分區(qū)來安裝Linux。例如在Mac系統(tǒng)上的Parallels Desktop (虛擬機軟件)以及Vmware Fus1n (可執(zhí)行Windows系統(tǒng)的應用程序)的雙系統(tǒng)安裝方案,它們都是基于bootcamp (運行Windows操作系統(tǒng)的系統(tǒng)插件)分區(qū)來安裝,需要先安裝boot camp,然后調整磁盤分區(qū),創(chuàng)建一個新分區(qū)來安裝新系統(tǒng)。在已分區(qū)的磁盤上重新分區(qū),會破壞原系統(tǒng)的分區(qū)布局(需要移動文件),當需要恢復原系統(tǒng)的分區(qū)布局時,又要刪除新分區(qū)再重新調整分區(qū)。
[0005]綜上,現有操作系統(tǒng)共存的方式過程復雜,且會破壞原系統(tǒng)的磁盤分區(qū)布局,進而導致系統(tǒng)共存效果差。
[0006]上述內容僅用于輔助理解本發(fā)明的技術方案,并不代表承認上述內容是現有技術。
【發(fā)明內容】
[0007]本發(fā)明的主要目的在于提供一種操作系統(tǒng)共存方法及裝置,旨在解決現有操作系統(tǒng)共存的方式過程復雜,且會破壞原系統(tǒng)的磁盤分區(qū)布局,進而導致系統(tǒng)共存效果差的問題。
[0008]為實現上述目的,本發(fā)明提供的一種操作系統(tǒng)共存方法,包括步驟:
[0009]在第一操作系統(tǒng)下,獲取預先創(chuàng)建的磁盤文件所占用的物理磁盤扇區(qū)信息,保存到所述第一操作系統(tǒng)的配置文件中;
[0010]安裝第二操作系統(tǒng)的引導程序,釋放所述第二操作系統(tǒng)的引導文件以及內核至所述第一操作系統(tǒng)的系統(tǒng)盤;
[0011]在接收到在第一操作系統(tǒng)下基于所述引導程序的觸發(fā)操作時,運行所述內核并從所述系統(tǒng)盤中獲取所述引導文件;
[0012]通過所述引導文件從所述配置文件中獲取所述磁盤文件的扇區(qū)信息,根據所述扇區(qū)信息生成虛擬磁盤,以通過所述虛擬磁盤完成所述第二操作系統(tǒng)數據的讀寫。
[0013]優(yōu)選地,所述獲取預先創(chuàng)建的磁盤文件所占用的物理磁盤扇區(qū)信息,保存到所述第一操作系統(tǒng)的配置文件中的步驟之前,還包括:
[0014]接收磁盤文件創(chuàng)建請求,并創(chuàng)建與所述磁盤文件創(chuàng)建請求對應的磁盤文件;
[0015]運行驅動程序對所述磁盤文件進行保護。
[0016]優(yōu)選地,所述接收到在第一操作系統(tǒng)下基于所述引導程序的觸發(fā)操作時,運行所述內核并從所述系統(tǒng)盤中獲取所述引導文件和所述通過所述引導文件從所述配置文件中獲取所述磁盤文件的扇區(qū)信息,根據所述扇區(qū)信息生成虛擬磁盤的步驟之間,還包括:
[0017]創(chuàng)建引導所述引導文件和所述內核的引導項;
[0018]獲取所述第一操作系統(tǒng)的引導列表,所述引導列表包括第一操作系統(tǒng)的引導項和內核,并將所述引導項添加至所述引導列表中。
[0019]優(yōu)選地,所述通過所述引導文件從所述配置文件中獲取所述磁盤文件的扇區(qū)信息,根據所述扇區(qū)信息生成虛擬磁盤的步驟之后,還包括:
[0020]接收基于所述引導列表中的所述引導項的操作,獲取所述系統(tǒng)盤中的內核和配置文件,加載所述第二操作系統(tǒng),切換并運行所述第二操作系統(tǒng)。
[0021]優(yōu)選地,所述接收基于所述引導列表中的所述引導項的操作,獲取所述系統(tǒng)盤中的內核和配置文件,加載所述第二操作系統(tǒng),以切換并運行所述第二操作系統(tǒng)的步驟之后,還包括:
[0022]接收基于所述引導列表中的所述第一操作系統(tǒng)的引導項,獲取所述第一操作系統(tǒng)的內核和配置文件,加載所述第一操作系統(tǒng),切換并運行所述第一操作系統(tǒng)。
[0023]此外,為實現上述目的,本發(fā)明還進一步提供一種操作系統(tǒng)共存裝置,包括:
[0024]獲取模塊,用于在第一操作系統(tǒng)下,獲取預先創(chuàng)建的磁盤文件所占用的物理磁盤扇區(qū)?目息;
[0025]存儲模塊,用于保存到所述第一操作系統(tǒng)的配置文件中;
[0026]處理模塊,用于安裝第二操作系統(tǒng)的引導程序,釋放所述第二操作系統(tǒng)的引導文件以及內核至所述第一操作系統(tǒng)的系統(tǒng)盤;
[0027]運行模塊,用于在接收到在第一操作系統(tǒng)下基于所述引導程序的觸發(fā)操作時,運行所述內核;
[0028]所述獲取模塊,還用于從所述系統(tǒng)盤中獲取所述引導文件,通過所述引導文件從所述配置文件中獲取所述磁盤文件的扇區(qū)信息;
[0029]生成模塊,用于根據所述扇區(qū)信息生成虛擬磁盤,以通過所述虛擬磁盤完成所述第二操作系統(tǒng)數據的讀寫。
[0030]優(yōu)選地,所述裝置還包括接收、創(chuàng)建模塊和磁盤保護模塊,
[0031 ] 所述接發(fā)模塊,用于接收磁盤文件創(chuàng)建請求;
[0032]所述創(chuàng)建模塊,用于創(chuàng)建與所述磁盤文件創(chuàng)建請求對應的磁盤文件;
[0033]所述磁盤保護模塊,用于運行驅動程序對所述磁盤文件進行保護。
[0034]優(yōu)選地,所述創(chuàng)建單元,還用于創(chuàng)建引導所述引導文件和所述內核的引導項;
[0035]所述獲取模塊,還用于獲取所述第一操作系統(tǒng)的引導列表,所述引導列表包括第一操作系統(tǒng)的引導項和內核;
[0036]所述處理模塊,還用于將所述引導項添加至所述引導列表中。
[0037]優(yōu)選地,所述接發(fā)單元,還用于接收基于所述引導列表中的所述引導項的操作;
[0038]所述獲取模塊,還用于獲取所述系統(tǒng)盤中的內核和配置文件;
[0039]所述處理模塊,還用于加載所述第二操作系統(tǒng),切換并運行所述第二操作系統(tǒng)。
[0040]優(yōu)選地,所述接發(fā)單元,還用于接收基于所述引導列表中的所述第一操作系統(tǒng)的引導項;
[0041]所述獲取模塊,還用于獲取所述第一操作系統(tǒng)的內核和配置文件;
[0042]所述處理模塊,還用于加載所述第一操作系統(tǒng),切換并運行所述第一操作系統(tǒng)。
[0043]本發(fā)明通過在第一操作系統(tǒng)的引導列表中添加引導第二操作系統(tǒng)的引導文件,釋放第二操作系統(tǒng)的引導文件以及內核至所述第一操作系統(tǒng)的系統(tǒng)盤,在觸發(fā)所述引導文件時,通過引導文件加載配置文件,并根據所述配置文件獲取到創(chuàng)建的磁盤文件的扇區(qū)信息生成虛擬磁盤,所述虛擬磁盤用于所述第二操作系統(tǒng)數據的讀寫,實現第一操作系統(tǒng)和第二操作系統(tǒng)的共存。有效避免現有操作系統(tǒng)共存的方