Cc-numa系統(tǒng)及其啟動(dòng)的方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種CC-NUMA系統(tǒng)及其啟動(dòng)的方法,其中,該方法包括:主節(jié)點(diǎn)向從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,初始化外圍設(shè)備,為外圍設(shè)備分配資源,確定可啟動(dòng)外圍設(shè)備;從節(jié)點(diǎn)接收主節(jié)點(diǎn)的啟動(dòng)命令,分別初始化外圍設(shè)備,為外圍設(shè)備分配資源,確定可啟動(dòng)外圍設(shè)備;從節(jié)點(diǎn)收集可啟動(dòng)外圍設(shè)備的配置信息,將配置信息發(fā)送至主節(jié)點(diǎn);主節(jié)點(diǎn)將自身的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)完成啟動(dòng)。本發(fā)明實(shí)施可以縮短系統(tǒng)啟動(dòng)的時(shí)間。
【專(zhuān)利說(shuō)明】CC-NUMA系統(tǒng)及其啟動(dòng)的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,尤其涉及一種CC-NUMA系統(tǒng)及其啟動(dòng)的方法。
【背景技術(shù)】
[0002]隨著人類(lèi)的進(jìn)步和社會(huì)的發(fā)展,高性能服務(wù)器被越來(lái)越多的應(yīng)用到科學(xué)研究和企業(yè)經(jīng)營(yíng)活動(dòng)中。高速緩存一致性非均勻存儲(chǔ)訪(fǎng)問(wèn)(Cache Coherent Non-Uniform MemoryAccess,簡(jiǎn)稱(chēng)CC-NUMA)系統(tǒng)憑借其高性能、高擴(kuò)展性和易編程等優(yōu)點(diǎn),得到廣泛應(yīng)用。CC-NUMA系統(tǒng)可以包括多個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)可以包括處理器、內(nèi)存、外圍設(shè)備和其他模塊,節(jié)點(diǎn)之間可以通過(guò)高速互聯(lián)來(lái)組成一個(gè)完整的系統(tǒng)。其中,外圍設(shè)備可以是外設(shè)部件互聯(lián)標(biāo)準(zhǔn) / 外設(shè)部件互聯(lián)標(biāo)準(zhǔn)互聯(lián)通道(Personal Computer Interface/Personal ComputerInterface Express,簡(jiǎn)稱(chēng)PCI/PCIE)設(shè)備,外圍設(shè)備可以通過(guò)PCI總線(xiàn)與該外圍設(shè)備所在節(jié)點(diǎn)的處理器相連。
[0003]現(xiàn)有CC-NUMA系統(tǒng)啟動(dòng)的方法,CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間和CC-NUMA系統(tǒng)的節(jié)點(diǎn)數(shù)量成線(xiàn)性關(guān)系,隨著節(jié)點(diǎn)數(shù)量和外圍設(shè)備數(shù)量的增加,CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間增加。
【發(fā)明內(nèi)容】
[0004]摶術(shù)問(wèn)是頁(yè)
[0005]有鑒于此,本發(fā)明可以解決的技術(shù)問(wèn)題是,縮短CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間。
[0006]解決方案
[0007]在第一方面,本發(fā)明提出了一種高速緩存一致性非均勻存儲(chǔ)訪(fǎng)問(wèn)CC-NUMA系統(tǒng)啟動(dòng)的方法,其中,CC-NUMA系統(tǒng)包括多個(gè)節(jié)點(diǎn),所述節(jié)點(diǎn)包括主節(jié)點(diǎn)和至少一個(gè)從節(jié)點(diǎn),該方法包括:所述主節(jié)點(diǎn)向所述從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并且初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備;各個(gè)所述從節(jié)點(diǎn)在接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,分別初始化自身的外圍設(shè)備,分別為自身的外圍設(shè)備分配資源,分別確定自身的可啟動(dòng)外圍設(shè)備;各個(gè)所述從節(jié)點(diǎn)分別收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn);所述主節(jié)點(diǎn)將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng)。
[0008]結(jié)合第一方面,在第一種可能的實(shí)現(xiàn)方式中,所述為自身的外圍設(shè)備分配資源,包括:每個(gè)所述節(jié)點(diǎn)分別確定自身的外圍設(shè)備需要的資源;每個(gè)所述節(jié)點(diǎn)從所述節(jié)點(diǎn)的資源池中,取出所述節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述外圍設(shè)備,所述資源池包括輸入輸出10資源和存儲(chǔ)地址指定輸入輸出MMIO資源。
[0009]結(jié)合第一方面或第一方面的第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述確定自身的可啟動(dòng)外圍設(shè)備,包括:每個(gè)所述節(jié)點(diǎn)將存在綁定驅(qū)動(dòng)的外圍設(shè)備確定為自身的可啟動(dòng)外圍設(shè)備。
[0010]結(jié)合第一方面和第一方面的第一種和第二種可能的實(shí)現(xiàn)方式中任一種可能的實(shí)現(xiàn)方式,在第三種可能的實(shí)現(xiàn)方式中,各個(gè)所述從節(jié)點(diǎn)分別收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn),包括:各個(gè)所述從節(jié)點(diǎn)的主啟動(dòng)處理器BSP分別收集所述主BSP所在從節(jié)點(diǎn)自身的系統(tǒng)管理基本輸入輸出系統(tǒng)SMBIOS信息和高級(jí)配置與電源接口 ACPI信息;各個(gè)所述從節(jié)點(diǎn)的主BSP分別將收集的所述SMBIOS信息和所述ACPI信息發(fā)送至所述主節(jié)點(diǎn)。
[0011]結(jié)合第一方面和第一方面的第一種至第三種可能的實(shí)現(xiàn)方式中任一種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,所述主節(jié)點(diǎn)將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng),包括:所述主節(jié)點(diǎn)的系統(tǒng)啟動(dòng)處理器SBSP收集所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息;所述SBSP從所述從節(jié)點(diǎn)的主BSP接收各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息;所述SBSP將所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息和各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息,匯總生成SMBIOS表和ACPI表;所述SBSP將所述SMBIOS表和ACPI表上報(bào)給所述交互式系統(tǒng),所述交互式系統(tǒng)采用主程序設(shè)計(jì)接口規(guī)范協(xié)議從所述SMBIOS表和ACPI表讀取配置信息,完成所述交互式系統(tǒng)和各個(gè)所述節(jié)點(diǎn)設(shè)備的可啟動(dòng)外圍設(shè)備的啟動(dòng),所述交互式系統(tǒng)包括交互式界面或操作系統(tǒng)。
[0012]在第二方面,本發(fā)明提出了一種高速緩存一致性非均勻存儲(chǔ)訪(fǎng)問(wèn)CC-NUMA系統(tǒng),包括主節(jié)點(diǎn)和至少一個(gè)從節(jié)點(diǎn):所述主節(jié)點(diǎn),用于向所述從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并且初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備;將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng);所述從節(jié)點(diǎn),用于在接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備;收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn)。
[0013]結(jié)合第二方面,在第一種可能的實(shí)現(xiàn)方式中,所述從節(jié)點(diǎn)包括:第一接收模塊,用于從所述主節(jié)點(diǎn)接收所述啟動(dòng)命令;主啟動(dòng)處理器,用于在所述第一接收模塊接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,初始化所述從節(jié)點(diǎn)的外圍設(shè)備;確定所述從節(jié)點(diǎn)的外圍設(shè)備需要的資源;從所述從節(jié)點(diǎn)的資源池中,取出所述從節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述從節(jié)點(diǎn)的外圍設(shè)備,所述資源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMIO資源;確定所述從節(jié)點(diǎn)的可啟動(dòng)外圍設(shè)備。
[0014]結(jié)合第二方面的第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述主啟動(dòng)處理器,還用于:收集所述從節(jié)點(diǎn)的系統(tǒng)管理基本輸入輸出系統(tǒng)SMBIOS信息和高級(jí)配置與電源接口 ACPI信息;將收集的所述SMBIOS信息和ACPI信息發(fā)送至所述主節(jié)點(diǎn)。
[0015]結(jié)合第二方面,在第三種可能的實(shí)現(xiàn)方式中,所述主節(jié)點(diǎn)包括:發(fā)送模塊,用于向所述從節(jié)點(diǎn)發(fā)送所述啟動(dòng)命令;系統(tǒng)啟動(dòng)處理器,用于初始化所述主節(jié)點(diǎn)的外圍設(shè)備;確定所述主節(jié)點(diǎn)的外圍設(shè)備需要的資源;從所述主節(jié)點(diǎn)的資源池中,取出所述主節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述主節(jié)點(diǎn)的外圍設(shè)備,所述資源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMio資源;確定所述主節(jié)點(diǎn)的可啟動(dòng)外圍設(shè)備。
[0016]結(jié)合第二方面的第三種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,所述主節(jié)點(diǎn)還包括:第二接收模塊,用于從所述從節(jié)點(diǎn)接收各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息;所述系統(tǒng)啟動(dòng)處理器還用于:收集所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息;將所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息和所述第二接收模塊接收到的各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息,匯總生成SMBIOS表和ACPI表;將所述SMBIOS表和ACPI表上報(bào)給所述交互式系統(tǒng),所述交互式系統(tǒng)采用主程序設(shè)計(jì)接口規(guī)范協(xié)議從所述SMBIOS表和ACPI表讀取配置信息,完成所述交互式系統(tǒng)和各個(gè)所述節(jié)點(diǎn)設(shè)備的可啟動(dòng)外圍設(shè)備的啟動(dòng),所述交互式系統(tǒng)包括交互式界面或操作系統(tǒng)。
[0017]有益效果
[0018]本實(shí)施例的CC-NUMA系統(tǒng)啟動(dòng)的方法,主節(jié)點(diǎn)向從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并執(zhí)行自身的外圍設(shè)備的初始化過(guò)程,從節(jié)點(diǎn)根據(jù)接收到的主節(jié)點(diǎn)的啟動(dòng)命令,分別執(zhí)行自身的外圍設(shè)備的初始化過(guò)程,可以縮短CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間。
[0019]根據(jù)下面參考附圖對(duì)示例性實(shí)施例的詳細(xì)說(shuō)明,本發(fā)明的其它特征及方面將變得清楚。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0020]包含在說(shuō)明書(shū)中并且構(gòu)成說(shuō)明書(shū)的一部分的附圖與說(shuō)明書(shū)一起示出了本發(fā)明的示例性實(shí)施例、特征和方面,并且用于解釋本發(fā)明的原理。
[0021]圖1a示出根據(jù)本發(fā)明實(shí)施例一的CC-NUMA系統(tǒng)啟動(dòng)的方法的流程圖;
[0022]圖1b示出根據(jù)本發(fā)明實(shí)施例一的CC-NUMA系統(tǒng)的架構(gòu)示意圖;
[0023]圖2a示出根據(jù)本發(fā)明實(shí)施例二的CC-NUMA系統(tǒng)啟動(dòng)的方法的流程圖;
[0024]圖2b示出根據(jù)本發(fā)明實(shí)施例二的CC-NUMA系統(tǒng)啟動(dòng)的方法的流程圖;
[0025]圖2c示出根據(jù)本發(fā)明實(shí)施例二的CC-NUMA系統(tǒng)啟動(dòng)的方法的流程圖;
[0026]圖2d示出根據(jù)本發(fā)明實(shí)施例二的CC-NUMA系統(tǒng)啟動(dòng)的方法的流程圖;
[0027]圖3示出根據(jù)本發(fā)明實(shí)施例三的CC-NUMA系統(tǒng)的結(jié)構(gòu)框圖;
[0028]圖4示出根據(jù)本發(fā)明實(shí)施例四的CC-NUMA系統(tǒng)的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0029]以下將參考附圖詳細(xì)說(shuō)明本發(fā)明的各種示例性實(shí)施例、特征和方面。附圖中相同的附圖標(biāo)記表示功能相同或相似的元件。盡管在附圖中示出了實(shí)施例的各種方面,但是除非特別指出,不必按比例繪制附圖。
[0030]在這里專(zhuān)用的詞“示例性”意為“用作例子、實(shí)施例或說(shuō)明性”。這里作為“示例性”所說(shuō)明的任何實(shí)施例不必解釋為優(yōu)于或好于其它實(shí)施例。
[0031]另外,為了更好的說(shuō)明本發(fā)明,在下文的【具體實(shí)施方式】中給出了眾多的具體細(xì)節(jié)。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,沒(méi)有這些具體細(xì)節(jié),本發(fā)明同樣可以實(shí)施。在另外一些實(shí)例中,對(duì)于大家熟知的方法、手段、元件和電路未作詳細(xì)描述,以便于凸顯本發(fā)明的主旨。
[0032]現(xiàn)有CC-NUMA系統(tǒng)啟動(dòng)的方法,CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間和CC-NUMA系統(tǒng)的節(jié)點(diǎn)數(shù)量成線(xiàn)性關(guān)系,隨著節(jié)點(diǎn)數(shù)量和外圍設(shè)備數(shù)量的增加,CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間增加。并且,若某一個(gè)外圍設(shè)備或某一個(gè)節(jié)點(diǎn)出現(xiàn)故障導(dǎo)致初始化程序可能無(wú)法繼續(xù)運(yùn)行,整個(gè)CC-NUMA系統(tǒng)無(wú)法正常啟動(dòng)。也就是說(shuō),CC-NUMA系統(tǒng)的健壯性不強(qiáng)。
[0033]本申請(qǐng)實(shí)施例可以縮短CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間,同時(shí),某個(gè)外圍設(shè)備或某個(gè)節(jié)點(diǎn)在初始化過(guò)程中出現(xiàn)問(wèn)題不會(huì)影響其他節(jié)點(diǎn)的初始化,可以保障系統(tǒng)的可用性,提高系統(tǒng)的健壯性。
[0034]實(shí)施例1[0035]圖1a示出根據(jù)本發(fā)明實(shí)施例一的CC-NUMA系統(tǒng)啟動(dòng)的方法的流程圖。如圖1a所示,該CC-NUMA系統(tǒng)包括多個(gè)節(jié)點(diǎn),所述節(jié)點(diǎn)包括主節(jié)點(diǎn)和至少一個(gè)從節(jié)點(diǎn),每一個(gè)節(jié)點(diǎn)可以由內(nèi)存、處理器以及外圍設(shè)備組成,例如可以是計(jì)算機(jī)、服務(wù)器、網(wǎng)絡(luò)設(shè)備等。該方法主要包括:
[0036]步驟S110、所述主節(jié)點(diǎn)向所述從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并且初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備。這里的資源是用于外圍設(shè)備的啟動(dòng),例如內(nèi)存、CPU資源、I/O資源、總線(xiàn)帶寬中的一個(gè)或多個(gè)。
[0037]具體地,在CC-NUMA系統(tǒng)啟動(dòng)的過(guò)程中,基本輸入輸出系統(tǒng)(Basic Input/OutputSyStem,B10S)可以初始化每個(gè)節(jié)點(diǎn)的內(nèi)存和每個(gè)節(jié)點(diǎn)所有可用的外圍設(shè)備,為該內(nèi)存和外圍設(shè)備配置各種功能參數(shù)和性能參數(shù),BIOS可以根據(jù)用戶(hù)的選擇,從用戶(hù)指定的外圍設(shè)備上引導(dǎo)啟動(dòng)交互式系統(tǒng),其中,交互式系統(tǒng)可以包括交互式界面(Boot shell)和操作系統(tǒng)(Operating System, OS)。圖1b示出根據(jù)本發(fā)明實(shí)施例一的CC-NUMA系統(tǒng)的架構(gòu)示意圖,如圖1b所示,該CC-NUMA系統(tǒng)可以包括:節(jié)點(diǎn)O?節(jié)點(diǎn)η這η+1個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)可以包括內(nèi)存、外圍設(shè)備和多個(gè)處理器,在CC-NUMA系統(tǒng)啟動(dòng)時(shí),節(jié)點(diǎn)O?節(jié)點(diǎn)η可以分別初始化自身的外圍設(shè)備。此外,在CC-NUMA系統(tǒng)啟動(dòng)過(guò)程中,可以從每個(gè)節(jié)點(diǎn)的處理器中選出一個(gè)啟動(dòng)處理器(Boot Strap Processor,BSP)作為主BSP作為執(zhí)行該節(jié)點(diǎn)初始化的處理器;從主BSP中選出一個(gè)系統(tǒng)啟動(dòng)處理器(System Boot Strap Processor, SBSP), SBSP所在的節(jié)點(diǎn)為CC-NUMA系統(tǒng)的主節(jié)點(diǎn),其他節(jié)點(diǎn)為CC-NUMA系統(tǒng)的從節(jié)點(diǎn)。
[0038]在CC-NUMA系統(tǒng)啟動(dòng)過(guò)程中,每個(gè)節(jié)點(diǎn)開(kāi)始初始化自身的外圍設(shè)備之前,主節(jié)點(diǎn)可以先向各個(gè)從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并且初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備。
[0039]步驟S130、各個(gè)所述從節(jié)點(diǎn)在接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,分別初始化自身的外圍設(shè)備,分別為自身的外圍設(shè)備分配資源,分別確定自身的可啟動(dòng)外圍設(shè)備。
[0040]具體地,在CC-NUMA系統(tǒng)啟動(dòng)的過(guò)程中,各個(gè)從節(jié)點(diǎn)在接收到主節(jié)點(diǎn)的啟動(dòng)命令之后可以分別初始化自身的外圍設(shè)備。舉例而言,參見(jiàn)圖lb,若節(jié)點(diǎn)O為主節(jié)點(diǎn)、節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)節(jié)點(diǎn)為從節(jié)點(diǎn),則主節(jié)點(diǎn)O可以向節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)從節(jié)點(diǎn)可以接收主節(jié)點(diǎn)O發(fā)送的啟動(dòng)命令,并且可以分別初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備。
[0041]步驟S150、各個(gè)所述從節(jié)點(diǎn)分別收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn)。
[0042]具體地,各個(gè)從節(jié)點(diǎn)可以收集自身的可啟動(dòng)外圍設(shè)備的配置信息,該配置信息可以包括系統(tǒng)管理基本輸入輸出系統(tǒng)(System Management Basic Input/Output System,SMB10S)信息和高級(jí)配置與電源接口(Advanced Configuration and Power ManagementInterface,ACPI)信息。其中,SMBIOS信息可以包括各個(gè)從節(jié)點(diǎn)的可用外圍設(shè)備的BIOS軟件版本、廠(chǎng)商信息等,ACPI信息可以包括描述系統(tǒng)不同信息的表(Differentiated SystemDescription Table, DSDT)、系統(tǒng)服務(wù)描述符表(英文:System Services DescriptorTable,縮寫(xiě):SSDT)等。舉例而言,參見(jiàn)圖lb,若節(jié)點(diǎn)O為主節(jié)點(diǎn)、節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)節(jié)點(diǎn)為從節(jié)點(diǎn),則節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)從節(jié)點(diǎn)可以分別收集每個(gè)從節(jié)點(diǎn)自身的可啟動(dòng)外圍設(shè)備的SMBIOS信息和ACPI信息,并且節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)從節(jié)點(diǎn)可以將收集到的SMBIOS信息和ACPI信息發(fā)送至主節(jié)點(diǎn)O。
[0043]步驟S170、所述主節(jié)點(diǎn)將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng)。
[0044]具體地,主節(jié)點(diǎn)與從節(jié)點(diǎn)一樣,也可以收集自身的可啟動(dòng)外圍設(shè)備的配置信息,同時(shí),主節(jié)點(diǎn)還可以接收各個(gè)從節(jié)點(diǎn)發(fā)送的各個(gè)從節(jié)點(diǎn)收集的配置信息。其中,上述配置信息中可以包括用于啟動(dòng)交互式系統(tǒng)的硬件參數(shù)等配置信息,主節(jié)點(diǎn)可以將上述配置信息一起上報(bào)至交互式系統(tǒng)以完成啟動(dòng)。舉例而言,參見(jiàn)圖lb,若節(jié)點(diǎn)O為主節(jié)點(diǎn)、節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)節(jié)點(diǎn)為從節(jié)點(diǎn),則主節(jié)點(diǎn)O也可以收集自身的可啟動(dòng)外圍設(shè)備的SMBIOS信息和ACPI信息,并且接收節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)從節(jié)點(diǎn)收集到的SMBIOS信息和ACPI信息。主節(jié)點(diǎn)O可以將節(jié)點(diǎn)O?節(jié)點(diǎn)η這η+1個(gè)節(jié)點(diǎn)的SMBIOS信息和ACPI信息一起上報(bào)至交互式系統(tǒng),以使得交互式系統(tǒng)可以讀取其中的配置信息并完成啟動(dòng)。
[0045]本實(shí)施例的CC-NUMA系統(tǒng)啟動(dòng)的方法,主節(jié)點(diǎn)向從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并執(zhí)行自身的外圍設(shè)備的初始化過(guò)程,從節(jié)點(diǎn)根據(jù)接收到的主節(jié)點(diǎn)的啟動(dòng)命令,分別執(zhí)行自身的外圍設(shè)備的初始化過(guò)程,可以縮短CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間。同時(shí),某個(gè)外圍設(shè)備或某個(gè)節(jié)點(diǎn)在初始化過(guò)程中出現(xiàn)問(wèn)題不會(huì)影響其他節(jié)點(diǎn)的初始化,可以保障系統(tǒng)的可用性,提高系統(tǒng)的健壯性。
[0046]實(shí)施例2
[0047]圖2a、圖2b、圖2c和圖2d示出根據(jù)本發(fā)明實(shí)施例二的CC-NUMA系統(tǒng)啟動(dòng)的方法的流程圖。
[0048]如圖2a所示,與圖1a所示的CC-NUMA系統(tǒng)啟動(dòng)方法的主要區(qū)別在于,各個(gè)節(jié)點(diǎn)為自身的外圍設(shè)備分配資源可以包括:
[0049]步驟S200、每個(gè)所述節(jié)點(diǎn)分別確定自身的外圍設(shè)備需要的資源;
[0050]步驟S210、每個(gè)節(jié)點(diǎn)從自身的資源池中,取出外圍設(shè)備需要的資源,分配給所述外圍設(shè)備,所述資源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMIO資源。
[0051]具體地,為了初始化節(jié)點(diǎn)的外圍設(shè)備例如PCI/PCIE設(shè)備,需要為節(jié)點(diǎn)的外圍設(shè)備分配資源,該資源可以包括輸入輸出(Input/Output, 10)資源和存儲(chǔ)地址指定輸入輸出(Memory Mapped Input/Output, MMIO)資源。
[0052]在CC-NUMA系統(tǒng)中,主節(jié)點(diǎn)可以預(yù)先收集CC-NUMA系統(tǒng)中各個(gè)節(jié)點(diǎn)的資源例如IO資源和MMIO資源,并將這些資源重新分配給各個(gè)節(jié)點(diǎn),形成各個(gè)節(jié)點(diǎn)的資源池。在各個(gè)節(jié)點(diǎn)為自身的外圍設(shè)備分配資源的過(guò)程中,各個(gè)節(jié)點(diǎn)可以從各個(gè)點(diǎn)節(jié)的資源池中取出自身的外圍設(shè)備需要的資源類(lèi)型和資源大小的資源分配給自身的外圍設(shè)備。舉例而言,參見(jiàn)圖lb,若節(jié)點(diǎn)O為主節(jié)點(diǎn)、節(jié)點(diǎn)I?節(jié)點(diǎn)η這η個(gè)節(jié)點(diǎn)為從節(jié)點(diǎn),則主節(jié)點(diǎn)O可以預(yù)先收集η+1個(gè)節(jié)點(diǎn)的IO資源和麗IO資源,并重新將這些IO資源和麗IO資源分配給η+1個(gè)節(jié)點(diǎn),形成每個(gè)節(jié)點(diǎn)的資源池。在η+1個(gè)節(jié)點(diǎn)為自身的外圍設(shè)備分配資源時(shí),這η+1個(gè)節(jié)點(diǎn)可以直接在自身的資源池中取出自身的外圍設(shè)備需要的資源類(lèi)型和資源大小的資源。
[0053]參見(jiàn)圖2d,確定自身的可啟動(dòng)外圍設(shè)備可以包括:
[0054]步驟S220、每個(gè)所述節(jié)點(diǎn)將存在綁定驅(qū)動(dòng)的外圍設(shè)備確定為自身的可啟動(dòng)外圍設(shè)備。
[0055]具體地,在CC-NUMA系統(tǒng)中,使用某外圍設(shè)備之前,需要安裝該外圍設(shè)備的驅(qū)動(dòng)程序,并將該驅(qū)動(dòng)程序與該外圍設(shè)備進(jìn)行綁定,在綁定過(guò)程中,可以確定出各個(gè)節(jié)點(diǎn)中可啟動(dòng)(或可用)的外圍設(shè)備。舉例而言,參見(jiàn)圖lb,假設(shè)節(jié)點(diǎn)2中的外圍設(shè)備例如聲卡在綁定的過(guò)程中未找到相應(yīng)的驅(qū)動(dòng)程序或者綁定過(guò)程中出現(xiàn)錯(cuò)誤不能完成綁定,那么節(jié)點(diǎn)2中的該聲卡就是節(jié)點(diǎn)2的外圍設(shè)備中不可啟動(dòng)的外圍設(shè)備。
[0056]進(jìn)一步地,參見(jiàn)圖2b和圖2d,步驟S150具體可以包括:
[0057]步驟S230、各個(gè)所述從節(jié)點(diǎn)的主啟動(dòng)處理器BSP分別收集所述主BSP所在從節(jié)點(diǎn)自身的系統(tǒng)管理基本輸入輸出系統(tǒng)SMBIOS信息和高級(jí)配置與電源接口 ACPI信息;
[0058]步驟S240、各個(gè)所述從節(jié)點(diǎn)的主BSP分別將收集的所述SMBIOS信息和所述ACPI信息發(fā)送至所述主節(jié)點(diǎn)。
[0059]具體地,CC-NUAM系統(tǒng)的每個(gè)節(jié)點(diǎn)具有多個(gè)處理器,可以從每個(gè)節(jié)點(diǎn)的多個(gè)處理器中選出一個(gè)主啟動(dòng)處理器BSP作為執(zhí)行該節(jié)點(diǎn)初始化的處理器,還可以從主BSP中選出一個(gè)系統(tǒng)啟動(dòng)處理器SBSP,該SBSP所在的節(jié)點(diǎn)為主節(jié)點(diǎn),SBSP作為執(zhí)行該主節(jié)點(diǎn)初始化的處理器。在CC-NUAM系統(tǒng)啟動(dòng)過(guò)程中,為了引導(dǎo)啟動(dòng)交互式系統(tǒng),需要明確交互式系統(tǒng)的配置信息。各個(gè)從節(jié)點(diǎn)的主BSP可以收集主BSP所在從節(jié)點(diǎn)的SMBIOS信息和ACPI信息,并將該收集的SMBIOS信息和ACPI信息上報(bào)給主節(jié)點(diǎn),該收集的SMBIOS信息和ACPI信息可以用于后續(xù)啟動(dòng)交互式系統(tǒng)。具體不例可以參見(jiàn)實(shí)施例一中CC-NUAM系統(tǒng)啟動(dòng)的方法的相關(guān)描述。
[0060]進(jìn)一步地,參見(jiàn)圖2c和圖2d,步驟S170具體可以包括:
[0061]步驟S250、所述主節(jié)點(diǎn)的系統(tǒng)啟動(dòng)處理器SBSP收集所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息;
[0062]步驟S260、所述SBSP從所述從節(jié)點(diǎn)的主BSP接收各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息;
[0063]步驟S270、所述SBSP將所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息和各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息,匯總生成SMBIOS表和ACPI表;
[0064]具體地,在各個(gè)從節(jié)點(diǎn)收集自身的可啟動(dòng)外圍設(shè)備的SMBIOS信息和ACPI信息的同時(shí),主節(jié)點(diǎn)的SBSP同樣可以收集自身的可啟動(dòng)外圍設(shè)備的SMBIOS信息和ACPI信息。此夕卜,主節(jié)點(diǎn)可以接收各個(gè)從節(jié)點(diǎn)發(fā)送的SMBIOS信息和ACPI信息,并將主節(jié)點(diǎn)自身的可啟動(dòng)外圍設(shè)備的SMBIOS信息和ACPI信息和接收到的各個(gè)從節(jié)點(diǎn)發(fā)送的SMBIOS信息和ACPI信息進(jìn)行匯總,生成SMBIOS表和ACPI表,以用于后續(xù)交互式系統(tǒng)的啟動(dòng)。舉例而言,參見(jiàn)圖1b和實(shí)施例一中的CC-NUMA系統(tǒng)啟動(dòng)的方法的相關(guān)描述,在主節(jié)點(diǎn)O收集到節(jié)點(diǎn)O?節(jié)點(diǎn)η這η+1個(gè)節(jié)點(diǎn)的SMBIOS信息和ACPI信息之后,主節(jié)點(diǎn)O可以對(duì)這些信息進(jìn)行匯總,并生成SMBIOS表和ACPI表。
[0065]步驟S280、所述SBSP將所述SMBIOS表和ACPI表上報(bào)給所述交互式系統(tǒng),所述交互式系統(tǒng)采用主程序設(shè)計(jì)接口規(guī)范協(xié)議從所述SMBIOS表和ACPI表讀取配置信息,完成所述交互式系統(tǒng)和各個(gè)所述節(jié)點(diǎn)設(shè)備的可啟動(dòng)外圍設(shè)備的啟動(dòng),所述交互式系統(tǒng)包括交互式界面或操作系統(tǒng)。
[0066]具體地,主節(jié)點(diǎn)生成SMBIOS表和ACPI表之后,主節(jié)點(diǎn)的SBSP可以將SMBIOS表和ACPI表上報(bào)給交互式系統(tǒng),交互式系統(tǒng)可以采用主程序設(shè)計(jì)接口(Host ProgrammingInterface,HPI)規(guī)范協(xié)議從SMBIOS表和ACPI表讀取交互式系統(tǒng)啟動(dòng)需要的配置信息,其中配置信息中可以包括CC-NUMA系統(tǒng)的硬件參數(shù)等信息,根據(jù)該配置信息交互式系統(tǒng)可以完成啟動(dòng)。
[0067]本實(shí)施例的CC-NUMA系統(tǒng)啟動(dòng)的方法,主節(jié)點(diǎn)向從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并執(zhí)行自身的外圍設(shè)備的初始化過(guò)程,從節(jié)點(diǎn)根據(jù)接收到的主節(jié)點(diǎn)的啟動(dòng)命令,分別執(zhí)行自身的外圍設(shè)備的初始化過(guò)程,可以縮短CC-NUMA系統(tǒng)的啟動(dòng)時(shí)間。同時(shí),某個(gè)外圍設(shè)備或某個(gè)節(jié)點(diǎn)在初始化過(guò)程中出現(xiàn)問(wèn)題不會(huì)影響其他節(jié)點(diǎn)的初始化,可以保障系統(tǒng)的可用性,提高系統(tǒng)的健壯性。此外,由于各個(gè)節(jié)點(diǎn)可以根據(jù)主節(jié)點(diǎn)預(yù)先分配的資源池為各個(gè)節(jié)點(diǎn)的外圍設(shè)備分配資源,可以進(jìn)一步地縮短CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間。
[0068]實(shí)施例3
[0069]圖3示出根據(jù)本發(fā)明實(shí)施例三的CC-NUMA系統(tǒng)的結(jié)構(gòu)框圖。如圖3所示,該CC-NUMA系統(tǒng)300可以包括主節(jié)點(diǎn)320和至少一個(gè)從節(jié)點(diǎn)340。
[0070]進(jìn)一步地,主節(jié)點(diǎn)320可以用于:向所述從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并且初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備;將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng);
[0071]從節(jié)點(diǎn)340可以用于:在接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備;收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn)。
[0072]本發(fā)明實(shí)施例中的CC-NUMA系統(tǒng)可以采用上述實(shí)施例中的CC-NUMA系統(tǒng)啟動(dòng)的方法進(jìn)行啟動(dòng)。具體地,在CC-NUMA系統(tǒng)300啟動(dòng)時(shí),主節(jié)點(diǎn)320和至少一個(gè)從節(jié)點(diǎn)340的所有可用的外圍設(shè)備例如通過(guò)PCI總線(xiàn)和處理器相連的PCI/PCIE設(shè)備可以進(jìn)行初始化。具體示例可以參見(jiàn)實(shí)施例一中的CC-NUMA系統(tǒng)啟動(dòng)的方法的相關(guān)描述。
[0073]在一種可能的實(shí)現(xiàn)方式中,從節(jié)點(diǎn)340可以包括:第一接收模塊3401,用于從所述主節(jié)點(diǎn)接收所述啟動(dòng)命令。
[0074]具體地,在CC-NUMA系統(tǒng)300啟動(dòng)的過(guò)程中,從節(jié)點(diǎn)340并不可以直接開(kāi)始執(zhí)行自身的外圍設(shè)備的初始化,而是在初始化自身的外圍設(shè)備之前,需要先通過(guò)第一接收模塊3401接收主節(jié)點(diǎn)320發(fā)送的啟動(dòng)命令。
[0075]主啟動(dòng)處理器3402,用于在所述第一接收模塊接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,初始化所述從節(jié)點(diǎn)的外圍設(shè)備;確定所述從節(jié)點(diǎn)的外圍設(shè)備需要的資源;從所述從節(jié)點(diǎn)的資源池中,取出所述從節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述從節(jié)點(diǎn)的外圍設(shè)備,所述資源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMIO資源;確定所述從節(jié)點(diǎn)的可啟動(dòng)外圍設(shè)備。
[0076]具體地,在從節(jié)點(diǎn)340的第一接收模塊3401接收到主節(jié)點(diǎn)320的啟動(dòng)命令之后,從節(jié)點(diǎn)340的主啟動(dòng)處理器3402可以開(kāi)始初始化從節(jié)點(diǎn)340的外圍設(shè)備,確定該外圍設(shè)備需要的資源,在從節(jié)點(diǎn)340的資源池中,取出從節(jié)點(diǎn)340的外圍設(shè)備需要的資源,分配給從節(jié)點(diǎn)340的外圍設(shè)備。其中,在CC-NUMA系統(tǒng)300中,主節(jié)點(diǎn)320可以預(yù)先收集CC-NUMA系統(tǒng)300中各個(gè)節(jié)點(diǎn)的資源例如IO資源和MMIO資源,并將這些資源重新分配給各個(gè)節(jié)點(diǎn),形成各個(gè)節(jié)點(diǎn)的資源池。在各個(gè)節(jié)點(diǎn)為自身的外圍設(shè)備分配資源的過(guò)程中,各個(gè)節(jié)點(diǎn)可以從各個(gè)點(diǎn)節(jié)的資源池中取出自身的外圍設(shè)備需要的資源類(lèi)型和資源大小的資源分配給自身的外圍設(shè)備,所述資源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMIO資源。此外,在CC-NUMA系統(tǒng)300中,使用某外圍設(shè)備之前,需要安裝該外圍設(shè)備的驅(qū)動(dòng)程序,并將該驅(qū)動(dòng)程序與該外圍設(shè)備進(jìn)行綁定,在綁定過(guò)程中,可以確定出各個(gè)節(jié)點(diǎn)中可啟動(dòng)(或可用)的外圍設(shè)備。
[0077]進(jìn)一步地,主啟動(dòng)處理器3402還可以用于:收集所述從節(jié)點(diǎn)的系統(tǒng)管理基本輸入輸出系統(tǒng)SMBIOS信息和高級(jí)配置與電源接口 ACPI信息;將收集的所述SMBIOS信息和ACPI信息發(fā)送至所述主節(jié)點(diǎn)。
[0078]具體地,在CC-NUAM系統(tǒng)300中,為了引導(dǎo)啟動(dòng)交互式系統(tǒng),需要明確交互式系統(tǒng)的配置信息。各個(gè)從節(jié)點(diǎn)的主BSP3402可以收集主BSP3402所在從節(jié)點(diǎn)340的SMBIOS信息和ACPI信息,并將該收集的SMBIOS信息和ACPI信息上報(bào)給主節(jié)點(diǎn)320,該收集的SMBIOS信息和ACPI信息可以用于后續(xù)啟動(dòng)交互式系統(tǒng)。
[0079]在一種可能的實(shí)現(xiàn)方式中,主節(jié)點(diǎn)320可以包括:發(fā)送模塊3201,用于向所述從節(jié)點(diǎn)發(fā)送所述啟動(dòng)命令。
[0080]具體地,在CC-NUAM系統(tǒng)300啟動(dòng)的過(guò)程中,主節(jié)點(diǎn)320的發(fā)送模塊3201可以向各個(gè)從節(jié)點(diǎn)340發(fā)送啟動(dòng)命令,該啟動(dòng)命令用于指示各個(gè)從節(jié)點(diǎn)340可以分別執(zhí)行自身的外圍設(shè)備的初始化。
[0081]系統(tǒng)啟動(dòng)處理器3202,用于初始化所述主節(jié)點(diǎn)的外圍設(shè)備;確定所述主節(jié)點(diǎn)的外圍設(shè)備需要的資源;從所述主節(jié)點(diǎn)的資源池中,取出所述主節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述主節(jié)點(diǎn)的外圍設(shè)備,所述資源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMIO資源;確定所述主節(jié)點(diǎn)的可啟動(dòng)外圍設(shè)備。
[0082]具體地,主節(jié)點(diǎn)320在初始化自身的外圍設(shè)備的過(guò)程中,系統(tǒng)啟動(dòng)處理器3201執(zhí)行的具體步驟與從節(jié)點(diǎn)340在初始化自身的外圍設(shè)備的過(guò)程中主BSP3402執(zhí)行的具體步驟大致相同,可以參見(jiàn)上述相關(guān)描述。
[0083]第二接收模塊3203,用于從所述從節(jié)點(diǎn)接收各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息。
[0084]進(jìn)一步地,系統(tǒng)啟動(dòng)處理器3202還可以用于:收集所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息;將所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息和所述第二接收模塊接收到的各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息,匯總生成SMBIOS表和ACPI表;將所述SMBIOS表和ACPI表上報(bào)給所述交互式系統(tǒng),所述交互式系統(tǒng)采用主程序設(shè)計(jì)接口規(guī)范協(xié)議從所述SMBIOS表和ACPI表讀取配置信息,完成所述交互式系統(tǒng)和各個(gè)所述節(jié)點(diǎn)設(shè)備的可啟動(dòng)外圍設(shè)備的啟動(dòng),所述交互式系統(tǒng)包括交互式界面或操作系統(tǒng)。
[0085]具體地,在各個(gè)從節(jié)點(diǎn)340的主BSP3402收集自身的可啟動(dòng)外圍設(shè)備的SMBIOS信息和ACPI信息的同時(shí),主節(jié)點(diǎn)320的SBSP3202同樣可以收集自身的可啟動(dòng)外圍設(shè)備的SMBIOS信息和ACPI信息。此外,主節(jié)點(diǎn)320的SBSP3202可以接收各個(gè)從節(jié)點(diǎn)340的主BSP3402發(fā)送的SMBIOS信息和ACPI信息,并將主節(jié)點(diǎn)320自身的可啟動(dòng)外圍設(shè)備的SMBIOS信息和ACPI信息和接收到的各個(gè)從節(jié)點(diǎn)340發(fā)送的SMBIOS信息和ACPI信息進(jìn)行匯總,生成SMBIOS表和ACPI表。主節(jié)點(diǎn)320的SBSP3202生成SMBIOS表和ACPI表之后,主節(jié)點(diǎn)320的SBSP3202可以將SMBIOS表和ACPI表上報(bào)給交互式系統(tǒng),交互式系統(tǒng)可以采用主程序設(shè)計(jì)接口(英文:Host Programming Interface,縮寫(xiě):HPI)規(guī)范協(xié)議從SMBIOS表和ACPI表讀取交互式系統(tǒng)啟動(dòng)需要的配置信息,根據(jù)該配置信息交互式系統(tǒng)可以完成啟動(dòng)。[0086]本實(shí)施例的CC-NUMA系統(tǒng),主節(jié)點(diǎn)的發(fā)送模塊向從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并執(zhí)行自身的外圍設(shè)備的初始化過(guò)程,從節(jié)點(diǎn)的主啟動(dòng)處理器根據(jù)接收到的主節(jié)點(diǎn)的啟動(dòng)命令,執(zhí)行自身的外圍設(shè)備的初始化過(guò)程,可以縮短CC-NUMA系統(tǒng)的啟動(dòng)時(shí)間。同時(shí),某個(gè)外圍設(shè)備或某個(gè)節(jié)點(diǎn)在初始化過(guò)程中出現(xiàn)問(wèn)題不會(huì)影響其他節(jié)點(diǎn)的初始化,可以保障系統(tǒng)的可用性,提高系統(tǒng)的健壯性。此外,由于各個(gè)節(jié)點(diǎn)可以根據(jù)主節(jié)點(diǎn)預(yù)先分配的資源池為各個(gè)節(jié)點(diǎn)的外圍設(shè)備分配資源,可以進(jìn)一步地縮短CC-NUMA系統(tǒng)啟動(dòng)的時(shí)間。
[0087]實(shí)施例4
[0088]圖4示出根據(jù)本發(fā)明實(shí)施例四的一種CC-NUMA系統(tǒng)的結(jié)構(gòu)框圖。所述CC-NUMA系統(tǒng)400可以是具備計(jì)算能力的主機(jī)服務(wù)器、個(gè)人計(jì)算機(jī)PC、或者可攜帶的便攜式計(jì)算機(jī)或終端等。本發(fā)明具體實(shí)施例并不對(duì)計(jì)算節(jié)點(diǎn)的具體實(shí)現(xiàn)做限定。
[0089]所述CC-NUMA 系統(tǒng) 400 包括處理器(processor) 410、通信接口(CommunicationsInterface) 420、存儲(chǔ)器(memory array) 430 和總線(xiàn) 440。其中,處理器 410、通信接口 420、以及存儲(chǔ)器430通過(guò)總線(xiàn)440完成相互間的通信。
[0090]通信接口 420用于與網(wǎng)元通信,其中網(wǎng)元包括例如虛擬機(jī)管理中心、共享存儲(chǔ)等。
[0091]處理器410用于執(zhí)行程序。處理器410可能是一個(gè)中央處理器CPU,或者是專(zhuān)用集成電路ASIC (Application Specific Integrated Circuit),或者是被配置成實(shí)施本發(fā)明實(shí)施例的一個(gè)或多個(gè)集成電路。
[0092]存儲(chǔ)器430用于存放文件。存儲(chǔ)器430可能包含高速RAM存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器(non-volatile memory),例如至少一個(gè)磁盤(pán)存儲(chǔ)器。存儲(chǔ)器430也可以是存儲(chǔ)器陣列。存儲(chǔ)器430還可能被分塊,并且所述塊可按一定的規(guī)則組合成虛擬卷。
[0093]在一種可能的實(shí)施方式中,上述程序可為包括計(jì)算機(jī)操作指令的程序代碼。CC-NUMA系統(tǒng)400包括多個(gè)節(jié)點(diǎn),所述節(jié)點(diǎn)包括主節(jié)點(diǎn)和至少一個(gè)從節(jié)點(diǎn),該程序具體可用于:所述主節(jié)點(diǎn)向所述從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并且初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備;各個(gè)所述從節(jié)點(diǎn)在接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,分別初始化自身的外圍設(shè)備,分別為自身的外圍設(shè)備分配資源,分別確定自身的可啟動(dòng)外圍設(shè)備;各個(gè)所述從節(jié)點(diǎn)分別收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn);所述主節(jié)點(diǎn)將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng)。
[0094]在一種可能的實(shí)施方式中,所述為自身的外圍設(shè)備分配資源,包括:每個(gè)所述節(jié)點(diǎn)分別確定自身的外圍設(shè)備需要的資源;每個(gè)所述節(jié)點(diǎn)從所述節(jié)點(diǎn)的資源池中,取出所述節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述外圍設(shè)備,所述資源池包括輸入輸出10資源和存儲(chǔ)地址指定輸入輸出MMio資源。
[0095]在一種可能的實(shí)施方式中,所述確定自身的可啟動(dòng)外圍設(shè)備,包括:每個(gè)所述節(jié)點(diǎn)將存在綁定驅(qū)動(dòng)的外圍設(shè)備確定為自身的可啟動(dòng)外圍設(shè)備。
[0096]在一種可能的實(shí)施方式中,各個(gè)所述從節(jié)點(diǎn)分別收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn),包括:各個(gè)所述從節(jié)點(diǎn)的主啟動(dòng)處理器BSP分別收集所述主BSP所在從節(jié)點(diǎn)自身的系統(tǒng)管理基本輸入輸出系統(tǒng)SMBIOS信息和高級(jí)配置與電源接口 ACPI信息;各個(gè)所述從節(jié)點(diǎn)的主BSP分別將收集的所述SMBIOS信息和所述ACPI信息發(fā)送至所述主節(jié)點(diǎn)。[0097]在一種可能的實(shí)施方式中,所述主節(jié)點(diǎn)將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng),包括所述主節(jié)點(diǎn)的系統(tǒng)啟動(dòng)處理器SBSP收集所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息;所述SBSP從所述從節(jié)點(diǎn)的主BSP接收各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息;所述SBSP將所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息和各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息,匯總生成SMBIOS表和ACPI表;所述SBSP將所述SMBIOS表和ACPI表上報(bào)給所述交互式系統(tǒng),所述交互式系統(tǒng)采用主程序設(shè)計(jì)接口規(guī)范協(xié)議從所述SMBIOS表和ACPI表讀取配置信息,完成所述交互式系統(tǒng)和各個(gè)所述節(jié)點(diǎn)設(shè)備的可啟動(dòng)外圍設(shè)備的啟動(dòng),所述交互式系統(tǒng)包括交互式界面或操作系統(tǒng)。
[0098]本領(lǐng)域普通技術(shù)人員可以意識(shí)到,本文所描述的實(shí)施例中的各示例性單元及算法步驟,能夠以電子硬件、或者計(jì)算機(jī)軟件和電子硬件的結(jié)合來(lái)實(shí)現(xiàn)。這些功能究竟以硬件還是軟件形式來(lái)實(shí)現(xiàn),取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專(zhuān)業(yè)技術(shù)人員可以針對(duì)特定的應(yīng)用選擇不同的方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
[0099]如果以計(jì)算機(jī)軟件的形式來(lái)實(shí)現(xiàn)所述功能并作為獨(dú)立的產(chǎn)品銷(xiāo)售或使用時(shí),則在一定程度上可認(rèn)為本發(fā)明的技術(shù)方案的全部或部分(例如對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分)是以計(jì)算機(jī)軟件產(chǎn)品的形式體現(xiàn)的。該計(jì)算機(jī)軟件產(chǎn)品通常存儲(chǔ)在計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì)中,包括若干指令用以使得計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī)、服務(wù)器、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各實(shí)施例方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括U盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器(ROM, Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM, Random Access Memory)、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。
[0100]以上所述,僅為本發(fā)明的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
【權(quán)利要求】
1.一種高速緩存一致性非均勻存儲(chǔ)訪(fǎng)問(wèn)CC-NUMA系統(tǒng)啟動(dòng)的方法,CC-NUMA系統(tǒng)包括多個(gè)節(jié)點(diǎn),其特征在于,所述節(jié)點(diǎn)包括主節(jié)點(diǎn)和至少一個(gè)從節(jié)點(diǎn),該方法包括: 所述主節(jié)點(diǎn)向所述從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并且初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備; 各個(gè)所述從節(jié)點(diǎn)在接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,分別初始化自身的外圍設(shè)備,分別為自身的外圍設(shè)備分配資源,分別確定自身的可啟動(dòng)外圍設(shè)備; 各個(gè)所述從節(jié)點(diǎn)分別收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn); 所述主節(jié)點(diǎn)將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng)。
2.根據(jù)權(quán)利要求1所述的CC-NUMA系統(tǒng)啟動(dòng)的方法,其特征在于,所述為自身的外圍設(shè)備分配資源,包括: 每個(gè)所述節(jié)點(diǎn)分別確定自身的外圍設(shè)備需要的資源; 每個(gè)所述節(jié)點(diǎn)從所述節(jié)點(diǎn)的資源池中,取出所述節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述外圍設(shè)備,所述資源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMIO資源。
3.根據(jù)權(quán)利要求1或2所述的CC-NUMA系統(tǒng)啟動(dòng)的方法,其特征在于,所述確定自身的可啟動(dòng)外圍設(shè)備,包括: 每個(gè)所述節(jié)點(diǎn)將存在綁定 驅(qū)動(dòng)的外圍設(shè)備確定為自身的可啟動(dòng)外圍設(shè)備。
4.根據(jù)權(quán)利要求1-3中任一項(xiàng)所述的CC-NUMA系統(tǒng)啟動(dòng)的方法,其特征在于,各個(gè)所述從節(jié)點(diǎn)分別收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn),包括: 各個(gè)所述從節(jié)點(diǎn)的主啟動(dòng)處理器BSP分別收集所述主BSP所在從節(jié)點(diǎn)自身的系統(tǒng)管理基本輸入輸出系統(tǒng)SMBIOS信息和高級(jí)配置與電源接口 ACPI信息; 各個(gè)所述從節(jié)點(diǎn)的主BSP分別將收集的所述SMBIOS信息和所述ACPI信息發(fā)送至所述主節(jié)點(diǎn)。
5.根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的CC-NUMA系統(tǒng)啟動(dòng)的方法,其特征在于,所述主節(jié)點(diǎn)將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng),包括: 所述主節(jié)點(diǎn)的系統(tǒng)啟動(dòng)處理器SBSP收集所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息;所述SBSP從所述從節(jié)點(diǎn)的主BSP接收各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息;所述SBSP將所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息和各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息,匯總生成SMBIOS表和ACPI表; 所述SBSP將所述SMBIOS表和ACPI表上報(bào)給所述交互式系統(tǒng),所述交互式系統(tǒng)采用主程序設(shè)計(jì)接口規(guī)范協(xié)議從所述SMBIOS表和ACPI表讀取配置信息,完成所述交互式系統(tǒng)和各個(gè)所述節(jié)點(diǎn)設(shè)備的可啟動(dòng)外圍設(shè)備的啟動(dòng),所述交互式系統(tǒng)包括交互式界面或操作系統(tǒng)。
6.一種高速緩存一致性非均勻存儲(chǔ)訪(fǎng)問(wèn)CC-NUMA系統(tǒng),其特征在于,包括主節(jié)點(diǎn)和至少一個(gè)從節(jié)點(diǎn): 所述主節(jié)點(diǎn),用于向所述從節(jié)點(diǎn)發(fā)送啟動(dòng)命令,并且初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備;將自身的可啟動(dòng)外圍設(shè)備的配置信息和接收到的配置信息上報(bào)至交互式系統(tǒng)以完成啟動(dòng); 所述從節(jié)點(diǎn),用于在接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,初始化自身的外圍設(shè)備,為自身的外圍設(shè)備分配資源,確定自身的可啟動(dòng)外圍設(shè)備;收集自身的可啟動(dòng)外圍設(shè)備的配置信息,并將所述收集的配置信息發(fā)送至所述主節(jié)點(diǎn)。
7.根據(jù)權(quán)利要求6所述的CC-NUMA系統(tǒng),其特征在于,所述從節(jié)點(diǎn)包括: 第一接收模塊,用于從所述主節(jié)點(diǎn)接收所述啟動(dòng)命令; 主啟動(dòng)處理器,用于在所述第一接收模塊接收到所述主節(jié)點(diǎn)的啟動(dòng)命令的情況下,初始化所述從節(jié)點(diǎn)的外圍設(shè)備;確定所述從節(jié)點(diǎn)的外圍設(shè)備需要的資源;從所述從節(jié)點(diǎn)的資源池中,取出所述從節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述從節(jié)點(diǎn)的外圍設(shè)備,所述資源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMIO資源;確定所述從節(jié)點(diǎn)的可啟動(dòng)外圍設(shè)備。
8.根據(jù)權(quán)利要求7所述的CC-NUMA系統(tǒng),其特征在于,所述主啟動(dòng)處理器,還用于: 收集所述從節(jié)點(diǎn)的系統(tǒng)管理基本輸入輸出系統(tǒng)SMBIOS信息和高級(jí)配置與電源接口ACPI信息;將收集的所述SMBIOS信息和ACPI信息發(fā)送至所述主節(jié)點(diǎn)。
9.根據(jù)權(quán)利要求6所述的CC-NUMA系統(tǒng),其特征在于,所述主節(jié)點(diǎn)包括: 發(fā)送模塊,用于向所述從節(jié)點(diǎn)發(fā)送所述啟動(dòng)命令; 系統(tǒng)啟動(dòng)處理器,用于初始化所述主節(jié)點(diǎn)的外圍設(shè)備;確定所述主節(jié)點(diǎn)的外圍設(shè)備需要的資源;從所述主節(jié)點(diǎn)的資源池中,取出所述主節(jié)點(diǎn)的外圍設(shè)備需要的資源,分配給所述主節(jié)點(diǎn)的外圍設(shè)備,所述資.源池包括輸入輸出IO資源和存儲(chǔ)地址指定輸入輸出MMIO資源;確定所述主節(jié)點(diǎn)的可啟動(dòng)外圍設(shè)備。
10.根據(jù)權(quán)利要求9所述的CC-NUMA系統(tǒng),其特征在于,所述主節(jié)點(diǎn)還包括: 第二接收模塊,用于從所述從節(jié)點(diǎn)接收各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息; 所述系統(tǒng)啟動(dòng)處理器還用于:收集所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息;將所述主節(jié)點(diǎn)的SMBIOS信息和ACPI信息和所述第二接收模塊接收到的各個(gè)所述從節(jié)點(diǎn)的SMBIOS信息和ACPI信息,匯總生成SMBIOS表和ACPI表;將所述SMBIOS表和ACPI表上報(bào)給所述交互式系統(tǒng),所述交互式系統(tǒng)采用主程序設(shè)計(jì)接口規(guī)范協(xié)議從所述SMBIOS表和ACPI表讀取配置信息,完成所述交互式系統(tǒng)和各個(gè)所述節(jié)點(diǎn)設(shè)備的可啟動(dòng)外圍設(shè)備的啟動(dòng),所述交互式系統(tǒng)包括交互式界面或操作系統(tǒng)。
【文檔編號(hào)】G06F9/445GK103475494SQ201310416771
【公開(kāi)日】2013年12月25日 申請(qǐng)日期:2013年9月12日 優(yōu)先權(quán)日:2013年9月12日
【發(fā)明者】干耶卒, 歐陽(yáng)珍, 陳立鋼 申請(qǐng)人:華為技術(shù)有限公司