TWI362004B - System for dynamic arbitration of a shared resource on a device - Google Patents

System for dynamic arbitration of a shared resource on a device Download PDF

Info

Publication number
TWI362004B
TWI362004B TW094117260A TW94117260A TWI362004B TW I362004 B TWI362004 B TW I362004B TW 094117260 A TW094117260 A TW 094117260A TW 94117260 A TW94117260 A TW 94117260A TW I362004 B TWI362004 B TW I362004B
Authority
TW
Taiwan
Prior art keywords
resource
arbitration
application
information
request
Prior art date
Application number
TW094117260A
Other languages
English (en)
Other versions
TW200617784A (en
Inventor
Kenneth M Geib
Brian Harold Kelley
Srinivas Patwari
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW200617784A publication Critical patent/TW200617784A/zh
Application granted granted Critical
Publication of TWI362004B publication Critical patent/TWI362004B/zh

Links

Classifications

    • 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
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/52Indexing scheme relating to G06F9/52
    • G06F2209/522Manager

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Description

"^2004 九、發明說明: 【發明所屬之技術領域】 本發明大體係關於-器件之運作,且特定言之係關於於 —*器件上用以動態仲裁資源分享之系統。 、 【先前技術】 ?文何的進步導 τ 拭饮兴邵署。該
等網路包含公眾資料網路(諸如網際網路)與專用網路(諸: ,線電信料)^者。料,料之使用者有能力存取可用之 夕種資訊及服務K列巾1,無線器件所有者如今可下載 多種應用程式以在其器件上執行。 技術的其他進步導致了更小及功能更強大的個人計算与 件。舉例而言’當前存在多種小而輕、使用者可易於攜帶 之攜㈣㈣電話、個人數位助理(PDA)及傳呼器件。通 韦’ S玄等器件嚴重受到資源夕PP糾 又刻貪彝之限制。舉例而言,顯示幕尺 寸、可用記憶體及檔荦系銥处p弓 茶糸統二間之置、輪入與輪出能力及 處理能力之量各者皆可能受到該器件之小尺寸之限制。 由於在包含嚴重受資源限制之個人計算器件的多種計算 器件上之可下載庫田Λ Μ用%式之增加,資源分配已變得日益重 要。器件資源包含鞀千哭 ,^ Α .'肩不窃、小鍵盤、語音處理器、數據機、 儲存器件、通信诵指5S甘& & 道及其他類型之器件資源。因為每一器 件具有數量有限之資调,士、计a 貢原尤其疋嚴重受到資源限制之該等 器件,所以將器件眘、、s八κ 貝源刀配給競爭之應用程式之方式決定 了該器件如何運作。叛点 舉例而δ,一無線電話可處於一語音 呼叫、一資料呼叫、勒〜 仃一應用程式、處理一簡訊服務(SMs) 102226-970521.doi 1362004 訊息等過程令。在給定該等各種狀態之情況下,目前不存 在用以在該等狀態期間内,判定哪一應用程式應得到對該 益件上之一器件資源之控制的動態、簡單及有效的機制。 舉例而言’若一音樂程式正在播放語音而電話呼叫開始, 則響鈴/語音應用程式應得到該語音資源。在此同一期間, 一曰曆提醒或_ SMS通知亦應得到對該語音資源之存取 嗎?因此,需要在執行於一器件上之競爭之應用程式間進 行有效的仲裁,以判定哪一應用程式應得到對一特定器件 資源的存取。 在目前系統中,資源仲裁通常藉由使用一簡單的先來先 做處理序(first-come-first-serve process)或藉由-組嚴格的 優先權排列決策而進行。在任一情況下,仲裁演算法為硬 式編碼且並不考慮當前器件運作之動態環境。另外,網路 呂運商器件裝造商及應用程式開發者希望具有關於如何 於一器件上分配器件資源之一些動態控制。不幸地藉由 使用靜態仲栽枯你夕a益+占从u
【發明内容】
例中,提供一種於一器 …提供-包括方法及裝£之動態仲 器件上動態地分配器件資源。在一實施 一器件上用以仲裁-器件資源之分配之 102226-970521.doc 1362004
,法。該方法包括:接收—來自—請求分配該器件資源之 請求應用程式之請求’及確定該器件資源為—所屬應用程 式所擁有。該方法亦包括:使所有者f訊與請求者資訊相 關聯以形成-仲裁請求’其中該所有者資訊包括與該所屬 :用程式有關之倉訊且該請求者資訊包括與該請求應用程 式有m。該方法亦包括:仲裁該仲裁請求以產生一 =示是否應將該器件資源分配給該請求應用程式之仲裁決 策,及基於該仲裁決策分配該器件資源。 。。在-實施例中,提供一種於一器件上用以動態地仲裁一 讀資源之分配之裝置。該裝置包括_資源管理器,該資 源管理器包括:用以接收—來自—請求分配該器件資源之 请求應用程式之請求的邏輯、用以確定該器件資源為—所 屬應用程式所擁有的邏輯及用以使所有者資訊與請求者資 訊相關聯以形成一仲裁請求的邏輯,丨中該所有者資吨包 括與該所屬應用程式有關之f訊且該請求者f訊包括與該 請求應用程式有關之資訊。該裝置亦包括—資源仲裁器, 其運作以仲裁該仲裁請求以產生—指示是否應將該料資 源分配給該請求應用程式之仲裁決策。 ' 在-實施例中’提供一種於一器件上用以仲裁—器 源之分配之裝置。該裝置包括:用於接收—來自—請求八 配該器件資源之請求應用程式之請求的構件及用於確定: 器件資源為-所屬應用程式所擁有的構件。該裝置亦包括 用於使所有者資訊與請求者資訊相關聯以形成一仲裁請求 的構件;其中該所有者資訊包括與該所屬應用程式有關之 102226-970521.doc 丄362004 貪訊且該it求者資訊包括與該請求應用程式有關之資訊。 該,置亦包括用於仲裁該仲裁請求以產生—指示是否應將 該器件資源分配給該請求應用程式之仲裁決策的構件及用 於基於該仲裁決策分配該器件資源的構件。 。,在實知例中’提供-種包括指令之電腦可讀取媒體, 當藉由-處理器在—器件中執行時,料指令運作以於該 器件中動態地仲裁一器件資源之分配。該電腦可讀取媒體 =括:用於接收—來自—請求分配該器件資源之請求應用 程式之請求的指令及用於確定該器件資源為一所屬應用程 式所擁有的指令。該電腦可讀取媒體亦包括用於使所有者 資訊與請求者資訊相關聯以形成一仲裁請求的指令,其中 該所有者資訊包括與該所屬應用程式有關之資訊且該請求 者-貝訊包括與該睛求應用程式有關之資訊。該電腦可讀取 媒體亦包括用於仲裁該仲裁請求以產生一指示是否應將該 器件資源分配給該請求應用程式之仲裁決策的指令及用於 基於該仲裁決策分配該器件資源的指令。 在對本文稍後闡明之圖式簡單說明、實施方式及申請專利 範圍進行回顧後,本發明之其他態樣、優點及特徵將顯現。 【實施方式】 以下詳細描述將描述一運作以於一器件中動態地分配器 件資源之動態分配系統之一或多個實施例。在—實施例 中,應用程式藉由將一分配請求傳輸至一資源管理器而嗜 求分配一器件資源。在一實施例中,該分配請求包括描述 該請求應用程式之請求資訊。若該器件資源當前為一應用 102226-970521.doc 1362004 =式(所有者應用程式)所擁有’則將該請求者資訊與所有者 貝訊組合以形成—仲裁請求。在—實施例中,該所有者資 訊描述該所有者應用程式及該器件資源之狀態。—資源仲 裁器根據仲裁規則處理該仲裁請求以產生—指示如何分配 :器件資源之仲裁決策。該仲裁決策隨後用以分配該器件 資源。該系統適於與任一類型之有線或無線器件一起使 用,包括(但不限於)桌上型電腦、筆記型電腦、
傳呼機、PDA、電子郵件器#、平板電腦或任何其他類型 之有線或無線器件。 在-或多個實施例中,該分配系統與一執行於該器件上 用以簡化該器件之運作之執行時環境(諸如藉由提供對器 件特定資源之一般化呼叫)相互作用。此執行時環境之一為 由San_ Diego ’ Calif0rnia之qUALC〇mm有限公司開發的無 線二進位運行環境®(BREWtm)軟體平臺。在以下描述中了 將假定動態分配系統之一實施例係藉由使用—執行一諸如 該BREW軟體平臺之執行時環境的無線器件而實施。然而, 該動態分配系統之一或多個實施例適於與其他類型之執行 時環境一起使用以於有線及無線器件上動態地分配器件資 源。此外,本文使用術語"器件資源,,來描述在—器件上之 任一類型之硬體或軟體資源’包括(但不限於顯示哭、语 音處理器、揚聲器、小鍵盤、數據機、網路介面、檔案系 統、儲存器件或可為該器件之部分之任—其他類型的器件 資源。 ° 圖1展示於一器件上運作以分配器件資源之動態分配系 102226-970521.doc 10 1362004 統100之一實施例。系統100包括一器件1〇2 ,此處為一經由 無線通信通道1()6與資料網路1G4通信之無線終端。資仏網 路刚包括任-類型之資料網路,其可包含(但不限於卜有 線的、無線的'私有的或公眾的資料網路或其任一組合。 系統100亦包括一經由通信通道⑶輕接至資料網路104 以將Μ提供至與資料網路1G4通信之器件_服器1〇8。 舉例而S ’器件102可為一無線電話,且词服器⑽可為將 電4服務提供至該電話之全國性電信網路之部分。通信通 道120可為任一類型之有線或無線通信通道。 亦與資料網路104通信的為一第二伺服器110。該第二祠 服器110亦經由無線通信通道122與資料網路1〇4通信。第二 伺服器no可為運作以將服務提供至與資料網路ig4通信之 網路實體之任一類型的伺服器。 在實施例中,器件102包括一資源仲裁器m及仲裁規 則⑴。資源仲裁器112運作以於器件1〇2上基於仲裁規則 114對器件資源之請求進行仲裁。舉例而言,器件⑽包含 執行於器件102上以提供該器件使用者所要之特徵及功能 :應用程式116。舉例而言’可將應用程式116自第二伺服 盗110下載至器件102,如124所示。在其執行期間應用程 式116試圖控制器件102上之一或多個器件資源ιΐ8。舉例而 =’在圖!中,器件資源118包括一器件顯示器、語音處理 器、數據機及小鍵盤,然而器件資源118可包括上述任何其 他器件資源。資源仲裁器112運作以接收仲裁請求以仲裁應 將對器件資源118之存取分配給應用程式U6之哪一者。資 102226-97052l.doc 1362004 源仲裁IIU2根據仲裁規則114處理仲裁請求以產生一指示 如何將器件資源11 8分配給應用程式i! 6之仲裁決策。 。。在—實施例中’將資源仲裁器112及仲裁規則ιΐ4自飼服 益1。。〇8下載至器件102’如126所示。因此,藉由下載資源仲 2器lm料版本及/或仲裁之m飼服 器1〇8可動態地控制如何於器件1G2上分配器件資源⑴。 在一或多個實施例中,伺服器108、器件1〇2及第二词服 器ho可為任何類型之計算器件且其與資料網路1〇4之相關 連接可為無線的、有線的或其任—組合。因此動態仲裁 系統之實施例運作以允許一伺服器控制如何於器件ι〇2上 分配器件資源,且料實施例實際上可藉由使用具有多種 词服器及終端之任一網路配置而實施。 圖2展不用於在一器件(例如圖j中所示之器件ι〇2)中分配 器件貧源之動態仲裁系統2〇〇之一實施例的功能圖。動態仲 裁系統200包括一資源管理器2〇2、資源狀態2〇4'資源仲裁 器206及仲裁規則208。亦展示器件資源21〇及執行於該器件 上並大體在212處展示之應用程式(1-4)。 資源管理器202包括一CPU、處理器、閘極陣列、離散邏 輯,或其他硬體或軟體,或其任一組合,且運作以管理器 件資源210。器件資源21 〇可包括上述任一類型之器件資源°。 資源狀態204包括硬體、軟體或其任一組合。在一實施例 中,資源狀態204包括與器件資源21〇有關之資訊及/或與目 前資源所有者有關之資訊(所有者資訊)。舉例而言,將—目 前被分配了器件資源210之應用程式視作為該資源所有 102226-970521.doc • 12· 1362004 ^所有者或所屬應用程式。舉例而言,在一實施例 中資源狀態2〇4包括與該目前所有者有關之資訊,該資訊 包括—目前所有者識別碼(ID)、一或多個群組識別碼、特 權狀態、獲得該資源之理由 '一讓與清單’及/或與該目前 有=者或器件資源2 1 〇有關之任何其他資訊。在一實施例 申該讓與清單識別該目前所有者欲將器件資源2丨〇釋放皇 哪些應用程式或群組(即特權類別)。在-實施例中,該清單 在由資源仲裁器206執行之仲裁處理期間進行控制。在另一 ^ '丨中該讓與清單僅被視為對關於應如何決策仲裁之 貝原仲裁器206之-個標準。資源管理器2〇2運作以維持、 更新、改變、添加、刪除,或以別的方式處理在資源狀態 204中所包括之資訊。 資源仲裁器206包括硬體、軟體或其任一組合,且運作以 藉岐用仲裁規則2〇8對器件資源21〇之存取進行仲裁。舉 例而"’在—實施例中,資源仲裁器206可為-程式模組且 仲裁規則2G8可為由資源仲裁器2()6掘取 中並經處理以動態地分配器件„_之參數。在== 實施例^資源管理器202及資源仲裁器_可實施為對執 灯於該S件上之執行時環境之可下載的擴展如 可下載BREW擴展。 ’、两 t動態仲裁系統2 0 0之-實施例之運作期間,-或多個應 用私式212睛求自資源管理器2〇2存取器件資源㈣。若器件 當前為另—應用程式所擁有’則資源管理器2:2藉 由組澤(aSSemble)—包括與該請求應用程式有關之資訊(請 102226-970521.doc -13- 1362004 求者資訊)及源自資源狀態204之與器件資源210之目前所 有者有關之資訊(所有者資訊)的仲裁請求而作出回應。將仲 裁請求發送至資源仲裁器206,如214處所示。資源仲裁器 206藉由使用仲裁規則208處理該仲裁請求以產生一發送回 寅源官理器202之仲裁決策’如216處所示。資源管理器隨 後運作以根據該仲裁決策分配器件資源21 〇。
在一實加•例中’應用程式212可具有一組群組id,該等群 組ID其中之一判定是否將關於器件資源21〇之特權賦給— 特定應用程式。舉例而言,一群組ID與應用於具有該群組 ID之所有應用程式的權利相關。該等權利之一界定應用程 式關於器件資源2 1 〇之特權狀態。當一應用程式首次獲得對 器件資源210之存取時,其將資訊提供至包含其群組⑴之組 之資源管理器202(經由該分配請求),並提供一欲得到對器 件資源210之存取之理由。欲得到對器件資源2ι〇之存取之 理由選自若干枚舉類型之—者。若賦給該應用程式特權, 則正如自其群㈣判定之,其可限制哪些應用程式可將器 件資源21G取走。舉例而言,該應用程式可指定-識別器件 資源210將讓與其之應用程式之讓與清單。舉例而古 讓與清單巾之_應隸式可藉由其群請而加以識別Γ 當另一應用程式請求對器件資源21〇進行存取時, 管理器產生—包含與該目前資源所有者有關 所有、 該請求應用程式有關之資訊(請求者二 裁請求之部分,該特權狀 者月求者與其欲得到該資源之相關理由及任何讓與清翠 102226-970521.doc 1362004 -起傳遞至資源仲裁器跡傳遞至資源仲裁器裏之資訊亦 可包括,何其他參數或標準。舉例而言,傳遞至資源仲裁器 6之貝訊可包含使用者偏好、目前器件運作模式、營運商 偏好或可Μ仲裁該請求之任何其他類型的資訊。資源仲裁 W06隨後使用此資訊來判定如何分配器件資源㈣。 在實施例中,备則資源所有者可動態地改變其關於器 件資源21G之優先權。舉例而言,-應用程式可具有-提供 特權之群組ID ’該群組ID允許為一用以獲得器件資源2 1 〇 之高優先權。在對器件資源2⑽行初始存取後,其他應用 程式仍被限制而不能獲得器件資源21Q,此時該應用程式可 改變其優㈣’進而允許其他應用程式獲得對器件資源210 之存取。舉例而言’該應用程式可改變其需要器件資源之 =由·,或改變其讓與清單以使得其他應用程式能夠獲得該 益件資源。因此’動態仲裁系統運作以為資源所屬應用 程式提供釋放器件資源21〇或使其他應用程式更易於存取 器件資源2 1 〇之靈活性。 在另一實施例中,動態仲裁系統2〇〇提供一允許一應用程 式登錄一回呼函式之回呼機制。該回呼函式允許動態仲裁 系統200在器件資源21〇之狀態改變時通知該應用程式。舉 例而言,該回呼函式可用以在器件資源21〇空閒時或由於將 器件資源210分配給另一應用程式故其忙碌時通知一應用 程式。 ^ 因此,動態仲裁系統200運作以於器件102上動態地分配 對一或多個器件資源210之存取。舉例而言,在一實施例 102226-97052l.doc 1362004 中二器件102可包括用於該器件上之每一器件資源2i〇之資 源s理$。貝源仲裁器2G6與每—資源管理器通信以分別處 理關於母- β件資源210之仲裁請求。此外,資源仲裁器 可針對每—器件資源210使用相同或不同的仲裁規則208。 為提供動態運作,可將資源仲裁器206及仲裁規則208自一 網路實體下載至器件102,從而允許一第三方具有關於如何 於器件⑽上分配器件資源21〇之輸入。舉例而言在一實 施例中,器件1()2係、-無線電話且將資源仲裁器雇及仲裁 規,2〇8自一為一全國性電信營運商網路之部分的網路伺 服益下載至益件102。以此方式,為該電信營運商提供一關 於如何於器件102上分配器件資源21〇之輸入。 圖3展不包含動態仲裁系統之一實施例之器件3〇〇的一 實施例。器件300包括處理邏輯3〇2、記憶體3〇4、語音邏輯 3〇6、攝影機邏輯则及1/〇介面31〇,其全部純至一内部 資料匯流排312。為清晰起見’將假^僅語音邏輯3〇6及攝 影機邏輯3〇8為器件300中可分配給執行於器件3〇〇上之應 用程式的II件資源。‘然而,應注意,㈣仲裁系統之一或 多個實施例適於與具有或多或少之資源及/或不同功能之 元件的其他器件一起使用。 處理邏輯302包括一 CPU、處理器、閉極陣列、離散邏輯, =其他硬體或軟體,或其任何組合。因此,處理邏輯3〇2通 常包括用以執行機ϋ可讀取指令來執行本文所述之功能的 邏輯。舉例而言,可將指令自一諸如一軟性磁碟、唯讀光 碟(CDROM) '快閃記憶體或經由介面31〇與器件3〇〇建立介 102226-970521 .doc -16- 1362004 面之其他電腦可讀取媒體的電腦可讀取媒體载入器件3〇〇 中。在另一實施例中,可將該等指令經由介面31〇自一諸如 —網路祠服器或任一其他類型之網路資源下載至器件3〇〇 中。該等指令於由處理邏輯302執行時提供如本文所述之動 態仲裁系統之一或多個實施例。 ▲記憶體304包括任-類型之隨機存取記憶體(ram)、唯讀 記憶體(ROM)、硬碟、軟性磁碟、快閃記憶體或任一其他 類型之記憶體器件。語音邏輯3〇6包括用以控制—諸如一揚 聲器、放大器、語音處理器或任一其他類型之語音器件之 語音器件的邏輯。攝影機邏輯3⑽包括用以控制-諸如一電 荷輕合元件相機(CCD ea而a)或任—其他類型之攝影機器 件之攝影機器件的邏輯。1/0介面㈣包括硬體及/或軟體或 其任何組合以允許器件_與外部器件或系統建立介面。舉 例而D ’ I/O介面31G包括用以介面連接至諸如磁碟機或盆 :記憶體器件之外部儲存系統之邏輯。介面31〇亦包括用二 介面連接至一諸如一本端電腦系統之外部系統之邏輯。另 =該"面亦包括用以與允許與遠端電腦及词服器通信之 資料網路建立介面之邏輯。 在器件3〇0之一實施例之運作期間,由處理邏輯302執行 :程式指令啟動一執行時環境314。舉例而言,該執行時環 Μ為BREW執行時環境314。在_實施例中程式指令之 執:亦啟動一語音管理器3 2 0及攝影機管理器3 1 8。語音管 盗320運作以控制語音資源306以允許執行於器件300上 之』程式控制自器件3〇〇輪出之語音。攝影機管理器318 102226-970521.doc 17 1362004 運作以控制攝影機資源308以允許執行於器件3〇〇上之應用 • 程式獲得來自一攝影機器件之影像及視訊。在另一實施例 中,語音管理器320及/或攝影機管理器318可包括_ cPU、 . 處理15、閘極陣列、離散邏輯,或其他硬體或軟體,或其 任一組合。 . 語音管理器320及攝影機管理器318自執行於該器件上之 應用程式(322、324、326)接收對其所控制之器件資源進行 存取之請求。該等應用程式(322、324、326)可為適於在器 籲 件300上執行之任何類型之應用程式。舉例而言’該等應用 程式可為多媒體應用程式、日曆應用程式、電子郵件應用 程式或當於該器件上執行時提供有用特徵及/或功能之任 何其他類型的應用程式。為便於分配該等器件資源,語音 官理320及攝影機管理器318為記憶體3〇4中之每一個別 斋件資源維持狀態資訊。舉例而言’語音管理器32〇維持記 憶體304中之語音狀態資訊328。語音狀態328識別與語音資 • 源3G6之分配及使用相關之各種參數。同樣,攝影機管^器 3 18維持記憶體304中之攝影機狀態資訊33〇。攝影機狀態 330識別與攝影機資源308之分配及使用相關之各㈣數了 . 器件狀態334識別㈣件之目前運作模式,例如該器件運作 . 帛式可為空閒、運作-應用程式、接收一訊息、處理一語 曰呼4玩遊戲或為任一其他類型之器件運作模式。 當該等應用程式(322、324、326)於器件3⑽上執行時其 料求遞交至語音管理器32G及攝影機管理存取相 關器件資源。該等請求被處理以將語音資源鳩及攝影機資 102226-970521.doc .18- 1362004 源308之每一者分配至選定之應用程式。在—器件資源目前 未被分配之情況下’可易於將該器件資源分配給一請求鹿 用程式。然而,若一器件資源當前已被分配給—應用程式, 則來自另一應用程式之對存取該器件資源進行之任何請求 需要經仲裁以判定將該器件資源分配給哪—應用程式。 在一或多個實施例中,動態仲裁系統運作以仲裁將一哭 件資源分配至其中一執行於器件300上之應用程式之該分 配。舉例而言,一應用程式將一對一器件資源之請求遞交 至適當的貧源管理器。若該器件資源目前已被分配給另一 應用程式,則該資源管理器將一仲裁請求遞交至資源仲裁 器316。該仲裁請求包含與該請求應用程式有關之 求者資訊)及與該器件資源之目前所有者有關之資訊(所有 者資訊舉例而言,將與該器件資源之目前所有者有關之 資訊維持在相應的資源狀態資訊中。 在一實施例令,資源仲裁器3丨6根據储存於記憶體中 之仲裁規則332處理仲裁請求。舉例而言,在一實施例中, 將仲裁規則332自-網路伺服器下载至器件扇以使得該網 ㈣服器能夠提供關於如何於器件3⑼中仲裁資源請求之 輸入。在本文獻之另一部分中提供該仲裁過程之更詳細的 描述。仲裁請求由資源仲裁器316處理以產生—仲裁決策, 該仲裁決策返回至已遞交該仲裁請求之資源管理器。該資 源管理器隨後基於該仲裁決策分配該器件資源。 應注意,器件300中展示之動態仲裁系統之描述僅說明一 實施例4其他配置可提供本文所述之功能。舉例而言, 102226-97052I.doc •19- 卿〇4 可在該等所述實施例之範嘴内對器件鳩之功能元 、·-且合、重排、改變、添加或刪除。 資源仲裁器 ^一或多個實施例中’提供—運作為中央決策者以判定 =3:器:Μ交至一請求應用程式(或物件)的資源 安實施例中,於製造期間將資源仲裁器316 上在另實施例中,資源仲裁器316可由 —網路伺服器進行定製並將苴 ^ ^ 將其實施為-必要時可更新或可 ==載模組。舉例而言,在一器件3。。為-無線電話 穿Γ=:可定製資源仲裁器316並將其自-由-通信原 裝置k商(Ο卿f運商運作之網路㈣ ::較佳地’-單-資源仲裁器316用以於器件期上仲】 =有器件資源之請求;然而,亦可能在所述實: 靶可内於器件300上使用多個仲裁器。 在一實施例中,將來自一資 資源仲裁器316,且該心之多種請傳遞至 .成 ^貝Λ用以產生—仲裁決策。在一實施 例中,傳至資源仲裁器316 ^ ^ ^ ^ ^ 貝δί1包括與凊求應用程式有關 訊)及與器件資源之目前所有者有關之資 傳^資然而’在其他實施例中,額外類型之資訊 ==仲裁器且該額外資訊包括器件狀態資訊334、使 以產生^第二方偏好資訊及適於由資源仲裁器使用 以產生-仲裁決策之任何其他類 此外’在一實施例中, ° 裁過程可裁器係可擴展的以使得仲 在不期間或運作條件下使用不同 102226-970521.doc -20- ^ ^ J Γΐ ^ ^ ^ J ^ ^ ^ ^ ^ t ^ 中裁決策之請求者及所有者資訊之簡 示=單“’可傳遞至資科制之資職不限於該所 A ·貝源所有者資訊 h所有者類別識別碼(CLSID)及實體指標 2·取得資源之理由 3·讓與控制資訊 a.讓與識別碼清單 b•清單計數(-1=所有,0=無,否則計數) B.請求者資訊 L請求者類別冑別碼(CLSID)及實體指標 2 ·取得資源之理由 3 ·讓與控制資訊 a. 讓與識別碼清單 b. 清單計數(·1=所有,無,否則計數) 圓4展示用於提供於器件扇中使用之動態仲裁系統之一 實施例的方法_之—實施例。為清晰起見,將參看圖3中 所示之器件3 00描述方法之運作。舉例而言方法彻展 示在-實施例中如何將語音資源3〇6動態地分配給應用程 式322 ' 324及326 ° Ύ 貝綠分配凊求發送至與 該器件資源相關之資源管理器。舉心言,應_式322將 -資源分配請求發送至語音資源管理器32〇以請求分配語 102226-970521.doc .21 · 1362004 音資源306。該分配請求包含與應用程式322有關之資訊, 例如該請求包含如上所述之請求者資訊。 於塊404處,資源管理器將器件資源分配給第一應用程 式。舉例而t,由於語音資源3〇6當前為可用&,故語音資 源管理器320將語音資源3〇6分配給應用程式^卜此外語 音資源管理ϋ 3 2 G使用在該分g❻求中所提供之請求者資 訊來更新上述的資源所有者資訊。該資源所有者資訊隨後 被儲存於語音狀態328中。 於塊偏處’-第二應用程式將一資源分配請求發送至與 該器件資源相關之資源管理器。舉例而言,應用程式似將 -資源分配請求發送至語音資源管理器32〇以請求分配語 音資源306。該分配請求包含與應用程式324有關之資訊, 例如該分配請求包含如上所述之請求者資訊。 於塊偏處,資源管理器將一仲裁請求發送至資源仲裁器 316。舉例而言’語音資源管理器320將-仲裁請求發送至 貧源仲裁器316。該仲裁請求包含來自語音狀態328之資源 所有者資減來自分配請求之資源請求者資訊。因此,仲 裁請求為資源仲裁器316提供與語音資源3〇6之目前所有者 及目刖凊求者有關之資訊。 於塊410處,資源仲裁器316產生-指示應將器件資源分 配給哪-應用程式之仲錢策。舉例而言,資料裁器316 產生5亥仲裁決朿並將該決策傳輸至語音資源管理器320。資 源仲裁=16基於儲存於記憶體则中之仲裁規則说產生 该仲裁決H實施财,將資源仲裁器316及仲裁規則 102226-97052I.doc -22- 1362004 332自一諸如一 OEM/營運商之第三方進行下栽該第三方 允許更新且亦提供第三方用以判定如何於器件3〇〇上:配 器件資源之一種機制。在本文獻之另_部分中提供資_ 裁器316如何產生仲裁決策之更詳細的描述。 於塊4i2處,資源管理器基於該仲裁決策分配器件資源。 舉例而言,語音資源管理器320基於該仲裁決策將語音資源 306分配給第一應用程式322或第二應用程式324。語音資源 管理器32G亦以任何新的f源所有者f訊更新語音狀態似。 因此,方法400運作以提供於器件3〇〇中使用之動態仲裁 系統之一實施例》應注意,方法4〇〇僅說明_實施例且可在 所述實施例之範相重排、改變、組合、添加或刪除方法 步驟。舉例而t,-應用程式可向—資源管理器登錄一回 呼函式以使得可將一器件資源之狀態及/或可用性在必要 時提供至該應用程式。因此’可由該仲裁系統提供額外的 輔助功能且該等輔助功能在所述實施例之範疇内。 實施例實例 以下描述於一器件中運作以分配器件資源之動態仲裁系 統之一實施例之一實施例實例。待管理之器件資源之實例 係音訊(器件或音量)器件資源或視覺(顯示)器件資源。在一 實她例中’ 1¾系統包括一資源管理器以控制器件資源之存 取’該資源管理器提供-用於包含BREW應用程式之應用程 式(物件)的通用構件。該資源管理器亦協調並管理由物件所 進行之對器件資源之取得及釋放且亦運作以於一器件資源 之狀態改變時通知所登錄之物件。 102226-970521.do« -23- 1362004 某些類型之器件資源每次僅可由一應用程式使用。舉例 而言…語音介面資源僅允-應用程式使用語音輸出。系 統提供仲裁(即資源仲裁器316)來财允許哪—應用程式控 制一器件資源。 圖5展示運作-資源仲裁器以提供動態仲裁系統之一實 施例之方法500的一實施例。為清晰起見,將參看圖3中所 示之器件300而描述方法5〇〇之運作。因此,在一實施例中, 方法500由圖3中所示之資源仲裁器316而加以實施。 於塊502處,於仲裁器處接收一仲裁請求。舉例而言,攝 影機管理器318將該仲裁請求遞交至仲裁器316。該仲裁請 求包括與攝影機資源308之目前所有者有關之資訊及與請 求存取攝影機資源308之應用程式有關之資訊。 於塊504處,對攝影機資源3〇8之目前所有者提供之讓與 清單執行一測試以判定目前所有者將對攝影機資源3〇8之 控制讓與哪些應用程式。該讓與清單係於仲裁請求中所提 供之目前所有者資訊的部分。若該讓與清單指定任一應用 程式皆可獲得對攝影機資源308之控制,則該方法前進至塊 510。若該讓與清單指定無應用程式或僅有指定之應用程式 可獲得對攝影機資源308之控制,則該方法前進至塊5〇6。 於塊506處,執行一測試以判定該請求應用程式是否為識 別於該讓與清單中之應用程式之一。舉例而言讓與清單 指定可用以識別選定之應用程式之群組ID或應用程式m。 若一識別請求應用程式之ID被指定於讓與清單中,則該方 法則進至塊5 1 0。若該請求應用程式未被指定於讓與清單 102226-970521.doc • 24 - 1362004 中’則該方法前進至塊5〇8。 、於=5°8處,作—維持攝影機資源3。8之目前所有者之仲 裁決策。因為賦給目前 ^ L 虿耆特權且該請求應用程式未在 ,與々早上,所以請求應用程式對攝影機資㈣ 該方法隨後前進至塊-其中仲裁決策返回: 攝影機管理器318。 於塊5U)處,基於選定之標準仲裁來自該請求應用程式之
仲裁請求。舉例而言,在—實施例中,基於仲裁規則332仲 裁該請求。事實上,任何標準可“判定將攝影機資源· 分配㈣一應用程式。舉例而言’仲裁可基於每一應用程 式欲得到攝影機資源308之理由、器件之運作模式、使用者 偏好、營運商偏好或任-其他標準而進行。在確定了仲裁 決策後’該方法前進至塊512 ’其中該仲裁決策返回至攝影 機管理器318。 圖6展示適於與動態仲裁系統之一或多個實施例一起使 用之資源控制架構600之一實施例。對於正被管理之每一器 件資源602而言,存在一控制該物件之資源介面6〇4、一用 於控制存取之資源控制介面(IResourceCtl interface)6〇6及 一資源管理器608。另外,所有器件資源共用一資源仲裁器 610 ° 當資源介面604之一實體被建立時,其包含資源控制實體 612。資源控制實體612與資源管理器608相互作用以取得並 釋放下面之器件資源602。應注意’即使一應用程式控制了 一器件資源602,另一應用程式仍可基於該存在之仲裁規則 102226-970521.doc •25- 1362004 來於任何時間取得對同一器件資源6〇2之控制。 圖7展不說明一分配實例之圖700,該分配實例根據動態 仲裁系統之一或多個實施例描述如何於兩個應用程式間分 配盗件貧源。舉例而言,圖700展示在包括一資源仲裁器 7〇2、資源管理器704、應用程式A 706、資源實體A 708、 應用程式B 710及資源實體B 712之各種器件實體間之相互 作用》 在该分配實例開始時,應用程式A 7〇6將一資源請求7 i 4 發送至育源實體A 708以取得一由資源管理器7〇4管理之器 件資源。將該資源請求自資源實體A 7〇8轉發至資源管理器 7〇4,如716所示。將假定於此時間點上未分配該器件資源, 以使得資源管理器704將器件資源分配給應用程式A 7〇6並 發送一流回至應用程式A 7〇6之"成功(Success)"指示如7 i 8 及720處所示。此時,器件資源已由應用程式a 7〇6取得。 另外,應用程式A 706經由資源實體a 708登錄一回呼函式 以接收與關於器件資源之任何狀態改變有關之資訊,如Μ〕 處所示。 稍後,應用程式B 710將一資源請求724發送至資源實體b 712以取得由資源管理器7〇4管理之器件資源。將該資源請 求自資源實體B 712轉發至資源管理器704 ,如726所示。來 自應用程式B 710之請求引起資源管理器7〇4自資源仲裁器 702請求仲裁,如728處所示。資源仲裁器7〇2根據本文所述 之實施例處理仲裁請求730。資源仲裁器7〇2提供一指示器 件資源已成功分配給應用程式B 710之仲裁結果,如73〇、 102226-970521.doc -26- 1362004 二2及734所不。因此’此時’應用程式b 7⑺已取得該 資源因為應用程式A 7〇6已登錄狀態改變通知(72 以應用程式A鳩經由_回呼函式川而被警告器件 狀態已改變。因此’回應於該回呼,應用程式A·發送— "得到狀態(get status)”命令738,命令738返回器件資源已八 配給另一應用程式且器件資源正處於忙碌中之通知0刀 定製資源仲裁器
貧源仲裁器係、判定是否可將—器件資源交給請求物件之 中央決策者。該資源仲裁模組可由QEM/營運商而進行定製 並可藉由使用一類別識別碼(CLSID)而實施為一可下載模 組。對於所有g件資源存在—單—資源仲裁器⑽^咖如) 之實施例。在一實施例中’將上述資源所有者資訊及請求 者資訊傳遞,给資源仲裁方法IResArbiter_c〇nfirmAc叫“以 產生仲裁決策。 若目前所有者已指定了 一讓與CLSID清單,且請求者經 識別而處於指定應用程式ID或群組1〇之清單中,或若該所 有者允許任何ID(如在一非特權所有者之情況中),則仲裁 器可基於所提供之其餘資訊決定轉移所有權(最簡單之實 施例准許該請求)。若請求者經識別而不在讓與clsid清單 上,則仲裁器拒絕該請求。以下為適用於在一執行一 BREW 執行時環境之器件中使用之資源仲裁器的c〇nfirmAcquire 方法之一樣本實施例。 mt 〇EMResArbiter_ConfirmAcquire(IResArbiter * p〇, AEECLSID clsReq,AEEResCtlInfo * pOwner, 102226-970521.doc •11 · 1362004 AEEResCtllnfo * pRequester) CResArbiter * pMe = (CResArbiter*)po; int status = EITEMBUSY; int i; // //首先檢查類別清單以瞭解所有者是否允許 //
switch (pOwner->nClsCount) { case -1: //允許任何應用程式取得資源 status = SUCCESS; break; case 0: //不允許任何應用程式取得資源 status = EITEMBUSY; break;
default: //檢查存取(讓與)清單 for (i = 0; i<pOwner->nClsCount; i++) { uint32 privld = pOwner->pClsList[i]; if (privld < QVERSION) { //理由可接受? if (privld == pRequester->dwReason) 102226-970521.doc -28- 1362004 status = SUCCESS; break: } else //請求者類別id匹配或具有群組特權? if (ISHELL_CheckPrivLevel (pMe-: m_pIShell, privId,TRUE)) { status = SUCCESS; break; break; //此時,一OEM可選擇接受該存取清單 //許可檢查及/或添加額外決策演算法, //諸如審查目前的存取理由或允許特定的請求者CLSID 而不管所有者之存取清單等。 return (status); 102226-970521.doc -29- 1362004 因此’儘管本文中說明及描述了供―器件使用之動態仲 裁系統之-❹個實施例,但瞭解,可在不偏離本發明精 神或本質特徵的情況下,對該等實施例作各種改變。因此, 本文之揭示案及描述欲為說明性的,而並不欲限制以下申 請專利範圍中所闡明之本發明之範_的。 . 【圖式簡單說明】 /圖1展示-運作以在一器件中分配器件資源之動態分配 系統之一實施例; 圖2展示一用於在一器件中分配器件資源之動態分配系 統之一實施例的功能圖; 圖3展示一包含一動態仲裁系統之實施例之一器件之一 實施例; 圖4展示一用於提供在一器件中使用之_動態仲裁系統 之一實施例的方法之一實施例;
圖5展示一用於運作一資源仲裁器以提供一動態仲裁系 統之一實施例的方法之一實施例; 圖6展示一適於與一動態仲裁系統之一或多個實施例— 起使用之資源控制架構之一實施例;及 圖7展示一根據一動態仲裁系統之一或多個實施例之如 何在兩個應用程式間分配一器件資源之實例。 【主要元件符號說明】 100 102 ' 300 104 動態分配系統 器件 資料網路 102226-970521.doc -30· 1362004 106 、 122 108 110 112、206、316、610、702 114' 208 ' 332 116、212、322 ' 324、326 118、210、602 120 # 200 202 、 608 、 704 204 302 304 306 308 310 ® 3 12 314 • 318 . 320 328 330 334 600 無線通信通道 伺服器 第二伺服器 資源仲裁器 仲裁規則 應用程式 器件資源 通信通道 動態仲裁系統 資源管理器 資源狀態 處理邏輯 記憶體 語音資源/語音邏輯 攝影機資源/攝影機邏輯 I/O介面 内部資料匯流排 執行時環境 攝影機管理器 語音管理器 語音狀態 攝影機狀態 器件狀態 資源控制架構 102226-970521.doc -31 - 1362004 604 資源介面 606 資源控制介面 612 資源控制實體 700 分配實例 706 應用程式A 708 資源實體A 710 應用程式B 712 資源實體B 714 ' 724 資源請求 730 仲裁請求 736 回呼函式 738 命令 102226-970521.doc -32-

Claims (1)

  1. '、申請專利範圍: 一種於一器件上用於估 — 方法包括: 、★载-器件貧源之分配的方法,該 接收來自-清求應用程式之請求其 件之資源,· $刀配》亥态 確疋該盗件貧源係為—所屬應用程式所擁有; 將所有者資訊與請求者資訊相關聯以形成—仲 其中該所有者資訊包括界定該所屬應: 權之—第-特權狀態,且該請求者資訊包括界定該= 應用程式的優先權之-第二特權狀態; 依據藉由該等第-及第二特權狀態界定 該仲裁請求以產生-器件仲裁決策; 先權仲裁 :該:裁決策確定該第_特權狀態大於該第二特權狀 :、時,藉由該所屬應用程式保持該器件資源之所有權; 以及 2. 2該仲裁決策敎㈣二特權狀態大於㈣-特權狀 I ’ It由該所屬應用程式讓與該器件資源之所有權, 且分配該器件資源給該請求應用程式。 如請求項丨之方法’其中該仲裁步驟係由一資源仲裁器所 執行,且其中該方法包括將該資# ^ ^ 貝/原、仲裁器下載至該器件。 如“項!之方法,其中該所有者資訊包括—讓與清單, 且該仲裁之㈣包括絲該讓與清單確定該仲裁決策。 如請求们之方法’其中該仲裁之步驟包括:基於選自一 組包括該所有者資訊、該請求者資訊、器件狀態資訊、 102226-970521.doc :°運作模式資訊、使用者偏好資訊及第三方偏好資訊 之任何資訊來確定該仲裁決策。 5·如請求们之方法’其中該器件係—無線器件。 6·-種於-器件上用於動態仲裁一器件資源之分配的裝 置’該裝置包括: 一資源管理器,其包括: 接收邏輯’用以接收請求,該請求係來自一請求應 用程式且其請求分配該器件之資源; 確定邏輯’用以確定該nmm屬應用程 式所擁有;及 關聯邏輯,用以將所有者資訊與請求者資訊相關聯 以形成-仲裁請求’其中該所有者資訊包括界定該所 2應用程式的優先權之—第一特權狀態,且該請求者 資訊包括界定該請求應用程式的優先權之一第二特權 狀態; 仲裁邏輯,用以依據藉由該等第—及第二特權狀態 界定之優先權仲裁該仲裁請求以產生—仲裁決策;〜 保持邏輯’用以當該仲裁決策確定該第一特權狀態 大於該第二特權狀態時,藉由該所屬應用程式保持該 器件資源之所有權;以及 讓與邏輯,用以當該仲裁決策確定該第 大於該第-特權狀態時,藉由該所屬應用程式讓與該 器件資源之所有權,且分配該器件資源給該請求應用 程式。 102226-970521.doc •=項6之裝置’其中該仲裁邏輯包括 之軟體模組。 王4益忏 如。月求項6之裝置,其中該所有者資訊包括一讓與, 且該仲裁邏輯運作以基於該 策。 嘬’、β早不確疋該仲裁決 9. =項6之裝置’其中該仲裁邏輯運作以基於選自一组 件運作掇―— 月水者貧訊、斋件狀態資訊、器 牛運_式錢、使用者偏好資訊及第三方偏好資訊之 任何貧訊來確定該仲裁決策。 5 如請求項6之裝置,其中該器件係一無線器件。 11, 一種於一器件上用於仲 裝置包括· 盗件貝源之分配的裝置,該 接收構件,用於接收—請求, 5玄5月求係來自一請求應 用耘式且其凊求分配該器件之資源; 2構件,用於確定該器件資源係為一所屬應用程式 所擁有; 开:Τ二用於將所有者資訊與請求者資訊相關聯以 ^属廒用哉清求之構件,其中該所有者資訊包括界定該 所屬應用程式的優先權之-第-特權狀態,且該請求者 倉訊包括界定該請求應用程式的優先權之一第二特權資 afl * 用於依據藉由該等第一及第二特權狀態界 疋權仲裁該仲裁請求以產生-仲裁決策; 保持構件,用以當該仲裁決策雄定該第一特權狀態大 102226-970521.doc 、以第二特權狀態時’ #由該所 資源之所有權;讓盘構件, ‘似程式保持該器件 二特權狀味大於4笛 乂當該仲裁決策確定該第 亏權狀癌大於該第一特權狀,q第 式讓與該器件資源之所有 、稭由該所屬應用程 求應用程式。 且刀配該器件資源給該請 12.如請求項11之梦罢 ^ ^ 所執行,且Π 仲裁構件係由-資源仲裁号 裁器下載至該器件。 +,用於將該資源仲 Π.如請求項11之裝置,豆中 單,且該者資訊包括-讓與清 決策之構件。 讓與h早確疋該仲裁 14. 如凊求項1丨之裝置,其中該 _ έΒ ^ , 中裁構件包括用於基於選自 ” L該所有者資訊、該請求者資訊 ^ # il ^ Μ -+· ^ °益件狀貧矾、 之任使^偏好資職第三方偏好資訊 之任何來確定該仲裁決策之構件。 貝訊 15. 如請求項Π之裝置,豆 16. -種包括扣八 Ί“件係-無線器件。 之電腦可讀取媒體,該等指令係由一器件 --杜Γ理益所執行,其運作以在該器件中動態地仲裁 °資源、之ν刀配,該電腦可讀取媒體包括: , 用於接收一請求,其係來自一請求應用程 "、請求分配該器件之資源; ^ 7用於確定該器件資源為一所屬應用程式所 擁有;. 關聯指今,田, 用於將所有者資訊與請求者資訊相關聯以 102226-970521.doc 形成-仲裁請求’其中該所有者資訊包括界定該所屬應 用程式的優先權之―第―特權狀態,且該請求者資訊包 括界定該請求應用程式的優先權之-第二特權狀態; 仲裁指令,用於依據藉由該等第一及第二特權狀態界 定之優切仲裁該仲裁請求以產生—仲裁決策; 保持指+,用以當該仲裁決策確定該第—特權狀態大 :該第二特權狀態時,藉由該所屬應用程式保持該器件 資源之所有權;以及 17. 、讓與&令’用於當該仲裁決策確定該第二特權狀態大 於該第一特權狀態時,藉由該所屬應用程式讓與該器件 資原之所有權’ 分配該器件資源給該請求應用程式。 :請求項16之電腦可讀取媒體,其中該仲裁指令係由一 資源仲裁器所執行,且其中該方法包括下載指令用於 將該資源仲裁器下載至該器件。 18. :請求項16之電腦可讀取媒體,其中該所有者資訊包括 一讓與清單,且該仲裁指令包括用於基於該讓與清單確 定該仲裁決策之指令。 19. 如請求項16之電腦可讀取媒體,其中該仲裁指令包括用 於基於選自一組包括該所有者資訊、該請求者資訊器 件狀態資訊、器件運作模式f訊、使用者偏好資訊及第 20. 三方偏好資訊之任何f訊來確^該仲裁決策之指令。 如請求項16之電腦可讀取媒體,其中該器件係—無線器 件0 102226-970521.doc
TW094117260A 2004-05-26 2005-05-26 System for dynamic arbitration of a shared resource on a device TWI362004B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/854,984 US7315904B2 (en) 2004-05-26 2004-05-26 Resource allocation among multiple applications based on an arbitration method for determining device priority

Publications (2)

Publication Number Publication Date
TW200617784A TW200617784A (en) 2006-06-01
TWI362004B true TWI362004B (en) 2012-04-11

Family

ID=35426904

Family Applications (1)

Application Number Title Priority Date Filing Date
TW094117260A TWI362004B (en) 2004-05-26 2005-05-26 System for dynamic arbitration of a shared resource on a device

Country Status (15)

Country Link
US (1) US7315904B2 (zh)
EP (1) EP1754149A4 (zh)
JP (1) JP2008500648A (zh)
KR (1) KR20070027613A (zh)
CN (1) CN101189597B (zh)
AR (1) AR049819A1 (zh)
AU (1) AU2005250859A1 (zh)
BR (1) BRPI0511544A (zh)
CA (1) CA2567622A1 (zh)
IL (1) IL179459A0 (zh)
MX (1) MXPA06013655A (zh)
PE (1) PE20060391A1 (zh)
RU (1) RU2006146054A (zh)
TW (1) TWI362004B (zh)
WO (1) WO2005119446A2 (zh)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060069457A1 (en) * 2004-09-24 2006-03-30 Texas Instruments Incorporated Dynamically adjustable shared audio processing in dual core processor
US20070094668A1 (en) * 2005-10-17 2007-04-26 Jacquot Bryan J Method and apparatus for dynamically allocating resources used by software
KR100690854B1 (ko) * 2005-11-08 2007-03-09 엘지전자 주식회사 멀티태스킹이 가능한 휴대용 단말기 및 그의 멀티태스킹처리방법
JP4377369B2 (ja) * 2005-11-09 2009-12-02 株式会社日立製作所 リソース割当調停装置およびリソース割当調停方法
JP2007233546A (ja) * 2006-02-28 2007-09-13 Seiko Epson Corp 多機能複合システム、複合リソース管理方法及びプログラム
JP4671041B2 (ja) * 2006-03-27 2011-04-13 日本電気株式会社 モジュール化物理リソース群特定方法、その装置及びプログラム
US20070258480A1 (en) * 2006-05-05 2007-11-08 Sony Ericsson Mobile Communications Ab Resource management system and method
US8274993B2 (en) * 2006-06-16 2012-09-25 Cisco Technology, Inc. Fibre channel dynamic zoning
US8165566B2 (en) * 2007-10-30 2012-04-24 Cisco Technology, Inc. Functionality distribution for a mobile endpoint
GB2471486A (en) * 2009-06-30 2011-01-05 Nokia Corp Apparatus and method for resolving resource contention using access priority.
US9277021B2 (en) * 2009-08-21 2016-03-01 Avaya Inc. Sending a user associated telecommunication address
US8589936B2 (en) * 2010-03-16 2013-11-19 Alcatel Lucent Method and apparatus for managing reallocation of system resources
US8463908B2 (en) * 2010-03-16 2013-06-11 Alcatel Lucent Method and apparatus for hierarchical management of system resources
US20110289506A1 (en) * 2010-05-18 2011-11-24 Google Inc. Management of computing resources for applications
US8954978B1 (en) * 2010-12-29 2015-02-10 Amazon Technologies, Inc. Reputation-based mediation of virtual control planes
US8667399B1 (en) 2010-12-29 2014-03-04 Amazon Technologies, Inc. Cost tracking for virtual control planes
US8667495B1 (en) 2010-12-29 2014-03-04 Amazon Technologies, Inc. Virtual resource provider with virtual control planes
US8769544B2 (en) * 2011-09-01 2014-07-01 Qualcomm Incorporated Method and system for managing parallel resource request in a portable computing device
US20130219386A1 (en) * 2012-02-21 2013-08-22 Disney Enterprises, Inc. Dynamic allocation of compute resources
RU2477520C1 (ru) * 2012-03-14 2013-03-10 Закрытое акционерное общество "Лаборатория Касперского" Система и способ динамической адаптации функционала антивирусного приложения на основе конфигурации устройства
US8943504B2 (en) * 2012-04-20 2015-01-27 Qualcomm Incorporated Tracking and releasing resources placed on a deferred unlock list at the end of a transaction
US9594594B2 (en) * 2012-10-18 2017-03-14 Advanced Micro Devices, Inc. Media hardware resource allocation
US9794134B2 (en) * 2012-11-16 2017-10-17 Apple Inc. System and method for negotiating control of a shared audio or visual resource
GB2520685A (en) * 2013-11-27 2015-06-03 Nordic Semiconductor Asa Integrated circuit radio devices
US10110951B2 (en) * 2014-04-24 2018-10-23 Axwave Inc. Coordinated background TV recognition
US10212326B2 (en) * 2016-11-18 2019-02-19 Microsoft Technology Licensing, Llc Notifications for control sharing of camera resources
US10447924B2 (en) * 2017-06-30 2019-10-15 Microsoft Technology Licensing, Llc Camera usage notification
US10368128B2 (en) * 2017-08-11 2019-07-30 Microsoft Technology Licensing, Llc Memory allocation type for media buffer
US10565678B2 (en) * 2018-03-23 2020-02-18 Microsoft Technology Licensing, Llc Asynchronous camera frame allocation
US11531975B2 (en) * 2018-04-13 2022-12-20 International Business Machines Corporation Network node management on a blockchain
JP7139866B2 (ja) * 2018-10-18 2022-09-21 トヨタ自動車株式会社 車両用調停システム
JP7238495B2 (ja) * 2019-03-12 2023-03-14 トヨタ自動車株式会社 車両運転システム
CN117093520A (zh) * 2023-10-12 2023-11-21 北京集度科技有限公司 基于面向服务架构的服务仲裁装置、方法、车辆

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812875A (en) * 1995-05-02 1998-09-22 Apple Computer, Inc. Apparatus using a state device and a latching circuit to generate an acknowledgement signal in close proximity to the request signal for enhancing input/output controller operations
EP0964332B1 (en) * 1998-06-10 2005-10-12 Sun Microsystems, Inc. Scheduling processes for resource allocation
EP1061710B1 (en) * 1999-06-17 2010-12-08 Level 3 Communications, LLC System and method for integrated load distribution and resource management on internet environment
EP1182551B1 (en) * 2000-08-21 2017-04-05 Texas Instruments France Address space priority arbitration
KR100353214B1 (ko) * 2001-01-16 2002-09-18 삼성전자 주식회사 휴대용 무선단말기 기능 서비스방법
US6901446B2 (en) * 2001-02-28 2005-05-31 Microsoft Corp. System and method for describing and automatically managing resources
EP1387593A3 (en) * 2002-07-31 2005-06-15 Matsushita Electric Industrial Co., Ltd. Information processing terminal and information processing method
AU2003301482A1 (en) * 2002-10-16 2004-05-04 Rocksteady Networks, Inc. System and method for dynamic bandwidth provisioning

Also Published As

Publication number Publication date
AR049819A1 (es) 2006-09-06
CN101189597B (zh) 2012-05-09
US20050268302A1 (en) 2005-12-01
WO2005119446A2 (en) 2005-12-15
CA2567622A1 (en) 2005-12-15
IL179459A0 (en) 2007-05-15
WO2005119446A3 (en) 2007-03-29
MXPA06013655A (es) 2007-06-14
US7315904B2 (en) 2008-01-01
PE20060391A1 (es) 2006-05-27
AU2005250859A1 (en) 2005-12-15
JP2008500648A (ja) 2008-01-10
TW200617784A (en) 2006-06-01
EP1754149A4 (en) 2008-05-14
EP1754149A2 (en) 2007-02-21
BRPI0511544A (pt) 2008-01-02
RU2006146054A (ru) 2008-07-10
KR20070027613A (ko) 2007-03-09
CN101189597A (zh) 2008-05-28

Similar Documents

Publication Publication Date Title
TWI362004B (en) System for dynamic arbitration of a shared resource on a device
RU2348970C2 (ru) Система для приоритета приложения, основанного на режиме работы устройства
US8032895B2 (en) Inter process communication in a computing device
US8555201B2 (en) Wireless communication device having deterministic control of foreground access of the user interface
US9201693B2 (en) Quota-based resource management
JP5593404B2 (ja) プロセッサにおいてスレッドを実行するシステムおよび方法
EP1958064B1 (en) Resource control
EP3486770B1 (en) Processing method, device and storage medium for implementing automatic startup
US9477941B2 (en) Genealogy system for interfacing with social networks
CN111913792B (zh) 一种业务处理方法和装置
EP1422622A2 (en) Apparatus, method and program for contention arbitration
JP2021010164A (ja) 通知プリセットを利用した通知処理方法および装置
US20110197202A1 (en) Handling Messages in a Computing Device