從操作系統(tǒng)通過處理器主核向主操作系統(tǒng)發(fā)送第一消息。
[0072]S303:該從操作系統(tǒng)終止該處理器主核的運(yùn)行。
[0073]例如,該從操作系統(tǒng)可以向該主操作系統(tǒng)發(fā)送halt指令,該處理器主核執(zhí)行該halt命令將相關(guān)數(shù)據(jù)寫入到磁盤后停止運(yùn)行。
[0074]S304,主操作系統(tǒng)接收到該第一消息后,確定分配給該從操作系統(tǒng)的物理資源。
[0075]S305,主操作系統(tǒng)在當(dāng)前時(shí)刻距離接收到該第一消息的時(shí)刻達(dá)到預(yù)設(shè)時(shí)長(zhǎng)時(shí),將該物理資源確定為空閑資源。
[0076]下面針對(duì)目標(biāo)從操作系統(tǒng)為出現(xiàn)任務(wù)執(zhí)行異常的從操作系統(tǒng)的情況進(jìn)行介紹,參見圖4,示出了本發(fā)明一種資源控制方法另一個(gè)實(shí)施例的流程示意圖,本實(shí)施例的方法同樣可以應(yīng)用于具有多核處理器的計(jì)算機(jī)中,該計(jì)算機(jī)中能夠運(yùn)行至少一個(gè)操作系統(tǒng),該操作系統(tǒng)包括有一個(gè)主操作系統(tǒng)和多個(gè)從操作系統(tǒng),本實(shí)施例的方法可以包括:
[0077]S401,主操作系統(tǒng)對(duì)處于運(yùn)行狀態(tài)的從操作系統(tǒng)進(jìn)行監(jiān)測(cè),將檢測(cè)到存在任務(wù)執(zhí)行異常的從操作系統(tǒng)確定為目標(biāo)從操作系統(tǒng)。
[0078]其中,該主操作系統(tǒng)檢測(cè)出處于運(yùn)行狀態(tài)的從操作系統(tǒng)出現(xiàn)任務(wù)執(zhí)行異常的方式可以是:周期性的向從操作系統(tǒng)發(fā)送查詢消息,該從操作系統(tǒng)如果未出現(xiàn)任務(wù)執(zhí)行異常,則該從操作系統(tǒng)會(huì)給該主操作系統(tǒng)返回一個(gè)響應(yīng)消息。如果該主操作系統(tǒng)長(zhǎng)時(shí)間未接收到該從操作系統(tǒng)返回的響應(yīng)消息,該主操作系統(tǒng)便可以確定該從操作系統(tǒng)出現(xiàn)任務(wù)執(zhí)行異常。
[0079]其中,該從操作系統(tǒng)出現(xiàn)任務(wù)執(zhí)行異??梢允怯捎趶牟僮飨到y(tǒng)出現(xiàn)故障或者被入侵,而導(dǎo)致任務(wù)無法執(zhí)行。
[0080]S402:主操作系統(tǒng)確定分配給該目標(biāo)從操作系統(tǒng)的物理資源。
[0081]其中,該物理資源至少包括分配給該目標(biāo)從操作系統(tǒng)的處理器主核、處理器從核以及內(nèi)存空間。
[0082]S403:主操作系統(tǒng)將該分配給目標(biāo)從操作系統(tǒng)的物理資源確定為空閑資源。
[0083]可選的,在主操作系統(tǒng)將分配給目標(biāo)從操作系統(tǒng)的物理資源確定為能夠被分配的空閑資源之前,還包括:該主操作系統(tǒng)終止分配給該目標(biāo)從操作系統(tǒng)的處理器主核和處理器從核的運(yùn)行。在主操作系統(tǒng)確定出出現(xiàn)任務(wù)執(zhí)行異常的目標(biāo)從操作系統(tǒng)時(shí),分配給該目標(biāo)從操作系統(tǒng)的處理器主核和處理器從核有可能仍處于運(yùn)行狀態(tài),如果將運(yùn)行狀態(tài)的處理器主核和處理器從核直接作為空閑資源,并分配給其他從操作系統(tǒng),則可能會(huì)造成其他從操作系統(tǒng)運(yùn)行不穩(wěn)定。因此,在主操作系統(tǒng)確定出分配給該目標(biāo)從操作系統(tǒng)用的物理資源之后,該主操作系統(tǒng)還可以強(qiáng)制終止分配給該目標(biāo)從操作系統(tǒng)的處理器主核和處理器從核的運(yùn)行。
[0084]由于從操作系統(tǒng)之間可能會(huì)存在數(shù)據(jù)通信,當(dāng)其他從操作系統(tǒng)與該目標(biāo)從操作系統(tǒng)之間存在數(shù)據(jù)交互時(shí),其他從操作系統(tǒng)有可能需要從該主操作系統(tǒng)分配給該目標(biāo)從操作系統(tǒng)的內(nèi)存空間中調(diào)取數(shù)據(jù)。
[0085]為了避免影響到其他的從操作系統(tǒng)的任務(wù)執(zhí)行,在主操作系統(tǒng)終止分配給該目標(biāo)從操作系統(tǒng)的處理器主核和處理器從核的運(yùn)行之前,該主操作系統(tǒng)還可以向該非目標(biāo)從操作系統(tǒng)發(fā)送第二消息,以便該非目標(biāo)從操作系統(tǒng)從分配給該目標(biāo)從操作系統(tǒng)的內(nèi)存空間中讀取出所需數(shù)據(jù)。其中,該非目標(biāo)從操作系統(tǒng)為該目標(biāo)從操作系統(tǒng)之外,且處于運(yùn)行狀態(tài)的從操作系統(tǒng)。
[0086]該主操作系統(tǒng)向目標(biāo)從操作系統(tǒng)之外的該非目標(biāo)從操作系統(tǒng)發(fā)送該第二消息后,如果該非目標(biāo)從操作系統(tǒng)檢測(cè)到分配給該目標(biāo)從操作系統(tǒng)的內(nèi)存空間中存儲(chǔ)有該非目標(biāo)從操作系統(tǒng)所需的數(shù)據(jù),則該非目標(biāo)從操作系統(tǒng)可以讀取出所需數(shù)據(jù)并存儲(chǔ)至指定磁盤;如果該非目標(biāo)從操作系統(tǒng)確定出該分配給目標(biāo)從操作系統(tǒng)的內(nèi)存空間中不存在該非目標(biāo)從操作系統(tǒng)所需的數(shù)據(jù),則可以忽略該第二消息。
[0087]對(duì)應(yīng)本發(fā)明的方法,本發(fā)明還提供了一種資源控制裝置,參見圖5,示出了本發(fā)明一種資源控制裝置一個(gè)實(shí)施例的結(jié)構(gòu)示意圖,本實(shí)施例的裝置應(yīng)用于操作系統(tǒng),所述操作系統(tǒng)包括有主操作系統(tǒng)和多個(gè)從操作系統(tǒng),該裝置包括:目標(biāo)確定單元501、資源確定單元502和資源控制單元503。
[0088]其中,目標(biāo)確定單元501,用于確定待進(jìn)行資源釋放的目標(biāo)從操作系統(tǒng),所述目標(biāo)從操作系統(tǒng)是完成任務(wù)執(zhí)行的從操作系統(tǒng),或者存在任務(wù)執(zhí)行異常的從操作系統(tǒng)。
[0089]資源確定單元502,用于確定分配給所述目標(biāo)確定單元確定出的所述目標(biāo)從操作系統(tǒng)的物理資源。
[0090]資源控制單元503,用于將所述資源確定單元確定出的所述物理資源確定為能夠被分配的空閑資源。
[0091]在本實(shí)施例中,該目標(biāo)確定單元可以確定出待進(jìn)行資源釋放的目標(biāo)從操作系統(tǒng),并由該資源控制單元將資源確定單元確定出的已分配給該目標(biāo)從操作系統(tǒng)的物理資源設(shè)定為能夠被分配的空閑資源,從而可以回收需要進(jìn)行資源釋放的從操作系統(tǒng)所占用的物理資源,進(jìn)而可以實(shí)現(xiàn)物理資源的重新分配利用,從而可以滿足各個(gè)從操作系統(tǒng)正常對(duì)物理資源的需求。
[0092]可選的,在本發(fā)明任意一個(gè)實(shí)施例中,該資源確定單元確定出的物理資源至少包括:該主操作系統(tǒng)分配給該目標(biāo)從操作系統(tǒng)用于執(zhí)行任務(wù)的處理器主核和處理器從核,以及執(zhí)行該任務(wù)所占用的內(nèi)存空間。
[0093]一方面,可選的,為了確定任務(wù)執(zhí)行完畢的從操作系統(tǒng),該目標(biāo)確定單元可以包括:
[0094]第一目標(biāo)確定單元,用于接收從操作系統(tǒng)發(fā)送的第一消息,將發(fā)送所述第一消息的從操作系統(tǒng)確定為所述目標(biāo)從操作系統(tǒng),其中,所述第一消息為所述目標(biāo)從操作系統(tǒng)在檢測(cè)到任務(wù)執(zhí)行完畢后發(fā)送的消息。
[0095]另一方面,參見圖6,示出了本發(fā)明一種資源控制裝置另一個(gè)實(shí)施例的結(jié)構(gòu)示意圖,本實(shí)施例的裝置應(yīng)用于操作系統(tǒng),該操作系統(tǒng)包括有主操作系統(tǒng)和多個(gè)從操作系統(tǒng),該裝置適用于任務(wù)執(zhí)行異常的目標(biāo)從操作系統(tǒng),本實(shí)施例的裝置與圖5所示實(shí)施例的不同之處在于:
[0096]在本實(shí)施例中該目標(biāo)確定單元501可以包括:
[0097]第二目標(biāo)確定單元5011,用于對(duì)處于運(yùn)行狀態(tài)的從操作系統(tǒng)進(jìn)行監(jiān)測(cè),將檢測(cè)到存在任務(wù)執(zhí)行異常的從操作系統(tǒng)確定為目標(biāo)從操作系統(tǒng)。
[0098]可選的,本實(shí)施例的裝置還包括:終止單元504,用于終止所述資源確定單元確定出的處理器主核和處理器從核的運(yùn)行,并觸發(fā)所述資源控制單元的操作。
[0099]可選的,本實(shí)施例的裝置還可以包括:
[0100]消息通知單元505,用于在所述目標(biāo)確定單元確定出所述目標(biāo)從操作系統(tǒng)后,向非目標(biāo)從操作系統(tǒng)發(fā)送第二消息,以便與所述目標(biāo)從操作系統(tǒng)存在數(shù)據(jù)交互的非目標(biāo)從操作系統(tǒng)從分配給所述目標(biāo)從操作系統(tǒng)的所述內(nèi)存空間中讀取出所需的數(shù)據(jù),其中,所述非目標(biāo)從操作系統(tǒng)為所述目標(biāo)操作系統(tǒng)之外,且處于運(yùn)行狀態(tài)的從操作系統(tǒng)。
[0101]另外,本發(fā)明還提供了一種計(jì)算機(jī),參見圖7,示出了本發(fā)明一種計(jì)算機(jī)的結(jié)構(gòu)示意圖,本實(shí)施例的計(jì)算機(jī)至少包括處理器701、存儲(chǔ)器702、通信接口 603和通信總線704。其中,所述處理器701包括有多個(gè)內(nèi)核7011。
[0102]其中,該處理器701、存儲(chǔ)器702以及通信接口 703通過該通信總線701完成相互間的通信。
[0103]該通信接口 704,用于與其他網(wǎng)元、或者外部設(shè)備進(jìn)行通信,比如共享存儲(chǔ)系統(tǒng)中的節(jié)點(diǎn)、其他網(wǎng)絡(luò)終端等等。
[0104