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

Pci選項(xiàng)rom程序的駐留和調(diào)用方法

文檔序號(hào):6559491閱讀:576來(lái)源:國(guó)知局

專(zhuān)利名稱(chēng)::Pci選項(xiàng)rom程序的駐留和調(diào)用方法
技術(shù)領(lǐng)域
:本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,更具體地,涉及一種PCI選項(xiàng)ROM程序的駐留方法和調(diào)用方法。
背景技術(shù)
:許多計(jì)算機(jī)(如服務(wù)器)需要外插很多PCI卡,經(jīng)常由于內(nèi)存陰影(Shadow)空間(這里特指內(nèi)存0C000H-0D000H段)的不足導(dǎo)致許多外插卡的選項(xiàng)ROM(OptionROM)無(wú)法調(diào)用,使得這些外插卡無(wú)法使用。這是由于PC架構(gòu)本身的缺陷導(dǎo)致的。目前還沒(méi)有很有效的解決方案。在用戶(hù)端,用戶(hù)只能通過(guò)減少插卡的方式避免這個(gè)問(wèn)題;在BIOS設(shè)計(jì)方面,一般通過(guò)把內(nèi)存0E000H段的內(nèi)容搬到高端內(nèi)存,再騰出64K字節(jié)的空間來(lái)運(yùn)行更多的選項(xiàng)R0M。即便如此,陰影空間也仍然只有192K字節(jié);而且實(shí)驗(yàn)證明,該方法會(huì)帶來(lái)很多軟件的兼容問(wèn)題,甚至導(dǎo)致設(shè)備(如USB設(shè)備)工作的不正常。美國(guó)專(zhuān)利US6725178公開(kāi)了一種把BIOS選項(xiàng)ROM存放在磁盤(pán)的隱藏分區(qū)的方法。在BIOS開(kāi)機(jī)自檢測(cè)過(guò)程中,從隱藏分區(qū)中取得合適的BIOS選項(xiàng)ROM以初始化外圍設(shè)備。該方法只涉及到BIOS選項(xiàng)ROM(包含PCI選項(xiàng)ROM)程序的運(yùn)行前存儲(chǔ)問(wèn)題,仍然無(wú)法解決在運(yùn)行這些BIOS選項(xiàng)ROM的過(guò)程中,可能因?yàn)殛幱翱臻g不足而導(dǎo)致無(wú)法運(yùn)行的問(wèn)題。美國(guó)專(zhuān)利US6961791公開(kāi)了一種集中配置的方法。利用一個(gè)"基于ROM的設(shè)置程序"ROM-BaseSetupUtility(〃RBSU〃),在開(kāi)機(jī)過(guò)程中,可以根據(jù)用戶(hù)的輸入,對(duì)計(jì)算機(jī)進(jìn)行集中配置,可以決定哪些PCI選項(xiàng)ROM需要運(yùn)行,哪些不需要運(yùn)行。該方法雖然可以通過(guò)減少一些不需要的PCI選項(xiàng)ROM的運(yùn)行來(lái)節(jié)省部分陰影空間,用以運(yùn)行所需要的PCI選項(xiàng)ROM,但仍然無(wú)法從根本上解決這個(gè)問(wèn)題。
發(fā)明內(nèi)容本發(fā)明設(shè)計(jì)了有效運(yùn)行PCI選項(xiàng)ROM的技術(shù)方案。按照現(xiàn)有的PCI兼容選項(xiàng)ROM的運(yùn)行方式,運(yùn)行后的運(yùn)行時(shí)間(runtime)程序必須常駐在內(nèi)存的陰影空間里,以便設(shè)備驅(qū)動(dòng)程序或其他應(yīng)用程序使用,由此便引發(fā)了上面所描述的問(wèn)題。本發(fā)明設(shè)計(jì)了一種運(yùn)行PCI選項(xiàng)ROM的方法,目的在于徹底解決上述的問(wèn)題。在本發(fā)明中,(一)"駐留方法"在BIOS上電自檢過(guò)程(POST)中,BIOS每次在陰影空間中運(yùn)行完一個(gè)PCI選項(xiàng)ROM后,把該選項(xiàng)ROM的運(yùn)行時(shí)間程序從陰影空間移動(dòng)到其他的數(shù)據(jù)存儲(chǔ)區(qū)域(如高端內(nèi)存、硬盤(pán)等),并且記錄下運(yùn)行時(shí)間程序和相應(yīng)PCI設(shè)備的對(duì)應(yīng)表(如PCI設(shè)備ID唯一對(duì)應(yīng)于相應(yīng)運(yùn)行時(shí)間程序的存儲(chǔ)地址)。在所有的PCI選項(xiàng)ROM調(diào)用結(jié)束后,BIOS便在陰影空間中駐留一段"代理程序"。在本發(fā)明中,(二)"調(diào)用方法"在運(yùn)行時(shí)間階段,無(wú)論應(yīng)用程序或者設(shè)備驅(qū)動(dòng)程序需要訪問(wèn)選項(xiàng)ROM的運(yùn)行時(shí)間程序,首先都要訪問(wèn)常駐在陰影空間中的"代理程序","代理程序"根據(jù)上述的對(duì)應(yīng)表找到所需的運(yùn)行時(shí)間程序,并把運(yùn)行時(shí)間程序復(fù)制到1M以下的空間,以供訪問(wèn)。在本發(fā)明中,應(yīng)用程序或者設(shè)備驅(qū)動(dòng)程序訪問(wèn)PCI選項(xiàng)ROM運(yùn)行時(shí)間程序一般有兩種方式(一)如果通過(guò)中斷的方式訪問(wèn)PCI選項(xiàng)ROM的運(yùn)行時(shí)間程序,BIOS可以通過(guò)"掛鉤"(Hook)的方式,讓該中斷服務(wù)程序先運(yùn)行"代理服務(wù)",以便把相應(yīng)的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序復(fù)制到陰影空間中,然后再繼續(xù)運(yùn)行該中斷服務(wù)程序。(二)如果直接通過(guò)預(yù)先設(shè)置的入口地址訪問(wèn)PCI選項(xiàng)ROM運(yùn)行時(shí)間程序/數(shù)據(jù)。BIOS需要和設(shè)備驅(qū)動(dòng)程序預(yù)先溝通,B工OS把"代理程序"駐留在陰影空間中一個(gè)固定的位置上,設(shè)備驅(qū)動(dòng)程序在訪問(wèn)PCI選項(xiàng)ROM運(yùn)行時(shí)間程序/數(shù)據(jù)前,必須先到預(yù)先協(xié)定好的陰影空間的固定位置上運(yùn)行"代理程序","代理程序"把相應(yīng)的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序復(fù)制到陰影空間后把控制權(quán)交給應(yīng)用程序或者設(shè)備驅(qū)動(dòng)程序,應(yīng)用程序或者設(shè)備驅(qū)動(dòng)程序就可以繼續(xù)訪問(wèn)PCI選項(xiàng)ROM運(yùn)行時(shí)間程序/數(shù)據(jù)了。本發(fā)明所設(shè)計(jì)的有效運(yùn)行PCI選項(xiàng)ROM的技術(shù)方案可以在一臺(tái)計(jì)算機(jī)上支持足夠數(shù)量的PCI設(shè)備。為了實(shí)現(xiàn)上述目的,本發(fā)明提出了一種PCI選項(xiàng)ROM程序的駐留方法,包括在BIOS上電自檢過(guò)程中執(zhí)行以下步驟將整個(gè)PCI選項(xiàng)ROM程序復(fù)制到系統(tǒng)存儲(chǔ)器的陰影空間中并運(yùn)行;在運(yùn)行結(jié)束后,將選項(xiàng)ROM程序運(yùn)行后留下的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序移動(dòng)到系統(tǒng)存儲(chǔ)器的其他存儲(chǔ)區(qū)域;記錄PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的存儲(chǔ)地址與相應(yīng)設(shè)備之間的對(duì)應(yīng)關(guān)系;在陰影空間中駐留代理程序;以及將已記錄的對(duì)應(yīng)關(guān)系駐留在陰影空間中。為了實(shí)現(xiàn)上述目的,本發(fā)明提出了一種PCI選項(xiàng)ROM程序的調(diào)用方法,包括在運(yùn)行時(shí)間階段中執(zhí)行以下步驟應(yīng)用程序或設(shè)備驅(qū)動(dòng)程序把相應(yīng)的參數(shù)傳遞給代理程序,并運(yùn)行代理程序;代理程序根據(jù)輸入的參數(shù),通過(guò)PCI選項(xiàng)ROM運(yùn)行時(shí)間程序與設(shè)備之間的對(duì)應(yīng)關(guān)系,搜索出PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的存儲(chǔ)地址,并將PCI選項(xiàng)ROM運(yùn)行時(shí)間程序復(fù)制到系統(tǒng)存儲(chǔ)器的陰影空間中;代理程序在完成PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的復(fù)制后,將控制權(quán)交還應(yīng)用程序或設(shè)備驅(qū)動(dòng)程序;以及應(yīng)用程序或設(shè)備驅(qū)動(dòng)程序在取得控制權(quán)后,開(kāi)始調(diào)用相應(yīng)的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序,以完成相應(yīng)的功能。為了實(shí)現(xiàn)上述目的,本發(fā)明提出了一種PCI選項(xiàng)ROM程序的調(diào)用方法,包括在運(yùn)行時(shí)間階段中執(zhí)行以下步驟中斷服務(wù)程序運(yùn)行掛鉤在所述中斷服務(wù)程序的開(kāi)始的代理程序;所述代理程序?qū)⑾鄳?yīng)的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序復(fù)制到系統(tǒng)存儲(chǔ)器的陰影空間中;以及繼續(xù)運(yùn)行所述中斷服務(wù)程序。下面將參照附圖,對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)的描述,其中圖1是在BIOSPOST階段中運(yùn)行PCI兼容選項(xiàng)ROM的方法的流程圖。圖2是在運(yùn)行時(shí)間階段中,設(shè)備的驅(qū)動(dòng)程序或應(yīng)用程序調(diào)用選項(xiàng)ROM運(yùn)行時(shí)間程序的方法的流程圖。具體實(shí)施例方式下面結(jié)合本發(fā)明的具體實(shí)施方式。應(yīng)該指出,所描述的實(shí)施例僅是為了說(shuō)明的目的,而不是對(duì)本發(fā)明范圍的限制。所描述的各種數(shù)值并非用于限定本發(fā)明,這些數(shù)值可以根據(jù)本領(lǐng)域普通技術(shù)人員的需要進(jìn)行任何適當(dāng)?shù)男薷?。圖1是在BIOSPOST階段中運(yùn)行PCI兼容選項(xiàng)ROM的方法的流程圖。BIOS把整個(gè)PCI選項(xiàng)ROM程序復(fù)制到RAM(陰影空間)并運(yùn)行(SIO)。運(yùn)行結(jié)束后,BIOS把選項(xiàng)ROM運(yùn)行后留下的運(yùn)行時(shí)間程序移動(dòng)到其他存儲(chǔ)區(qū)域,如高端內(nèi)存、硬盤(pán)或其他可讀寫(xiě)的存儲(chǔ)介質(zhì)等(Sll)。BIOS記錄下運(yùn)行時(shí)間程序和相應(yīng)的設(shè)備之間的"對(duì)應(yīng)關(guān)系",用唯一標(biāo)識(shí)該設(shè)備的ID(如設(shè)備的"廠商ID+設(shè)備ID"組合或"總線號(hào)+設(shè)備號(hào)"組合)對(duì)應(yīng)于相應(yīng)運(yùn)行時(shí)間程序的存儲(chǔ)地址(S12)。表1為設(shè)備與相應(yīng)的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序存儲(chǔ)地址的"對(duì)應(yīng)表",假設(shè)設(shè)備ID選擇的是"廠商ID+設(shè)備ID"("VendorID+DeviceID")的組合,且PCI選項(xiàng)ROM運(yùn)行時(shí)間程序存儲(chǔ)在高端內(nèi)存區(qū)域,如起始地址為010000000H(256兆),則表1為如下形式<table>tableseeoriginaldocumentpage8</column></row><table>表lBIOS判斷是否還有其他的PCI選項(xiàng)ROM需要運(yùn)行,如果還有,則重復(fù)SIO、Sll、S12的步驟;如果沒(méi)有了,則繼續(xù)POST(S13)。BIOS在陰影空間中駐留"代理程序",并且修改所有訪問(wèn)PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的中斷服務(wù)程序,使得這些中斷服務(wù)程序先運(yùn)行"代理程序"后再繼續(xù)運(yùn)行原本的程序,即把"代理程序"掛鉤在中斷服務(wù)程序的開(kāi)始(S14)。BIOS在陰影空間中駐留上述的"對(duì)應(yīng)表"(表1),以便"代理程序"使用。"代理程序"可以根據(jù)該"對(duì)應(yīng)表"搜索到相應(yīng)的選項(xiàng)ROM運(yùn)行時(shí)間程序(S15)。圖2是在運(yùn)行時(shí)間階段中,設(shè)備的驅(qū)動(dòng)程序或應(yīng)用程序調(diào)用選項(xiàng)ROM運(yùn)行時(shí)間程序的方法的流程圖。應(yīng)用程序或設(shè)備驅(qū)動(dòng)程序(下面簡(jiǎn)稱(chēng)"程序")要調(diào)用選項(xiàng)ROM運(yùn)行時(shí)間程序,進(jìn)行調(diào)用前的準(zhǔn)備(S20)。程序把相應(yīng)的參數(shù)(設(shè)備ID或其他)傳遞給"代理程序",并首先運(yùn)行"代理程序"(S21)。"代理程序"根據(jù)程序的輸入?yún)?shù),通過(guò)選項(xiàng)ROM運(yùn)行時(shí)間程序與設(shè)備之間的"對(duì)應(yīng)表"搜索到所需要的運(yùn)行時(shí)間程序的存儲(chǔ)地址;并把運(yùn)行時(shí)間程序復(fù)制到陰影空間中(S22)。"代理程序"復(fù)制完程序所需的運(yùn)行時(shí)間程序到陰影空間后,把控制權(quán)交還給程序(S23)。程序取得控制權(quán)后,開(kāi)始調(diào)用相應(yīng)的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序,以完成相應(yīng)的功能(S24)。最后所應(yīng)說(shuō)明的是以上實(shí)施例僅僅用以說(shuō)明而非限制本發(fā)明的技術(shù)方案,盡管參照上述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解依然可以對(duì)本發(fā)明進(jìn)行修改或者等同替換,而不脫離本發(fā)明的精神和范圍的任何修改或局部替換,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。權(quán)利要求1.一種PCI選項(xiàng)ROM程序的駐留方法,包括在BIOS上電自檢過(guò)程中執(zhí)行以下步驟將整個(gè)PCI選項(xiàng)ROM程序復(fù)制到系統(tǒng)存儲(chǔ)器的陰影空間中并運(yùn)行;在運(yùn)行結(jié)束后,將選項(xiàng)ROM程序運(yùn)行后留下的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序移動(dòng)到系統(tǒng)存儲(chǔ)器的其他存儲(chǔ)區(qū)域;記錄PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的存儲(chǔ)地址與相應(yīng)設(shè)備之間的對(duì)應(yīng)關(guān)系;在陰影空間中駐留代理程序;以及將已記錄的對(duì)應(yīng)關(guān)系駐留在陰影空間中。2.根據(jù)權(quán)利要求1所述的PCI選項(xiàng)ROM程序的駐留方法,其特征在于還包括修改所有訪問(wèn)PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的中斷服務(wù)程序,將代理程序掛鉤在中斷服務(wù)程序的開(kāi)始。3.根據(jù)權(quán)利要求1或2所述的PCI選項(xiàng)ROM程序的駐留方法,其特征在于以PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的存儲(chǔ)地址和相應(yīng)設(shè)備的唯一標(biāo)識(shí)ID建立所述對(duì)應(yīng)關(guān)系。4.根據(jù)權(quán)利要求3所述的PCI選項(xiàng)ROM程序的駐留方法,其特征在于相應(yīng)設(shè)備的唯一標(biāo)識(shí)ID是廠商ID與設(shè)備ID的組合。5.根據(jù)權(quán)利要求3所述的PCI選項(xiàng)ROM程序的駐留方法,其特征在于相應(yīng)設(shè)備的唯一標(biāo)識(shí)ID是總線號(hào)與設(shè)備號(hào)的組合。6.根據(jù)前述權(quán)利要求之一所述的PCI選項(xiàng)ROM程序的駐留方法,其特征在于所述系統(tǒng)存儲(chǔ)器的其他存儲(chǔ)區(qū)域是高端內(nèi)存或硬盤(pán)或其他可讀寫(xiě)的存儲(chǔ)介質(zhì)。7.—種PCI選項(xiàng)ROM程序的調(diào)用方法,包括在操作系統(tǒng)運(yùn)行時(shí)間階段中執(zhí)行以下步驟應(yīng)用程序或設(shè)備驅(qū)動(dòng)程序把相應(yīng)的參數(shù)傳遞給代理程序,并運(yùn)行代理程序;代理程序根據(jù)輸入的參數(shù),通過(guò)PCI選項(xiàng)ROM運(yùn)行時(shí)間程序與設(shè)備之間的對(duì)應(yīng)關(guān)系,搜索出PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的存儲(chǔ)地址,并將PCI選項(xiàng)ROM運(yùn)行時(shí)間程序復(fù)制到系統(tǒng)存儲(chǔ)器的陰影空間中;代理程序在完成PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的復(fù)制后,將控制權(quán)交還應(yīng)用程序或設(shè)備驅(qū)動(dòng)程序;以及應(yīng)用程序或設(shè)備驅(qū)動(dòng)程序在取得控制權(quán)后,開(kāi)始調(diào)用相應(yīng)的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序,以完成相應(yīng)的功能。8.根據(jù)權(quán)利要求7所述的PCI選項(xiàng)ROM程序的調(diào)用方法,其特征在于輸入的參數(shù)是相應(yīng)設(shè)備的唯一標(biāo)識(shí)ID,相應(yīng)設(shè)備的唯一標(biāo)識(shí)ID與PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的存儲(chǔ)地址之間具有彼此一一對(duì)應(yīng)的對(duì)應(yīng)關(guān)系。9.根據(jù)權(quán)利要求8所述的PCI選項(xiàng)ROM程序的調(diào)用方法,其特征在于相應(yīng)設(shè)備的唯一標(biāo)識(shí)ID是廠商ID與設(shè)備ID的組合。10.根據(jù)權(quán)利要求8所述的PCI選項(xiàng)ROM程序的調(diào)用方法,其特征在于相應(yīng)設(shè)備的唯一標(biāo)識(shí)ID是總線號(hào)與設(shè)備號(hào)的組合。11.根據(jù)前述權(quán)利要求之一所述的PCI選項(xiàng)ROM程序的調(diào)用方法,其特征在于所述PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的存儲(chǔ)地址對(duì)應(yīng)于高端內(nèi)存或硬盤(pán)中的存儲(chǔ)地址。12.—種PCI選項(xiàng)ROM程序的調(diào)用方法,包括在操作系統(tǒng)運(yùn)行時(shí)間階段中執(zhí)行以下步驟中斷服務(wù)程序運(yùn)行掛鉤在所述中斷服務(wù)程序的開(kāi)始的代理程序;所述代理程序?qū)⑾鄳?yīng)的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序復(fù)制到系統(tǒng)存儲(chǔ)器的陰影空間中;以及繼續(xù)運(yùn)行所述中斷服務(wù)程序。全文摘要本發(fā)明提出了一種PCI選項(xiàng)ROM程序的駐留方法,包括在BIOS上電自檢過(guò)程中執(zhí)行以下步驟將整個(gè)PCI選項(xiàng)ROM程序復(fù)制到系統(tǒng)存儲(chǔ)器的陰影空間中并運(yùn)行;在運(yùn)行結(jié)束后,將選項(xiàng)ROM程序運(yùn)行后留下的PCI選項(xiàng)ROM運(yùn)行時(shí)間程序移動(dòng)到系統(tǒng)存儲(chǔ)器的其他存儲(chǔ)區(qū)域;記錄PCI選項(xiàng)ROM運(yùn)行時(shí)間程序的存儲(chǔ)地址與相應(yīng)設(shè)備之間的對(duì)應(yīng)關(guān)系;在陰影空間中駐留代理程序;以及將已記錄的對(duì)應(yīng)關(guān)系駐留在陰影空間中。本發(fā)明還提出了一種與上述PCI選項(xiàng)ROM程序的駐留方法相對(duì)應(yīng)的、PCI選項(xiàng)ROM程序的調(diào)用方法。文檔編號(hào)G06F9/445GK101097523SQ20061009079公開(kāi)日2008年1月2日申請(qǐng)日期2006年6月30日優(yōu)先權(quán)日2006年6月30日發(fā)明者柯海濱申請(qǐng)人:聯(lián)想(北京)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
从江县| 绥阳县| 镇江市| 醴陵市| 金门县| 建阳市| 营山县| 特克斯县| 恩施市| 永宁县| 清水河县| 正阳县| 阳朔县| 简阳市| 渭源县| 资溪县| 和田市| 雅安市| 石首市| 双辽市| 渝中区| 平和县| 佛山市| 安图县| 遂宁市| 临夏县| 深州市| 张家界市| 和田县| 泸溪县| 都昌县| 金寨县| 玛纳斯县| 防城港市| 鹤山市| 汤阴县| 师宗县| 吐鲁番市| 满洲里市| 上犹县| 皋兰县|