TWI556167B - 用於多重本機軟體應用程式使用者介面組成之系統及方法 - Google Patents

用於多重本機軟體應用程式使用者介面組成之系統及方法 Download PDF

Info

Publication number
TWI556167B
TWI556167B TW100135514A TW100135514A TWI556167B TW I556167 B TWI556167 B TW I556167B TW 100135514 A TW100135514 A TW 100135514A TW 100135514 A TW100135514 A TW 100135514A TW I556167 B TWI556167 B TW I556167B
Authority
TW
Taiwan
Prior art keywords
application
rendering
repository
api
information
Prior art date
Application number
TW100135514A
Other languages
English (en)
Other versions
TW201224925A (en
Inventor
趙濤
王鵬
約翰 維斯特
Original Assignee
英特爾公司
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 英特爾公司 filed Critical 英特爾公司
Publication of TW201224925A publication Critical patent/TW201224925A/zh
Application granted granted Critical
Publication of TWI556167B publication Critical patent/TWI556167B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Generation (AREA)
  • Stored Programmes (AREA)

Description

用於多重本機軟體應用程式使用者介面組成之系統及方法
本發明係有關於用於多重本機軟體應用程式使用者介面組成之系統及方法。
發明背景
多種圖形軟體發展應用程式可由不同數位/電子系統利用來描繪呈現圖形場景。舉例言之,多個圖形應用程式可在同一個系統上跑。於該多個軟體應用程式框架環境中,多個本機應用程式使用者介面(UI)需要取作為輸入且經組成來製作指定的使用者經驗。但多個圖形應用程式可使用不同描繪呈現應用程式規劃介面(API)寫成,諸如直接時框緩衝器(DirectFB)、嵌入式系統之開放式圖形存庫(OpenGL ES)、單純直接媒體層(SDL)等。從不同圖形應用程式收集全部使用者介面(UI)及進行組合可涉及記憶體拷貝或圖形應用程式修改。
發明概要
依據本發明之一實施例,係特地提出一種系統,其包含:一記憶體,用以儲存一圖形應用程式和一使用者經驗應用程式;耦合至該記憶體的一處理器,其中該處理器係用來執行該圖形應用程式,以獲得一第一描繪呈現表面和相對應的一下方記憶體表面、記錄該下方記憶體表面上的表面資訊及該下方記憶體表面與該圖形應用程式之一處理程序之間的關係資訊、將該下方記憶體表面變換成可由該使用者經驗應用程式基於所記錄之該表面資訊而辨識的一第二描繪呈現表面、以及操縱該第二描繪呈現表面來提供使用者經驗。
圖式簡單說明
此處所述本發明係於附圖中舉例說明而非限制性。為求舉例說明之簡單及清晰,圖式中例示說明之元件並非必要照比例繪製。舉例言之,若干元件之尺寸可相對於其它元件之尺寸誇大以求清晰。又,當適當考慮時,元件符號可在不同圖式間重複來指示相對應的或類似的元件。
第1圖為依據本發明之實施例軟體環境之示意圖。
第2A及2B圖為依據本發明之若干實施例一種方法之流程圖。
第3圖為依據本發明之若干實施例平台實施例之意圖。
第4為依據本發明之實施例一種方法之流程圖。
詳細說明
後文敘述說明利用統一記憶體架構於單晶片系統(SoC)之使用模型。該等技術之體現並非限於電腦系統;可由任何執行環境用於類似用途,諸如任何其它數位/電子裝置或消費電子(CE)裝置。後文說明中,陳述多項特定細節諸如邏輯體現、操作碼、載明運算元之手段、資源分配/共享/複製體現、系統組件類型及交互關係、及邏輯分配/整合選擇,以供更徹底瞭解本發明。但可無此等特定細節而實施本發明。於其它情況下,不曾以細節顯示控制結構及完整軟體指令序列以免遮掩本發明。
本說明書中述及「一個實施例」、「一實施例」、「一具體實施例」等指示該所述實施例可包括特定特徵、結構、或特性,但每個實施例並非必要包括該特定特徵、結構、或特性。此外,此等片語並非必要係指相同實施例。又,當包括特定特徵、結構、或特性係關聯一實施例描述時,無論是否明確地描述係表示此種特定特徵、結構、或特性關聯其它實施例執行係落入於熟諳技藝人士的知識範圍。
本發明之實施例可於硬體、韌體、軟體或其任一種組合體現。本發明之實施例也可體現為儲存在機器可讀取媒體上之指令,該等指令可藉一或多個處理器讀取與執行。機器可讀取媒體可包括用以儲存或發射呈可由機器(例如電腦裝置)讀取形式之資訊的任一種機構。舉例言之,機器可讀取媒體可包括唯讀記憶體(ROM);隨機存取記憶體(RAM);磁碟儲存媒體;光學儲存媒體;快閃記憶體裝置;傳播信號之電氣、光學、聲學或其它形式(例如載波、紅外線信號、數位信號等)及其它。
第1圖為依據本發明之具體實施例環境100之示意圖。於一實施例中,環境100可在消費電子產器SoC或任何其它系統上體現。環境100可包含作業系統(OS) 102,其可儲存於記憶體(圖中未顯示)。於一實施例中,OS 102例如可包含Linux、Mac OS X、FreeBSD、微軟視窗(Microsoft Windows)或任何其它OS。OS 102可介接圖形裝置存庫(GDL)驅動程式104。於一實施例中,GDL驅動程式104可包含描繪呈現應用程式或可由SoC的硬體執行之程式。於另一實施例中,可利用其它描繪呈現圖形驅動程式。
參考第1圖,於一實施例中,一或多個描繪呈現應用程式規劃介面(API)存庫或引擎120、130或140可包含軟體應用程式或可包含一描繪呈現功能及/或可與其它軟體通訊之程式。描繪呈現API存庫可包含DirectFB存庫120、OpenGL ES存庫130或任何其它API存庫。於一實施例中,DirectFB存庫120可包含DirectFB應用程式122。OpenGL ES存庫130可包含OpenGL ES應用程式132。元件符號140可表示其它描繪呈現API存庫,諸如SDL等。一或多個描繪呈現API存庫可在應用程式使用週期管理模組108之下跑,該管理模組可管理安裝於該環境的客戶應用程式諸如122、132或140。
參考第1圖,環境100可更包含使用者經驗(UX)應用程式106,該應用程式可以是描繪呈現服務軟體應用程式或UI操縱軟體應用程式。於一實施例中,UX應用程式106可與應用程式使用週期管理模組108通訊來啟動客戶應用程式122、132或140而支援一或多項繪圖能力。UX應用程式106為使用者所可見,且可由使用者直接操控。於一實施例中,環境100可包含在UX應用程式106下方的一或多個下方存庫。於一實施例中,該等一或多個下方存庫可包含可在UX應用程式106的直接下方的第一層下方存庫,諸如雜訊存庫112及雜訊結合存庫114。於另一實施例中,一或多個下方存庫可更包含第二層下方存庫,諸如在雜訊存庫112下方的OpenGL ES存庫116及在雜訊結合存庫114下方的通用場景圖形存庫(GSGL) 110。於一實施例中,雜訊存庫112可以是圖形存庫,可包含雜訊應用程式來製作硬體加速使用者介面。
雖然第1圖例示說明環境100可包含雜訊存庫112、雜訊結合存庫114、OpenGL ES API存庫116,但於若干實施例中,UX應用程式106可藉仰賴其它下方存庫執行。於另一實施例中,不同層數的存庫或引擎可利用來支援UX應用程式106的執行。
參考第1圖,於一實施例中,各個描繪呈現API存庫120、130或140可設有描繪呈現API代理器。描繪呈現API代理器之實例可包含針對DirectFB API存庫120之DirectFB包裝程式(wrapper)124、針對OpenGL ES API存庫130之OpenGL ES包裝程式134、或於其它本機應用程式140之其它描繪呈現API代理器(圖中未顯示)。於一實施例中,描繪呈現API代理器124或134可以執行來將顯示在顯示裝置(圖中未顯示)螢幕上的相對應描繪呈現API存庫之輸出改成非在螢幕上。於另一實施例中,描繪呈現API代理器120或130可送出在相對應於原先描繪呈現API表面的全部下方記憶體表面(例如全部非在螢幕上記憶體表面)上之表面資訊,及下方記憶體表面與相對應描繪呈現API應用程式之相對應處理程序間之關係資訊給GSGL 110。於一實施例中,表面資訊可包含記憶體表面上的描述,諸如記憶體表面之尺寸、格式、ID。於一實施例中,處理程序可有其本身的脈絡。於一實施例中,關係資訊可有樹狀或圖形結構或任何其它結構。於一實施例中,處理程序間通訊(IPC) 118可針對描繪呈現API代理器利用來例如,透過桌上型匯流排(Dbus)發送表面資訊及關係資訊;但也可採用其它軟體通訊方法。
於一實施例中,GSGL 110可包含表面資訊管理模組或功能來駐有由描繪呈現API代理器所提供的下方記憶體表面上之表面資訊及關係資訊。雜訊結合存庫114可以是基於雜訊之結合存庫,該存庫可使用在GSGL 110的表面資訊來變換或轉譯下方記憶體表面成雜訊可辨識的表面結構形式,稱作為雜訊作用物(ClutterActor)。於另一實施例中,已轉譯的下方記憶體表面可由UX應用程式辨識。於一實施例中,基於UX應用程式106使用哪一種下方存庫,可利用其它結合存庫諸如基於OpenGL ES或DirectFB之結合存庫或轉譯軟體。於一實施例中,GSGL 110可進一步記錄得自雜訊存庫112或OpenGL ES API存庫116之應用程式的表面資訊於下方記憶體表面上。於另一實施例中,GSGL 110可提供介面來輸出GSGL 110內下方記憶體表面上的表面資訊給UX應用程式106。於另一實施例中,UX軟體應用程式106可存取記錄在GSGL 110的表面資訊,該表面資訊可由結合存庫使用來轉譯下方記憶體表面成為雜訊可辨識表面結構形式。UX軟體應用程式106可操縱在UX軟體應用程式106的使用者介面(UI)上的已轉譯下方記憶體表面而製作使用者經驗。雖然第1圖例示說明GDL驅動程式104,但於若干實施例中,任何其它圖形引擎可利用來與硬體諸如處理器通訊或存取記憶體。
第2A及2B圖為流程圖,顯示依據本發明之實施例之方法。參考第1及2A圖,於方塊202,UX應用程式206起始。於一實施例中,UX應用程式206可在起始後等候記憶體表面資訊。於方塊204,一或多個客戶軟體應用程式諸如應用程式122、132及140起始。於一實施例中,UX應用程式206可請求應用程式使用週期管理模組108開始客戶應用程式。於方塊206,客戶軟體應用程式可分配來自描繪呈現API存庫120、130及/或140之描繪呈現表面。於一實施例中,描繪呈現表面可以是DirectFB表面或OpenGL ES表面。於方塊208,於描繪呈現API存庫的描繪呈現API代理器諸如124及134可找出下方記憶體表面其係相對應於描繪呈現表面。於另一實施例中,描繪呈現API代理器可更找出下方記憶體表面與描繪呈現API應用程式之相對應處理程序間之關係資訊。於方塊210,描繪呈現API代理器可記錄下方記憶體表面上之表面資訊及關係資訊,及發送關係資訊及表面資訊給GSGL 110,諸如表面資訊管理模組。表面資訊管理模組可記錄接收自描繪呈現API代理器的關係資訊及表面資訊。於一實施例中,記憶體表面可以是下方記憶體表面或GDL表面,該表面可以是GDL記憶體(或顯示器記憶體)之一區塊。描繪呈現API應用程式之下方記憶體表面可由相對應描繪呈現API存庫記錄在GDL記憶體或顯示器記憶體之一區塊。
於方塊214,回應於一或多個翻轉()(flip())呼叫,例如來自客戶應用程式122、132及/或140,相對應描繪呈現API代理器124或134可攔截翻轉()呼叫,及通知翻轉()呼叫給GSGL 110。於方塊216,描繪呈現API代理器124或134可遏止相對應描繪呈現API應用程式之實際翻轉鏈來改變描繪呈現API應用程式之螢幕上輸出成為非在螢幕上輸出。於方塊218,GSGL 110諸如表面資訊管理模組可以舉例言之,GSGL 110可依據翻轉()呼叫之翻轉鏈而更新所記錄的表面資訊。於方塊220,UX應用程式106可操縱基於GSGL 110的表面資訊,透過結合存庫獲得的已轉譯記憶體表面來形成使用者經驗。
參考第2B圖,於一實施例中,於方塊222,客戶應用程式即將退出。於方塊224,描繪呈現API代理器可通知在GSGL 110的表面資訊管理模組有關記憶體表面將被摧毀。於方塊226,GSGL 110諸如表面資訊管理模組可更新於GSGL 110的表面資訊。於一實施例中,GSGL 110可移除欲摧毀的在記憶體表面上之表面資訊及相對應關係資訊。
雖然第2A及2B圖之方法係例示說明為包含一串列處理程序,但於若干實施例中,該方法可以不同順序執行例示說明之處理程序。於若干實施例中,該等串列處理程序可連同其它處理程序(圖中未顯示)執行。
第3圖例示說明體現本發明原理之平台300之一實施例。平台300之一個實施例可包含基於針對消費電子裝置之英特爾架構(IA)的單晶片系統(SoC)。熟諳技藝人士將容易瞭解未悖離本發明之範圍,此處所述實施例可用於其它處理系統。
於一實施例中,電腦系統平台300可包含一處理器302,可以是單晶片系統(SoC)。處理器302可包含一或多個處理器核心304。處理器核心304可包含可執行軟體及/或處理程序資料信號之任一型處理器。於一實施例中,處理器核心304可包含複雜指令集電腦(CISC)微處理器、精簡指令集電腦(RISC)微處理器、極長指令字組(VLIW)微處理器、體現指令集組合之處理器、或任何其它處理器裝置諸如數位信號處理器,諸如微處理器、數位信號處理器或微控制器。處理器核心304可適合以一或多個處理技術製造,且藉由以足夠細節表示在機器可讀取媒體上,可適合協助該項製造。
處理器302可包含解碼器306。解碼器306可用來將由例如顯示器處理器核心308及/或圖形處理器核心310所接收的指令解碼成控制信號及/或微碼載入點。於一實施例中,解碼器306為視訊解碼器。回應於控制信號及/或微碼載入點,顯示器處理器核心308及/或圖形處理器核心310可執行適當操作。處理器核心304可耦合系統互連裝置316用以與多個其它系統裝置通訊,該等其它系統裝置可包括但非限於例如,顯示器處理器核心308及/或圖形處理器核心310、記憶體控制裝置314、解碼器306、音訊控制裝置318、或周邊裝置320,諸如統一串列匯流排(USB)主機埠、周邊組件互連體(PCI)快速埠、串列周邊介面(SPI)介面、擴充匯流排、或其它周邊裝置。於另一實施例中,記憶體控制裝置314可直接地耦合至解碼器306、顯示器處理器核心308及/或圖形處理器核心310;但於若干實施例中,系統互連裝置316可用來耦合記憶體控制裝置314至解碼器306及處理器核心308及310。
於一個實施例中,平台300可透過I/O匯流排而與各個I/O裝置通訊。此等I/O裝置可包括但非限於例如通用異步接收器/發射器(UART)、USB 156、及I/O擴充介面或其它I/O裝置。
平台300之一個實施例提供行動、網路及/或無線通訊。平台300可更包括記憶體312。記憶體312可以是動態隨機存取記憶體(DRAM)裝置、靜態隨機存取記憶體(SRAM)裝置、快閃記憶體裝置、或其它記憶體裝置。記憶體312可儲存可藉處理器302執行的指令及/或資料信號表示之資料。於一個實施例中,記憶體312可包含系統記憶體部分及顯示器記憶體部分。於另一實施例中,顯示器記憶體可含有圖框緩衝器來儲存記憶體表面(或GDL表面)。
雖然第3圖例示說明顯示器處理器308及圖形處理器310及解碼器306,但於若干實施例中,處理器302可包含不包含308、310或306中之一或多者。雖然第3圖例示說明顯示器處理器308及圖形處理器310,但若干實施例可利用其它顯示器處理單元及/或圖形處理單元。雖然第3圖例示說明音訊控制裝置318及/或周邊裝置320,但於若干實施例中,於若干實施例中,處理器302可不包含音訊控制裝置318及/或周邊裝置320於處理器302。於另一實施例中,處理器302可包含任何其它組件,諸如傳輸處理單元、保全特徵結構諸如保全處理器、介面及/或其它周邊裝置。
第4圖例示說明依據本發明之實施例之具體方法。參考第1及4圖,於一個實施例中,於方塊402,描繪呈現API代理器諸如124或134可設置於描繪呈現API存庫120或130。雖然第1圖例示說明描繪呈現API代理器124及134,但於若干實施例中,一或多個描繪呈現API代理器可設置於其它本機應用程式140。描繪呈現API代理器可包含描繪呈現API包裝程式。於方塊404,存庫可設在使用者經驗應用程式106下方。於一個實施例中,存庫可以是通用場景圖形存庫(GSGL)110,該GSGL 110可藉描繪呈現API存庫120、130及140透過GDL驅動程式104或任何其它介面存取。於另一實施例中,GSGL 110之內容可儲存在記憶體,諸如顯示器記憶體。於一實施例中,描繪呈現API代理器可與GSGL 110通訊。
於方塊406,描繪呈現API代理器可找到多個下方記憶體表面,該記憶體表面係相對應於從描繪呈現API存庫分配的相對應描繪呈現表面之一集合。描繪呈現API代理器可找到其它資訊,諸如下方記憶體表面與各個處理程序間之關係資訊。於方塊408,描繪呈現API代理器發送下方記憶體表面上的表面資訊及關係資訊給GSGL 110。於另一實施例中,描繪呈現API代理器可更發送下方記憶體表面與各個處理程序間之關係資訊給GSGL 110。
於方塊410,GSGL 110可從描繪呈現API代理器接收與記錄表面資訊及關係資訊。於另一實施例中,混雜存庫(binging library)可利用在GSGL 110的表面資訊及關係資訊來變換下方記憶體表面而產生期望的描繪呈現API表面。於一實施例中,結合可用來轉譯,諸如雜訊結合或其它結合諸如OpenGL ES結合或DirectFB結合等。於一個實施例中,已轉譯描繪呈現API表面為一或多個使用者經驗應用程式106或相對應下方應用程式諸如雜訊應用程式112所可辨識。
於方塊412,回應於翻轉操作,描繪呈現API代理器可攔截翻轉()呼叫且可通知翻轉操作給GSGL 110。於一實施例中,描繪呈現API代理器可更遏止實際翻轉鏈,且可將相對應描繪呈現API應用程式的螢幕上輸出改成非在螢幕上。於方塊414,GSGL 110可依據翻轉鏈更新下方記憶體表面上的表面資訊。
於方塊416,使用者經驗應用程式106可存取GSGL 110來獲得下方記憶體表面上的表面資訊。混雜存庫可利用在110的表面資訊及關係資訊來變換下方記憶體表面成為期望的描繪呈現API表面。使用者經驗應用程式106可操縱已轉譯描繪呈現表面(此處為描繪呈現或記憶體)來製作使用者經驗。
雖然第4圖方法係例示說明為包含一串列處理程序,但於若干實施例中,該方法可以不同順序執行例示說明之處理程序。於若干實施例中,第4圖之該等串列處理程序可連同其它處理程序(圖中未顯示)執行。於一個實施例中,方塊410可在方塊416之後執行。
雖然已經參考實施例敘述本發明之某些特徵,但該描述並非意圖解譯為限制性意義。熟諳技藝人士顯然易知本發明有關的實施例之各項修改以及本發明之其它實施例皆係視為落入於本發明之精髓及範圍。
100...環境
102...作業系統(OS)
104...圖形裝置存庫(GDL)驅動程式
106...使用者經驗(UX)應用程式
108...應用程式使用週期管理模組
110...通用場景圖形存庫(GSGL)
112...雜訊存庫
114...雜訊結合存庫
116、130...OpenGL ES API存庫
118...處理程序間通訊(IPC)
120...DirectFB存庫
122...DirectFB應用程式
124...DirectFB包裝程式
132...OpenGL ES應用程式
134...OpenGL ES包裝程式
140...其它本機應用程式
202-226、402-416...處理方塊
300...平台
302...處理器
304...處理器核心
306...解碼器
308...顯示器處理器核心
310...圖形處理器核心
312...記憶體
314...記憶體控制裝置
316...系統互連裝置
318...音訊控制裝置
320、322...周邊裝置
第1圖為依據本發明之實施例軟體環境之示意圖。
第2A及2B圖為依據本發明之若干實施例一種方法之流程圖。
第3圖為依據本發明之若干實施例平台實施例之意圖。
第4為依據本發明之實施例一種方法之流程圖。
100...環境
102...作業系統(OS)
104...圖形裝置存庫(GDL)驅動程式
106...使用者經驗(UX)應用程式
108...應用程式使用週期管理模組
110...通用場景圖形存庫(GSGL)
112...雜訊存庫
114...雜訊結合存庫
116、130...OpenGL ES API存庫
118...處理程序間通訊(IPC)
120...DirectFB存庫
122...DirectFB應用程式
124...DirectFB包裝程式
132...OpenGL ES應用程式
134...OpenGL ES包裝程式
140...其它本機應用程式

Claims (15)

  1. 一種系統,其包含:一記憶體,用以儲存一第一圖形應用程式和一使用者經驗應用程式;耦合至該記憶體的一處理器,其中該處理器係用來執行該第一圖形應用程式,以獲得一第一描繪呈現表面和一第一下方記憶體表面、記錄該第一下方記憶體表面上的表面資訊及該第一下方記憶體表面與該第一圖形應用程式之一處理程序之間的關係資訊、基於所記錄之該表面資訊及該關係資訊將該第一下方記憶體表面變換成可由該使用者經驗應用程式辨識的一第二描繪呈現表面、以及操縱該第二描繪呈現表面來提供使用者經驗。
  2. 如申請專利範圍第1項之系統,其中該處理器係用來將該表面資訊和該關係資訊記錄於該使用者經驗應用程式可取用的一存庫中。
  3. 如申請專利範圍第1項之系統,其中該處理器係用來在該使用者經驗應用程式下提供一通用存庫,以記錄得自該第一圖形應用程式的該表面資訊和該關係資訊。
  4. 如申請專利範圍第1項之系統,其中該處理器係用來基於一第二圖形應用程式而執行該使用者經驗應用程式,其中該第二描繪呈現表面係可由該第二圖形應用程式辨識。
  5. 如申請專利範圍第3項之系統,其中該第一圖形應用程 式被提供在一描繪呈現應用程式規劃介面(API)存庫中。
  6. 如申請專利範圍第5項之系統,其中該處理器係用來在該描繪呈現API存庫中提供一描繪呈現API包裝程式,其中該描繪呈現API包裝程式係用來與該通用存庫聯絡以將該表面資訊和該關係資訊發送至該通用存庫。
  7. 一種方法,其包含下列步驟:於一描繪呈現應用程式規劃介面(API)存庫中提供一描繪呈現API代理器;提供與該描繪呈現API代理器耦合的一通用存庫;將對應於該描繪呈現API存庫之一第一描繪呈現表面的一下方記憶體表面上之該通用存庫表面資訊、及該記憶體表面與一第一描繪呈現API應用程式之一處理程序之間的關係資訊發送至該通用存庫;以及基於該表面資訊及該關係資訊將該記憶體表面變換成可由一使用者經驗應用程式辨識的一第二描繪呈現表面。
  8. 如申請專利範圍第7項之方法,其進一步包含下列步驟:操縱該第二描繪呈現表面,而建立用於使用者經驗的一使用者介面。
  9. 如申請專利範圍第7項之方法,其進一步包含下列步驟:回應於一翻轉操作,將該描繪呈現API應用程式之螢幕上輸出改為螢幕外;向該通用存庫通知該翻轉操作。
  10. 如申請專利範圍第9項之方法,其包含下列步驟:回應於該翻轉操作,更新該通用存庫中之該表面資訊。
  11. 一種包含多個指令的機器可讀取媒體,該等指令回應於被執行會導致一運算裝置進行下列步驟:於一第一描繪呈現應用程式規劃介面(API)存庫中提供一描繪呈現API代理器;提供與該描繪呈現API代理器耦合的一通用存庫;將對應於該API存庫之一第一相對應描繪呈現表面的一下方記憶體表面上之該通用存庫表面資訊、及該記憶體表面與一第一描繪呈現API應用程式之一處理程序之間的關係資訊發送至該通用存庫;以及將該表面資訊和該關係資訊記錄在該通用存庫中。
  12. 如申請專利範圍第11項之機器可讀取媒體,其進一步包含回應於被執行會導致一運算裝置進行下列步驟的多個指令:基於該表面資訊及該關係資訊將該記憶體表面變換成可由一使用者經驗應用程式辨識的一第二描繪呈現API應用程式之一第二描繪呈現表面;以及操縱該第二描繪呈現表面,而建立用於使用者經驗的一使用者介面。
  13. 如申請專利範圍第11項之機器可讀取媒體,其進一步包含回應於被執行會導致一運算裝置進行下列步驟的多個指令: 回應於一翻轉操作,將該第一描繪呈現API應用程式之螢幕上輸出改成螢幕外;向該通用存庫通知該翻轉操作。
  14. 如申請專利範圍第13項之機器可讀取媒體,其進一步包含回應於被執行會導致一運算裝置進行下列步驟的多個指令:基於該翻轉操作中的一翻轉鏈,更新該通用存庫中之該表面資訊。
  15. 如申請專利範圍第12項之機器可讀取媒體,其進一步包含回應於被執行會導致一運算裝置進行下列步驟的多個指令:回應於該使用者經驗應用程式即將退出,向該通用存庫通知該記憶體表面將被摧毀;及更新該記憶體表面上之該表面資訊。
TW100135514A 2010-10-05 2011-09-30 用於多重本機軟體應用程式使用者介面組成之系統及方法 TWI556167B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2010/001548 WO2012045191A1 (en) 2010-10-05 2010-10-05 System and method for multiple native software applications user interface composition

Publications (2)

Publication Number Publication Date
TW201224925A TW201224925A (en) 2012-06-16
TWI556167B true TWI556167B (zh) 2016-11-01

Family

ID=45927182

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100135514A TWI556167B (zh) 2010-10-05 2011-09-30 用於多重本機軟體應用程式使用者介面組成之系統及方法

Country Status (3)

Country Link
US (1) US20130187931A1 (zh)
TW (1) TWI556167B (zh)
WO (1) WO2012045191A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10748233B2 (en) 2011-06-14 2020-08-18 Intel Corporation Full screen processing in multi-application environments
US9443331B2 (en) * 2013-06-06 2016-09-13 Microsoft Technology Licensing, Llc Input object for routing input for visual elements

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060026555A1 (en) * 2004-07-13 2006-02-02 International Business Machines Corporation Method and apparatus to support multiple hierarchical architectures
TW200746847A (en) * 2005-12-02 2007-12-16 Nokia Corp System, apparatus, and method for dynamically customizing and configuring applications
US20080178112A1 (en) * 2007-01-19 2008-07-24 Hruska Robert B System and method for rendering multiple user interfaces
TW201033886A (en) * 2008-12-30 2010-09-16 Ibm Dynamic point and extend user interface

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5844569A (en) * 1996-04-25 1998-12-01 Microsoft Corporation Display device interface including support for generalized flipping of surfaces
US6952215B1 (en) * 1999-03-31 2005-10-04 International Business Machines Corporation Method and system for graphics rendering using captured graphics hardware instructions
JP2001113759A (ja) * 1999-10-15 2001-04-24 Ricoh Co Ltd 画像データ出力装置
US6567091B2 (en) * 2000-02-01 2003-05-20 Interactive Silicon, Inc. Video controller system with object display lists
US7023431B2 (en) * 2001-03-01 2006-04-04 Microsoft Corporation Method and system for providing data to a graphics chip in a graphics display system
CA2426606A1 (en) * 2003-04-25 2004-10-25 Ibm Canada Limited - Ibm Canada Limitee Using buffer to facilitate log catchup for online operations
US20060123345A1 (en) * 2004-12-06 2006-06-08 International Business Machines Corporation Platform-independent markup language-based gui format
US7475197B1 (en) * 2005-10-25 2009-01-06 Nvidia Corporation Cross process memory management
US20080276189A1 (en) * 2007-05-01 2008-11-06 Thomas Dawson Method and system for themeable on-screen display
GB2460393B (en) * 2008-02-29 2012-03-28 Advanced Risc Mach Ltd A data processing apparatus and method for controlling access to secure memory by virtual machines executing on processing circuitry
US8305380B2 (en) * 2009-09-09 2012-11-06 Advanced Micro Devices, Inc. Managing resources to facilitate altering the number of active processors
US9111325B2 (en) * 2009-12-31 2015-08-18 Nvidia Corporation Shared buffer techniques for heterogeneous hybrid graphics

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060026555A1 (en) * 2004-07-13 2006-02-02 International Business Machines Corporation Method and apparatus to support multiple hierarchical architectures
TW200746847A (en) * 2005-12-02 2007-12-16 Nokia Corp System, apparatus, and method for dynamically customizing and configuring applications
US20080178112A1 (en) * 2007-01-19 2008-07-24 Hruska Robert B System and method for rendering multiple user interfaces
TW201033886A (en) * 2008-12-30 2010-09-16 Ibm Dynamic point and extend user interface

Also Published As

Publication number Publication date
WO2012045191A1 (en) 2012-04-12
US20130187931A1 (en) 2013-07-25
TW201224925A (en) 2012-06-16

Similar Documents

Publication Publication Date Title
US8675000B2 (en) Command buffers for web-based graphics rendering
US9830176B2 (en) Methods, systems, and media for binary compatible graphics support in mobile operating systems
CN103282875B (zh) 多操作系统
US9715750B2 (en) System and method for layering using tile-based renderers
CA2796433C (en) Cross-platform application framework
EP3123316B1 (en) Supporting dynamic behavior in statically compiled programs
US20110050712A1 (en) Extension To A Hypervisor That Utilizes Graphics Hardware On A Host
CN105427236A (zh) 一种图像渲染方法及装置
CN110554976B (zh) 用于图形处理的存储器高速缓存管理
US7730492B1 (en) Method and system for running multiple virtual machines in a single process
JP2006190281A (ja) グラフィックサブシステムを仮想化するシステムおよび方法
US20160077850A1 (en) Methods, systems, and media for binary compatibility
CN109857573A (zh) 一种数据共享方法、装置、设备及系统
TWI521431B (zh) 於多重應用程式環境中之全螢幕處理技術
US9324299B2 (en) Atlasing and virtual surfaces
TWI556167B (zh) 用於多重本機軟體應用程式使用者介面組成之系統及方法
US8203567B2 (en) Graphics processing method and apparatus implementing window system
US11372756B2 (en) Memory pool management
JP2011008753A (ja) 記憶装置の隠し記憶領域に記憶されたファイルの実行方法及び装置
US8904365B2 (en) Dynamic media content instantiation framework
CN117234655B (zh) 基于安卓系统运行Linux桌面程序的方法、装置、设备及介质
US10692169B2 (en) Graphics driver virtual channels for out-of-order command scheduling for a graphics processor
US8587599B1 (en) Asset server for shared hardware graphic data
CN114003308A (zh) 项目文本资源的加载方法、装置、电子设备及存储介质
CN118301405A (zh) 录制方法及相关设备

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees