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

多核計算機(jī)系統(tǒng)驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法

文檔序號:6561974閱讀:250來源:國知局
專利名稱:多核計算機(jī)系統(tǒng)驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機(jī)裝置驅(qū)動裝置,特別是涉及一種驅(qū)動程序支持的異步指令處理。
背景技術(shù)
一般的計算機(jī)圖形系統(tǒng)包含一圖形轉(zhuǎn)接器,其提供一幀緩沖區(qū)及一圖形加速硬件,以及一軟件裝置驅(qū)動程序,其提供該圖形轉(zhuǎn)接器及操作系統(tǒng)及/或運作于該操作系統(tǒng)的上的應(yīng)用之間的界面。該圖形轉(zhuǎn)接器包含至少一圖形處理單元(graphics processing unit,GPU),其為一計算機(jī)組件,用以將視覺信息的邏輯表現(xiàn)轉(zhuǎn)換為可以作為一顯示媒體的輸入的訊號。該圖形轉(zhuǎn)接器用以加速復(fù)雜圖形的顯示,同時減輕操作系統(tǒng)在圖形處理上的負(fù)擔(dān),以改善整體效能。
裝置驅(qū)動程序,通常簡稱為驅(qū)動程序,為一計算機(jī)程序,其致能其它程序(通常是操作系統(tǒng))以和一硬件裝置互動。在窗口操作系統(tǒng)環(huán)境中,當(dāng)一應(yīng)用以裝置獨立圖形要求(device-independent graphics request)來呼叫Win32功能時,該圖形裝置接口(GDI)詮釋該這些指令并呼叫該顯示驅(qū)動程序。繼的,顯示驅(qū)動程序?qū)⑦@些要求轉(zhuǎn)換成視訊硬件的指令。
GDI呼叫裝置驅(qū)動程序接口(device driver interface,DDI)以將數(shù)據(jù)傳送到該驅(qū)動程序。當(dāng)一應(yīng)用提出GDI要求時,且GDI確認(rèn)該驅(qū)動程序支持該相關(guān)功能,則GDI呼叫該功能。驅(qū)動程序必須提供該功能,并在該功能完成時回報GDI。
有越來越多的計算機(jī)系統(tǒng)采用多核心中央處理單元(CPU),其具有多執(zhí)行緒(thread)可以同時處理多個指令。執(zhí)行緒可以讓一個程序?qū)⑵渥陨矸譃閮蓚€或更多的同時運作的工作。多執(zhí)行緒可以同時在許多計算機(jī)系統(tǒng)并行。這種多執(zhí)行緒通常藉由時間分割來執(zhí)行(單一處理器在不同執(zhí)行緒之間切換)或是藉由多處理(multiprocessing)來執(zhí)行(多個執(zhí)行緒在不同的處理器執(zhí)行)。上述的多核心CPU為后者的多執(zhí)行緒執(zhí)行方法,亦即多處理的一種主體。
但是,傳統(tǒng)的圖形驅(qū)動程序設(shè)計為在一計算機(jī)CPU上執(zhí)行的單一執(zhí)行緒上運作,其需要和一圖形處理單元(GPU)同步。因此,傳統(tǒng)的圖形驅(qū)動程序并無法由可以同時處理多個工作的多核心CPU中得益。
此外,大部分的圖形應(yīng)用軟件并不是以多執(zhí)行緒寫成。應(yīng)用軟件本身也無法從多核心CPU中得益。在許多狀況中,應(yīng)用軟件運作的速度取決于CPU執(zhí)行速度。
因此,需要一個多核心CPU計算機(jī)系統(tǒng)以不同圖形應(yīng)用的執(zhí)行緒來運作圖形驅(qū)動程序,以改善該計算機(jī)系統(tǒng)的圖形表現(xiàn)。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,該方法包括將異步指令和同步指令分開,將該異步指令暫存于一緩沖區(qū),直接在一CPU驅(qū)動程序執(zhí)行緒處理該同步指令,以一個或多個CPU工作執(zhí)行緒從該緩沖區(qū)處理該異步指令,其中該多核心計算機(jī)系統(tǒng)的多個執(zhí)行緒可以同時使用,并當(dāng)該CPU工作執(zhí)行緒處理該緩沖區(qū)之后,管理該緩沖區(qū),其中該指令的執(zhí)行對應(yīng)用軟件就如同單一執(zhí)行緒一般。
本發(fā)明亦提供一種用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,該方法包括將異步指令和同步指令分開,將該異步指令暫存于一緩沖區(qū),其中該暫存步驟還包含將該裝置驅(qū)動程序接口(DDI)回復(fù)改變的該資源復(fù)制到一驅(qū)動程序分配存儲器,并修改該對應(yīng)的指令以指向該驅(qū)動程序分配存儲器,以第一CPU執(zhí)行緒從該緩沖區(qū)處理該異步指令,以一第二CPU執(zhí)行緒處理該同步指令。
本發(fā)明亦提供一種用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其包括將異步指令和同步指令分開,將該異步指令暫存于一緩沖區(qū),其中該暫存步驟還包含將預(yù)期由該裝置驅(qū)動程序接口(DDI)回復(fù)改變的至少一頂點緩沖區(qū)復(fù)制到一驅(qū)動程序分配存儲器,并修改對應(yīng)于該復(fù)制的頂點緩沖區(qū)的的指令指針以指向該驅(qū)動程序分配存儲器,并確認(rèn)錯誤及指令狀態(tài),以第一CPU執(zhí)行緒從該緩沖區(qū)處理該異步指令,以一第二CPU執(zhí)行緒處理該同步指令。
為使本發(fā)明的上述和其它目的、特征、和優(yōu)點能更明顯易懂,下文特舉出較佳實施例,并結(jié)合附圖詳細(xì)說明如下。


圖1顯示傳統(tǒng)的同步指令處理的具有多核心CPU及一DDI的計算機(jī)系統(tǒng)的一部份的方塊圖。
圖2顯示依據(jù)本發(fā)明實施例的異步指令處理的具有多核心CPU及一DDI的計算機(jī)系統(tǒng)的一部份的方塊圖。
圖3A顯示依據(jù)本發(fā)明實施例多執(zhí)行緒DDI執(zhí)行步驟的流程圖。
圖3B顯示依據(jù)本發(fā)明實施例暫存異步指令的詳細(xì)步驟的流程圖。
圖3C顯示依據(jù)本發(fā)明實施例的緩沖區(qū)管理的詳細(xì)步驟的流程圖。
附圖符號說明計算機(jī)系統(tǒng)~100;多核心CPU~110;CPU執(zhí)行緒~112和114;DDI~140;圖形處理單元~150和152;應(yīng)用軟件~120;操作系統(tǒng)~130;計算機(jī)系統(tǒng)~200;多核心CPU~210;CPU執(zhí)行緒~212和214;DDI~240;指令暫存區(qū)~260。
具體實施例方式
本說明書提供的方法,是將計算機(jī)指令區(qū)分為同步指令和異步指令,并以多個CPU執(zhí)行緒執(zhí)行的,使得多個的指令可以同時被執(zhí)行。
同步指令為必須在DDI回復(fù)之前完成的指令。另一方面,異步指令為無須在DDI回復(fù)之前完成的指令。
圖1顯示傳統(tǒng)的同步指令處理的具有多核心CPU 110及一裝置驅(qū)動接口(Device Driver Interface,DDI)140的計算機(jī)系統(tǒng)100的一部份的方塊圖。多核心CPU 110包含兩個例示的CPU執(zhí)行緒112和114。DDI 140將指令傳送到CPU執(zhí)行,并傳送到圖形處理單元(Graphics Processing Units,GPUs)150和152以將圖形顯示。雖然多核心CPU 110包含兩個CPU執(zhí)行緒112和114,但是應(yīng)用軟件120和DDI 140卻被設(shè)計成僅在一個CPU執(zhí)行緒上同步處理圖形指令,亦即,在處理次一指令之前,DDI 140必須等CPU執(zhí)行緒112完成一目前指令處理,或等GPU 150或152完成一目前指令提交。若GPU 150或152的提交速度高于CPU執(zhí)行緒112的指令處理速度,則CPU110就成了計算機(jī)系統(tǒng)100中速度的瓶頸,或是一CPU束縛。
圖2顯示依據(jù)本發(fā)明實施例的異步指令處理的具有多核心CPU 210及一DDI 240的計算機(jī)系統(tǒng)200的一部份的方塊圖。多核心CPU 210包含兩個例示的CPU執(zhí)行緒212和214。執(zhí)行緒212處理直接由驅(qū)動程序240的指令,其稱之為驅(qū)動程序執(zhí)行緒。另一執(zhí)行緒214處理暫存的指令,稱之為工作執(zhí)行緒。
參見圖2,在計算機(jī)系統(tǒng)200中加入一指令暫存區(qū)260。DDI 240可以將異步指令區(qū)分,并將之存放在指令暫存區(qū)260,并僅將同步指令傳送到驅(qū)動程序執(zhí)行緒212以立刻處理。上述暫存的指令可以由工作執(zhí)行緒214處理,而和驅(qū)動程序執(zhí)行緒212無關(guān)。藉此,CPU執(zhí)行緒112和114兩者都被使用,即使該應(yīng)用程序本身系撰寫為用于單一執(zhí)行緒,也可以從多核心CPU 200受惠。
參見圖2,工作執(zhí)行緒214被指定用來處理暫存的指令。每當(dāng)DDI 240將一異步指令存入指令暫存區(qū)260時,工作執(zhí)行緒214就被啟動,并開始處理該暫存的指令。當(dāng)一些暫存的指令已被處理時,工作執(zhí)行緒214釋放指令暫存區(qū)中對應(yīng)的部分。
DDI 240也可以標(biāo)記某些需要以事件卷標(biāo)追蹤的指令。在指令執(zhí)行之后,工作執(zhí)行緒214會將該事件標(biāo)簽寫回。
圖3A顯示依據(jù)本發(fā)明實施例多執(zhí)行緒DDI執(zhí)行主要步驟的流程圖。步驟310為將異步指令和同步指令分開。指令的性質(zhì),亦即,同步或異步,依據(jù)指令本身來決定,例如,因為驅(qū)動程序必須在回復(fù)之前完成該工作,所以某些資源管理指令為同步,這些指令必須立刻執(zhí)行。在窗口DirectX driver、CreateSurface、DestroySurface、CreateD3Dbuffer、DestroySurface、LockD3Dbuffer、以及UnlockD3Dbuffer即屬于此類指令。
DDLock及DDUnlock功能需要CPU和GPU之間同步,因此其也無法成多執(zhí)行緒。
另一方面,在D3DdrawPrimitives2功能的繪圖指令(rendering commands)則為異步指令,其可以暫存并讓工作執(zhí)行緒212獨立處理的。D3DdrawPrimitives2功能描繪原型(primitives)并回復(fù)更新的繪圖狀態(tài)。
查詢產(chǎn)生(queries create)、查詢消滅(queries destroy)、查詢傳送(queriessending)被視為異步指令,但其是連同事件標(biāo)簽暫存的,因此,當(dāng)這些指令由工作執(zhí)行緒完成時,這些事件標(biāo)簽會被寫回。另一方面,查詢讀取(queriesread)被視為是同步指令,并由驅(qū)動程序執(zhí)行緒立刻執(zhí)行。
參見圖3A,在步驟310將異步指令和同步指令分開之后,在步驟320將該異步指令暫存。在步驟330中,CPU驅(qū)動程序執(zhí)行緒直接處理同步指令。步驟340中,CPU工作執(zhí)行緒同時處理這些暫存的異步指令。因此,驅(qū)動程序執(zhí)行緒和工作執(zhí)行緒同時被使用。當(dāng)暫存指令被執(zhí)行完成時,CPU工作執(zhí)行緒管理該暫存區(qū)(步驟350),而處理過的暫存區(qū)可以被釋放,以供未來指令之用。
圖3B顯示依據(jù)本發(fā)明實施例暫存異步指令的詳細(xì)步驟(圖3A中的步驟320)的流程圖。在步驟321,復(fù)制整個指令暫存區(qū)。接著,DDI掃描該復(fù)制的指令,以尋找能夠由步驟323的DDI回復(fù)改變的指令使用的資源。在步驟325,將可以改變的上述資源復(fù)制到一驅(qū)動程序分配存儲器(driverallocated memory)。特別是,DDI回復(fù)會影響到系統(tǒng)存儲資源(包括頂點緩沖區(qū)(vertex buffer)和文本(texure))、及使用者存儲緩沖區(qū)(由應(yīng)用傳下來的緩沖區(qū)),因此將其復(fù)制。在復(fù)制上述緩沖區(qū)后,DDI修改該對應(yīng)的指令以指向該新的驅(qū)動程序分配存儲器(步驟325)。
參見圖3B,步驟327中,檢查指令緩沖區(qū),以確認(rèn)在上述步驟321~325的指令前處理過程中,是否有任回錯誤發(fā)生,并確認(rèn)指令狀態(tài)。就執(zhí)行狀態(tài)(render state)及文本階段狀態(tài)(texture stage state,TSS),DDI確認(rèn)并將該執(zhí)行狀態(tài)及文本階段狀態(tài)寫回其對應(yīng)的緩沖區(qū)作為DDI要求(DDI requires)。
圖3C顯示依據(jù)本發(fā)明實施例的緩沖區(qū)管理的詳細(xì)步驟(圖3A的步驟350)的流程圖。當(dāng)處理該暫存的指令時,CPU工作執(zhí)行緒將復(fù)制的資源傳送到一再生緩沖區(qū),并將復(fù)制資源釋放(步驟352)。驅(qū)動程序執(zhí)行緒在必要的位置,會確認(rèn)是否該復(fù)制資源已經(jīng)由工作執(zhí)行緒釋放(步驟354),并當(dāng)該資源被釋放時,取回該存儲器(步驟356)。
當(dāng)所有的暫存指令都被處理時,CPU工作執(zhí)行緒將該指令送到CPU以執(zhí)行之,并回到睡眠模式。
需注意到,在D3DdrawPrimitives2 DDI,該CPU工作執(zhí)行緒的運作和CPU驅(qū)動程序執(zhí)行緒相同,除了工作執(zhí)行緒忽略由驅(qū)動程序執(zhí)行緒立刻執(zhí)行的查詢讀取,并管理復(fù)制的頂點緩沖區(qū)。事實上,若有適當(dāng)?shù)拇鎯ζ鞴芾恚景l(fā)明可以使指令的執(zhí)行對應(yīng)用軟件而言如同單一執(zhí)行緒一般。
雖然本發(fā)明已以較佳實施例披露如上,然其并非用以限定本發(fā)明,本領(lǐng)域的技術(shù)人員在不脫離本發(fā)明的精神和范圍的前提下可做若干的更動與潤飾,因此本發(fā)明的保護(hù)范圍以本發(fā)明的權(quán)利要求為準(zhǔn)。
權(quán)利要求
1.一種用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其包括將異步指令和同步指令分開;將該異步指令暫存于一緩沖區(qū);以第一CPU執(zhí)行緒從該緩沖區(qū)處理該異步指令,以一第二CPU執(zhí)行緒處理該同步指令。
2.如權(quán)利要求1所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該同步指令為下列中的至少之一在窗口操作系統(tǒng)環(huán)境中的DDLock、DDUnlock、DDCreateSurface、DDDestroySurface、DDCreateSurfaceEx、CreateD3Dbuffer、DestroyD3Dbuffer、LockD3Dbuffer、UnlockD3Dbuffer、DDMapMemory、及查詢讀取。
3.如權(quán)利要求1所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該異步指令為下列中的至少之一在窗口操作系統(tǒng)環(huán)境中的D3DrawPrimitives2、查詢產(chǎn)生、查詢消滅、查詢傳送。
4.如權(quán)利要求1所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該暫存步驟進(jìn)一步包含暫存查詢產(chǎn)生、查詢消滅、查詢傳送指令及其對應(yīng)的事件標(biāo)簽。
5.如權(quán)利要求1所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該暫存步驟進(jìn)一步包含確認(rèn)錯誤及指令狀態(tài)。
6.如權(quán)利要求5所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該確認(rèn)步驟進(jìn)一步包含確認(rèn)執(zhí)行狀態(tài)及文本階段狀態(tài);將該執(zhí)行狀態(tài)及文本階段狀態(tài)寫回一裝置驅(qū)動程序接口定義的緩沖區(qū);以及若發(fā)現(xiàn)一錯誤,則返回一操作系統(tǒng)。
7.如權(quán)利要求1所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,還包含當(dāng)儲存于該緩沖區(qū)中的該異步指令已由該第一CPU執(zhí)行緒處理后,釋放該緩沖區(qū)。
8.一種用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其包括將異步指令和同步指令分開;將該異步指令暫存于一緩沖區(qū),其中該暫存步驟還包含將該裝置驅(qū)動程序接口(DDI)回復(fù)改變的該資源復(fù)制到一驅(qū)動程序分配存儲器,并修改該對應(yīng)的指令以指向該驅(qū)動程序分配存儲器;以第一CPU執(zhí)行緒從該緩沖區(qū)處理該異步指令,以一第二CPU執(zhí)行緒處理該同步指令。
9.如權(quán)利要求8所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該同步指令為下列中的至少之一在窗口操作系統(tǒng)環(huán)境中的DDLock、DDUnlock、DDCreateSurface、DDDestroySurface、DDCreateSurfaceEx、CreateD3Dbuffer、DestroyD3Dbuffer、LockD3Dbuffer、UnlockD3Dbuffer、DDMapMemory、及查詢讀取。
10.如權(quán)利要求8所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該異步指令為下列中的至少之一在窗口操作系統(tǒng)環(huán)境中的D3DrawPrimitives2、查詢產(chǎn)生、查詢消滅、查詢傳送。
11.如權(quán)利要求8所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該復(fù)制資源包含系統(tǒng)存儲資源、使用者存儲緩沖區(qū),其包含被一繪圖指令使用的數(shù)據(jù)。
12.如權(quán)利要求8所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,還包含在該資源從該第一CPU執(zhí)行緒釋放之后,管理該復(fù)制的資源。
13.如權(quán)利要求12所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該管理步驟還包含就該第一CPU執(zhí)行緒將該復(fù)制資源轉(zhuǎn)移到一再生緩沖區(qū);及釋放該復(fù)制資源;以及就該第二CPU執(zhí)行緒將該資源復(fù)制到該緩沖區(qū);及確認(rèn)是否該復(fù)制資源由該第一CPU執(zhí)行緒釋放;及若該資源由該第一CPU執(zhí)行緒釋放,取回該緩沖區(qū)。
14.如權(quán)利要求8所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該暫存步驟進(jìn)一步包含暫存查詢產(chǎn)生、查詢消滅、查詢傳送指令及其對應(yīng)的事件標(biāo)簽。
15.如權(quán)利要求8所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,還包含當(dāng)儲存于該緩沖區(qū)中的該異步指令已由該第一CPU執(zhí)行緒處理后,釋放該緩沖區(qū)。
16.一種用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其包括將異步指令和同步指令分開;將該異步指令暫存于一緩沖區(qū),其中該暫存步驟還包含將預(yù)期由該裝置驅(qū)動程序接口(DDI)回復(fù)改變的至少一頂點緩沖區(qū)復(fù)制到一驅(qū)動程序分配存儲器,并修改對應(yīng)于該復(fù)制的頂點緩沖區(qū)的的指令指針以指向該驅(qū)動程序分配存儲器,并確認(rèn)錯誤及指令狀態(tài);以第一CPU執(zhí)行緒從該緩沖區(qū)處理該異步指令,以一第二CPU執(zhí)行緒處理該同步指令。
17.如權(quán)利要求16所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該同步指令為下列中的至少之一在窗口操作系統(tǒng)環(huán)境中的DDLock、DDUnlock、DDCreateSurface、DDDestroySurface、DDCreateSurfaceEx、CreateD3Dbuffer、DestroyD3Dbuffer、LockD3Dbuffer、UnlockD3Dbuffer、DDMapMemory、及查詢讀取。
18.如權(quán)利要求16所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該異步指令為下列中的至少之一在窗口操作系統(tǒng)環(huán)境中的D3DrawPrimitives2、查詢產(chǎn)生、查詢消滅、查詢傳送。
19.如權(quán)利要求16所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該復(fù)制資源包含系統(tǒng)存儲資源、使用者存儲緩沖區(qū),其包含被一繪圖指令使用的數(shù)據(jù)。
20.如權(quán)利要求16所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,還包含在該資源從該第一CPU執(zhí)行緒釋放之后,管理該復(fù)制的資源。
21.如權(quán)利要求20所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該管理步驟還包含就該第一CPU執(zhí)行緒將該復(fù)制資源轉(zhuǎn)移到一再生緩沖區(qū);及釋放該復(fù)制資源;以及就該第二CPU執(zhí)行緒將該資源復(fù)制到該緩沖區(qū);及確認(rèn)是否該復(fù)制資源由該第一CPU執(zhí)行緒釋放;及若該資源由該第一CPU執(zhí)行緒釋放,取回該緩沖區(qū)。
22.如權(quán)利要求16所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該暫存步驟進(jìn)一步包含暫存查詢產(chǎn)生、查詢消滅、查詢傳送指令及其對應(yīng)的事件標(biāo)簽。
23.如權(quán)利要求16所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,其中該確認(rèn)步驟進(jìn)一步包含確認(rèn)執(zhí)行狀態(tài)及文本階段狀態(tài);將該執(zhí)行狀態(tài)及文本階段狀態(tài)寫回一裝置驅(qū)動程序接口定義的緩沖區(qū);以及若發(fā)現(xiàn)一錯誤,則返回一操作系統(tǒng)。
24.如權(quán)利要求16所述的用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,還包含當(dāng)儲存于該緩沖區(qū)中的該異步指令已由該第一CPU執(zhí)行緒處理后,釋放該緩沖區(qū)。
全文摘要
本發(fā)明披露了一種用于多核心計算機(jī)系統(tǒng)中驅(qū)動程序的支持多執(zhí)行緒指令執(zhí)行的方法,該方法包括將異步指令和同步指令分開,將該異步指令暫存于一緩沖區(qū),直接在一CPU驅(qū)動程序執(zhí)行緒處理該同步指令,以一個或多個CPU工作執(zhí)行緒從該緩沖區(qū)處理該異步指令,其中該多核心計算機(jī)系統(tǒng)的多個執(zhí)行緒可以同時使用,并當(dāng)該CPU工作執(zhí)行緒處理該緩沖區(qū)之后,管理該緩沖區(qū),其中該指令的執(zhí)行對應(yīng)用軟件就如同單一執(zhí)行緒一般。
文檔編號G06F9/46GK101025695SQ20061013594
公開日2007年8月29日 申請日期2006年10月17日 優(yōu)先權(quán)日2005年10月17日
發(fā)明者張國峰 申請人:威盛電子股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
团风县| 山阳县| 巫山县| 石首市| 霍林郭勒市| 兴国县| 南充市| 郁南县| 绵竹市| 封开县| 马关县| 舒兰市| 门头沟区| 沁源县| 监利县| 永州市| 苏尼特左旗| 巢湖市| 临沧市| 曲松县| 房产| 乌兰浩特市| 高要市| 塘沽区| 纳雍县| 景洪市| 项城市| 镇雄县| 通山县| 贡山| 拜城县| 黄冈市| 长宁县| 淅川县| 满城县| 巴彦县| 台州市| 达拉特旗| 达拉特旗| 息烽县| 凤台县|