專利名稱:增強(qiáng)調(diào)度線程的優(yōu)先級(jí)引導(dǎo)的系統(tǒng)、設(shè)備和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)系統(tǒng)中的資源分配。具體地說,本發(fā)明涉及一種增強(qiáng)調(diào)度線程(scheduled thread)的優(yōu)先級(jí)引導(dǎo)的系統(tǒng)、設(shè)備和方法。
背景技術(shù):
在任意給定的處理時(shí)間,在計(jì)算機(jī)系統(tǒng)的處理器或CPU上都可能存在多個(gè)等待執(zhí)行的過程或線程。為了最佳利用系統(tǒng)的CPU,需要采用將用于執(zhí)行的過程或線程進(jìn)行適當(dāng)排隊(duì)的有效機(jī)制。被大多數(shù)計(jì)算機(jī)系統(tǒng)用來完成該任務(wù)的機(jī)制是調(diào)度程序。
要注意過程是一種程序。在執(zhí)行程序時(shí),將該程序不確切地稱為任務(wù)。在大多數(shù)操作系統(tǒng)中,任務(wù)和程序之間存在一對(duì)一的關(guān)系。但是,某些操作系統(tǒng)允許將一個(gè)程序分為多個(gè)任務(wù)或線程。這樣的系統(tǒng)稱為多線程操作系統(tǒng)。為簡單起見,在此可互換地使用線程和過程。
調(diào)度程序是一種對(duì)計(jì)算機(jī)系統(tǒng)的共享資源(例如CPU)的使用進(jìn)行協(xié)調(diào)的軟件程序。調(diào)度程序在這樣做的時(shí)候,通常采用諸如先進(jìn)先出(即FIFO)、循環(huán)復(fù)用(round robin)或后進(jìn)先出(LIFO)、優(yōu)先級(jí)隊(duì)列、樹等算法或其中的組合?;旧?,如果計(jì)算機(jī)系統(tǒng)具有3個(gè)CPU(CPU1,CPU2和CPU3),則每個(gè)CPU將因此具有準(zhǔn)備處理的隊(duì)列或運(yùn)行隊(duì)列。如果用于給運(yùn)行隊(duì)列分配過程的算法是循環(huán)復(fù)用算法,并且如果將所創(chuàng)建的最后一個(gè)過程分配給與CPU2關(guān)聯(lián)的隊(duì)列,則所創(chuàng)建的下一個(gè)過程將分配給CPU3的隊(duì)列。然后,將下一個(gè)創(chuàng)建的過程分配給與CPU1關(guān)聯(lián)的隊(duì)列等等。由此,將調(diào)度程序設(shè)計(jì)為使每個(gè)過程公平地共享計(jì)算機(jī)系統(tǒng)的資源。
例如,有時(shí)系統(tǒng)管理員可能希望不同的過程來接收不同的CPU共享時(shí)間。在這種情況下,工作負(fù)荷管理器(WLM)與調(diào)度程序結(jié)合使用。WLM給每個(gè)過程分配優(yōu)先級(jí)數(shù)。一個(gè)過程每次消耗一些CPU時(shí)間時(shí),其優(yōu)先級(jí)數(shù)就減少。該機(jī)制允許具有較低優(yōu)先級(jí)數(shù)的過程也能接收一些CPU時(shí)間。
當(dāng)一個(gè)過程正被CPU處理并由于某個(gè)原因而需要在處理之前等待一個(gè)事件的發(fā)生時(shí),為效率起見,該過程可能將其在CPU上的其余機(jī)會(huì)讓給另一個(gè)過程而進(jìn)入休眠。如果該過程鎖定了共享的內(nèi)核資源,它在進(jìn)入休眠之前不會(huì)放棄該鎖定。例如,當(dāng)?shù)谝贿^程正使用諸如緩沖器的共享內(nèi)核資源時(shí),它將鎖定該緩沖器以防止任何其它過程使用該緩沖器。如果第一過程正執(zhí)行盤輸入/輸出(I/O),則它可以允許另一個(gè)過程使用CPU,并在完成盤I/O的同時(shí)進(jìn)入休眠。一旦盤I/O完成,第一過程就可以醒來。如果具有較高優(yōu)先級(jí)數(shù)的第二過程需要同時(shí)使用該緩沖器,則它需要等待一段時(shí)間,直到第一過程獲得一些CPU時(shí)間來完成其任務(wù)并釋放對(duì)該緩沖器的鎖定。
為了減少第二過程可能需要等待的時(shí)間,采用了優(yōu)先級(jí)引導(dǎo)。當(dāng)具有較高優(yōu)先級(jí)數(shù)的第二過程將其優(yōu)先級(jí)數(shù)傳遞給具有較低優(yōu)先級(jí)數(shù)、且鎖定所需要的共享資源的第一過程,以增加第一過程成為下一個(gè)被選為接收一定CPU時(shí)間的過程的可能性時(shí),就發(fā)生優(yōu)先級(jí)引導(dǎo)。如后面將要解釋的,盡管現(xiàn)在第一過程具有較高的優(yōu)先級(jí)數(shù),如果當(dāng)前還有另一個(gè)過程正在使用CPU,則第一過程還是不能馬上獲得CPU。
因此,需要用于增強(qiáng)優(yōu)先級(jí)引導(dǎo)的系統(tǒng)和方法,使得鎖定共享資源、且其優(yōu)先級(jí)已被引導(dǎo)的過程可以盡快獲得一些CPU時(shí)間。
發(fā)明內(nèi)容
本發(fā)明提供了一種增強(qiáng)調(diào)度線程的優(yōu)先級(jí)引導(dǎo)的系統(tǒng)、設(shè)備和方法。如果正由第二CPU執(zhí)行,第二線程確定自己必須等待鎖定被調(diào)度為由第一CPU執(zhí)行的第一線程占據(jù)的共享資源,則第二線程可以在其優(yōu)先級(jí)高于第一線程優(yōu)先級(jí)的情況下通過將其優(yōu)先級(jí)傳遞給第一線程而引導(dǎo)第一線程的優(yōu)先級(jí)。此外,為了增強(qiáng)第一線程的優(yōu)先級(jí)引導(dǎo),第二線程可以將第一線程重新調(diào)度為由第二CPU處理。通過在第二CPU上重新調(diào)度,將第二線程調(diào)度為隨后立即執(zhí)行。
在所附權(quán)利要求中說明了本發(fā)明的新穎性特點(diǎn)。通過參考下面結(jié)合附圖對(duì)實(shí)施例的詳細(xì)描述,可以最佳理解本發(fā)明自身以及優(yōu)選使用模式、其它目的和優(yōu)點(diǎn),其中
圖1a示出多處理器計(jì)算機(jī)系統(tǒng)的運(yùn)行隊(duì)列。
圖1b示出在調(diào)度了Th1之后多處理器系統(tǒng)的運(yùn)行隊(duì)列。
圖1c示出在調(diào)度了Th4之后多處理器的運(yùn)行隊(duì)列。
圖1d示出在調(diào)度了Th2之后多處理器的運(yùn)行隊(duì)列。
圖1e示出在將醒來的Th1放入CPU1的運(yùn)行隊(duì)列之后多處理器的運(yùn)行隊(duì)列。
圖1f示出在Th1釋放了TH2所需的鎖定(即TH2已醒來)之后、并假定TH2的優(yōu)先級(jí)仍然高于TH5的優(yōu)先級(jí)時(shí)多處理器的運(yùn)行隊(duì)列。
圖2是可以用于實(shí)施本發(fā)明的過程的流程圖。
圖3是實(shí)施本發(fā)明的數(shù)據(jù)處理系統(tǒng)的框圖。
具體實(shí)施例方式
參考附圖,圖1a示出多處理器計(jì)算機(jī)系統(tǒng)的運(yùn)行隊(duì)列。計(jì)算機(jī)系統(tǒng)包含3個(gè)處理器,CPU0110、CPU1112、CPU2114。CPU0110具有運(yùn)行隊(duì)列102。線程TH1、TH4、TH7等調(diào)度為在CPU0110上運(yùn)行,并由此在運(yùn)行隊(duì)列102中。類似的,CPU1112具有運(yùn)行隊(duì)列103,其中放置了調(diào)度為在CPU1112上運(yùn)行的線程TH2、TH5等,并且CPU2114具有運(yùn)行隊(duì)列104,其中放置了調(diào)度為在CPU2114上運(yùn)行的線程TH3、TH6等。將這些線程調(diào)度為按照它們在運(yùn)行隊(duì)列中的次序執(zhí)行,除非在運(yùn)行隊(duì)列中放置了更高優(yōu)先級(jí)的新線程。
當(dāng)CPU0110準(zhǔn)備好處理TH1時(shí),將TH1調(diào)度為執(zhí)行?,F(xiàn)在,假定TH1的任務(wù)是將數(shù)據(jù)加載到緩沖器(未示出)中,則TH1鎖定該緩沖器,以防止其它線程使用該緩沖器。由于盤I/O是相對(duì)較慢的過程,因此當(dāng)正在執(zhí)行盤I/O時(shí),TH1可以進(jìn)入休眠,并放棄CPU0110。由于TH1當(dāng)前沒有使用CPU0110,因此TH4現(xiàn)在可以調(diào)度為由CPU0110處理。進(jìn)一步假定TH2在CPU1112上被調(diào)度并需要使用緩沖器,因此不處理TH2,因?yàn)門H2需要等待TH1釋放對(duì)緩沖器的鎖定。TH1為了釋放該鎖定,需要首先獲得一些處理時(shí)間。為了完成其任務(wù)并釋放對(duì)緩沖器的鎖定,TH1可以從計(jì)算機(jī)系統(tǒng)中的任何可用處理器那里接收處理時(shí)間。但是,為了解釋本發(fā)明的緣故,假定TH1需要在CPU0110上接收一些處理時(shí)間。因此,TH1在其可以繼續(xù)之前可能需要等待,直到TH4獲得其在CPU0110上的處理機(jī)會(huì)為止。
如前所述,為了增加在TH4獲得CPU0時(shí)間的共享之后使TH1成為下一個(gè)被選為在CPU0110上運(yùn)行的線程的可能性,可以采用優(yōu)先級(jí)引導(dǎo)。在這種情況下,當(dāng)TH2意識(shí)到它需要等待TH1釋放鎖定時(shí),TH2將其優(yōu)先級(jí)數(shù)傳遞給TH1。但問題是,除非CPU0110正在執(zhí)行可以注意到優(yōu)先級(jí)引導(dǎo)的核心代碼,否則當(dāng)發(fā)生時(shí)間片中斷時(shí),CPU0110在此后的最大10毫秒(ms)內(nèi)不能注意到優(yōu)先級(jí)引導(dǎo)。在大多數(shù)基于Unix的系統(tǒng)中,時(shí)間片中斷周期性地發(fā)生(例如每10ms),并由內(nèi)核用于檢查在CPU處理具有較低優(yōu)先級(jí)的線程時(shí)具有較高優(yōu)先級(jí)的線程是否準(zhǔn)備好運(yùn)行。
為了繼續(xù)上述例子,在線程TH1接收了優(yōu)先級(jí)引導(dǎo)之后,它可能仍然需要在由CPU0110再次處理之前等待最大10ms。在計(jì)算機(jī)系統(tǒng)中10ms是很長的時(shí)間。本發(fā)明提供一種可用于增強(qiáng)調(diào)度線程的優(yōu)先級(jí)引導(dǎo)的算法。
根據(jù)本發(fā)明,在將其優(yōu)先級(jí)傳遞給TH1之后,TH2還可以通過在其進(jìn)入休眠之前將TH1放入CPU1的運(yùn)行隊(duì)列中來將TH2的CPU時(shí)間交給TH1。根據(jù)這一優(yōu)先級(jí),如果TH1已經(jīng)醒來(即盤I/O已完成),則它可以在進(jìn)入CPU1的運(yùn)行隊(duì)列之后立即調(diào)度為執(zhí)行。由此,下一個(gè)調(diào)度為在CPU1上運(yùn)行的線程TH5現(xiàn)在需要在調(diào)度為執(zhí)行之前等待。
圖1b示出在調(diào)度TH1之后多處理器系統(tǒng)的運(yùn)行隊(duì)列。圖1c示出在調(diào)度了Th4之后多處理器的運(yùn)行隊(duì)列。圖1d示出在調(diào)度了Th2之后多處理器的運(yùn)行隊(duì)列。圖1e示出在將醒來的Th1放入CPU1112的運(yùn)行隊(duì)列之后多處理器的運(yùn)行隊(duì)列。
圖1f示出在Th1釋放了鎖定(即TH2已醒來)之后、并假定TH2的優(yōu)先級(jí)仍然高于TH5的優(yōu)先級(jí)時(shí)多處理器的運(yùn)行隊(duì)列。
圖2是可以用于實(shí)施本發(fā)明的過程的流程圖。該過程在將一個(gè)線程(即第二線程)調(diào)度給第二CPU執(zhí)行時(shí)開始(步驟200和202)。如果正在執(zhí)行,第二線程意識(shí)到需要鎖定正由第一線程占據(jù)的共享資源,第二線程可以檢查第一線程是否具有低于自己的優(yōu)先級(jí)。如果是,則第二線程可以通過將它自己的優(yōu)先級(jí)傳遞給第一線程來引導(dǎo)第一線程的優(yōu)先級(jí)。這樣,第一線程可以更快地調(diào)度為執(zhí)行。在將其優(yōu)先級(jí)傳遞給第一線程之后,第二線程可以再次檢查第一線程是調(diào)度為在第一CPU上或在第二CPU上運(yùn)行。如果將第一線程調(diào)度為在第一CPU上運(yùn)行,則在過程結(jié)束之前可以將第一線程重新調(diào)度為在第二CPU上執(zhí)行(步驟204、208、210、212、214和216)。
如果第二線程不需要鎖定共享資源,或如果第二線程不具有比第一線程更高的優(yōu)先級(jí),或如果將第一線程調(diào)度為由第二CPU處理,則過程可以在結(jié)束前按慣常繼續(xù)(分別是步驟204、206和216或208、206和216或212、206和216)。
圖3是實(shí)施本發(fā)明的數(shù)據(jù)處理系統(tǒng)的框圖。數(shù)據(jù)處理系統(tǒng)300可以是對(duì)稱多處理器(SMP)系統(tǒng),其包括多個(gè)連接到系統(tǒng)總線306的處理器302、303和304。向本地存儲(chǔ)器309提供接口的存儲(chǔ)控制器/高速緩存308也連接到系統(tǒng)總線306。I/O總線橋310連接到系統(tǒng)總線306,并向I/O總線312提供接口??扇鐖D所示集成存儲(chǔ)控制器/高速緩存308和I/O總線橋310。
連接到I/O總線312的周邊元件擴(kuò)展接口(PCI)總線橋314向PCI本地總線216提供接口。多個(gè)調(diào)制解調(diào)器可以連接到PCI本地總線316。典型的PCI總線實(shí)現(xiàn)可以支持4個(gè)PCI擴(kuò)展槽或附件連接器。可以通過經(jīng)由附件連接器板連接到PCI本地總線316的調(diào)制解調(diào)器318和網(wǎng)絡(luò)適配器320提供網(wǎng)絡(luò)通信。附加PCI總線橋322和324向附加PCI本地總線326和328提供接口,可以從該接口支持附加調(diào)制解調(diào)器或網(wǎng)絡(luò)適配器。通過這種方式,數(shù)據(jù)處理系統(tǒng)300允許連接到多個(gè)網(wǎng)絡(luò)計(jì)算機(jī)。如圖所示,存儲(chǔ)器映射圖形適配卡330和硬盤332也可以直接或間接連接到I/O總線312。
本領(lǐng)域的普通技術(shù)人員理解,圖3中所示的硬件可以變化。例如,其它外圍設(shè)備,例如光盤驅(qū)動(dòng)器等等,也可以被另外使用或代替所示的硬盤。所示例子并不意味著對(duì)本發(fā)明的結(jié)構(gòu)限制。
圖3所示的數(shù)據(jù)處理系統(tǒng)可以是例如IBM e-Server pSeries系統(tǒng),這是紐約Armonk的國際商業(yè)機(jī)器公司的一種產(chǎn)品,其運(yùn)行高級(jí)交互執(zhí)行(AIX)操作系統(tǒng)或LINUX操作系統(tǒng)。
為了說明和描述目的而展示了本發(fā)明的說明,但不意欲窮盡或限制為這里公開的本發(fā)明。很多修改和變形對(duì)本領(lǐng)域的技術(shù)人員來說都是顯而易見的。例如,可以使用固定優(yōu)先級(jí)的線程而非可變優(yōu)先級(jí)的線程。因此,選擇和描述了上述實(shí)施例,以最佳解釋本發(fā)明的原理、實(shí)際應(yīng)用,并使本領(lǐng)域的其他技術(shù)人員可以理解本發(fā)明具有各種適合實(shí)際應(yīng)用的預(yù)期變化的諸多實(shí)施例。
權(quán)利要求
1.一種增強(qiáng)調(diào)度線程的優(yōu)先級(jí)引導(dǎo)的方法,包括步驟由正在第二CPU上執(zhí)行的第二線程確定是否等待鎖定被調(diào)度為由第一CPU執(zhí)行的第一線程占據(jù)的共享資源,該第二線程具有高于第一線程的優(yōu)先級(jí);通過將第二線程的較高優(yōu)先級(jí)傳遞給第一線程來引導(dǎo)第一線程的優(yōu)先級(jí);和通過將第一線程重新調(diào)度為在第二CPU上運(yùn)行來增強(qiáng)第一線程的優(yōu)先級(jí)引導(dǎo)。
2.根據(jù)權(quán)利要求1所述的方法,其中在增強(qiáng)所述第一線程的優(yōu)先級(jí)引導(dǎo)時(shí),該第一線程成為下一個(gè)被調(diào)度為執(zhí)行的線程。
3.根據(jù)權(quán)利要求2所述的方法,其中在增強(qiáng)了所述第一線程的優(yōu)先級(jí)引導(dǎo)之后,第二線程通過進(jìn)入休眠來放棄第二CPU,以等待該第一線程釋放所述鎖定。
4.根據(jù)權(quán)利要求3所述的方法,其中在第一線程釋放了所述鎖定之后,第二線程醒來,并被重新調(diào)度為由第二CPU執(zhí)行。
5.根據(jù)權(quán)利要求4所述的方法,其中在被重新調(diào)度為由第二CPU執(zhí)行之后,所述第二線程可能是下一個(gè)被調(diào)度為執(zhí)行的線程。
6.一種在計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品,用于增強(qiáng)調(diào)度線程的優(yōu)先級(jí)引導(dǎo),包括用于由正在第二CPU上執(zhí)行的第二線程確定是否等待鎖定被調(diào)度為由第一CPU執(zhí)行的第一線程占據(jù)的共享資源的代碼裝置,該第二線程具有高于第一線程的優(yōu)先級(jí);用于通過將第二線程的較高優(yōu)先級(jí)傳遞給第一線程來引導(dǎo)第一線程的優(yōu)先級(jí)的代碼裝置;和用于通過將第一線程重新調(diào)度為在第二CPU上運(yùn)行來增強(qiáng)第一線程的優(yōu)先級(jí)引導(dǎo)的代碼裝置。
7.根據(jù)權(quán)利要求6所述的計(jì)算機(jī)程序產(chǎn)品,其中當(dāng)增強(qiáng)所述第一線程的優(yōu)先級(jí)引導(dǎo)時(shí),該第一線程成為下一個(gè)被調(diào)度為執(zhí)行的線程。
8.根據(jù)權(quán)利要求7所述的計(jì)算機(jī)程序產(chǎn)品,其中在增強(qiáng)了所述第一線程的優(yōu)先級(jí)引導(dǎo)之后,第二線程通過進(jìn)入休眠來放棄第二CPU,以等待該第一線程釋放所述鎖定。
9.根據(jù)權(quán)利要求8所述的計(jì)算機(jī)程序產(chǎn)品,其中在第一線程釋放了所述鎖定之后,第二線程醒來,并被重新調(diào)度為由第二CPU執(zhí)行。
10.根據(jù)權(quán)利要求9所述的計(jì)算機(jī)程序產(chǎn)品,其中在被重新調(diào)度為由第二CPU執(zhí)行之后,所述第二線程可能是下一個(gè)被調(diào)度為執(zhí)行的線程。
11.一種用于增強(qiáng)調(diào)度線程的優(yōu)先級(jí)引導(dǎo)的設(shè)備,包括用于由正在第二CPU上執(zhí)行的第二線程確定是否等待鎖定被調(diào)度為由第一CPU執(zhí)行的第一線程占據(jù)的共享資源的裝置,該第二線程具有高于第一線程的優(yōu)先級(jí);用于通過將第二線程的較高優(yōu)先級(jí)傳遞給第一線程來引導(dǎo)第一線程的優(yōu)先級(jí)的裝置;和用于通過將第一線程重新調(diào)度為在第二CPU上運(yùn)行來增強(qiáng)第一線程的優(yōu)先級(jí)引導(dǎo)的裝置。
12.根據(jù)權(quán)利要求11所述的設(shè)備,其中當(dāng)增強(qiáng)所述第一線程的優(yōu)先級(jí)引導(dǎo)時(shí),該第一線程成為下一個(gè)被調(diào)度為執(zhí)行的線程。
13.根據(jù)權(quán)利要求12所述的設(shè)備,其中在增強(qiáng)了所述第一線程的優(yōu)先級(jí)引導(dǎo)之后,第二線程通過進(jìn)入休眠來放棄第二CPU,以等待該第一線程釋放所述鎖定。
14.根據(jù)權(quán)利要求13所述的設(shè)備,其中在第一線程釋放了所述鎖定之后,第二線程醒來,并被重新調(diào)度為由第二CPU執(zhí)行。
15.根據(jù)權(quán)利要求14所述的設(shè)備,其中在被重新調(diào)度為由第二CPU執(zhí)行之后,所述第二線程可能是下一個(gè)被調(diào)度為執(zhí)行的線程。
16,一種用于增強(qiáng)調(diào)度線程的優(yōu)先級(jí)引導(dǎo)的系統(tǒng),包括至少一個(gè)用于存儲(chǔ)代碼數(shù)據(jù)的存儲(chǔ)器件;和至少兩個(gè)CPU,該至少兩個(gè)CPU中的一個(gè)用于處理代碼數(shù)據(jù),以由正在至少一個(gè)CPU上執(zhí)行的第二線程確定是否等待鎖定被調(diào)度為由另一個(gè)CPU執(zhí)行的第一線程占據(jù)的共享資源,該第二線程具有高于第一線程的優(yōu)先級(jí);通過將第二線程的較高優(yōu)先級(jí)傳遞給第一線程來引導(dǎo)第一線程的優(yōu)先級(jí);和通過將第一線程重新調(diào)度為在第二CPU上運(yùn)行來增強(qiáng)第一線程的優(yōu)先級(jí)引導(dǎo)。
17.根據(jù)權(quán)利要求16所述的系統(tǒng),其中當(dāng)增強(qiáng)所述第一線程的優(yōu)先級(jí)引導(dǎo)時(shí),該第一線程成為下一個(gè)被調(diào)度為執(zhí)行的線程。
18.根據(jù)權(quán)利要求17所述的系統(tǒng),其中在增強(qiáng)了所述第一線程的優(yōu)先級(jí)引導(dǎo)之后,第二線程通過進(jìn)入休眠來放棄第二CPU,以等待該第一線程釋放所述鎖定。
19.根據(jù)權(quán)利要求18所述的系統(tǒng),其中在第一線程釋放了所述鎖定之后,第二線程醒來,并被重新調(diào)度為由第二CPU執(zhí)行。
20.根據(jù)權(quán)利要求19所述的系統(tǒng),其中在被重新調(diào)度為由第二CPU執(zhí)行之后,所述第二線程可能是下一個(gè)被調(diào)度為執(zhí)行的線程。
全文摘要
提供一種增強(qiáng)調(diào)度線程的優(yōu)先級(jí)引導(dǎo)的系統(tǒng)、設(shè)備和方法。如果正由第二CPU執(zhí)行,第二線程確定其需要等待鎖定被調(diào)度為由第一CPU執(zhí)行的第一線程占據(jù)的共享資源,則第二線程通過在其優(yōu)先級(jí)高于第一線程的優(yōu)先級(jí)情況下將第二線程的較高優(yōu)先級(jí)傳遞給第一線程來引導(dǎo)第一線程的優(yōu)先級(jí)。此外,為了增強(qiáng)第一線程的優(yōu)先級(jí)引導(dǎo),第二線程將第一線程重新調(diào)度為由第二CPU處理。通過在第二CPU上被重新調(diào)度,第二線程可以被調(diào)度為此后立即執(zhí)行。
文檔編號(hào)G06F12/00GK1605988SQ20041005565
公開日2005年4月13日 申請(qǐng)日期2004年8月2日 優(yōu)先權(quán)日2003年10月9日
發(fā)明者巴蘇·韋德亞納撒, 拉里·B·布倫納 申請(qǐng)人:國際商業(yè)機(jī)器公司