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 PDF

Info

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
Application number
TW090117318A
Other languages
English (en)
Inventor
Roger Paul Descheneaux
Wei Kuo
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Application granted granted Critical
Publication of TW531706B publication Critical patent/TW531706B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/14Digital 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. 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公釐)
TW090117318A 2000-07-20 2001-07-16 Method and apparatus in a data processing system for dynamic graphics context switching TW531706B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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