TWI540443B - 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(二) - Google Patents

用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(二) Download PDF

Info

Publication number
TWI540443B
TWI540443B TW103145028A TW103145028A TWI540443B TW I540443 B TWI540443 B TW I540443B TW 103145028 A TW103145028 A TW 103145028A TW 103145028 A TW103145028 A TW 103145028A TW I540443 B TWI540443 B TW I540443B
Authority
TW
Taiwan
Prior art keywords
host
mobile device
function
task
host device
Prior art date
Application number
TW103145028A
Other languages
English (en)
Other versions
TW201512851A (zh
Inventor
沙多夫斯基夫拉迪墨
亞力山卓羅賓A
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 TW201512851A publication Critical patent/TW201512851A/zh
Application granted granted Critical
Publication of TWI540443B publication Critical patent/TWI540443B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • 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]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(二)
本發明係關於主機與行動裝置間之任務的雙向動態卸載。
當今之行動裝置通常具有進階處理能力及專用電路。此專用電路之實例包括行動電話中之數位訊號處理器(Digital Signal Processor,DSP)。行動裝置可連接至諸如個人電腦之主機,以便在行動裝置與主機之間交換資料。然而,在目前設計中,主機工作流不能持續由一已連接行動裝置之計算資源執行,且在使用習知受限裝置(諸如快閃記憶體驅動器)時,使該卸載過程幾乎成為不可能。
下文給出了所揭示內容之簡要概括,以便為讀者提供基本瞭解。此概要非為所揭示內容之廣泛概括,且其未指 明本發明之關鍵/主要因素或描繪本發明之範疇。其唯一目的係以簡要形式呈現本文所揭示之某些概念來作為稍後將呈現之更詳細描述的序文。
本發明之具體實施例提供在主機與行動裝置間之任務卸載。在一具體實施例中,主機可使用行動裝置之函數來執行主機任務。所連接行動裝置之處理能力及專用電路可由主機系統用於最佳化主機系統之工作流程。在另一具體實施例中,一行動裝置可將裝置任務卸載至主機。
藉由參考結合隨附圖式所考量之以下詳細描述對伴隨特徵之更佳瞭解,將更易於理解眾多伴隨特徵。
102‧‧‧主機
104‧‧‧處理單元
106‧‧‧記憶體
107‧‧‧介面
108‧‧‧連接
110‧‧‧行動裝置
112‧‧‧控制器
114‧‧‧儲存裝置
116‧‧‧介面
206‧‧‧處理單元
208‧‧‧專用電路
210‧‧‧非揮發性儲存裝置
212‧‧‧韌體
300‧‧‧流程圖
302、304、306、308、310、312、314、316、318、320‧‧‧組塊
402‧‧‧主機
404‧‧‧行動裝置
406‧‧‧軟體模組
502‧‧‧網路
504‧‧‧更新管理器
602‧‧‧應用程式
604‧‧‧操作系統
606‧‧‧裝置驅動器
608‧‧‧非揮發性儲存裝置
610‧‧‧介面
700‧‧‧描述符陣列
702‧‧‧函數名稱
704‧‧‧引數
706‧‧‧返回值
800‧‧‧流程圖
802、804、806、808、810、812、814、816、818‧‧‧組塊
900‧‧‧計算裝置
902‧‧‧處理單元
904‧‧‧記憶體
906‧‧‧虛線
908‧‧‧儲存裝置
912‧‧‧通信連接
914‧‧‧輸入裝置
916‧‧‧輸出裝置
920‧‧‧網路
930‧‧‧計算裝置
相似參考數字用於表示隨附圖式中之相似部分。
第1圖為根據本發明之具體實施例之一連接至行動裝置的主機之方塊圖。
第2圖為一根據本發明之具體實施例之行動裝置的方塊圖。
第3圖為根據本發明之具體實施例之一流程圖,其展示主機卸載至行動裝置的任務之邏輯及操作。
第4圖為一根據本發明之具體實施例之公開裝置函數的方塊圖。
第5圖為一根據本發明之具體實施例之公開裝置函數的方塊圖。
第6圖為一根據本發明之具體實施例之公開裝置函數的方塊圖。
第7圖為一根據本發明之具體實施例之公開裝置函數的陣列。
第8圖為根據本發明之具體實施例之一展示行動裝置之邏輯及操作流程圖,卸載至主機的裝置任務。
第9圖為用於實施本發明之具體實施例之例示計算裝置的方塊圖。
下文結合隨附圖式所提供之詳細描述意欲作為該等實例之描述,且不欲代表其中可建構或利用該等實例之唯一形式。該描述闡述了該等實例之函數及建構並操作該等實例的步驟順序。然而,相同或等價函數及順序可藉由不同實例完成。
第1圖及以下論述意欲提供適當計算環境之簡要、概括性描述以實施本發明之具體實施例。第1圖之操作環境僅為適當操作環境之一實例且不欲對操作環境之使用範疇或功能性作出任何限制。儘管未做要求,但是本發明之具體實施例將描述於藉由一或多計算裝置執行之“電腦可讀指令”的總體內容中。電腦可讀指令可經由電腦可讀媒體分配。電腦可讀指令可實施為程式模組,諸如函數、物件、應用程式介面(Application Programming Interface,API)、資料結構及其類似物,其執行特殊任務或實現特殊抽象資料類型。通常,在各種環境中可讀電腦指令之功能性可按需要組合或分配。
第1圖展示經由連接108連接至行動裝置110之主 機102。主機102可包括任何計算裝置,諸如桌上型電腦、膝上型電腦及其類似物。主機102可包括其他計算裝置,諸如相機、媒體播放機、行動電話及其類似物。在一具體實施例中,行動裝置110可包括獨立式行動裝置,諸如行動電話、媒體播放機及其類似物。在另一具體實施例中,行動裝置110可包括依賴主機之行動裝置,諸如通用串列匯流排(Universal Serial Bus,USB)快閃驅動器、記憶卡、安全卡及其類似物。如在此所使用的,「依賴主機(“host-dependent”)」係指僅有連接至主機才可利用之行動裝置。如在此所使用的,“主機”係指管理另一計算裝置之計算裝置。藉由“主機”控制之計算裝置稱作“裝置”。此主機/裝置關係亦可稱作主/從關係。
本發明之具體實施例可與應需要叫用之短期任務一同使用。在一實例中,個人電腦(主機)可將複雜加密計算指令卸載至具有加密專用電路之儲存裝置。大體而言,在硬體中進行加密遠快於由處理器執行之軟體指令加密速度。此外,藉由專用電路進行之加密通常較軟體指令更安全,且可能需要專用電路來應用某些加密演算法(例如,政府使用)。
在另一實例中,個人電腦(主機)可將數位權限管理計算或媒體內容浮水印卸載至所連接之裝置(諸如數位相機)。數位相機可包括專用電路或特殊常用程式,其在執行該等相關媒體任務時可較個人電腦更有效。
連接108可包括在介面107處之主機102與在介面116處之行動裝置110間的有線或無線連接。在一具體實施例 中,主機102及行動裝置110作為使用者之個人區域網路(Personal Area Network,PAN)之一部份而彼此鄰近。連接108之實例包括USB(有線或無線)、火線(IEEE1394)、射頻(例如,藍芽、Wi-Fi等)、紅外線及其類似物。
在一具體實施例中,行動裝置在某些情況下可具有主機功能並用作主機。舉例而言,行動電話可充當連接至用作主機102之膝上型電腦的行動裝置110。在另一實例中,相同行動電話可充當連接至用作行動裝置110之記憶卡的主機102。在此實例中,記憶卡為依賴主機之行動裝置。
主機102可包括處理單元104及記憶體106。主機102亦包括用於輸入/輸出來自主機102之資料的介面107。主機102亦可包括儲存裝置,諸如硬碟機或快閃記憶體(未示出)。
行動裝置110可包括耦接至儲存裝置114之控制器112。控制器112亦可管理對儲存裝置114之讀取/寫入資料及執行其他功能。儲存裝置114可包括有磁碟機、光碟機、非揮發性之儲存裝置,諸如快閃記憶體及其類似物。
自主機102之觀點而言,將行動裝置110看做瞬態裝置。行動裝置110無需通知主機102就可與主機102連接/斷開。應瞭解行動裝置110無需重啟主機102即可與主機102連接/斷開。行動裝置110之暫態性導致此處具體實施例之動態態樣。當行動裝置出現時,主機102可利用行動裝置110之處理能力,而當行動裝置110斷開時,主機102僅記錄用於完成主機任務之裝置不可用。以下將論述卸載任務完成之 前,當行動裝置110與主機102斷開時故障復原情形之操作。同樣,在某些具體實施例中,行動裝置110之任務可卸載至主機102以便完成任務。因此,主機102與行動裝置110之間的任務卸載可為雙向的。
轉向第2圖,其展示行動裝置110之具體實施例。行動裝置110可包括智慧儲存裝置,諸如USB快閃裝置(USB Flash Device,UFD)、記憶卡及其類似物。在一具體實施例中,智慧儲存裝置操作時依賴主機。行動裝置110亦可包括獨立式裝置,諸如媒體播放機、行動電話、個人數位助理(Personal Digital Assistant,PDA)及其類似物。
控制器112可包括處理單元206及非揮發性儲存裝置(non-volatile storage,NVS)210。處理單元206可包括通用處理器,諸如32位元精簡指令集運算(Reduced Instruction Set Computing,RISC)處理器。儘管本圖展示了單一處理單元206,但是行動裝置110之具體實施例可包括多處理單元,諸如多重處理器、多重核心及其類似物。
在一具體實施例中,NVS 210已儲存可藉由處理單元206運行之韌體212。韌體212可包括作業系統(諸如即時作業系統(Real-Time Operating System,RTOS))、一或多應用程式及其類似物,以用於行動裝置110。韌體212亦可包括用於執行本發明之具體實施例的多數指令。
在第2圖之具體實施例中,控制器112包括專用電路208。專用電路208包括可執行專門運算之硬體。專用電路208之實例包括特殊應用積體電路(Application-Specific Integrated Circuit,ASIC)、場可程式化邏輯陣列(Field Programmable Logic Array,FPLA)、場可程式化閘陣列(Field Programmable Gate Array,FPGA)及其類似物。藉由專用電路208執行之功能性可包括加密、數位訊號處理、數位權限管理及其類似物。此處之具體實施例使主機102能夠利用專用電路208之功能性,以便更有效地完成主機工作流程。
轉向第3圖,流程圖300展示根據本發明之具體實施例自主機卸載任務至行動裝置的邏輯及操作。第8圖之流程圖800(下文將論述)展示裝置任務卸載至主機以便主機完成之具體實施例。應瞭解流程圖300及800中至少某些邏輯可同時發生。換言之,在某些實例中,行動裝置110將任務卸載至主機102的同時,主機102可將任務卸載至行動裝置110。因此,在主機102與行動裝置110之間的任務卸載可為雙向的。
在一具體實施例中,當行動裝置連接至主機時流程圖300之邏輯過程在交談(session)期間發生。當行動裝置連接至主機時,單一交談開始,而當行動裝置與主機斷開時,單一交談結束。自主機方而言,行動裝置係暫時的,且行動裝置之出現係不可預測的。此外,與行動裝置之任意交談時間的長度係不可預測的,且在交談之間的間隔時間也係不可預測的。如下所述,當卸載主機任務時,本發明之具體實施例妥善處理行動裝置之暫態性。
自組塊302開始,行動裝置連接至主機。該連接可經由有線或無線連接。在本發明之具體實施例中,主機無需 預先瞭解行動裝置或任務卸載,而仍能實施本發明之具體實施例。此可為第一次主機覺察到行動裝置。行動裝置可提供主機將任務卸載至行動裝置之方法。在一具體實施例中,建立連接可包括在主機與行動裝置之間建立可靠的通信會談。
在一實例中,行動裝置可與諸如問訊處之公用電腦的公共主機一同使用。舉例而言,使用者希望在機場使用公共電腦核查使用者公司網路上之電子郵件。然而,該連接需要特定加密演算法,該演算法不由公共電腦支援或可能花費太長時間而不能藉由公共電腦之有限處理能力執行該演算法。使用者可將其USB快閃驅動器(UFD)(包含專用加密電路)連接至公共電腦。藉由此處之具體實施例,公共電腦可使用UFD之專用加密電路連接至使用者之公司網路。在此實例中,當交談結束時,可移除與公共主機之交談的所有佔據區域。
前行至組塊304,行動裝置向主機公開(expose)其函數。在一具體實施例中,公開行動裝置函數作為可由主機利用之介面。舉例而言,行動裝置可公開加密介面,其將加密一組用於主機之資料。公開裝置函數之具體實施例將結合以下第4圖-第7圖進行論述。
繼續前行至組塊306,行動裝置將主機策略上載至主機以卸載主機任務。在一具體實施例中,此可為主機與行動裝置之間之第一連接,且主機可不儲存主機策略。同樣,藉由向主機提供預設主機策略,無需預先瞭解由主機卸載之任務即能實現本發明之具體實施例。
繼續前行至組塊308,主機應用主機策略。在一具體實施例中,主機已接收來自如組塊306所述之行動裝置的策略。在另一具體實施例中,主機可能已儲存主機策略或已儲存來自與行動裝置之先前交談之主機策略。在又一具體實施例中,主機可自管理網路中之中央伺服器獲得(且接著與已儲存於主機上之任何策略合併)主機策略。舉例而言,管理網路可能意欲向所有(或多組)管理主機推行相同策略。或者,儲存於中央伺服器上之策略可經修正用於每一特殊主機。同樣,更新中央伺服器位置之策略的能力將減輕管理網路之系統管理耗用。
如在此所使用的,“主機任務”係指待由主機執行之計算任務。當連接行動裝置時,主機策略判定主機任務之實施是否可藉由行動裝置所公開之函數執行。大體而言,一或多裝置函數可用於完成主機任務。
舉例而言,主機任務可使用加密演算法A加密500KB文字檔案。行動裝置已提供將藉由專用電路使用加密演算法A加密100KB組資料之函數。藉由叫用裝置函數五次以完成主機任務,主機可完成加密文字檔案之主機任務。
在一具體實施例中,多個函數可使用行動裝置可執行的指令碼語言以批次處理形式叫用。行動裝置已瞭解批次處理語言且能夠執行批次處理語言以便執行多個函數。
主機策略控制至行動裝置之任務卸載。舉例而言,主機策略可為“若具有加密演算法A之裝置出現,則將演算法A加密任務卸載至該裝置”。主機策略可由使用者或系統 管理員修正。在一具體實施例中,主機策略可與諸如安全之管理策略相關聯。舉例而言,直至可驗證行動裝置,主機才可卸載任務。
在另一具體實施例中,主機策略可與主機效能問題相關聯。舉例而言,期望效能顯著增加時(例如,在某臨限值之上)將卸載任務。在另一實例中,可能無需卸載被冗長系列後繼任務所依賴之任務。此係因為行動裝置之預期暫態性。若當行動裝置仍在執行任務時斷開行動裝置,則主機將不接收所卸載任務之結果。在此實例中,主機本身可能必須自開始即執行任務,且因此浪費時間。
在另一具體實施例中,主機策略可監控行動裝置之健康狀況。主機可監控行動裝置之效能因素,諸如處理器負荷、可用記憶空間及其類似物。另一行動裝置健康指示器可包括卸載任務之執行時間。主機策略可暫時中止主機任務卸載,直至行動裝置健康狀況改善。
前行至流程圖300中之組塊310,主機藉由叫用如組塊304所述之一或多經公開之行動裝置函數,將任務卸載至行動裝置。如下文進一步所論述的,在一具體實施例中,該等函數可作為諸如API之介面公開至應用程式及作業系統。
在一替代具體實施例中,主機可藉由將可執行影像或中間語言下載至行動裝置來卸載任務。舉例而言,卸載任務可包括寫入平台中立語言之可執行常用程式。行動裝置可在連接握手期間通告支援平台中立語言。當需要時(亦即,作業中),主機上之裝置驅動器可將可執行常用程式下載至 行動裝置。完成任務之反饋亦可藉由裝置驅動器處理。在另一實例中,中間語言可包括直譯式語言,其可使用主機上之直譯器或行動裝置上之相容直譯器執行。
儘管流程圖300展示自主機卸載一任務之具體實施例,但是應瞭解一次可將一個以上任務卸載至行動裝置。亦應瞭解一或多任務可在不同時間卸載至行動裝置,而不管任務結果何時返回至主機。該等具體實施例(及其他具體實施例)可經由主機策略實施。舉例而言,任務A可在時間T1卸載且任務B在時間T2卸載。任務A及B之執行可個別發生而與另一任務無關。同樣,任務A及B甚至可彼此無關。舉例而言,任務A可涉及加密行動裝置上之記憶體的資料,而任務B可涉及藉由行動裝置之DSP之Wi-Fi訊號的訊號處理。
繼續前行至組塊312,行動裝置根據行動裝置策略執行該函數。行動裝置策略可涉及安全、管理項目及其類似物。舉例而言,行動裝置可能需要在執行任何卸載任務請求之前驗證主機。在另一實例中,UFD可包括保密硬體以便政府機關使用。主機可請求使用保密硬體以便加密自使用者之個人非政府電子郵件(例如,Hotmail帳戶)所發送之電子郵件。行動裝置可具有一種僅加密發送自(或至)政府電子郵件位址之電子郵件之策略,因為加密演算法被分類。由於此策略,行動裝置可拒絕對使用者個人電子郵件進行加密。在一具體實施例中,當連接至諸如管理主機之主機時,可更新裝置策略。所更新之裝置策略接著可在自當前所連接之主機 或其他主機卸載之未來任務中藉由該裝置執行。
行動裝置策略亦可指示特定行動裝置活動是否出現在主機任務卸載之前。舉例而言,若該裝置為行動電話,則當行動電話之呼叫到達時,中止主機之任何DSP活動,直至行動電話之電話呼叫完成。
繼續前行至組塊314,主機自行動裝置接收該函數之結果。結果可為任何適當形式,諸如布林值、整數、浮點整數、字串及其類似形式。舉例而言,行動裝置可公開具有兩個參數之加密函數:待加密之100KB資料塊及密鑰。行動裝置進行加密且將經加密資料塊傳回至主機。主機接著可將經加密塊用作所希望部分(例如,儲存在本機儲存裝置、發送至網路儲存裝置、作為電子郵件發送等)。
前行至判定塊316,流程圖300之邏輯過程判斷是否已斷開行動裝置。在一具體實施例中,當行動裝置使用習知方法移除時,流程圖300之邏輯過程由主機OS改變。若判定塊316之答案為否,則邏輯過程返回至組塊308以將另一任務自主機卸載至行動裝置。流程圖300可藉由重覆組塊308-316迴圈,將任務自主機卸載至行動裝置,直至行動裝置與主機斷開。
若判定塊316之答案為是,則邏輯過程繼續前行至判定塊318。在判定塊318處,邏輯過程判定主機是否已自所有叫用函數接收該等結果。因為行動裝置性質上為暫態的,所以當主機運行時可隨時移除行動裝置。因此,當主機仍在等待卸載任務之結果時可移除行動裝置。
若判定塊318之答案為是,則流程圖300結束。若判定塊318之答案為否,則邏輯過程前行至組塊320以便藉由主機執行故障復原操作。在一具體實施例中,主機編制斷開行動裝置之前未完成任務之詳細目錄。與該等未完成任務相關聯之函數將接著由主機完成。該等任務可藉由主機重新開始並執行或可卸載至另一行動裝置,其連接至主機並支援任務卸載,如在此所描述的。在組塊320之後,流程圖300結束。
轉向第4圖,其展示藉由行動裝置將函數公開至主機之具體實施例。在第4圖中,主機402連接至行動裝置404。為了公開其可用函數,行動裝置404將儲存在行動裝置404上之軟體模組406(可在主機上執行)發送至主機402。
在一具體實施例中,軟體模組406包括一或多介面,諸如API,其可由主機402使用。在一具體實施例中,API可公開至主機402作為組成物件模型(Component Object Model,COM)物件之庫以便由運行於主機402上之應用程式及/或OS使用。行動裝置用於執行API對應用程式及/或OS可為透明的。API將計算指令轉移至行動裝置。在其他具體實施例中,軟體模組406可包括語言中立物件,諸如Java®物件,共通語言執行環境(Common Language Runtime,CLR)物件及其類似物。
在一具體實施例中,當行動裝置404與主機402斷開時,軟體模組406之API標記為主機402不可用。以此方式,主機402上執行之軟體將不嘗試叫用不再可用之API,因 為行動裝置404已斷開。在替代具體實施例中,行動裝置404斷開之後上載軟體模組406自主機402清除。
在一具體實施例中,主機402可驗證軟體模組406。此等驗證技術可包括使用憑證、簽章及其類似物。在其他具體實施例中,軟體模組406可能需要進行數位簽章以便根據主機策略識別並載入。
第5圖展示了驗證軟體模組406之具體實施例。在第5圖中,主機402可經由網路502連絡更新管理器504。更新管理器504可驗證軟體模組406且可向主機402提供對軟體模組406之更新。在一具體實施例中,對由主機402所接收之軟體模組406的更新亦可用于更新儲存於行動裝置404上之軟體模組406。在一具體實施例中,更新管理器504可包括Microsoft Windows®更新。
轉向第6圖,其展示了藉由行動裝置公開函數之另一具體實施例。第6圖展示了連接至主機402之行動裝置404。主機402包括由OS 604支援之應用程式602。OS 604包括用於與行動裝置404通信之裝置驅動器606。行動裝置404可向驅動器606報告行動裝置404所具有之可用函數。該等函數可使用自我描述語言表達。裝置驅動器606瞭解自我描述語言。舉例而言,網路服務描述語言(Web Services Description Language,WSDL)之概念可應用於將函數公開於主機驅動器堆疊中之驅動器606。NVS 608可能已儲存一組介面610(對應於行動裝置函數),將其提供至使用自我描述語言之驅動器606。驅動器606可使用介面請求行動裝置404 執行相應函數。在此實例中,由行動裝置支援之特定介面無需預先(亦即,在行動裝置連接之前)由主機OS或主機應用程式瞭解。該等介面可在行動裝置連接上揭示並綁定至主機。此實例不同於其他具體實施例,在該等具體實施例中主機必須具有與行動裝置相容之預先載入之庫或經由與行動裝置之連接上載整個庫(諸如第4圖至第5圖所論述的)。
在一具體實施例中,主機402及行動裝置404可擴展習知協定以便公開並叫用裝置函數。舉例而言,在存在儲存裝置之情況下,小電腦系統介面(Small Computer System Interface,SCSI)協定可經擴展以用於此處之具體實施例。SCSI協定可經擴展以使行動裝置能夠向使用自我描述語言之主機報告函數描述符。SCSI主機驅動器可經擴展以瞭解該等函數描述符。經擴展之SCSI主機驅動器將使用自我描述之語言使該等能力公開至主機OS及主機應用程式,以便其可利用裝置函數。經擴展之SCSI主機驅動器將向OS 604報告已連接之行動裝置且將可用函數公開至OS 604及應用程式602。當函數由OS 604或應用程式602請求時,則SCSI主機驅動器可管理行動裝置上之函數叫用。
可由行動裝置404提供之描述符陣列700之具體實施例展示於第7圖中。陣列700包括函數名稱702、輸入引數704及返回值706。舉例而言,函數ENCRYPT_1使用所提供之128位元密鑰加密自0至100KB之一組資料。該函數以加密形式將資料送回於0-100KB資料塊中。
應瞭解在第6圖及第7圖之具體實施例中,函數之 執行代碼未嵌入主機系統內。函數代碼保持於行動裝置上且執行於行動裝置上。同樣,函數之叫用及送回係保持於主機402之驅動器級上。
應瞭解不必更新主機裝置驅動器以利用行動裝置函數。經擴展之主機裝置驅動器可詢問行動裝置其函數。因為行動裝置函數以一種自我描述語言表達,所以經擴展之主機裝置驅動器無需預先瞭解行動裝置函數即能利用該等行動裝置函數。此自我描述特徵可將本發明之具體實施例與當今行動裝置(其需藉由新驅動器載入主機以能利用該行動裝置)區別開來。
本發明之具體實施例亦可與隨插即用裝置(Plug-and-Play,PnP)相區別。在PnP中,主機OS必須在本機儲存裝置或網路儲存裝置中尋找匹配裝置驅動器,以能完全利用行動裝置。在此處之具體實施例中,行動裝置向主機提供利用行動裝置功能性之能力。主機無需提供用於行動裝置函數之專用裝置驅動器。
轉向第8圖,流程圖800展示了根據本發明之具體實施例將任務自行動裝置卸載至主機之邏輯過程及操作。類似於流程圖300,流程圖800展示了單一任務卸載,但是利用此描述之熟習此項技術者將瞭解可自行動裝置一次卸載一個以上任務至主機。同樣,多重行動裝置任務無需同時卸載。此外,多重裝置任務可藉由使用批次處理程式設計之主機執行。
自組塊802開始,行動裝置連接至主機。繼續前行 至組塊804,行動裝置應用裝置策略。行動裝置可包括哪些任務可卸載及何時可卸載任務之可修正策略。舉例而言,裝置策略可能要求行動裝置在將任何任務卸載至主機之前驗證主機。在另一實例中,當主機滿足諸如主機處理器速度之特定效能臨限值時,裝置策略可允許卸載裝置任務。
前行至組塊806,行動裝置將裝置任務卸載至主機。在一具體實施例中,行動裝置對主機記憶體載入可執行代碼以便在主機處理器上執行。主機可執行影像可儲存於行動裝置上。主機將操作之任何資料亦可卸載至主機上。
在一具體實施例中,若所卸載之任務為先前所卸載裝置任務之延續部分,則所卸載之裝置任務可自藉由已儲存之狀態資訊所指示之位置繼續進行(下文將進一步論述)。
接著,在組塊808中,主機執行裝置任務。舉例而言,行動裝置可能已儲存大量需要索引之音樂檔案。儘管行動裝置可能自身具有索引音樂檔案之能力,但是若主機具有更快速之處理器,則行動裝置可利用主機之處理能力。在此實例中,行動裝置可包括媒體播放機及具有媒體播放機能力之行動電話及其類似物。在另一實例中,行動裝置可使用主機轉碼儲存於行動裝置上之媒體內容。通常,轉碼(即轉變媒體內容格式以便各種應用程式及平台使用)為一種計算費用高的操作。藉由此處之具體實施例,當行動裝置連接至主機時,其可使用主機之計算能力進行轉碼。
在組塊810中,行動裝置可定期儲存藉由主機執行之裝置任務之狀態。由於行動裝置性質為暫時性,因此行動 裝置儲存任務狀態,以便任務可被卸載,且在與該主機(或另一主機)之後續交談時繼續進行。在一替代具體實施例中,行動裝置可能能夠藉由自所儲存之任務狀態繼續進行而無需主機來完成任務。
前行至組塊812,行動裝置接收來自主機之任務結果。在判定塊814中,邏輯過程判斷行動裝置是否已斷開。若判定塊814之答案為否,則邏輯過程返回至組塊804以卸載另一任務。若判定塊814之答案為是,則邏輯過程繼續前行至判定塊816。
在判定塊816處,邏輯過程判斷行動裝置是否已接收全部卸載任務之結果。若判定塊816之答案為是,則流程圖800結束。若判定塊816之答案為否,則邏輯過程繼續前行至組塊818,其中行動裝置執行故障復原操作。在一具體實施例中,行動裝置可保留已儲存之任務狀態,以便行動裝置下次連接至主機時,行動裝置可卸載該任務以便完成。在另一具體實施例中,若行動裝置為獨立式的,則其可藉由自所儲存之任務狀態繼續進行來自身完成任務。在又一具體實施例中,行動裝置可忽略已儲存之任務狀態。在此具體實施例中,任務可在下次行動裝置連接至主機時自開始處重新開始。
本發明之具體實施例提供在主機與行動裝置之間卸載任務。在一具體實施例中,當行動裝置連接至主機時,其將函數公開至主機以便主機可利用該等函數。以此方式,主機可利用行動裝置之處理能力及/或專用硬體更有效地完成主機工作流程。同樣地,行動裝置可將任務卸載至主機以便主 機執行。
第9圖展示了實施本發明之一或多具體實施例之計算裝置900的實例。舉例而言,主機102或行動裝置110可為計算裝置900之具體實施例。在一組態中,計算裝置900包括至少一處理單元902及記憶體904。取決於計算裝置之精確組態及類型,記憶體904可為揮發性(諸如RAM)、非揮發性(諸如ROM、快閃記憶體等)或兩者之某些組合。此組態於第9圖中藉由虛線906說明。
在其他具體實施例中,裝置900可包括額外特徵及/或功能性。舉例而言,裝置900亦可包括另一儲存(例如,可移除及/或非可移除)裝置,其包括(但不限於)磁性儲存裝置、光學儲存裝置及其類似存儲裝置。此額外儲存裝置於第9圖中藉由儲存裝置908說明。在一具體實施例中,實施本發明之具體實施例之電腦可讀指令可儲存於儲存裝置908中。儲存裝置908亦可儲存其他電腦可讀指令以執行作業系統、應用程式及其類似物。
如此處所使用之術語“電腦可讀媒體”包括電腦儲存媒體。電腦儲存媒體包括以任何方法或技術實施以便儲存諸如電腦可讀指令或其他資料之資訊的揮發性及非揮發性、可移除及非可移除媒體。記憶體904及儲存裝置908為電腦儲存媒體之實例。電腦儲存媒體包括(但不限於)RAM、ROM、EEPROM、快閃記憶體或其他記憶體技術、CD-ROM、數位化通用光碟(DVD)或其他光學儲存裝置、卡式磁帶、磁帶、磁碟儲存裝置或其他磁性儲存裝置或可用於儲存所需資訊且 可藉由裝置900存取之任何其他媒體。任何此類電腦儲存媒體可為裝置900之一部份。
裝置900亦可包括允許裝置900與其他裝置通信之通信連接912。通信連接912可包括(但不限於)數據機、網路介面卡(Network Interface Card,NIC)或用於將計算裝置900連接至其他計算裝置之其他介面。通信連接912可包括有線連接或無線連接。通信連接912可傳輸及/或接收通信媒體。
術語“電腦可讀媒體”可包括通信媒體。通信媒體通常體現電腦可讀指令或諸如載波或其他傳送機制之“調變資料訊號”中之其他資料,且包括任何資料遞送媒體。術語“調變資料訊號”意味著具有一或多其特徵之訊號,該等特徵以此方式設定或改變以編碼訊號中之資料。藉由實例之方式,而非限制性,通信媒體包括諸如有線網路或直線連接之有線媒體及諸如聲音、射頻、紅外線、近場通信(Near Field Communication,NFC)及其他無線媒體之無線電媒體。
裝置900可包括諸如鍵盤、滑鼠、手寫筆、語音輸入裝置、觸覺輸入裝置、紅外相機、視訊輸入裝置及/或任何其他輸入裝置之輸入裝置914;諸如如一或多顯示器、揚聲器、印表機及/或亦可包含於裝置900之任何其他輸出裝置的輸出裝置916。輸入裝置914及輸出裝置916可經由有線連接、無線連接或其任何組合連接至裝置900。在一具體實施例中,來自另一計算裝置之輸入裝置或輸出裝置可用作計算裝置900之輸入裝置914或輸出裝置916。
計算裝置900之元件可藉由諸如匯流排之各種接線 連接。此等接線可包括周邊元件互連(Peripheral Component Interconnect,PCI),諸如PCI高速線、通用串列匯流排(USB)、火線(IEEE1394)、光纖匯流排結構及其類似物。在另一具體實施例中,計算裝置900之元件可藉由網路互連。舉例而言,記憶體904可包含位於藉由網路互連之不同實體位置的多個實體記憶體單元。
熟習此項技術者將瞭解用於儲存電腦可讀指令之儲存裝置可散佈于網路。舉例而言,經由網路920可存取之計算裝置930可儲存電腦可讀指令以實施本發明之一或多具體實施例。計算裝置900可存取計算裝置930並下載部份或所有電腦可讀指令以便執行。或者,若需要,計算裝置900可下載多組電腦可讀指令,或某些指令可在計算裝置900上執行且某些可在計算裝置930上執行。熟悉此項技術者亦將瞭解電腦可讀指令之全部或一部分可藉由諸如數位訊號處理器(DSP)、可程式化邏輯陣列及其類似物之專用電路執行。
在此描述了本發明之具體實施例之各種操作。在一具體實施例中,所述之一或多操作可組成儲存於一或多電腦可讀媒體上之電腦可讀指令,其若由計算裝置執行將導致計算裝置運行所述操作。其中所描述之某些或所有操作之順序不應解釋為暗示該等操作必然與順序相關。其他排序將由得益於此描述之熟習此項技術者所理解。此外,應瞭解在每一具體實施例中並非所有操作均為必要的。
包括摘要描述之本發明之具體實施例之上述描述,不欲為詳盡描述或將具體實施例限制於所揭示之精確形式。 儘管出於說明性目的在此描述了本發明之特定具體實施例及實例,但是對本發明之各種等價修改係可能的,因為熟習此項技術者將根據以上詳細描述進行瞭解。用於以下申請專利範圍之術語不應解釋為將本發明限制於本說明書所揭示之特定具體實施例。而是,以下申請專利範圍將根據申請專利範圍闡釋之所制定的條款進行解釋。
300‧‧‧流程圖
302、304、306、308、310、312、314、316、318、320‧‧‧組塊

Claims (12)

  1. 一種用於卸載任務的方法,該方法包含下列步驟:儲存一軟體模組,該軟體模組包括對一函數的一介面,該函數係由一行動裝置可本機執行;提供該軟體模組給一主機裝置;提供一或更多主機策略至該主機裝置,其中該一或更多主機策略關聯於針對於執行該函數該行動裝置的一健康狀況臨界值要求;從該主機裝置接收欲執行在該行動裝置上之該函數的一請求,其中該主機裝置提供該請求係藉由在該主機裝置上本機執行該軟體模組以叫用該介面;回應於從該主機裝置所接收之該請求而執行該函數,其中該函數係關聯於在該主機裝置上執行的一主機任務;及將該函數的一結果送回至在該主機裝置上執行的該主機任務。
  2. 如申請專利範圍第1項所述之方法,其中該結果包含一經加密資料塊。
  3. 如申請專利範圍第2項所述之方法,其中該介面包括由該行動裝置使用以加密該資料塊的一密鑰。
  4. 一種包括電腦可讀指令的電腦可讀儲存裝置,當該等電腦可讀指令被一或更多計算裝置執行時致使該一或更多計算裝 置執行如申請專利範圍第1項所述之方法。
  5. 如申請專利範圍第4項所述之電腦可讀儲存裝置,其中該一或更多計算裝置包含該行動裝置。
  6. 一種用於卸載任務的系統,包含:連接至一主機裝置的一行動裝置,其中該行動裝置:儲存一軟體模組,該軟體模組包括對一函數的一介面,該函數係由該行動裝置可本機執行;提供該軟體模組給該主機裝置;提供一主機策略至該主機裝置,該主機策略指示了針對該行動裝置執行該函數的一健康狀況要求;從該主機裝置接收欲執行在該行動裝置上之該函數的一請求,其中該主機裝置提供該請求係藉由在該主機裝置上本機執行該軟體模組以叫用該介面;回應於從該主機裝置所接收之該請求而執行該函數,其中該函數係關聯於在該主機裝置上執行的一主機任務;及將該函數的一結果送回至在該主機裝置上執行的該主機任務。
  7. 如申請專利範圍第6項所述之系統,其中在該主機裝置上執行的一主機作業系統未察覺該主機任務的至少一部分係在該行動裝置上執行。
  8. 如申請專利範圍第6項所述之系統,其中該主機裝置是一第二行動裝置。
  9. 如申請專利範圍第6項所述之系統,其中該行動裝置包含一快閃磁碟機,該快閃磁碟機具有專用加密電路系統以供執行該函數。
  10. 如申請專利範圍第9項所述之系統,其中該函數處理包含一資料塊的一輸入引數類型,該資料塊係藉由該專用加密電路系統來加密或解密。
  11. 如申請專利範圍第6項所述之系統,其中該軟體模組包含一可執行影像。
  12. 如申請專利範圍第6項所述之系統,其中該軟體模組包含一直譯式語言,該直譯式語言係藉由該行動裝置上的一直譯器所直譯。
TW103145028A 2007-02-02 2008-02-01 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(二) TWI540443B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/670,891 US7966039B2 (en) 2007-02-02 2007-02-02 Bidirectional dynamic offloading of tasks between a host and a mobile device

Publications (2)

Publication Number Publication Date
TW201512851A TW201512851A (zh) 2015-04-01
TWI540443B true TWI540443B (zh) 2016-07-01

Family

ID=39674455

Family Applications (3)

Application Number Title Priority Date Filing Date
TW097104034A TWI498744B (zh) 2007-02-02 2008-02-01 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置
TW103145027A TWI557572B (zh) 2007-02-02 2008-02-01 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(一)
TW103145028A TWI540443B (zh) 2007-02-02 2008-02-01 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(二)

Family Applications Before (2)

Application Number Title Priority Date Filing Date
TW097104034A TWI498744B (zh) 2007-02-02 2008-02-01 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置
TW103145027A TWI557572B (zh) 2007-02-02 2008-02-01 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(一)

Country Status (5)

Country Link
US (2) US7966039B2 (zh)
EP (2) EP2122476B1 (zh)
CN (1) CN101601028B (zh)
TW (3) TWI498744B (zh)
WO (1) WO2008094742A1 (zh)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2891931B1 (fr) * 2005-10-10 2008-02-22 Wavecom Sa Dispositif de radiocommunication comprenant au moins un module de radiocommunication et une carte sim, module de radiocommunication et carte sim correspondant
US20110096174A1 (en) * 2006-02-28 2011-04-28 King Martin T Accessing resources based on capturing information from a rendered document
KR100823171B1 (ko) * 2007-02-01 2008-04-18 삼성전자주식회사 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법
US7966039B2 (en) * 2007-02-02 2011-06-21 Microsoft Corporation Bidirectional dynamic offloading of tasks between a host and a mobile device
US8694776B2 (en) * 2007-12-21 2014-04-08 Spansion Llc Authenticated memory and controller slave
GB2463108B (en) * 2008-09-05 2012-08-29 Skype Communication system and method
GB2463109B (en) * 2008-09-05 2013-03-13 Skype Communication system and method
GB2463110B (en) * 2008-09-05 2013-01-16 Skype Communication system and method
GB2463105A (en) * 2008-09-05 2010-03-10 Skype Ltd Viewer activity dependent video telephone call ringing
GB2463124B (en) * 2008-09-05 2012-06-20 Skype Ltd A peripheral device for communication over a communications sytem
GB2463104A (en) 2008-09-05 2010-03-10 Skype Ltd Thumbnail selection of telephone contact using zooming
GB2463103A (en) * 2008-09-05 2010-03-10 Skype Ltd Video telephone call using a television receiver
GB2463107A (en) * 2008-09-05 2010-03-10 Skype Ltd A remote control unit of a media device for placing/receiving calls, comprising activating one of the two wireless transceivers when needed.
US9734356B2 (en) * 2009-06-29 2017-08-15 Clevx, Llc Encrypting portable media system and method of operation thereof
US8161494B2 (en) * 2009-12-21 2012-04-17 Unisys Corporation Method and system for offloading processing tasks to a foreign computing environment
US8473949B2 (en) 2010-07-08 2013-06-25 Microsoft Corporation Methods for supporting users with task continuity and completion across devices and time
US9049248B2 (en) 2010-11-19 2015-06-02 Blackberry Limited Method and apparatus pertaining to energy efficient task execution offloading
US9054874B2 (en) 2011-12-01 2015-06-09 Htc Corporation System and method for data authentication among processors
US8934389B2 (en) 2012-01-18 2015-01-13 Microsoft Corporation Mechanism for connecting a mobile device to a network
US9483344B2 (en) 2012-04-05 2016-11-01 Assurant, Inc. System, method, apparatus, and computer program product for providing mobile device support services
US9413893B2 (en) 2012-04-05 2016-08-09 Assurant, Inc. System, method, apparatus, and computer program product for providing mobile device support services
JP6074026B2 (ja) 2012-04-16 2017-02-01 インテル コーポレイション スケーラブルでセキュアな実行
US10423214B2 (en) * 2012-11-20 2019-09-24 Samsung Electronics Company, Ltd Delegating processing from wearable electronic device
US9477313B2 (en) 2012-11-20 2016-10-25 Samsung Electronics Co., Ltd. User gesture input to wearable electronic device involving outward-facing sensor of device
US10185416B2 (en) 2012-11-20 2019-01-22 Samsung Electronics Co., Ltd. User gesture input to wearable electronic device involving movement of device
US8994827B2 (en) 2012-11-20 2015-03-31 Samsung Electronics Co., Ltd Wearable electronic device
US11157436B2 (en) 2012-11-20 2021-10-26 Samsung Electronics Company, Ltd. Services associated with wearable electronic device
US10551928B2 (en) 2012-11-20 2020-02-04 Samsung Electronics Company, Ltd. GUI transitions on wearable electronic device
US11237719B2 (en) 2012-11-20 2022-02-01 Samsung Electronics Company, Ltd. Controlling remote electronic device with wearable electronic device
US11372536B2 (en) 2012-11-20 2022-06-28 Samsung Electronics Company, Ltd. Transition and interaction model for wearable electronic device
US9992306B2 (en) * 2012-12-21 2018-06-05 E*Trade Financial Corporation Dynamic execution
US10097989B2 (en) 2012-12-21 2018-10-09 E*Trade Financial Corporation Dynamic communication
EP2767905A1 (en) * 2013-02-15 2014-08-20 Samsung Electronics Co., Ltd Terminal apparatus, server, browser of terminal apparatus operating system and method of operating browser
US10073754B2 (en) 2013-09-13 2018-09-11 Assurant, Inc. Systems and methods for collecting, tracking, and storing system performance and event data for computing devices
US9378063B2 (en) 2013-10-15 2016-06-28 Qualcomm Incorporated Mobile coprocessor system and methods
US9516006B2 (en) * 2013-10-23 2016-12-06 Google Inc. Re-programmable secure cryptographic device
WO2015094366A1 (en) * 2013-12-20 2015-06-25 Intel Corporation Execution offloading
US10691332B2 (en) 2014-02-28 2020-06-23 Samsung Electronics Company, Ltd. Text input on an interactive display
WO2016015299A1 (zh) 2014-07-31 2016-02-04 华为技术有限公司 一种可携带式设备的控制方法和设备
US10754328B2 (en) * 2014-09-05 2020-08-25 Accenture Global Solutions Limited Self-adaptive device intelligence as a service enterprise infrastructure for sensor-rich environments
US20160103708A1 (en) * 2014-10-09 2016-04-14 Profoundis Labs Pvt Ltd System and method for task execution in data processing
KR102280543B1 (ko) * 2014-12-01 2021-07-26 삼성전자주식회사 전자 디바이스의 작업 수행 장치 및 방법
US10305976B2 (en) * 2015-09-21 2019-05-28 Intel Corporation Method and apparatus for dynamically offloading execution of machine code in an application to a virtual machine
US9679611B2 (en) 2015-09-28 2017-06-13 Mitac Computing Technology Corporation Method for displaying status associated with a storage device, computer system and status-monitoring device thereof
US10228930B2 (en) * 2016-01-28 2019-03-12 Microsoft Technology Licensing, Llc Offloading network connectivity and execution tasks to an assistant device
CN105843685A (zh) * 2016-03-17 2016-08-10 哈尔滨理工大学 基于任务分配的移动终端计算卸载方法
US20170353397A1 (en) * 2016-06-06 2017-12-07 Advanced Micro Devices, Inc. Offloading Execution of an Application by a Network Connected Device
US11032357B2 (en) * 2017-03-30 2021-06-08 Intel Corporation Data processing offload
US10057373B1 (en) * 2017-05-15 2018-08-21 Palantir Technologies Inc. Adaptive computation and faster computer operation
US10951521B2 (en) * 2017-09-01 2021-03-16 Maxlinear, Inc. Method for scheduling a computational task, a method for processing a computational task, a computer readable storage medium, a computer program, a residential gateway, and a server
US10616340B2 (en) * 2018-02-23 2020-04-07 Standard Cognition, Corp. Distributed computing of large data by selecting a computational resource of a remote server based on selection policies and data information wherein the selections policies are associated with location constraints, time constraints, and data type constraints
US10855753B2 (en) * 2018-02-23 2020-12-01 Standard Cognition, Corp. Distributed computing of vehicle data by selecting a computation resource of a remote server that satisfies a selection policy for meeting resource requirements according to capability information
US11689637B2 (en) * 2019-10-14 2023-06-27 Qualcomm Incorporated Local cache management in edge networks
US11099838B1 (en) * 2020-02-26 2021-08-24 Quanta Computer Inc. Method and system for recovery for custom integrated circuit
US11252226B2 (en) * 2020-03-05 2022-02-15 Qualcomm Incorporated Methods and apparatus for distribution of application computations
US20230032967A1 (en) * 2021-07-29 2023-02-02 Red Hat, Inc. Establishing process connections utilizing an intermediary broker
US11960376B1 (en) * 2022-12-05 2024-04-16 Dish Wireless L.L.C. Virtualization of community-based networking and crypto mining hardware

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5469545A (en) * 1991-10-03 1995-11-21 Compaq Computer Corp. Expandable communication system with data flow control
US5319754A (en) * 1991-10-03 1994-06-07 Compaq Computer Corporation Data transfer system between a computer and a host adapter using multiple arrays
US5222062A (en) * 1991-10-03 1993-06-22 Compaq Computer Corporation Expandable communication system with automatic data concentrator detection
US5280586A (en) * 1991-10-03 1994-01-18 Compaq Computer Corp. Expandable communication system using data concentration
US5566326A (en) * 1993-09-28 1996-10-15 Bull Hn Information Systems Inc. Copy file mechanism for transferring files between a host system and an emulated file system
US5572711A (en) * 1993-09-28 1996-11-05 Bull Hn Information Systems Inc. Mechanism for linking together the files of emulated and host system for access by emulated system users
US5664098A (en) * 1993-09-28 1997-09-02 Bull Hn Information Systems Inc. Dual decor capability for a host system which runs emulated application programs to enable direct access to host facilities for executing emulated system operations
US5546538A (en) 1993-12-14 1996-08-13 Intel Corporation System for processing handwriting written by user of portable computer by server or processing by the computer when the computer no longer communicate with server
US5964855A (en) * 1997-04-07 1999-10-12 International Business Machines Corporation Method and system for enabling nondisruptive live insertion and removal of feature cards in a computer system
US5943692A (en) * 1997-04-30 1999-08-24 International Business Machines Corporation Mobile client computer system with flash memory management utilizing a virtual address map and variable length data
JPH1115761A (ja) * 1997-06-02 1999-01-22 Internatl Business Mach Corp <Ibm> 赤外線通信機能を持つ情報処理装置及びその制御方法
US6434620B1 (en) 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
JPH11143827A (ja) 1997-11-04 1999-05-28 Toshiba Corp 計算機資源割り当てシステム、携帯端末及び計算機資源管理方法
US6151709A (en) * 1998-02-13 2000-11-21 Novell, Inc. Processes and apparatuses for uploading instructions to a computer
US20010054115A1 (en) 1998-05-29 2001-12-20 Tabitha Ferguson System and method for bundling information
US6141705A (en) * 1998-06-12 2000-10-31 Microsoft Corporation System for querying a peripheral device to determine its processing capabilities and then offloading specific processing tasks from a host to the peripheral device when needed
US6904519B2 (en) 1998-06-12 2005-06-07 Microsoft Corporation Method and computer program product for offloading processing tasks from software to hardware
US20020152060A1 (en) * 1998-08-31 2002-10-17 Tseng Ping-Sheng Inter-chip communication system
US6314447B1 (en) 1999-10-04 2001-11-06 Sony Corporation System uses local registry and load balancing procedure for identifying processing capabilities of a remote device to perform a processing task
WO2001035194A2 (en) * 1999-11-10 2001-05-17 Unisys Corporation Method and apparatus for providing redundant and resilient cryptographic services
US20060271441A1 (en) * 2000-11-14 2006-11-30 Mueller Raymond J Method and apparatus for dynamic rule and/or offer generation
DE60117676T2 (de) * 2000-12-29 2006-11-16 Stmicroelectronics S.R.L., Agrate Brianza Verfahren zur einfachen Ausdehnung der Funktionalität eines tragbaren elektronischen Geräts und zugehöriges, tragbares elektronisches Gerät
WO2003009539A1 (fr) * 2001-07-10 2003-01-30 Fujitsu Limited Systeme de communication a terminal mobile et procede de communication
GB2377587B (en) * 2001-07-11 2005-03-30 Vodafone Plc Interconnection of mobile telecommunications terminals
US7418344B2 (en) * 2001-08-02 2008-08-26 Sandisk Corporation Removable computer with mass storage
US20030046330A1 (en) 2001-09-04 2003-03-06 Hayes John W. Selective offloading of protocol processing
US6990662B2 (en) * 2001-10-31 2006-01-24 Hewlett-Packard Development Company, L.P. Method and system for offloading execution and resources for resource-constrained networked devices
WO2003065260A1 (fr) 2002-01-28 2003-08-07 Fujitsu Limited Procede de transaction et dispositif de transaction automatique permettant de mettre en oeuvre ledit procede
US7644188B2 (en) 2002-02-25 2010-01-05 Intel Corporation Distributing tasks in data communications
US7007103B2 (en) * 2002-04-30 2006-02-28 Microsoft Corporation Method to offload a network stack
US9886309B2 (en) 2002-06-28 2018-02-06 Microsoft Technology Licensing, Llc Identity-based distributed computing for device resources
CN1424658A (zh) * 2003-01-06 2003-06-18 曹爱国 一种移动存储装置及其设计方法
US7366460B2 (en) * 2003-01-23 2008-04-29 Dexterra, Inc. System and method for mobile data update
US8250412B2 (en) * 2003-09-26 2012-08-21 Ati Technologies Ulc Method and apparatus for monitoring and resetting a co-processor
US20050125784A1 (en) 2003-11-13 2005-06-09 Rhode Island Board Of Governors For Higher Education Hardware environment for low-overhead profiling
JP4064914B2 (ja) * 2003-12-02 2008-03-19 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム
FR2870990B1 (fr) * 2004-05-26 2006-08-11 St Microelectronics Sa Protection d'un circuit integre contre des decharges electrostatiques
US20060075408A1 (en) 2004-10-06 2006-04-06 Digipede Technologies, Llc Distributed object execution system
US9032192B2 (en) * 2004-10-28 2015-05-12 Broadcom Corporation Method and system for policy based authentication
US20060179430A1 (en) * 2004-11-18 2006-08-10 Besbris David G Service grouping
CN1790263B (zh) 2004-12-13 2010-05-26 深圳市朗科科技股份有限公司 移动存储设备及其图标变更方法
US20060235998A1 (en) 2005-04-19 2006-10-19 International Business Machines Corporation Off-loading data formatting to a communicatively coupled client
KR100642998B1 (ko) 2005-06-07 2006-11-10 주식회사 인티큐브 단말의 정책을 업그레이드하기 위한 정책메시지 전송방법
US7567553B2 (en) * 2005-06-10 2009-07-28 Swift Creek Systems, Llc Method, system, and data structure for providing a general request/response messaging protocol using a presence protocol
US7623717B2 (en) 2005-08-31 2009-11-24 Microsoft Corporation Capturing device for embedding software into raw sensor data
US20070143851A1 (en) * 2005-12-21 2007-06-21 Fiberlink Method and systems for controlling access to computing resources based on known security vulnerabilities
US20080052770A1 (en) * 2006-03-31 2008-02-28 Axalto Inc Method and system of providing security services using a secure device
US7966039B2 (en) * 2007-02-02 2011-06-21 Microsoft Corporation Bidirectional dynamic offloading of tasks between a host and a mobile device

Also Published As

Publication number Publication date
US20100272258A1 (en) 2010-10-28
EP3582110B1 (en) 2022-05-11
US20110214126A1 (en) 2011-09-01
CN101601028B (zh) 2012-04-25
WO2008094742A1 (en) 2008-08-07
TW200841187A (en) 2008-10-16
TWI557572B (zh) 2016-11-11
TWI498744B (zh) 2015-09-01
TW201512850A (zh) 2015-04-01
US8112116B2 (en) 2012-02-07
US7966039B2 (en) 2011-06-21
TW201512851A (zh) 2015-04-01
EP2122476B1 (en) 2019-06-19
EP2122476A1 (en) 2009-11-25
EP3582110A1 (en) 2019-12-18
CN101601028A (zh) 2009-12-09
EP2122476A4 (en) 2013-07-10

Similar Documents

Publication Publication Date Title
TWI540443B (zh) 用於在主機與行動裝置間之任務的雙向動態卸載之方法、系統及電腦可讀儲存裝置(二)
US9146755B2 (en) System and method for transporting platform independent power configuration parameters
JP4738534B2 (ja) 複数のブート可能装置間のブートネゴシエーション
TWI428830B (zh) 將機器轉換至虛擬機器的方法及電腦程式產品
US8966499B2 (en) Virtual switch extensibility
CN102804132B (zh) 基于目录的软件组件管理
TWI705336B (zh) 用於支援線上升級的設備和方法
JP4286798B2 (ja) ハードドライブにドライバファイルをインストールする方法、コンピュータ及びコンピュータ読取可能な記憶媒体
US9531813B2 (en) Sandboxed application data redirection to datacenters
US8756656B1 (en) Systems and methods for creating and synchronizing security metadata within synchronized-data networks
US20180276386A1 (en) Persistent enrollment of a computing device based on a temporary user
US20080270524A1 (en) Distributing files over a computer network
US10474491B2 (en) Method and apparatus for managing cloud server in cloud environment
WO2021031655A1 (zh) 区块链网络的升级方法及装置、存储介质、电子设备
US10956173B2 (en) Capturing pre-fetch blocks of an operating system to improve boot performance in a cloud environment
CN110046000B (zh) 小程序运行方法和装置
JP2009129450A (ja) コンピュータシステムにソフトウェアパッチを提供する方法
US11307912B1 (en) Forward message compatibility safety in producer-consumer systems
CN111142972B (zh) 用于扩展应用程序的功能的方法、装置、系统及介质
US11900100B2 (en) System and method for enabling a rollback mechanism for shared devices in an information handling system
US20200287981A1 (en) System and Method for Providing UEFI Protocol Access Control
CN116339625A (zh) 一种数据存储方法及装置
CN117278549A (zh) 基于rdma的数据发送方法、装置、电子设备及存储介质

Legal Events

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