TW531706B - Method and apparatus in a data processing system for dynamic graphics context switching - Google Patents
Method and apparatus in a data processing system for dynamic graphics context switching Download PDFInfo
- Publication number
- TW531706B TW531706B TW090117318A TW90117318A TW531706B TW 531706 B TW531706 B TW 531706B TW 090117318 A TW090117318 A TW 090117318A TW 90117318 A TW90117318 A TW 90117318A TW 531706 B TW531706 B TW 531706B
- Authority
- TW
- Taiwan
- Prior art keywords
- graphics
- environment
- scope
- data
- item
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Description
531706 A7 B7 五、發明説明q 發明背景: 1 .技術領域: 本發明係大致有關一種改良式資料處理系統,尤係有關 一種用來處理圖形資料之方法及裝置。更具體而言,本發 明提供了 一種用來處理自不同程序接收的多種大小的圖形 資料以便由一圖形介面卡顯示之方法及裝置。 2 .相關技術之背景: 通常係將諸如個人電腦及工作站等的資料處理系統用來 執行電腦輔助設計(Computer Alded Design ;簡稱CAD) 應用程式、電腦輔助製造(C()mputer Alded M_faet_g ; 簡稱C AM)應用程式、及電腦輔助軟體工程(c〇mputer Aided Software Engineering ;簡稱 CASE)工具程式。工程 師、科學家、技術人員、及其他專業人員滿偏都使用這些 應靠式。這些應用程式涉及諸如有限元素分析等複雜的 計算,以便將結構中的應力模型化。其他的應用程式包括 化學或分子模型化應用程式。,就轉送給使用者的資訊而 論,CAD/CAM/CASE通常是含有相當多的圖形。資料處 理系統使用者亦可使用其他圖形豐富的應用程式,例如桌 上出版應用程式。一般而言,這些應用程式的使用者需要 並要求資料處理系統能夠提供相當快速的圖形資訊。 若要處理圖形資料流以便在一影像顯示終端機上提供一 圖形顯示,則需要有極快速的圖形系統,以便提供具有一 迅速回應之顯示。在這些類型的圖形系統中,係接收圖元 (pnmiHve),以便進行處理及顯示。圖元是用來作為產生
本纸張尺度適用中國國家標準(CNS) A4規格(210X297公复) 531706 五、發明説明(2 ) 影像的建構單元之 形、或球形。係由一組的一個或多個頂點界定一圖元。係 利用-屬性來界定顯示一圖元之方式。屬性包括諸如線 型、彩色、及表面材質。頂點界定—點、—邊緣的_端 點、或多邊科兩個邊緣相接的一角;落。資,料亦與一了頁點 相關聯,其中該資料包括諸如位置座標、彩色、法線、及 材質座標等的資訊。係將命令傳送到圖形系統,以便界定 處理圖元及其他資料以供顯示之方式。 由於處理圖形資料涉及到大量的資料及計算,尤Α在涉 及三維應用時,係將許多這類計算的負載自中央處理單元 轉移到-圖形介面卡。在這些圖形系統内,係利用為於該 圖形介面卡中的-圖形管線來處理該圖形資料。利用管線 時,係將圖形資料處理劃分到若干級的處理元件,其中係 由各別的處理元件循序執行處理資料。 在-多工圖形環境中’多個程序經常共用相同的圖形介 面卡。為了使每一圖形程序將圖形資料傳送到圖形介面 卡,每一程序需要一個圖形形成環境。在將圖形資料自— 特定的圖形程序傳制圖形介面卡之前,絲由—環境切 換處理器在該圖形介面卡上恢復該圖形形成環境 切換處理器執行環境的儲存’並恢復該等圖形程序的功 :二母-圖形程序都可存取該圖形介面卡。不同圖形程 序的壞境可能有相當大的不同。例如,三料 二維的圖形環境大許多。.衣兄比 都設定為相同的大小。若二:換圖形程序的環境 右要切換母一程序的整個環境,則 531706 A7 B7 五、發明説明(3 ) 將減緩顯示圖形資料的程序。此外,此種機制會浪費介面 卡中的記憶體,而且也會減緩對不同程序的環境諸切換。 因此,最好能有一種可動態切換不同圖形程序的環产之 改良式方法及裝置。 發明概述: 本發明提供了-種在-資料處理系統中對複數個圖 序進行環境管理之方法及裝置」接收到一個將圖形資 該等複數個圖形程序内的一第一圖形程序傳送到一圖形八 面卡之一要求。決定是否需要完全改變該圖形介面卡的: 現有環境以便處理來自該第—圖形程序之圖形資料。 只需要改變一部分的現有環境,則儲存所要改變的的 部分。然後掏取該圖形程序之環境資訊,並利用一』 中儲存的一組環境,而將該—立次 ^ 資訊而放置。 連同所需的現有環境 附圖簡述: 本發明之創新特徵係述於最後的申請專利範圍中。妙 而,若參照下文中對一實施例之詳細說明,並二 圖,將可更易於了解本發明、 〇各附 日从 以及其較佳使用模式、其他 目的、及優點,這些附圖有·· 、 圖θ可根據本發明—較佳實㈣而實 處理系統之示意圖; 4义/3扪貝科 圖2是可實施本發明的一 貝枓處理糸統之方塊圖; 圖3疋用於根據本發明_ 組件之方塊圖; ^土“例的動態環境切換的各 I紙張尺國國家標準(CNS)J^^ 10X297公釐)
圖7是根據本發明 圖;以及 531706 _____ A7 五、發明説明Y ---— 圖4不出根據本發明一 圖5是用來建立根據本^ ⑽― 圖; 根據本發明—較佳實施例的-環境之流程 圖6是根據本發明一較 圖; 土只施例的一 ^境切換程序之流程 較佳實施例而儲存環境資訊之流程 。圖8是根據本發明—較佳實施例而恢復_程序的環境之流 程圖。 較佳實施例之詳細說明: 現在請參閱各圖示,尤其請參閱圖1,圖中示出可根據本 發明-較佳實施例而實施本發明的―資料處理系統之示意 圖。圖中示出-電腦(1〇〇),該電腦(1⑽)包含—系統單元 (H0)、一影像顯示終端機(102)、一鍵盤(1〇4)、可包括 軟碟機及其他類型的永久性及抽換式儲存媒體之若干儲存 裝置(108)、以及滑鼠(106)。個人電腦(1〇〇)可搭配使用 的額外輸入裝置包括诸如一搖桿、觸控塾、觸摸式螢幕、 及軌跡球等輸入裝置。可利用諸如國際商務機器股份有限 公司(位於 Armonk,New York)產品的 IBM RS/6〇〇〇 電 或Intel】i Station電腦等的任何適用電腦來實施電腦 (1 〇〇)。雖然該示意圖示出一電腦,但是亦可利用諸如網路 電知專其他類型的電腦來實施本發明的其他實施例。電腦 (100)最好也包含一圖形使用者介面,且可利用常駐在於電 腦(1 0 0)内作業的電腦可讀取的媒體中之系統軟體來實施該 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
531706 A7 B7 五、發明説明( 圖形使用者介面。 現在請參閱圖2,圖中示出可實施本發明的一資料處理系 充:方塊=料處理系統(2GG)是—電腦的例子,例如圖 之電100) ’可將用來實施本發明程序的指令碼或指 令置於電腦(刚)中。資料處理系統⑽)採用一周邊組件 連(ripheral Component Interconnect ;簡稱 PCI)區域 匯流排架構。雖_示之實例採用pci匯流排,但是亦可 使用諸如加速圖形埠(Accelemed ⑽;簡稱 A<GP)及工業標準架構(IndustryArchitecture ;簡 % ISA)等其他的匯流排架構。處理器(2〇2)及主記憶體 (4 )係、”工由P C1橋接為(2 0 8 )而連接到p c I區域匯流排 (2〇6) PCI橋接為(2〇8)亦可包含用於處理器(2〇2)的一 正&式。己隐te控制為及快取記憶體。可經由直接組件互連 或經由附加介面卡而作出到PCI區域匯流排(2〇6)之額外 連接。在所示實例中,係以直接組件連接之方式將區域網 路(Local Area Network ;簡稱 LAN)介面卡(210)、小 型電 系統介面(Small Computer System Interface ;簡稱 SCSI)主匯流排介面卡(2 12)、及擴充匯流排介面(2 14)連 接到PCI區域匯流排(206)。相反地,係以插入擴充插槽 的附加介面卡將音效卡(2 16)及圖形介面卡(2 18)連接到 PCI區域匯流排(206)。擴充匯流排介面(2丨4)提供了一鍵 盤及滑鼠轉接器(220)、數據機(222)、及額外記憶體(224) 之一連接。SCSI主匯流排介面卡(2 12)提供了硬碟機 (2 2 6)、磁帶機(2 2 8)、及光碟機(2 3 0)之一連接。點型的 本纸張尺度適用中國國家標準(CNS) A4規格(210X 297公釐) 531706 A7 B7 五、發明説明(。 PCI區域匯流排將支援三或四# PCI擴充插槽或插入連 接器。 在處理器(2 02)上執行一作業系統,且利用該作業系統來 協調並控制圖2所示資料處理系統(2〇〇)内的各種組件。該 作業系統可以是一在市場上銷售的作業系統,例如由 Microsoft Corporation 所供應的 Wind〇ws 2〇〇〇。可配合 該作業系統而執行諸如Java等的一物件導向程式系統, 且該物件導向程H统提供了自在資料處理系統(2⑽)上執 行的Java程式或應用程式向該作業系統之呼叫。“以…,, 是Sim Mlcr0SyStems,Inc.的一商標。該作業系統 令、該物件導向作業系統、及應用程式或程式係置於諸如 硬碟機(226)等的儲存裝置t,且可被載入主記憶體 (2〇4),以便由處理器(2〇2)執行。本發明尤其提供了一種 用於將圖形資料傳送到諸如圖形介面卡(218)等的_圖形介 面卡的不同程序之動態切換環境機制。利用將記憶體分配 給共用圖形介面卡(218)的不同程序之儲存環境,即可提供 此種優點。 對此項技藝具有一般知識者當可了解,圖2所示之硬體 可隨著實施方式的不同而有所改變。亦可以添加到或取代 圖2所示硬體之方式,而使用諸如快閃議(或等效的非 揮發性記憶體)或光碟機等的其他内部硬體或周邊裝置。此 外’亦可將本發明的程序應用於多處理器的資料處理系 統。 例如,如果選擇將資料處理系統(2〇〇)的組態設定為一網 本紙張尺度適财S g家標準 531706 A7 B7 五、發明説明(7 ) 路電腦,則資料處理系統(200)可包含SCSI主匯流排介面 卡(212)、硬碟機(226)、磁帶機(228)、及光碟機(23〇), 而如圖2中的虛線(232)所示,用來表示可供選用的内含 物。在此種情形中,正確地應該稱為用戶端電腦的該電腦 必須包含某些類型的網路通訊介面,例如LAN介面卡 (2 10)或數據機(222)等介面。再舉一個例子,資料處理系 統(20 0)可以是組態被設定為(無論資料處理系統(2〇〇)是 否包含某一類的網路通訊介面)不必依賴某一類的網路通訊 介面即可啟動的一獨立系統。再舉一個例子,資料處理系 統(200)可以是一個人數位助理(Pers〇nal Dighai
AsSlstant ;簡稱PDA),且該pDA配置有r〇m及(或) 快閃ROM,以便提供用來儲存作業系統檔案及(或)使用者 產生的資料之非揮發性記憶體。 圖2所示實例及上述的例子之用意並非在加諸架構上的 限制。例如,資料處理系統(200)也可以是一筆記本型電 腦、或形式為PDA以外的手持電腦。資料處理系統(2〇〇) 也可以疋一資訊站(kiosk)或一網路家電。 處理器(202)利用電腦執行的指令來執行本發明的程序, 而該等電腦執行的指令可置於諸如主記憶體(2〇4)、記憶體 (224)等的一記憶體中’或可置於一個或多個周邊裝置 (226 - 230)中。 本發明提供了 -種由多個圖形程序共用同_圖形介面卡 的多工圖形環境中之機制。係將該資料處理系統中諸如圖2 所示主記憶體(204)等-部分的記憶體分配給環境切換令之 __;_ - 10 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公爱] " ------- 531706 A7 B7 五、發明説明(< 用途。在這些例子中,記憶體分配係採用固定緩衝器 (pinned buffer)。固定缓衝器是一種不會交換到一磁碟 (例如在一虛擬記憶體電腦系統中,係將磁碟空間用來作為 最近不曾使用的資訊之延伸記憶體)的缓衝器。利用固定緩 衝器或其他固定記憶體時,可讓裝置驅動程式迅速地存取 該記憶體中之資訊,而無須將資訊自一磁碟機交換進來。 各圖形程序可存取該固定緩衝器,以便指定是否需要某 些預定的功能或動作。這些功能包括諸如材質貼圖 (texture mappmg)及色彩查詢。其他的功能包括諸如: 與色彩深度緩衝器有關的資訊、硬體照明、係為材質貼圖 的種憂形之凹凸貼圖(bump-mapping);以及平滑化處 理(anti-aliasing)運算。 當發生一環境切換時,環境切換機制讀取固定緩衝器, 以便決定是需要一完整的環境切換或一部分的環境切換。 環境(context)即是在某一時點上指定的資訊或參數。在一 命令的時點上,可能不必重新敘述或重新指定該資訊,即 可執行一作業’但是該資訊必然影響到該命令的效能。例 如,可利用-程式晝出利用色彩是一環境時的綠色之一組 線。可利用第程式晝出利用紅色的第二組線。當第一程式 執行時,係將色彩設定為綠色。在第_程式完成畫紅 前,發生-岔斷,此時第二程式開始執行。第二程式將色 衫設定為紅色,並開始畫線。第二岔斷發生,此時是第一 程式恢復執行的時間。此時’將色彩設定為红色。每者第 -程式晝-條線時,第一程式並未重新設定色彩。因:, ^11- 本纸張尺度適财關家標規格^ 531706 A7 ------- B7 五、發明説明(9 ) 如果第-程式並未將環境(在此例中為線的色彩)重新— 為綠色’㈣會以錯誤的色彩晝出線條。在該例中,^疋 用一裝置驅動程式將該環境恢復為綠色。在此種方式;利 該#程式無須追縱環境資訊。 亦可利用該資訊來決定必須用&分配圖形介面卡中的記 憶體之圖形環境大小。被視為環境的其他資訊包括諸如°己 是否起動照明或限制;是否應畫出或填滿圖元;目前線條 的點畫圖樣;以及目前材質的混合功能。 木 然後請參閱圖3,圖中示出根據本發明一較佳實施例而用 於動態環境切換的各組件之一方塊圖。在該實例中,應用 耘式(300)、(302)、及(304)是在一多工圖形環境中,並 共用諸如圖2所示圖形介面卡(218)等的單一圖形介面卡。 如圖所示,每一應用程式包含一圖形程序,而該圖形程序 產生用於顯示之圖形資料。當然,根據特定應用的不同, 一應用程式可包含多個圖形程序。這些應用程式將圖形資 料傳送到作業系統(3 〇 8 )中之裝置驅動程式(3 〇 6 )。裝置驅 動程式疋一種將諸如圖形介面卡(218)等的一周邊裝置連結 到作業系統之程式或常式。一特定的裝置驅動程式自應 用程式(3〇0)、(3〇2)、及(304)接收要求及資料,並將這 些要求轉換為該周邊裝置可識別的特定命令語言及格式。 在該實例中,應用程式(300)、(3〇2)、及(304)可存取 緩衝器(3 10),以便寫入並改變環境資訊。環境資訊在該實 例中的形式為com_records(312)。當這些應用程式中的 一個應用程式將圖形資料傳送到裝置驅動程式(3〇6),以便 ___ _- 12 - 本紙張尺度適用中國國家標準(CNS) Μ規格(咖χ 297公爱) 531706 五、發明説明( ::介面卡上顯示時,裝置驅動程式(3。6)將檢視緩衝 TO()中之C°m-reC°rds(312),以便得知是否 壤:切換。如果需要—環境切換,則裝置驅動程式(3 可決定視需要-部分的或完整的環境切換。裝置驅動程式 (3〇6)將根據該決^,而選擇性地切換圖形介面卡中 境。作為切換環境的-部分,裝置驅動程式⑽)亦可改變 圖形環境的大小,以便為該環境而動態地改變圖形介面卡 内記憶體之分配。在此種方式下,當一特定的環境尸 較少的記憶體時,可將較多的記憶體留給該圖形介面卡中 的其他用途。諸如一圖形介面卡等的每一個硬體都有一裝 置驅動程式。該裝置驅動程式知道潛在的環境資訊,且通 常儲存所有的環境資訊。可自—裝置驅動程式或自圖形介 面卡的該裝置職程式所儲存的資財取得_特定環 需的記憶體容量。 在這些實例中設定-旗標,以便識別目前所用的環境之 各早位或部分。該裝置驅動程式利用該旗標來識別應儲存 的環境及不應儲存的環境。 現在請參閱圖4,圖中示出根據本發明一較佳實施例的一 C〇m_record。利用com_rec〇rd(4〇〇)來識別一特定的程 序正在使用哪—環境資訊。藉由c__rec〇rd(彻)的使 用,本發明之機制可決定在一新的程序正在傳送圖形資料 以供處理時是否需要一完整的環境切換。 該實例中的Comjecord(400)包含設定與c〇m一咖鄉〇〇) 相關聯的程序的材質及色彩查詢功能之一識別。在這些實 -13 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 531706
例中,每一程序係與_c〇m H .. ^ — 々日關%。com rec〇rdi400、 疋成行的環境資訊的一個例子 #十、, 坆些仃是用來識別一特定 矛王序目⑹正在使用的環境彳 私不碼或旗標。一環境通常包 含用來識別該環境的數百個元素。於產生—環境時,當一 程序開始時’該程序即產生該環境。—圖形程序進行一 API呼叫’以便產生—個或多個圖形環境。當一特定的環 境將成為現用環境時,該圖形程序即進行一 AM呼叫,以 便使一^定的環境與一視窗相關聯。在此種方式下,圖形 ^序% ^、與視窗之間存在—種關係。係利用裝置驅動 程式所供應的一唯一識別碼來識別該環境。係將該唯一識 別馬,、工由用來產生違環境的A p!呼叫而提供給應用程式。 這些唯一識別碼係儲存在c〇m 一 rec〇rd(4〇〇)中。在此種方 式下,该裝置驅動程式在每一環境的唯一識別碼與Ap丨所 供應而與目前正在使用的環境的各部分有關的資訊之間有 一唯一的配對。 該API在共用g己憶體中產生一 coin — record(400),並 只在一次的機會中,經由對該裝置驅動程式的一呼叫,將 com一re cord (4 00)位於共用記憶體中何處的訊息告知該裝 置驅動程式。該裝置驅動程式然後檢視共用記憶體,以便 作出有關環境切換的決定。如果該資訊改變了,則該應用 程式更新該共用記憶體。例如,一應用程式開始,且一應 用程式起始共用記憶體,以便敘述:using_texture為 FALSE,且using —l〇〇k up為FALSE。該應用程式然後呼 叫該裝置驅動程式,將共用記憶體在何處以及該共用記憶 _ - 14 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐) 531706 A7 ____Β7 五、發明説明(12 ) ' ' ' ~ 體已備妥可使用之訊息告知該裝置驅動程式。該裝置驅動 程式然後進行一環境切換。當該裝置驅動程式儲存該環境 牯,忒裝置驅動程式遮using —texture. FALSE,因而該 裝置驅動程式並不儲存材質資訊。該裝置驅動程式得知 using 一 look up為FALSE,因而該裝置驅動程式並不儲存 色彩查詢資訊。當該裝置驅動程式將該程序切換回現用模 式時,該裝置驅動程式得知11以叫一4以11]^為FALSE,因 而該裝置驅動程式並不回復材質資訊。該裝置驅動程式得 知using —lookup為FALSE,因而該裝置驅動程式並不回 復色彩查詢表資訊。該應用程式開始使用材質查詢。該應 用程式將TRUE寫入共用記憶體中被稱為“usmgJ〇〇kup,,的 一分。该裝置驅動程式將該環境關閉。該裝置驅動程式檢 視共用記憶體中的com_record,並得知uSlng —texture 為false,因而該裝置驅動程式並不儲存材質資訊。該 裝置驅動程式得知using —lookup為TRUE,因而該裝置 驅動程式儲存色彩查詢資訊。該裝置驅動程式然後將該環 i兄切換回到開啟狀態。該裝置驅動程式檢視共用記憶體中 之 com_record,並得知 using — texture 為 FALSE,因 而該裝置驅動程式並不回復材質資訊。該裝置驅動程式得 知using一lookup為TRUE,因而該裝置驅動程式回復色 彩查詢資訊。 現在请參閱圖5 ’圖中示出根據本發明一較佳實施例而建 立一環境之流程圖。圖5所示之流程是諸如圖3所示應用 程式(3 00)、(3 02)、或(3 04)等的一應用程式所使用之一 _ - 15 - 本紙張尺度適财g g家鮮(CNS) A4規格(210 X 297公爱) - 531706 A7 B7 五、發明説明(13 例示流程。 該程序開始時,係在步驟(5〇〇)中產生一記錄。在這些實 例中,該5己錄的形式為諸如圖4所示c〇m一⑼)之 com—record。當然,該等記錄也可採用其他各種形式,例 如表中之一肓料項、或一資料庫中之一記錄。然後於步 驟(5 0 2 )中,在該記錄中設定各預定的功能。在該等所示實 例中’這些功能包括材質及色彩查詢功能。於建立一基礎 % i兄柃,該裝置驅動程式接收一個建立該環境之呼叫,並 利用系統預設值或功能來建立該等基礎環境。例如,在一 基礎環境中提供了 一系統預設的線色彩。當一環境與一視 窗間之配對發生時,將諸如寬度、高度、及視窗類型等額 外的資訊加入該環境。係將該資訊加入與一特定程序相關 聯之環境記錄。 然後在步驟(504)中,由圖形應用程式或程序執行各圖形 運异,然後本程序即終止。每當一應用程式要求一裝置驅 動程式產生一環境時,一圖形應用程式或程序即產生一唯 的圯錄在摧毀該環境或跳出該程序之前,該資訊都是 存在的。 然後凊I閱圖6,圖中示出根據本發明—較佳實施例的環 境切換之流程圖。可在諸如圖3所示裝置驅動程式(3〇6)等 的-裝置驅動程式中實施圖6所示之程序。當然,亦可根 據實施的方式而在其他的位置中實施該程序。例如,可在 一圖形核心中實施該程序。 該等事件序列開始時,係在步驟(6〇〇)中自一程序接收一 1________- 16 - 本紙張尺度適用t S國家標準(CNS) A4規格(·Χ297公|丁 531706 14 五、發明説明( 個將圖形資料傳送到一圖形介 氺宋θ木馆士 α 卡之要求。在步騾(602)中 ^疋否現有㈣境對提㈣要求的程序是 ) ^有的環境是不正確的,則在步驟(6G4)中識別盘該程序^ 關聯的一記錄。S這些實例 衝器中的com—record 。 ^己錄疋位於一固定緩 =在::(6。6)中決定是否需要一完整的環境切換。如 ^ =㈣境㈣’财㈣(_)中料該現有的 2r iG)中將該程序所需的環境恢復到放入到 適虽的位置’以供使用。後在步驟(612)中將圖形資料及 止3、。)該要求中之命令傳运到該圖形介面卡,’然後本流程終 請再參閱步驟(606),如果不需要一完整的環境切換,則 在步驟(614)中儲存現有的環境。在步驟(614)中,只儲存 該現有的環境中將要改變的各部分。然後在步驟⑷6)中, 恢復該環境中該程序所識別的各部分,然後流程繼續進入 到前文所述的步驟(612)。換言之,係將需要改變的環境資 Λ擷取到或放置到現有的環境’以便修改現有的環境。再 回到步驟(6G2) ’如果該圖形介面卡中現有的環境對傳該要 求的程序是正確的,則本流程繼續進入到前文所述的步驟 (610) 〇 然後請參閱圖7,圖中示出根據本發明一較佳實施例而儲 存環*兄資訊的一 ί王序之流程圖。係於一環境切換期間使用 忒程序,且係在諸如圖3所示的裝置驅動程式(3〇幻等的一 裝置驅動程式中實施該程序。
531706 A7 B7 五、發明説明 該=始時’係在步驟(7〇〇)中將基礎環 與一程序的環境相關聯之一 本PMm 中。在步驟(7〇2)中決定是 否在料兄中設材質。如果已設定了_材質,則 二二將材質資訊儲存在該記錄中。然後在步驟 果已已在該環境中設定了—色彩查詢功能。如 -又疋色办查詢’則在步驟(7〇8)中儲存色彩查詢資 訊,然後本程序終止。如果並未設定這些功能中的任一功 ::本程序終止’且只儲存基礎環境資訊。在該實例 :了便於解% ’只不出兩種類型的環境功能。根據可 能的不同類型之環境’將所有這類環境都儲存在記錄中。 見在叫多閱圖8,圖中不出根據本發明—較佳實施例而恢 復-程序的環境之流程圖。該程序開始時,係在步驟(8〇〇) 中恢復基礎環境。係利用與該程序相關聯的—記錄中之資 訊而恢復圖形介面卡中之基礎環境。該基礎環境包括在 呼叫一裝置驅動程式以便建立—圖形程序的—環境時該裝 置驅動私式所進行的系統預設之設定。在步驟…2 )中,決 定是否在該記錄中設定—材質功能。如果設定了 —材質功 能’則在步驟(804)中利用該記錄中的資訊而恢復圖形介面 卡中之該功能。 $後在步驟(806)中決定是否在該記錄中設定一色彩查詢 力月b如果。又疋了一色彩查詢功能,則在步驟(8 〇 8 )中利用 該記錄恢復圖形介面卡中的色彩查詢資訊1後本程序終 止如果在步驟(8 〇 2)中並未設定一材質功能,則該程序繼 、戈進入刖文所述的步驟(8 〇 6)。如果在步驟(8 〇 6)中並未設
發明説明(16 ) 定—色彩錢功能,則本程序终止 基礎環璜資訊、 …、該圖八不出恢復
Ba 特定功能的環境資訊,但是太恭
之機制將恢復該記錄中指定的任何功能之環境。 X 及8所示的該等步驟適用於儲存及恢復完 Γ广的環境。如果與所選擇的-環境相關聯的一 I⑽d指示目前並未使㈣環境中的 :仃一部分儲存。例如’如果在圖“斤示的例子中並未:: =叫ng_texture 及 using —1〇〇kup。則進行一部二 土兄切換。同樣地,在恢復環境資訊時,如果 衣 該環境的某&部分’則一*致 』亚未使用 要…7 凡整的%境切換作業可能不是必 反I;::”的步驟…。…
當一環境所需的空間容量改變時,亦可改變該環 小’以便分配新的空間。 J A 因此,本發明提供了-種用於一圖形環境中之機制,可 2個圖形程序共用相同的圖形介面卡。該機制可㈣一 己的特定環境而進行可重定一圖形介面卡中所用的 ;隱,…境切換。此外’如果需要—部分的環境切 =,則在該圖形介面卡中恢復需要的資訊。此外,在以部 刀=%境切換取代完整的環境切換之情形也增加了。時間 也節省了,這是因為只須儲存及恢復較少的資訊。 曰 Ρ請務必注意,雖然已在一全功能的資料處理系統環境中 次明了本發明,然而對本門技術具有一般知識者當可了 解,亦可以一種電腦可讀取的指令媒體之形式及多2形 531706 A7
配送本發明之各程序,而且不論 浃#、、,汾μ * ' %用來執行該配送的信 號載运媒體為何種特定類型, 可綠伽Μ诉姆 知月都可冋樣適用。電腦 :取的媒…式包括諸如軟碟、硬碟機、ram、及光 諸如==媒體、以及諸如數位與類比通訊鏈路、利用 傳輸等的傳輸形式之有線或無線通訊鏈路 =傳輸线體。開電腦可讀取的媒體之形式可採用為了 -料處㈣統中的實際使用而解碼之編碼格 式。 Μ久為了例不及說明之目的而提供本發明之說明,但是該 、月之用心並不疋在耗盡本發明的形式,也不是將本發明 艮於所揭不的形式。對此項技藝具有一般知識者將可易於 I解許多的修改及變化。選擇並說明該實施例,以便用最 侄之方式解說本發明的原理及主要應用,並使其他對此項 技藝具有一般知識者得以了解本發明的各種實施例,並對 這些實施例作出各種修改,以便適用於所需的特定用途。
Claims (1)
- 1 . 一種在一資料處理系統中處理來自複數個圖形程序的資料之 方法,包含下列步驟: 回應自一圖形程序接收到將圖形資料傳送到一圖形介面卡 之一要求,而決定是否需要完全改變該圖形介面卡中之一 現有環境以便處理來自該等複數個圖形程序之圖形程序圖 形資料;以及 如果不需要完全改變該現有環境,則利用該圖形介面卡中 的一記憶體儲存的一組環境中之一相關聯的環境而改變一 裝 部分的該現有環境,其中該相關聯的環境係與該圖形程序 相關聯。 2_如申請專利範圍第β之方法,其中該環境包含材質貼圖及 色彩查詢。 3.如申請專利範圍第β之方法,其_該現有環境係用於一個 二維的圖形環境。 如申請mm圍第i項之方法’其中該現有環境係用於一個 三維的圖形環境。 線 5. 如申請專利範圍第1項之方法’其中該記憶體是-緩衝器。 6. :申請專利範圍第1項之方法,其中該緩衝器儲存—組環 7 ·如申請專利範圍第1項之方法 組環境。 其中該組圖形程序可存取該 8 ·如申請專利範圍第1項之方法 在恢復該相關聯的環境之前, 進一步包含下列步驟·· 先儲存該現有的環境。 9 ·如申請專利範圍第1項之方法 ,其中該現有的環境係與該等申請專利範圍 後數個圖形程床向Μ σ 序内的另一圖形程序相關聯。 ιυ·—種在一資料 ^ 、 ’处理系統中對複數個圖形程序進行環境管该 之方該方法包含下列步驟: :等複數個圖形程序内的一第一圖形程序接收將圖形資 料傳送到-圖形介面卡之一要求; 決疋是否雲至,”, ^ 要乂 ν於全部之方式改變該圖形介面卡之〆瑰 、s兄乂便處理來自該第一圖形程序的圖形資料而形成/ 識別量;以及 利2 一把憶體中儲存的一組環境將該現有環境的該識別耋 隻為另環境’其中改變了少於全部的該現有環境。 申明專利範圍第1 〇項之方法,進一步包含下列步驟: 如果决定了以少於全部之方式改變一現有環境不足以讓该 圖形介面卡處理來自該第一圖形程序之圖形資料,則改變 所有的該現有環境。 12·如申凊專利範圍第11項之方法,進一步包含下列步驟: 將圖形資料傳送到該圖形介面卡。 13·如申請專利範圍第11項之方法,其中該改變步驟包含下列 步驟: 以利用該組環境的另一環境取代變該現有環境。 14·如申請專利範圍第1 1項之方法,其中該改變步驟包含下列 步驟: 以來自該組環境的環境資訊取代一部分的該現有環境,以 便形成該另一環境。 15·如申請專利範圍第11項之方法,其中該現有環境大於該另 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 531706一環境。 其中一環境的資訊包含材 ’其中該記憶體是一緩衝 其中該等複數個圖形程序 16.如申請專利範圍第丨丨項之方法, 質貼圖及色彩查詢。 17·如申請專利範圍第丨丨項之方法 器0 18.如申請專利範圍第丨丨項之方法, 可存取該記憶體。 说如申請專利範圍第"項之方法,其中該等複數個圖形程序 内的-圖形程序將環境資訊寫入與該圖形程序相關聯之一 環境。 20.-種用來處理來自複數個圖形程序的資料之資料處理系 統,包含: 決定裝置,用以回應自一圖形程序接收到將圖形資料傳送 到圖形"面卡之一要求,而決定是否需要完全改變該圖 形介面卡中之一現有環境以便處理來自該等複數個圖形程 序之圖形程序圖形資料;以及 改變裝置,用以在如果不需要完全改變該現有環境時,利 用該圖形介面卡中的一記憶體儲存的一組環境中之一相關 聯的環境而改變一部分的該現有環境,其中該相關聯的環 境係與該圖形程序相關聯。 21·如申請專利範圍第20項之資料處理系統,其中該環境包含 材質貼圖及色彩查詢。 22·如申請專利範圍第2p項之資料處理系統,其中該現有環境 係用於一個二維的圖形環境。 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 531706 尊利範圍 23:申請專利範圍第2〇項之資料處理系統 係用於一個三維的圖形環境。 24. 如申請專利範圍第2〇項之資料處 一緩衝器。 、” 25. 如申請專利範圍第2()項之資料處 存一組環境。 ’、、' 26. 如申請專利範圍第2()項之f料處理系統 序可存取該組環境。 專利範圍第2。項之資料處理系統,進人. 儲存裝置,用以在恢復該相關聯的 ^- · 有的環境。 之則’先儲存該現 28.如申請專利範圍第2〇項之 境係與該等複數個圖形料内心Y ’其中該現有的環 29mw ^内的另一圖形程序相關聯。 29·種對稷數個圖形程序進行環谙总邱♦次 資料處理系統包含:仃^§理之資料處理系統,該 接收裝置,甩以自該等複數個圖形程序内的一第一圖形 序接收將圖形資料傳送到_圖形介面卡之一要求; 決疋裝置’用以決定是否需要以少於全部之方式改變該 形’I面卡之一現有環境以便該圖形介面卡處理來自該第一 圖形程序的圖形資料而形成一識別量;以及 改變裝置’用以利用一記憶體中儲存的一組環境將該現有 %: &的該識別量改變為另一環境,其中改變了少於全部 該現有環境。 30·如申請專利範圍第2 9項之資料處理系統,進一步包含·· 其中該現有環境 其中該記憶體是 其中該緩衝器儲 其中該組圖形程 程 圖 的 -4- 本紙張尺度適用中國國家標準(CNS) Α4ϋ^^Γ297^|> 531706 V"胗正 A8 B8 C8 D8 專利範圍 改變裝置,用以在決定了以少於全部之方式改變一現有環 境不足以讓該圖形介面卡處理來自該第一圖形程序之圖开^ 資料時,改變所有的該現有環境。 ^ 31.如申請專利範圍第29項之資料處理系統,進一步包含: 傳送裝置’用以將圖形資料傳送到該圖形介面卡。 32·如申請專利範圍第29項之資料處理系統,其中該改變裝 包含: ~ 取代裝置,用以利用該組環境的另一環境取代該現有環 境。 33·如申請專利範圍第29項之資料處理系綠,甘士斗1 只ΓΤ处工王乐統,其中該改變裝置 包含: 、 取代裝置,該取代裝置以來自該組環境的環境資訊取代— 部分的該現有環境,以便形成該另一環境。 其中該現有環境 34·如申請專利範圍第29項之資料處理系統 大於該另一環境。 其中一環境的資 35.如申請專利範圍第29項之資料處理系統 訊包含材質貼圖及色彩查詢。 其中該記憶體是 36·如申請專利範圍第29項之資料處理系統 緩衝器 37.如申請專利範圍第29項之資料處 里糸統,其中該等複數個 圖形私序可存取該記憶體。 38·如申請專利範圍第29項之資料處 ^ ^ ^ ^ ^ 糸統,其中該等複數個 圖幵y私序内的一圖形程序將環境 關聯之-環境。 兄貝訊寫入與該圖形程序相 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)39·=種用於在一資料處理系統中處理來自複數個圖形程序的資 料之一電腦可讀取的媒體中之電腦程式產品,包含: 、 第一指令,用以回應自一圖形程序接收到將圖形資料傳送 到一圖形介面卡之一要求,而決定是否需要完全改變該圖 形介面卡中之一現有環境以便處理來自該等複數個圖形程 序之圖形程序圖形資料;以及 裝 第二指令’用以在不需要完全改變該現有環境時,利用該 圖形介面卡中的一記憶體儲存的一組環境中之一相關聯的 環境而改變一部分的該現有環境,其中該相關聯的環境係 與該圖形程序相關聯。 40·—種用於在一資料處理系統中對複數個圖形程序進行環境 官理之一電腦可讀取的媒體中之電腦程式產品,該電腦程 式產品包含: 第一指令,用以自該等複數個圖形程序内的一第一圖形程 序接收將圖形資料傳送到一圖形介面卡之一要求; 線 第二指令,用以決定是否需要以少於全部之方式改變該圖 形介面卡之一現有環境以便處理來自該第一圖形程序的圖 形資料而形成一識別量;以及 第三指令,用以利用一記憶體中儲存的一組環境將該現有 環境的該識別量改變為另一環境,其中改變了少於全部的 該現有環境。 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US62035500A | 2000-07-20 | 2000-07-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW531706B true TW531706B (en) | 2003-05-11 |
Family
ID=24485600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW090117318A TW531706B (en) | 2000-07-20 | 2001-07-16 | Method and apparatus in a data processing system for dynamic graphics context switching |
Country Status (10)
Country | Link |
---|---|
EP (1) | EP1303849B1 (zh) |
JP (1) | JP2004505355A (zh) |
KR (1) | KR20030020367A (zh) |
CN (1) | CN1282127C (zh) |
AT (1) | ATE304731T1 (zh) |
AU (1) | AU7086101A (zh) |
CA (1) | CA2418209A1 (zh) |
DE (1) | DE60113431T2 (zh) |
TW (1) | TW531706B (zh) |
WO (1) | WO2002009083A2 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3543942B2 (ja) * | 2000-03-02 | 2004-07-21 | 株式会社ソニー・コンピュータエンタテインメント | 画像生成装置 |
US7421694B2 (en) * | 2003-02-18 | 2008-09-02 | Microsoft Corporation | Systems and methods for enhancing performance of a coprocessor |
US6947051B2 (en) | 2003-02-18 | 2005-09-20 | Microsoft Corporation | Video memory management |
US7444637B2 (en) | 2003-02-18 | 2008-10-28 | Microsoft Corporation | Systems and methods for scheduling coprocessor resources in a computing system |
US7673304B2 (en) * | 2003-02-18 | 2010-03-02 | Microsoft Corporation | Multithreaded kernel for graphics processing unit |
KR101130361B1 (ko) | 2003-02-18 | 2012-09-18 | 마이크로소프트 코포레이션 | 코프로세서 내의 연산을 스트림라인하는 방법 |
JP4578180B2 (ja) * | 2004-08-25 | 2010-11-10 | ソフトバンクモバイル株式会社 | データ処理方法及び移動通信端末装置 |
JP4683384B2 (ja) | 2004-09-22 | 2011-05-18 | 株式会社ソニー・コンピュータエンタテインメント | メモリ制御方法、グラフィックプロセッサおよび情報処理装置 |
US10114679B2 (en) | 2011-10-26 | 2018-10-30 | Microsoft Technology Licensing, Llc | Logical CPU division usage heat map representation |
CN102945162B (zh) * | 2011-10-26 | 2016-12-21 | 微软技术许可有限责任公司 | 用于设备实现逻辑cpu划分的使用热度图表示的方法和装置 |
KR101869939B1 (ko) | 2012-01-05 | 2018-06-21 | 삼성전자주식회사 | 멀티-쓰레딩을 사용하는 그래픽 처리를 위한 방법 및 장치 |
KR101953133B1 (ko) | 2012-02-27 | 2019-05-22 | 삼성전자주식회사 | 렌더링 장치 및 그 방법 |
US9086813B2 (en) * | 2013-03-15 | 2015-07-21 | Qualcomm Incorporated | Method and apparatus to save and restore system memory management unit (MMU) contexts |
CN106648841B (zh) * | 2016-12-12 | 2020-06-30 | 中国航空工业集团公司西安航空计算技术研究所 | 一种图形上下文管理方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5276798A (en) * | 1990-09-14 | 1994-01-04 | Hughes Aircraft Company | Multifunction high performance graphics rendering processor |
WO1999056249A1 (en) * | 1998-04-27 | 1999-11-04 | Interactive Silicon, Inc. | Graphics system and method for rendering independent 2d and 3d objects |
US6317137B1 (en) * | 1998-12-01 | 2001-11-13 | Silicon Graphics, Inc. | Multi-threaded texture modulation for axis-aligned volume rendering |
US6437788B1 (en) * | 1999-07-16 | 2002-08-20 | International Business Machines Corporation | Synchronizing graphics texture management in a computer system using threads |
-
2001
- 2001-07-16 TW TW090117318A patent/TW531706B/zh active
- 2001-07-19 DE DE60113431T patent/DE60113431T2/de not_active Expired - Lifetime
- 2001-07-19 AU AU7086101A patent/AU7086101A/xx active Pending
- 2001-07-19 CN CNB018127002A patent/CN1282127C/zh not_active Expired - Fee Related
- 2001-07-19 KR KR10-2003-7000562A patent/KR20030020367A/ko not_active Application Discontinuation
- 2001-07-19 EP EP01949744A patent/EP1303849B1/en not_active Expired - Lifetime
- 2001-07-19 WO PCT/GB2001/003226 patent/WO2002009083A2/en not_active Application Discontinuation
- 2001-07-19 AT AT01949744T patent/ATE304731T1/de not_active IP Right Cessation
- 2001-07-19 JP JP2002514706A patent/JP2004505355A/ja active Pending
- 2001-07-19 CA CA002418209A patent/CA2418209A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
CA2418209A1 (en) | 2002-01-31 |
WO2002009083A2 (en) | 2002-01-31 |
JP2004505355A (ja) | 2004-02-19 |
DE60113431D1 (de) | 2005-10-20 |
DE60113431T2 (de) | 2006-06-14 |
CN1541373A (zh) | 2004-10-27 |
EP1303849A2 (en) | 2003-04-23 |
AU7086101A (en) | 2002-02-05 |
ATE304731T1 (de) | 2005-09-15 |
WO2002009083A3 (en) | 2002-07-04 |
EP1303849B1 (en) | 2005-09-14 |
KR20030020367A (ko) | 2003-03-08 |
CN1282127C (zh) | 2006-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW531706B (en) | Method and apparatus in a data processing system for dynamic graphics context switching | |
US5214756A (en) | Direct manipulation of icons via conversational linking | |
TW561420B (en) | Method and system for graphics rendering using hardware-event-triggered execution of captured graphics hardware instructions | |
JP3659062B2 (ja) | 計算機システム | |
JP3546705B2 (ja) | アプリケーション・ウインドウにアノテーション・データを対応付ける方法及び装置、システム、アプリケーション・ウインドウへのアノテーション・データの対応付けを制御するプログラムを格納した記憶媒体 | |
WO2023279993A1 (zh) | 图形渲染方法、装置、电子设备与存储介质 | |
WO2021017719A1 (zh) | 一种信息处理方法、物理机和pcie设备 | |
US7475197B1 (en) | Cross process memory management | |
TW200411403A (en) | System and method for transferring data between virtual machines or other computer entities | |
JP2013546043A (ja) | 即時リモートレンダリング | |
JP2009187379A (ja) | 仮想計算機サーバ装置、更新画像検出方法およびプログラム | |
TW201027334A (en) | Ruggedized memory device | |
CN102081556A (zh) | 与不同种类的资源通信的基于指令系统结构的内定序器 | |
EP0862757A1 (en) | Shared virtual desktop collaborative application system | |
WO2002065281A1 (en) | Method, system and computer program product for efficiently utilizing limited resources in a graphics device | |
CN112801855B (zh) | 基于图元的渲染任务调度的方法、装置及存储介质 | |
JP2001501758A (ja) | 連続するメモリのバッファを獲得し、ページテーブルを構築する方法 | |
CN109495555A (zh) | 一种基于云平台创建云主机的方法和装置 | |
JP2004317583A (ja) | 描画装置 | |
WO2023173516A1 (zh) | 数据交互的方法、装置、存储介质及电子设备 | |
CN108595284B (zh) | 一种纹理共享方法、计算机设备和存储介质 | |
US9324299B2 (en) | Atlasing and virtual surfaces | |
US6308237B1 (en) | Method and system for improved data transmission in accelerated graphics port systems | |
US20130117347A1 (en) | Communication apparatus, communication method, and computer product | |
US6917364B2 (en) | Method and apparatus for managing texture memory in a data processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent |