欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種解決外插卡內(nèi)存地址不夠分配的方法與流程

文檔序號:11286176閱讀:742來源:國知局

本發(fā)明涉及服務(wù)器、存儲類服務(wù)器測試技術(shù)領(lǐng)域,具體地說是一種解決外插卡內(nèi)存地址不夠分配的方法。



背景技術(shù):

隨著云時代的來臨,大數(shù)據(jù)(bigdata)也吸引了越來越多的關(guān)注.大數(shù)據(jù)(bigdata)通常用來形容一個公司創(chuàng)造的大量非結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù),這些數(shù)據(jù)在下載到關(guān)系型數(shù)據(jù)庫用于分析時會花費過多時間和金錢。大數(shù)據(jù)分析常和云計算聯(lián)系到一起,因為實時的大型數(shù)據(jù)集分析需要像mapreduce一樣的框架來向數(shù)十、數(shù)百或甚至數(shù)千的電腦分配工作。因此在此背景下,在特定的應(yīng)用場景下,傳統(tǒng)服務(wù)器很難滿足需求。就需要有幾十個甚至上百個外插卡的機器來實現(xiàn)功能。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的在于提供一種解決外插卡內(nèi)存地址不夠分配的方法,用于解決由于內(nèi)存地址分配不夠?qū)е碌南到y(tǒng)不能啟動宕機的問題。

本發(fā)明解決其技術(shù)問題所采取的技術(shù)方案是:一種解決外插卡內(nèi)存地址不夠分配的方法,其特征是,具體包括以下步驟:

1)、bios的自檢程序檢測到外插卡;

2)、pcie設(shè)備初始化,資源分配;

3)、bios檢測cpu的內(nèi)存尋址范圍,并判斷地址范圍是否夠用;

4)、如果夠用,則使用真實的地址為外插卡分配資源,啟動進入os;否,則執(zhí)行步驟5)操作;

5)、為外插卡分配虛擬的地址,啟動進入os。

進一步地,步驟3)中bios檢測cpu的內(nèi)存尋址范圍,并判斷地址范圍是否夠用的方法具體包括:

31)、bios讀取cpu內(nèi)部寄存器;

32)、得到cpu支持的地址線根數(shù)n,從而得到cpu自身支持的地址范圍0-2n

33)、bios檢測外插卡的地址空間,判斷其是否大于2n,如果是,則表示cpu地址范圍不夠用;否則,則表示cpu地址范圍夠用。

進一步地,步驟5)操作中為外插卡分配虛擬的地址的具體方法包括:

51)、bios修改pciresourcemem64base和pciresourcemem64base;

52)、bios修改fakemmiobase和fakemmiosize;

53)、把分配的虛擬地址加入mmio。

進一步地,步驟51)操作中修改pciresourcemem64base和pciresourcemem64base的具體方式為:

從cpu支持的最大地址范圍起建立虛擬地址,虛擬地址的長度為從cpu支持的最大地址范圍起的外插卡內(nèi)存地址的空間。

進一步地,步驟52)操作中bios修改fakemmiobase和fakemmiosize的具體方法為:

定義虛擬地址的base和長度與檢測到外插卡的起始地址和長度一致。

進一步地,步驟53)操作中把分配的虛擬地址加入mmio的方法具體包括:

把虛擬地址定義為mmio,加入內(nèi)存地址映射空間供bios使用。

本發(fā)明的有益效果是:

本發(fā)明修改底層代碼(bios)在為pcie外插卡分配內(nèi)存資源時分配虛擬地址(假地址),從而避免了由于內(nèi)存地址分配不夠?qū)е碌南到y(tǒng)不能啟動宕機的問題。突破了現(xiàn)有的內(nèi)存資源分配方式,通過使用該方法可以支持更多的外插卡,節(jié)省大量的硬件成本。通過分配虛擬內(nèi)存地址的方式實現(xiàn)支持更多的外設(shè)。

附圖說明

圖1為本發(fā)明的流程圖。

具體實施方式

為能清楚說明本方案的技術(shù)特點,下面通過具體實施方式,并結(jié)合其附圖,對本發(fā)明進行詳細闡述。下文的公開提供了許多不同的實施例或例子用來實現(xiàn)本發(fā)明的不同結(jié)構(gòu)。為了簡化本發(fā)明的公開,下文中對特定例子的部件和設(shè)置進行描述。此外,本發(fā)明可以在不同例子中重復(fù)參考數(shù)字和/或字母。這種重復(fù)是為了簡化和清楚的目的,其本身不指示所討論各種實施例和/或設(shè)置之間的關(guān)系。應(yīng)當(dāng)注意,在附圖中所圖示的部件不一定按比例繪制。本發(fā)明省略了對公知組件和處理技術(shù)及工藝的描述以避免不必要地限制本發(fā)明。

如圖1所示,一種解決外插卡內(nèi)存地址不夠分配的方法,具體包括以下步驟:

1)、bios的自檢程序檢測到外插卡;

2)、pcie設(shè)備初始化,資源分配;

3)、bios檢測cpu的內(nèi)存尋址范圍,并判斷地址范圍是否夠用;

4)、如果夠用,則使用真實的地址為外插卡分配資源,啟動進入os;否,則執(zhí)行步驟5)操作;

5)、為外插卡分配虛擬的地址,啟動進入os。

步驟3)中bios檢測cpu的內(nèi)存尋址范圍,并判斷地址范圍是否夠用的方法具體包括:

31)、bios讀取cpu內(nèi)部寄存器;

32)、得到cpu支持的地址線根數(shù)n,從而得到cpu自身支持的地址范圍0-2n;

33)、bios檢測外插卡的地址空間,判斷其是否大于2n,如果是,則表示cpu地址范圍不夠用;否則,則表示cpu地址范圍夠用。

步驟5)操作中為外插卡分配虛擬的地址的具體方法包括:

51)、bios修改pciresourcemem64base和pciresourcemem64base;

52)、bios修改fakemmiobase和fakemmiosize;

53)、把分配的虛擬地址加入mmio。

步驟51)操作中修改pciresourcemem64base和pciresourcemem64base的具體方式為:

從cpu支持的最大地址范圍起建立虛擬地址,虛擬地址的長度為從cpu支持的最大地址范圍起的外插卡內(nèi)存地址的空間。

步驟52)操作中bios修改fakemmiobase和fakemmiosize的具體方法為:

定義虛擬地址的base和長度與檢測到外插卡的起始地址和長度一致。

步驟53)操作中把分配的虛擬地址加入mmio的方法具體包括:

把虛擬地址定義為mmio,加入內(nèi)存地址映射空間供bios使用。

本實施例采用的cpu有36根地址線,其尋址范圍為64g;采用16張k40gpu外插卡,外插卡需要16x32gb=512gb內(nèi)存地址空間,因此明顯cpu的尋址范圍不夠用,因此提出了一種解決外插卡內(nèi)存地址不夠分配的方法。

1)、bios的自檢程序檢測到外插卡,外插卡的內(nèi)存地址空間為512g;

2)、pcie設(shè)備初始化,資源分配;

3)、bios檢測cpu的內(nèi)存尋址范圍為64g,判斷地址范圍不夠用;

4)、為外插卡分配虛擬的地址,啟動進入os。

5)、bios修改pciresourcemem64base和pciresourcemem64base,從64g起建立512g的虛擬空間;

6)、bios修改fakemmiobase和fakemmiosize,定義虛擬地址的base和長度與檢測到外插卡的起始地址和長度一致,為512g。

7)、把分配的虛擬地址定義為mmio,加入內(nèi)存地址映射空間供bios使用。

以上所述只是本發(fā)明的優(yōu)選實施方式,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也被視為本發(fā)明的保護范圍。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
张家界市| 安新县| 辛集市| 吴旗县| 临桂县| 大宁县| 聂拉木县| 三门县| 蓬安县| 林口县| 塔城市| 太康县| 五河县| 胶南市| 海安县| 涞水县| 梓潼县| 盘锦市| 宝兴县| 泰兴市| 金昌市| 兰州市| 集贤县| 平原县| 荥经县| 云林县| 鱼台县| 安图县| 永安市| 柳江县| 临洮县| 柯坪县| 洪洞县| 永吉县| 元阳县| 郯城县| 满城县| 涟水县| 汉中市| 平泉县| 洞口县|