TW200811715A - Resource managing method and resource managing device for managing drivers - Google Patents

Resource managing method and resource managing device for managing drivers Download PDF

Info

Publication number
TW200811715A
TW200811715A TW096119000A TW96119000A TW200811715A TW 200811715 A TW200811715 A TW 200811715A TW 096119000 A TW096119000 A TW 096119000A TW 96119000 A TW96119000 A TW 96119000A TW 200811715 A TW200811715 A TW 200811715A
Authority
TW
Taiwan
Prior art keywords
driver
specific
pipeline
priority order
drivers
Prior art date
Application number
TW096119000A
Other languages
English (en)
Other versions
TWI338255B (en
Inventor
Felix Freimann
Original Assignee
Crystalmedia Technology 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 Crystalmedia Technology Inc filed Critical Crystalmedia Technology Inc
Publication of TW200811715A publication Critical patent/TW200811715A/zh
Application granted granted Critical
Publication of TWI338255B publication Critical patent/TWI338255B/zh

Links

Classifications

    • 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
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Educational Administration (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Stored Programmes (AREA)

Description

200811715 九、發明說明: 【發明所屬之技術領域】 本發明係指一種於一運算系統中之資源管理襞置及相關方 法’尤指一種於運算系統中用於驅動程式登錄(driver 的資源管理裝置及方法。 【先前技術】 一般而言,如熟悉此項技藝者所知,當一運算系統之一處理 程式(handler)需要一特定驅動程式(例如是視訊解碼器的驅動程 式、調諧器(tuner)的驅動程式或是其他驅動程式)時,於邏輯觀點 (logical view)之角度上,此處理程式並不確定運算系統中有哪些可 使用的驅動程式,舉例來說,驅動程式可以是視訊解碼器的驅動 私式、凋谐器的驅動程式或是其他的驅動程式;而處理程式則可 以疋要求使用任一或是多個可使用之驅動程式的運算系統中的應 用程式。 如如所述’因為應用程式於邏輯觀點上無法得知有哪些可使 用的驅動程式’所以軟體程式(亦即應用程式)必然需要對運算系統 之下層硬體架構具有某種程度的了解,然而若運算系統之硬體元 件的規格疋義仙存於本身硬體元件巾,如此_來將會造成整體 系統效率低下’因此,倘若真的依上述方絲實現,目前的軟體 應用程式之處雖式便轉制試誤法(trial and error)來找出可使 用的驅動私式(此種作法相當缺乏效率);#中此處所述之驅動程式 200811715
♦ V ; 與處理程式的運作係如熟悉此項技藝者所熟知,故為了簡化說 明,在此不另贅述。 因此’為了解決上述所提到的問題’提出新穎並同時可改進 習知機制的方法與裝置顯然是相當重要的。 【發明内容】 Φ 本發明目的是提供一種用以管理驅動程式的資源管理方法及 資源管理裝置。 ' 因此本發明的目的之一係提供一運算系統中之一資源管理方 法及資源管理裝置,用來提供-運算系統之硬體抽象觀點 (hardwareabstmctionview)予運算系統之驅動程式。驅動程式之 使用狀況與驅動程式之間的有效互動狀況係由運算系統之硬體改 換成利用一軟體資源管理裝置來加以重新配置。 依據本發明之-實關,其侧露-種管理—運算系統 中之驅動程式的資源管理方法。該管理方法包含有:接收複 數個驅動程式之登錄資訊,並儲存上述驅動程式之登錄資訊;接 收上述驅_式之互連資訊,並儲存上述魏程式之互連資訊; 接收至少-請求命令來啟缝控制上雜練式之—特定驅動程 式;搜尋該登職訊喊出狀鶴程式;以及辦互連資訊來 '蚁特賴絲式衫依據請求命令*可彳·行。 200811715 一、依據本發日狀-實關,其_露—_於管卿動程式的 貧源管理I置。該裝置包含有—驅練式登錄單元、—記憶體、 -驅動程式管理單元及-處黯。驅_式登錄單元顧來接收 複數個驅_式之錄資訊及驅動程式之互連f訊。記憶體係轉 接於驅動^式登鮮元’其用_存錄資訊與互連資訊。驅動 程式管理單元係_於記憶體,其用來接收至少—請求命令來執 驅動程式中之-特定驅動程式。處理器係输於驅動程式管理 單元與記憶體,其用來搜尋特定驅動程式之登錄資訊,以及用來 茶考互連資訊以產生一結果。 透過本發贿供之=#源管理鋪,即便在實作上發生多個管 線皆需使用相_動程式之情形,亦能高效合理的 速解決驅動程核此之衝突,進而解決當前軟體= 工处*式所使用之试誤法而引發的效率低下等諸多問題。
【實施方式】 特4說Γ及賴的申請糊翻#中制了某鋼彙來指稱 奋疋疋。所屬領域中具有通常知識者應可理 名雕稱呼同樣的元件。本說明書及後續二 乂名%的差異來作為區分猶的方 在 區::基準。在通篇_及後續的請=: 不限定於」。另外,」「:開3的用語’故應解釋成r包含但 耦接」一祠在此係包含任何直接及間接的電 200811715 :氣連接手段。因此,若文中描述-第-裝置柄接於—第二裝置, 則代表第—裝置可錢魏連接於m或透過其他裝置或 連接手段間接地電氣連接至第二裝置。 在此請注意到,說明書中所提到之管線(pipeline)的詞囊係指 二種用於描述多飢驅動程式(drivercomponent)之編組(抑叩㈣情 心的概另外’上述驅動程式係可輕易地被歸類成以下三種類 •型之驅動程式的其中之一:來源驅動程式(贿ce cW component)、末端驅動程式(sinkdriverc〇mp〇nent)或是過程驅動程 式(process driver component);舉例來說,一管線可具有單一來源 驅動程式、連接於來源鱗程式後之任何數目的過㈣動程式以 及連接於前一個過程驅動程式後之任何數目的末端驅動程式。如 稍後說明巾所描述,本發明之實_主要在於考慮當多個管線皆 需使用到相同轉程式時如何配置±述轉程式以及如何解決驅 鲁動程式彼此衝突所引發的問題。因此,對於本發明的範脅來說, 並不需要特別說明驅動程式的細節來強調本發明的發明特點;然 而,需了解到的是,本發明之精神可_於目前已存在之驅動程 式的其他分類方式、編組方法及機制。 凊參閱第1圖’第1圖是本發明一實施例之用於一運算系統 (⑺mpming system)中驅動程式之資源管理裝置1〇〇的功能方塊 圖。在本發明之-實施例中,資源管理褒置靡係設計成内嵌於 一電視機上盒(set top box)中,並於電視機上盒之開機過程中運 200811715 :作’然而,此非本發明的限制。如S 1圖所示,資源管理裝置100 包含有一驅動程式管理單元(driver br〇㈣1〇5、一處理器⑽、一 記憶體110及一驅動程式登錄單元(driver registration unit)m ^ 中驅動私式登錄單元13〇係用來接收複數個驅動程式的登錄資訊 (registrat· info_i〇n)與互連資訊㈣⑽㈣ 例如,驅動程式登錄單元13〇可利用猶後所述之方式來登錄(亦即 自驅動程式接受其登錄資訊)並儲存驅動程式之登錄資訊至記憶體 鲁11G巾。轉程式登騎料庫12()、互連資訊資料庫⑵、驅動程 式互斥表122、驅動程式連接表123及驅動程式連接互斥表124 則同樣皆儲存於記憶體U〇中。 而屺體110耦接於驅動程式登錄單元13〇、處理器與驅 動程式官理單元105,記憶體110係用來儲存先前所提及之驅動程 式的登錄資訊與互連資訊;處理!! 14G _接於鶴程式管理單 _ 元105與記憶體110,並用來搜尋儲存於記憶體11〇中之登錄資訊 以找到-特定驅動程式,並且參考其互連資訊來產生一結果。驅 動私式官理單元105耦接於記憶體11〇,其用來接收至少一請求命 令(request)以控制複數個驅動程式中的一特定驅動程式。如第1 圖所示,驅動程式登錄資料庫120係儲存於記憶體n〇中,而驅 動私式管理單元105即是於驅動程式登錄資料庫12〇中追縱關於 已登錄之驅動程式的資訊,其中此資訊包含有驅動程式資訊(例如 名稱、識別碼、群組名稱、驅動程式連接表、驅動程式連接互斥 表及驅動程式互斥表等等,但本發明並不以此為限)。在本實施例 200811715 :中,驅動程式管理單元祕係設計用來執行一衝突回復處理程式 (« restore handler) > - mmAm^(source 0〇Μ〇η handler) ^ ^(driver ^ ^ ^ _ 官線處縣物ipeHne hand丨啦,絲料擎細驗__ engine)(皆未顯示於第i圖中)。 驅動程式管理單元105的運作與功能則進一步描述如下。須 # 注意的是,其詳細的運作過程僅係用於提供有助於了解本發明之 精神的背景知識以及關於本發明之一定程度的技術揭露,然而, 本發明之精神不應被下文中所提到的例子所限制。舉例來說,管 線處理程式可建立/破壞管線,並且亦可追蹤與已建立管線相關連 的所有驅絲式。若—特定;^線被破壞喊些驅_式仍與此特 定管線,連時’則管線處理程式可告知所有驅練式之處理程 式:目前此特定管線正被破壞;舉例來說,管線處理程式會依據 鲁將驅動程式加入至管線之相反順序來通知驅動程式之處理程式有 關正被破壞之特定管線所關連的驅動程式。此外,一般而言,處 理私式必需藉由驅動程式管理單元105或驅動程式管理單元1〇5 中任-特定程式來與驅動程式進行交互,然而,在本說明書的其 他部分’自-驅動程式回傳至一處理程式的回傳訊息(c祕吨或 通知訊息(notification)可藉由驅動程式管理單元1〇5或是不藉由驅 動程式管理單元105來加以實作。上述相連接之驅動程式的例子 s 係如熟悉此項技藝者所知,而為了簡化說明,在此省略其詳細的 運作麵。需注意刺是,處理程式-般係為與運算系統相關的 200811715 執行程式碼,並且具有可對—鶴程式發出 驅動程錢尋引擎_來在鶴程式登錄歸庫丨。 搜尋參數中搜尋-合適的鶴程式,衝突解糾 二組 個衝突發生時決定如何解決此触所造成_題,二 =,’=概Γ亦將會送出通知訊息至與此衝突有關的二 用^㈣支配I中之驅_式的處理程式。連接處理 知式係用來建立-連接關係,而—旦連接_已建立 =切:注意到的是,連接處理程式所建立之任^ 可月b係由一非同步程序來加以實作。 下列的敘述_來加強·鶴程式之運作與其彼此間且 上述功能的賴;顯舰,在不違背本發_精神下,亦可對本 =施例進行許多的設計變化,均屬本發明之範嘴。鶴程式登錄 早兀13G會魏_程纽絲122,轉齡纽斥表⑵係定 義有0¾無法同日禮啟動之驅動程式的至少一驅動程式群組,此 外’驅動程式登錄單元13〇會將驅動程式互斥表122儲存於記憶 H10中。驅動程式管理單元105可能會分別藉由一第一管線與 第-官線來分別接收對應―第—特定驅動程式的第—請求命令 及對應-第二特定驅動程式的第二請求命令,並且設定第一管線 具有第-優先順序(priority)以及設定第二料具#第二優先順 序,接著,驅動程式管理單元1〇5會參考儲存於記憶體u〇中的 驅動程式互斥表m。若第一特定驅動程式與第二特定驅動程式皆 屬於相同的驅動程式群組,則驅動程式管理單元1〇5將會比較第 11 200811715 ;—優先順序鮮二優先順絲決定是何啟動(aetivate)第-特定 驅動程式或是第二特定驅動程式。 驅動程式管理單元1〇5另會將一第一旗標(flag)設定予第一管 線,以及將-第二旗標設定衫二錄,並且#第—優先順序與 第二優先順序相同時,驅動程式管理單元1〇5會參考第一、第二 旗私的其中之一來決定特定驅動程式是否可被啟動。目前於一衝 # 大魬丨 兄中決定共享資源之分配情形已有相當多的機制可達成相同 的效果’糊來說,有許多符合本發明之精神且可制上述所揭 露之應用第一、第二旗標之相同效果的例子,其詳細運作方式並 未於本文中揭路,原因係為該些例子已被熟悉此項技藝者所知, 故省略相關的運作說明。此外,驅動程式登錄單元13G會執行多 個工作任務(task),而上述工作任務包括接收驅動程式連接表 其儲存於記憶體11〇中)及將驅動程式連接表123儲存至記憶 鲁 體110中,其中驅動程式連接表123定義有包含可利用一特定順 序來進行連接之驅動程式的驅動程式群組。稍後,驅動程式管理 單元105會參考驅動程式連接表123來檢查特定驅動程式與另一 特定驅動程式是否屬於驅動程式連接表123中的同一驅動程式群 組’以決定是否啟動特定驅動程式。 此外,驅動程式登錄單元13〇會接收用來定義包含複數個驅 ' 私式群組之至少一集合的驅動程式連接互斥表124,並會將驅動 耘式連接互斥表124儲存至記憶體110,其中每一驅動程式群組中 12 200811715
* V :之夕们驅動&式可利用一特定順序來進行連接,然而,上述驅動 紅式群組之集合中所定義之驅動程式連接並無法同時啟動。接 著依據處理程式之請求命令的需要,驅動程式管理單元腦會 參考驅動程式連接互斥表m以檢查特定驅動程式與另一特定驅 動从7C否屬於轉程式互斥表122巾相權合下的不同驅動程 式群組’其巾特定驅動程式與另_軸程·對應於不同之驅動 红式連接_ ’而若特定驅動程式與另―特定驅触式係屬於驅 •動程式互斥表122中相同集合下的不同驅動程式群組,則驅動程 式管理單元105則會比較第一優先順序與第二優先順序來決定是 否可執行特定驅動程式。 此外,驅動程式管理單元1〇5會將一第一旗標設定予第一管 ,並且將-第二旗標設定予第二管線,接著,當第—優先順序與 弟一彳支先順序相同日守,驅動程式管理單元105會參考第一、第一 • 旗標之其中之一來決定是否可執行上述特定驅動程式。舉例來 忒驅動私式管理單元105會比較第一優先順序與第二 以決定第-管線與第二管線的其中之一可使用上述特定驅動程 式;當第一優先順序與第二優先順序相同時,驅動程式管理單元 105另會將一第一旗標與一第二旗標設定予第一管線與第二管 線並且參考弟一、弟二旗標之其中之一以決定第一管線與第二 管線的其中之一可使用上述特定驅動程式。 請參閱第2圖,第2圖是本發明一實施例之用於一運算系統 13 200811715 、 :中驅動程式之資源管理方法的運作流程圖。其詳細的流程步驟如 下面所述: 步驟200 :開始。 步驟則:於運算系統的初始開機程序中,驅動程式會登錄其登錄 資訊於驅動程式登錄單元13〇中。 " 步驟22〇: -處理程式會向驅動程式管理單元1〇s發出一請求命令 鲁 來請求一驅動程式。 步驟225:處㈣⑽會參考登騎絲蚊是否依據請求命令來 啟動特定驅動程式。 步驟230:驅練式管料元1G5魏__式之登崎訊與優 先順序來提供被請求之驅動程式。 步驟:驅動程式管理單元1()5會更新驅動程式之狀態以反應出 目前被請求之驅動程式的使用情況。 • 步驟25〇:驅動程式管理單元105會等候下-個處理程式的請求命 令與驅動程式之登錄資訊,接著,回到步驟22〇。 承上所述,本實施例之流程係開始於步驟2〇〇。而於步驟21〇 I ’驅動程式會將其資訊登錄於驅動財登錄單元⑽中(驅動程 二於運算系統之初始開機程序中登錄其資訊),而所有驅動程式 7定皆能夠登錄其資訊於驅動程式登錄單元13()中;而在步驟別 一驅動知式會於登錄資訊至驅動程式登錄單元⑽時提供資訊 至管線處理程式。" 14 200811715 月〜’任—數目之鱗程式皆可被編組以形成多個驅動 =式所構成之單—群組或錢;之後,處理程式可_發出單一 凊未命令至資源管理裝置100來請求一特定群組中多娜動程 〇 舉例來說’於資源管理裝置觸中可定義一個常用的驅動程 :群=(亦即於~特定組態下較常使_之數個驅動程式,其中特 定組射=由特雜動程式龍庫參數攸義)。因此,處理程 ^式可猎由指定某些驅動程式參數(例如類型(_)與群組(group))來 發出單-請求命令至驅動程式管理單元1〇5以請求單一驅動程式 (例如可能係為一群組驅動程式)。 。雜意到,於步驟2财,本發明並未限定儲存至記憶體⑽ 之驅動权式登錄貧訊的種類,因此,舉例來說,在本實施例中, 驅動程式登鱗元13G可魏定射包含無法_啟動之驅動程 • 柄至少—,_程式群組的驅動程式互斥表122,並將驅動程式互 ^表m健存於記憶體110中;而於另一例子中,驅動程式登錄 單元130貝ij可接收驅動程式連接表123並將驅動程式連接表⑵ 儲存於記憶體110中,其中驅動程式連接表m中定義有包含可 利用-特定順序來連接之驅動程式的至少—驅動程式群組;而於 另外的其他例子中,驅動程式登錄單元13〇可接收驅動程式連接 互斥表I24並將驅動程式連接互斥表m儲存於記憶體⑽中, 其中驅動程式連接互斥表124係用來定義包含複數個驅動程式群 纽之至少-集合’而每—鶴程式群組中的轉程式則可利用一 15 200811715 特定順序來連接,細,由賴合巾上述軸喊雜所定義之 驅動程式連制_無朗時被啟動。 挺於步驟225巾’處理11 14G會參考登騎絲決定是否可依 求叩令*啟鱗定驅_式,糊來說,在本實施例中所經 二及的登錄賴可包含有轉料登錄資料庫⑽、連接資訊資 料庫⑵、驅動程式互斥表122、驅動程式連接表123與驅動程式 連接互斥表124 ’而其皆可儲存於記憶體110中;然而,這並非是 本發明的限制。 而在下面說财’本發_提出其他例子來教導如何使用記 7 Π0中不同的登錄資訊,舉例來說,當藉由一第一管線來請 ^一特定鶴程式以及藉由—第二管線來請求特定驅動程式 呀,可參考驅動程式連接表m來檢查特定驅動程式與另一特定 • 式是否屬於驅動程式連接表⑵中同-驅動程式群組,以 决定疋否可啟動上述特定驅動程式。 料-例子中,额由—第—管線來請求—财驅動程式, 亚再猎由—第二管線來請求此蚊驅動程式時,則會設定一第一 =先,序予第-管線以及設定_第二優先順序予第二管線。此 卜=另外的例子中,糾特定鶴程式與另—特定驅動程式係 群組,則處理器140會比較第-優先順序與第 順序來決定是否啟動此特定驅動程式;例如,上述說明所 16 200811715 * \ % :提及之衝突解決引擎可實作於驅動程式管理單元1()5内部以達到 此項目的。 者在另外的例子中,若此特定驅動程式與另一特定驅動 程式係屬於驅動程式互斥表122中相同集合中的不同驅動程式群 組’則處理器Μ0會比較第一優先順序與第二優先順序來決定是 2執行此特定驅動程式’其中第—管線係進—步被奴為具有 鲁=-旗標’而第二管線係進一步被設定為具有一第二旗標,以 =當第順序與第二優細序相同時,處理器⑽必須參考 第-、第二旗標之其中之—來決定是否可啟動此特定驅動程式。 ★ 2在其他例子中’第一管線係被設定為具有—第一旗襟,而 第-官線則被設定為具有一第二旗標;處理器14〇必須比較第一、 第-優先順序來決定是否可啟動此特定驅動程式,而當第一優先 φ 順序與第二優先順序相同時,可藉由參考第一、第二旗標之其中 之一來決定是否可啟動此特定鶴程式,例如,可將先前所提到 之衝大解決引擎於鶴程式管理單元1G5内部巾加以實作來達到 此項目的。 此外,於其他例子中,若第—管線與第二管線皆發出一請求 命令來請求-狀軸財,料第二管線分別被設定 1 $具有第-優先順序與第二優先順序,則處理器14〇必然會參考 館存於記憶體110中的互連資訊資料庫121來決定是否可啟動此 17 200811715 : 特定·_程式咖應此請求命令,詳細來說,尤肢當參考驅動 程式連接互斥表124來檢查此特定驅動程式與另一特定驅動程式 是否屬於驅動程式連接互斥表124中相同集合中的不同驅動程式 群組。其巾此特定驅動程式與另—特定驅動程式係分珊應於不 同的驅動程式連接關係,例如,可於驅動程式管理單元⑽5内部 中實作先前所提到之驅動程式搜尋引擎來達到此項目的。 ^ 再者’在其他例子中’若第—管線與第二管線皆發出請求命 令來請求-特定驅動程式,因此,第—管線與第二管線分別被設 定為具有第-優先順序與第二優先順序,而驅動程式管理單元1〇5 會比較第一優先順序與第二優先順序來決定第一管線與第二管線 之其中之-來使用此特定驅動程式,舉例來說,可於驅動程式管 理單TG 105内部中實作先前所提到之衝突解決引擎來達到此項目 的。 而於某些情況下’上述管線的第—優先順序與第二優先順序 可齡是相同的順序,此時’鷄程式管理單元僅需參考第一、 第二旗標之其中之—來決定第一管線與第二管線之其中之一可使 用此特m練式。目前已有許多機輸技術來分配—衝突環境 中有限的系統#源,例如是本發明之實侧中提到之驅動程式與 1理程式。藉由使用例子來說明的方式(但並非本發明的限制),^ , 發明提出一個簡易的優先順序旗標仲裁機制,然而,熟悉此項技 : ^者知的任何類似機机m本發_精_落入本發明 18 200811715 : 的範疇,例如,可於驅動程式管理單元105内部中實作先前所提 到之衝突解決引擎來達到此項目的;而為了簡化說明,在此省略 其詳細的運作過程。 〜於步驟230中’驅動程式管理單元1〇5纽據驅動程式登錄 貢訊與驅動程式或管線之優先順縣提供所請求之轉程式,例 如’處理器14〇於步驟225中會參考驅動程式互斥表m來檢查 _ 此特定驅動程式與另一特定驅動程式是否屬於驅動程式互斥表 122中同一驅動程式群組,以提供驅動程式管理單元檢查後之 結果來執行之後的步驟230,舉例來說,可於驅動程式管理單元 1〇5内部中實作先前所提到之驅動程式搜尋引擎來達到此項目的。
驅_式管理單元1(>5於步驟謂中則會更新驅動程式之狀 態來反映出所請求之驅動程式的制情況,換言之,每當已姐回 應自多個處理程式之其中之—所發出之多個驅動程式之請求命令 的其中之-,驅動程式管理單元1〇5便更新驅動程式登錄資料庫 120來正確指出每一被請求之驅動程式的最新狀態。舉例來說,可 於驅動程式管理單元1()5内部中實作先前所提到之連接處理程式 來達到此項目的。此外,驅動程式f理單^ 1()5於步驟,中則 會等候下-個處理程式之請求命令,接著,上述流程步驟才合回 到步驟220以接受處理程式之請求命令,並重複執行上述的流程 步驟;舉例來說’可於驅動程式管理單元1〇5内部中 提到的管線歧財,錢翻此項目騎需的-健要元件。 19 200811715 當接收至少-個包含有部分驅動程式之登錄資訊的登錄資吼 群組以及當儲存登錄資訊群組至記憶體11〇中時,相當可能會接 收到對包含㈣定軸程式之—雜財群_請求命令,:當 處理器140正在搜尋登錄資訊時,本發明所提出之實施例則可: 尋到對應於群組之登錄資訊群組;而需注意的是’上述的運作過 料輕紐實聽-電減上盒巾,尤錢於電視機上盒的開機 •過程中。再請注意到,驅動程式管理單元1〇5係設計成可識別出 (或以旗in如)目前已結束使用的某__特定驅動程式管線(例 如’處理程式可能已終止連接關係,所以不再需要使用目前的特 ,管線)’所以可適當蘭勝定管線,若概將再度使關特定 錄,則可避免重鱗立整個管線,此種作法將有祕提昇資源 管理裝置100的工作效率,然而,這並非用來作為本發明的限制。 % 以上所述僅為本發明之較佳實施例,凡依本發明申請專利範 圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。 【圖式簡單說明】 第1圖是本發明-實施姻於―運算系統中驅動程式之資源 管理裝置的功能方塊圖。 第2圖為本發明一實施例用於一運算系統中驅動程式之資源 管理方法的運作流程圖。 20 200811715
【主要元件符號說明】 100 資源管理裝置 105 驅動程式管理單元 110 記憶體 120 驅動程式登錄貢料庫 121 互連資訊資料庫 122 驅動程式互斥表 123 驅動程式連接表 124 驅動程式連接互斥表 130 驅動程式登錄單元 140 處理器 21

Claims (1)

  1. 200811715 \ 厚 十、申請專利範圍: 1· 一種用於管理驅動程式之資源管理方法,包含有: 接收複數個驅動程式之登錄資訊(registration information),並 儲存該些驅動程式之登錄資訊; 接收該些驅動程式之互連資訊(interconnection information), 並儲存該些驅動程式之互連資訊; 接收至少一請求命令來啟動並控制該些驅動程式之一特定驅 • 動程式; 搜尋該登錄資訊以找出該特定驅動程式;以及 參考及互連寅訊來決定該特定驅動程式是否依據該請求命令 而可被啟動並控制。 2·如申請專利範圍第〗項所述之資源管理方法,其中接收該 些驅動程式之互連資訊並儲存該些驅動程式之該互連資訊的步驟 包含有: 接收非必需(optional)之一驅動程式互斥表,並儲存該驅動程 弋互斥表’其中5亥驅動程式互斥表定義有包含無法同時啟動之驅 動程式的至少一驅動程式群組。 3.如申請專利翻第2項所述之資源管理方法,其中一第-管,請料、-特定鶴程式,—第二管線·該狀驅動程式 =Γ官線被設定為具有—第—優先順序(priGrity),該第二細 h又疋為具有—第二優先順序,以及參考該互連資訊來決定糊 22 200811715 : 定驅動程式是否依據該請求命令而可被啟動並控制之步驟包含 有·· 3 參考該驅動程式互斥表來檢查該特定驅動程式與該另一特定 驅動程式是否屬於該驅動程式互斥表中之同一驅動程式群組;以 及 , 右该特疋驅絲式與刻H鶴程式制於該同一驅動 程式群組,比較該第-優先順序與該第二優先順序來決定該特定 % 驅動程式是否可被啟動與控制。 4. 如申請專利範圍第3項所述之資源管理方法,其中該第— 管線係被奴為具有-第-旗標,該第二管線係被設定為具有一 第二旗標’以及比_第—優先順序與該第二優先順序來決定該 特定驅動程式是否可被啟動與控制之步驟包含有: 當該第-優先順序相瞻該第二優先順序時,參考該第—旗 • #與該第二旗標之其中之一來決定該特定驅動程式是否可被啟動 與控制。 5. 如申請專利細第丨項所述之f源管理方法,其中接收該 二驅動私式之4互連祕並儲存該些驅動程式之該互連資訊之步 驟包含有: 触並齡-驅難錢接表;其巾·紐式連接表係定 •義有包含可特定順縣連接之驅動程式的至少—驅動程式 群組。 23 200811715 6.如申請專利範圍第5項所述之資源管理方法,其中一第一 管線請求另-特定鶴程式,—第二管線請求該特定驅動程式, 以及參考該互連資訊來決定該特定驅動程式是否依據該請求命令 而可被啟動並控制之步驟包含有: 參考該驅練式連接表來檢查該特定雜程式與該另一特定 驅動各式是否屬於_動程式連接表巾之同—雜程式群組,以 決疋该特定驅動程式是否可被啟動並控制。 7·如申請專利範圍第1項所述之資源管理方法,其中接收該 些驅動程式之該互連資訊並儲存該些驅動程式之該互連資訊之步 驟包含有: / 接收並儲存一驅動程式連接互斥表;其中該驅動程式連接互 斥表係定義有包含複數個驅動程式群組之至少一集合,而該集合 中每-驅動程式群組之驅動程式係可利用一特定順序來連接,以 及該集合之該些轉程式群⑽定義之驅純式連接_無法同 時啟動。 8·如申請專利範圍第7項所述之資源管理方法,其中一第一 管線請求另-特定驅動程式,—第二管線請求該特定驅動程式, 該H線設定為具有—第—優先順序,該第二管線設^為具有 -第二優先順序,以及參考該互連¥訊來決定該特定驅動程式是 否依據该凊求命令而可被啟動並控制之步驟包含有: 24 200811715 參考該驅動程式連接互斥表來檢查該特定驅動程式與該另一 特定驅動程式是否屬於該驅動程式互斥表中相同集合中的不同驅 動程式群組,其中該特定驅動程式與該另一特定驅動程式係對應 於不同之驅動程式連接關係;以及 若該特定驅動程式與該另一特定驅動程式係屬於該驅動程式 互斥表中相同集合中的不同驅動程式群組,比較該第一優先順序 與該第二優先順序來決定該特定驅動程式是否可被啟動。 9·如申請專利範圍第8項所述之資源管理方法,其中該第一 管線另被設定為具有一第一旗標,該第二管線另被設定為具有一 第二旗標,以及比較該第一優先順序與該第二優先順序來決定該 特定驅動程式是否可被啟動之步驟包含有·· 當该第一優先順序相同於該第二優先順序時,參考該第一旗 標與該第二旗標之其中之一來決定該特定驅動程式是否可被啟 動。 10·如申請專利範圍第1項所述之資源管理方法,其中一第一 管線與-第二管祕請求該特定鶴减,該第—麵係被設定 為具有一第一優先順序,該第二管線係被設定為具有一第二優先 順序,以及接收該請求命令來啟祕控綱特定_程式之步驟 包含有: 比較該第-優先順序與該第二優先順縣決定該第—管線與 該第二管線之其中之一可使用該特定驅動程式。 25 * 200811715 ιι·如申請專利範圍第10項所述之資源管理方法,其中該第 一官線係另被設定為具有一第一旗標,該第二管線係另被設定為 具有一第一辑標,以及比較該第一、第二優先順序來決定該第一、 第二管線之其中之一可使用該特定驅動程式之步驟包含有: 當該第一優先順序相同於該第二優先順序時,參考該第一旗 標與該第二旗標之其中之一來決定該第一管線與該第二管線之其 中之一可使用該特定驅動程式。 12·如申請專利範圍第1項所述之資源管理方法,其中接收該 些驅動程式之登錄資訊並儲存該些驅動程式之登錄資訊之步驟包 含有: 接收包含有該些驅動程式之一部分之登錄資訊的至少一登錄 資訊群組,並儲存該登錄資訊群組;以及 接收該請求命令來啟動並控制該些驅動程式中該特定驅動程 式之步驟包含有: 接收對應於包含有該特定驅動程式之一驅動程式群組之一請 求命令;以及 搜哥對應於該特定驅動程式之登錄資訊之步驟包含有: 搜尋該驅動程式群組所對應之登錄資訊群組的登錄資訊。 η·如申請專利範圍第1項所述之資源管理方法,其中接收該 驅動程式之登錄資訊並儲存該驅動程式之登錄資訊之步驟係於一 26 200811715 V Λ : 電視機上盒(set top box)的開機程序中執行。 H. 來管__式之#源管理裝置,其包含有: 一驅_式登鮮元’絲接收缝個轉程式之登錄資訊 以及接收該些驅動程式之互連資訊,· 一記憶體’ Μ接於該驅動程式登錄單元,用來儲存該登錄資 訊與該互連資訊; 、 • 一驅動程式管理單元,搞接於該記憶體,用來接收至少一請 求命令來執行該些軸程式中之—特定軸程式;以及 〜-處理器於該驅動程式f理單元與該記憶體,用來搜 尋5亥特疋驅動程式之登錄資訊’並參考該互連資訊來決定該特定 驅動程式是否依據該請求命令而可被執行。 I5·如申請專利範圍第M項所述之資源管理裝置,其中該驅 Φ 動程式登錄單元會接蚊義有包含無法同時執行之驅動程式之至 少一驅動程式群組的一驅動程式互斥表,並將該驅動程式互斥表 儲存至該記憶體中。 16·如申請專利範圍第15項所述之資源管理裝置,其中該驅 動程式管理單元係會接收由一第一管線所發出對應一特定驅動程 式的請求以及由一第二管線所發出之對應另一特定驅動程式的請 求;該驅動程式管理單元會設定一第一優先順序予該第一管線, 並設定一第二優先順序予該第二管線;以及該驅動程式管理單元 27 200811715 會^考儲存_記憶體巾之娜_式互絲,其巾若該特定驅 動私式與郎—特定驅動程式係屬於同—驅動程式群組,則該驅 動程式管理單元會比較該第—優先順序與該第二優先順序來決定 該特定驅触式是何被執行。 二如申請專利範圍帛1δ項所述之資源管理裝置,其中該驅 動私式官理單元會另設定—第―旗標予該第—管線,並設定一第 艽‘予該第二官線’以及當該第一優先順序係相同於該第二優 =順序時’該驅動程式管理單元會另參考該第—旗標與該第二旗 ,之中之來決疋该特定驅動程式是否可被執行。 队如申請專利範圍第14項所述之資源管理裝置,其中該驅 動程式登鱗元會狐定齡包含可_ ―特定順縣連接之驅 動程式之至少-驅動程式群組的—驅動程式連接表,並將該驅動 程式連接表儲存至該記憶體中。 19·如申請專利範圍第18項所述之資源管理裝置,其中該驅 動私式官理單元會參考該,鶴程式連絲來檢麵特定驅動程式 與該另-特定驅動程式是否屬於難動程式連接表中同一驅動程 式群組’㈣定铺定鶴程式與則—狀轉程式是否可彼 此連接。 2〇·如申請專利範圍帛Μ項所述之資源管理裝置,其中該驅 28 200811715 - 絲式登錄單元會接收並儲存定義有包含複數個驅動程式群址之 至少-集合的-驅動程式連接互縣至該記憶财,其中該集合 中每-驅動程式群組之驅動程式可利用—特定順序來連接 該集合中該些驅動程式群組所定義之驅練式連制係無法同時 啟動。 、 21·如申請專利範圍第20項所述之資源管理裝置,其中該驅 • 動程式管理單元會參考該鶴程式連接互斥絲檢查崎定驅動 程式與該另-特定驅絲式是科於娜_式互斥表中相同集 合之不同驅練式群組,其巾補物触式触另—特定驅動 程式係對應於不同之驅動程式連接關係;以及若該特定驅動程式 與該另一特定驅動程式係屬於該驅動程式互斥表中相同集合之不 同驅動程式群組,該驅動程式管理單元會另比較該第一優先順序 與該第二優先順序來決定該特定驅動程式是否可被執行。 22·如申請專利範圍第21項所述之資源管理裝置,其中該驅 動程式管理單元會另設定一第一旗標予該第一管線及設定一第二 旗標予該第二管線;以及當該第一優先順序相同於該第二優先順 序日寸,邊驅動程式管理卓元會參考該第一旗標與該第二旗標之其 中之一來決定該特定驅動程式是否可被執行。 23·如申請專利範圍第14項所述之資源管理裝置,其中該驅 動程式管理單元會比較該第一優先順序與該第二優先順序來決定 身 29 200811715 意 、 *該第—f線與鄕二請之射之-可額雜定驅動程式。 24.如巾請專利範_ 23項所述之資源管理裝置,其中該驅 動程式管理單元會另設定—第—旗料該第-管線及設定-第二 旗標予該第二管線;以及#該第—優先順序係_於該第二優先 順序日守’雜姊式官理單元會參考該第—旗標與該第二旗標之 ,、中之來决疋該第—官線與該第二管線之其中之一可使用該特 ^ 定驅動程式。 汀如申請專利範圍第M項所述之資源管理裝置,其中該驅 動程式登錄單元會接收具有該驅動程式之一部分之登錄資訊的至 乂豈錄貝讯群組’並會儲存該登錄資訊群組至該記憶體中;該 驅動程式管理單元會接㈣應於具有該特定驅動程式之—驅動程 式群組之-請求命令;以及域職讀尋該鶴程式群組所對 I 應之登錄資訊群組的登錄資訊。 26.如申請專利範圍第14項所述之資源管理裝置,其中該驅 動私式且錄單元接收该登錄資δί1,以及於__電視機上盒的開機程 序中儲存該登錄資訊至該記憶體中。 30 i
TW096119000A 2006-08-30 2007-05-28 Resource managing method and resource managing device for managing drivers TWI338255B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/468,760 US20080059266A1 (en) 2006-08-30 2006-08-30 Resource managing method and device for managing drivers

Publications (2)

Publication Number Publication Date
TW200811715A true TW200811715A (en) 2008-03-01
TWI338255B TWI338255B (en) 2011-03-01

Family

ID=39153093

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096119000A TWI338255B (en) 2006-08-30 2007-05-28 Resource managing method and resource managing device for managing drivers

Country Status (3)

Country Link
US (1) US20080059266A1 (zh)
CN (1) CN101135983B (zh)
TW (1) TWI338255B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9098548B1 (en) * 2010-06-14 2015-08-04 Open Invention Network, Llc Method and apparatus for accessing a data source from a client using a driver
CN104111865A (zh) * 2014-08-04 2014-10-22 浪潮通用软件有限公司 一种通过数据库技术控制软件功能运行冲突的方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5787246A (en) * 1994-05-27 1998-07-28 Microsoft Corporation System for configuring devices for a computer system
US5802365A (en) * 1995-05-05 1998-09-01 Apple Computer, Inc. Dynamic device matching using driver candidate lists
US5964843A (en) * 1996-04-25 1999-10-12 Microsoft Corporation System for enhancing device drivers
US6425126B1 (en) * 1999-05-19 2002-07-23 International Business Machines Corporation Apparatus and method for synchronizing software between computers
US7421711B2 (en) * 1999-07-26 2008-09-02 Microsoft Corporation System, method and apparatus for supporting a kernel mode driver
EP1327191B1 (en) * 2000-09-22 2013-10-23 Lumension Security, Inc. Non-invasive automatic offsite patch fingerprinting and updating system and method
US6938161B2 (en) * 2001-02-20 2005-08-30 Networks Associates Technology, Inc. Test driver selection
US6671749B2 (en) * 2001-03-07 2003-12-30 Hewlett-Packard Development Company, L.P. Peripheral driver installation method and system
US8176503B2 (en) * 2004-01-27 2012-05-08 Hewlett-Packard Development Company, L.P. Device driver selection
JP4227035B2 (ja) * 2004-02-03 2009-02-18 株式会社日立製作所 計算機システム、管理装置、ストレージ装置及びコンピュータ装置
US8271387B2 (en) * 2005-06-20 2012-09-18 Intraware, Inc. Method and apparatus for providing limited access to data objects or files within an electronic software delivery and management system

Also Published As

Publication number Publication date
CN101135983A (zh) 2008-03-05
TWI338255B (en) 2011-03-01
US20080059266A1 (en) 2008-03-06
CN101135983B (zh) 2011-04-20

Similar Documents

Publication Publication Date Title
US10735345B2 (en) Orchestrating computing resources between different computing environments
JP5239075B2 (ja) 複数のサービスステップを含むサービスプロセスを管理するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
EP3047376B1 (en) Type-to-type analysis for cloud computing technical components
US10528617B2 (en) Porting virtual images between platforms
Bui et al. Work queue+ python: A framework for scalable scientific ensemble applications
JP5285353B2 (ja) 複数のサービス構成要素に対応するアクションの実行を管理するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
CN110825535B (zh) 一种作业调度的方法和系统
Xu et al. Deploying and researching Hadoop in virtual machines
US10416979B2 (en) Package installation on a host file system using a container
US20150188789A1 (en) Monitoring for managed services
CN100375036C (zh) 记忆网格中资源分配的方法和系统
CN111027921A (zh) 一种业务处理方法、装置及电子设备和存储介质
US10802954B2 (en) Automated-application-release-management subsystem that provides efficient code-change check-in
US10721125B2 (en) Systems and methods for update propagation between nodes in a distributed system
US8978107B2 (en) Method and system for enabling non-intrusive multi tenancy enablement
CN103077243B (zh) 文件系统访问的处理方法及系统
US20070118572A1 (en) Detecting changes in data
US10296384B2 (en) Dynamic workload deployment for data integration services
CN106033373A (zh) 一种云计算平台中虚拟机资源调度方法和调度系统
TW201229795A (en) Web service patterns for globally distributed service fabric
US20150089473A1 (en) Software discovery by an installer controller
CN113672352B (zh) 一种基于容器部署联邦学习任务的方法及装置
TW200811715A (en) Resource managing method and resource managing device for managing drivers
Tang et al. Application centric lifecycle framework in cloud
CN117076096A (zh) 任务流程的执行方法、装置、计算机可读介质及电子设备

Legal Events

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