欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

使用時(shí)間建議來協(xié)調(diào)數(shù)據(jù)傳遞的制作方法

文檔序號(hào):7736584閱讀:196來源:國知局
專利名稱:使用時(shí)間建議來協(xié)調(diào)數(shù)據(jù)傳遞的制作方法
使用時(shí)間建議來協(xié)調(diào)數(shù)據(jù)傳遞背景近年來,諸如移動(dòng)電話和個(gè)人數(shù)字助理(PDA)等移動(dòng)計(jì)算設(shè)備已經(jīng)變得日益流行。隨著設(shè)備不斷變小,在諸如存儲(chǔ)器、存儲(chǔ)、帶寬和電池電量等資源方面存在日益增長的限制。另外,更多的應(yīng)用程序現(xiàn)在正以日益增長的水平消耗著這些資源。例如,許多應(yīng)用程序執(zhí)行諸如與需要頻繁使用無線電的服務(wù)器同步等的循環(huán)任務(wù)。在打開移動(dòng)計(jì)算設(shè)備上的無線電的電源來發(fā)送數(shù)據(jù)之后,無線電需要花幾秒鐘來關(guān)閉電源(例如,在2. 5G網(wǎng)絡(luò)上大約3秒而在3G網(wǎng)絡(luò)上大約20秒)。該無線電“尾”吸收電能并減短了移動(dòng)計(jì)算設(shè)備上的電池壽命。此外,在自旋無線電和關(guān)閉無線電時(shí)存在其他的能源低效性。移動(dòng)用戶正廣泛地采用帶有實(shí)時(shí)數(shù)據(jù)推送或更新的連接的應(yīng)用程序。這些應(yīng)用程序包括電子郵件、個(gè)人信息管理、在場信息和其他web應(yīng)用程序。服務(wù)器用未經(jīng)協(xié)調(diào)的方式來推送數(shù)據(jù),從而使得移動(dòng)計(jì)算設(shè)備上的電池壽命降級(jí)而負(fù)面地影響用戶體驗(yàn)。概述本發(fā)明的各實(shí)施例協(xié)調(diào)從多個(gè)第二計(jì)算設(shè)備到至少一個(gè)第一計(jì)算設(shè)備的數(shù)據(jù)傳遞。該第二計(jì)算設(shè)備中的一個(gè)請(qǐng)求用于數(shù)據(jù)傳遞的時(shí)間間隔。第一計(jì)算設(shè)備將所請(qǐng)求的時(shí)間間隔與同第一計(jì)算設(shè)備相關(guān)聯(lián)的通信資源的多個(gè)已知電源開啟時(shí)間進(jìn)行比較。確定傳遞時(shí)間并將傳遞時(shí)間提供給第二計(jì)算設(shè)備。協(xié)調(diào)數(shù)據(jù)傳遞保留了第一計(jì)算設(shè)備上的通信資源。在某些實(shí)施例中,出于處理延時(shí)和網(wǎng)絡(luò)等待時(shí)間來調(diào)整所確定的傳遞時(shí)間。提供本概述以便以簡化形式介紹將在以下的詳細(xì)描述中進(jìn)一步描述的一些概念。 本概述并非旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。附圖簡述

圖1是示出第一計(jì)算設(shè)備從多個(gè)第二計(jì)算設(shè)備接收數(shù)據(jù)的示例性框圖。圖2是示出用于存儲(chǔ)資源的已知電源開啟時(shí)間的計(jì)算設(shè)備以及用于實(shí)現(xiàn)本發(fā)明各方面的計(jì)算機(jī)可執(zhí)行組件的示例性框圖。圖3是示出將所請(qǐng)求的時(shí)間間隔與循環(huán)時(shí)間表的激活時(shí)間以及先前建議的傳遞時(shí)間進(jìn)行比較來確定傳遞時(shí)間以向服務(wù)器提出建議的示例性流程圖。圖4是示出確定數(shù)據(jù)傳遞時(shí)間并基于處理延時(shí)和網(wǎng)絡(luò)等待時(shí)間來調(diào)整所確定的傳遞時(shí)間的示例性流程圖。圖5是示出基于與移動(dòng)計(jì)算設(shè)備相關(guān)聯(lián)的通信資源的已知電源開啟時(shí)間來確定數(shù)據(jù)傳遞時(shí)間的示例性流程圖。圖6是示出從兩個(gè)服務(wù)器到移動(dòng)計(jì)算設(shè)備的數(shù)據(jù)傳遞的調(diào)度的示例性序列圖。在附圖中,對(duì)應(yīng)的附圖標(biāo)記指示對(duì)應(yīng)的部分。詳細(xì)描述參考附圖,本發(fā)明的各實(shí)施例協(xié)調(diào)從多個(gè)第二計(jì)算設(shè)備104到至少一個(gè)第一計(jì)算設(shè)備102的數(shù)據(jù)傳遞以降低第一計(jì)算設(shè)備102上的通信資源的消耗。在某些實(shí)施例中,第一計(jì)算設(shè)備102向第二計(jì)算設(shè)備104提供傳遞時(shí)間的提示、建議、推薦或分配(例如,最優(yōu)傳遞時(shí)間)從而使得多個(gè)第二計(jì)算設(shè)備104在同一時(shí)間或大約同一時(shí)間向第一計(jì)算設(shè)備102 發(fā)送數(shù)據(jù)。在第一計(jì)算設(shè)備102是移動(dòng)計(jì)算設(shè)備602的示例中,經(jīng)協(xié)調(diào)的數(shù)據(jù)傳遞充分利用一個(gè)或多個(gè)蜂窩無線電的已知電源開啟時(shí)間(例如,無線電自旋)來保存移動(dòng)計(jì)算設(shè)備 602上的電池壽命。然而,在其他示例中,本發(fā)明的各方面可用于保存第一計(jì)算設(shè)備102上的任何資源、降低其消耗、延長其壽命或?qū)ζ溥M(jìn)行優(yōu)化。在某些實(shí)施例中,移動(dòng)計(jì)算設(shè)備602利用已知的調(diào)度數(shù)據(jù)來標(biāo)識(shí)下一個(gè)排定的無線電時(shí)間,預(yù)留網(wǎng)絡(luò)等待時(shí)間214,隨后將該時(shí)間發(fā)布給感興趣的應(yīng)用程序或服務(wù)器。在一個(gè)示例中,所發(fā)布的時(shí)間稍早于下一個(gè)排定的無線電時(shí)間從而使得服務(wù)器通信和設(shè)備時(shí)間表兩者都能充分利用同一個(gè)無線電自旋。例如,設(shè)備時(shí)間表是在上午9點(diǎn)激活,則所發(fā)布的時(shí)間是上午8:59:45。隨后喚起無線電的服務(wù)器通信在上午8:59:45發(fā)生。在有“模糊”或容限因子與時(shí)間表208中的每一個(gè)相關(guān)聯(lián)的實(shí)施例中,容限因子向目標(biāo)提供較大的時(shí)間窗口并協(xié)調(diào)第二計(jì)算設(shè)備104聯(lián)系第一計(jì)算設(shè)備102的時(shí)間。在帶有具有50%的容限因子的十分鐘間隔時(shí)間表的示例中,第二計(jì)算設(shè)備104可以在時(shí)刻5和時(shí)刻10之間的任意時(shí)間聯(lián)系第一計(jì)算設(shè)備102來充分利用無線電自旋。容限因子提高了充分利用無線電自旋的可能性。再次參考圖1,示例性框圖示出第一計(jì)算設(shè)備102從多個(gè)第二計(jì)算設(shè)備104接收數(shù)據(jù),該多個(gè)第二計(jì)算設(shè)備諸如第二計(jì)算設(shè)備#1到第二計(jì)算設(shè)備#隊(duì)其中N是正整數(shù)。第二計(jì)算設(shè)備104經(jīng)由諸如例如因特網(wǎng)等網(wǎng)絡(luò)106被連接到第一計(jì)算設(shè)備102。在某些實(shí)施例中,調(diào)度器108或其他組件、指令或邏輯對(duì)第一計(jì)算設(shè)備102執(zhí)行諸如圖3、圖4和圖5所示的操作。第二計(jì)算設(shè)備104執(zhí)行服務(wù)來周期性地(例如,定期地或間歇地)向第一計(jì)算設(shè)備發(fā)送數(shù)據(jù)。在某些實(shí)施例中,第二計(jì)算設(shè)備104向第一計(jì)算設(shè)備102提供實(shí)時(shí)內(nèi)容更新 (例如,push mail (推送郵件)、日歷、聯(lián)系人、即時(shí)消息收發(fā)和社交網(wǎng)絡(luò)數(shù)據(jù))。第二計(jì)算設(shè)備104還可以發(fā)送或接收心跳查驗(yàn)來保持第二計(jì)算設(shè)備104和第一計(jì)算設(shè)備102之間的連接暢通。第二計(jì)算設(shè)備104包括但不限于,服務(wù)器、代理服務(wù)器、企業(yè)服務(wù)器、或?qū)?shù)據(jù)發(fā)送給第一計(jì)算設(shè)備102的任何其他設(shè)備。此外,雖然在某些實(shí)施例中參考包括移動(dòng)計(jì)算設(shè)備602的第一計(jì)算設(shè)備102來進(jìn)行描述,但本發(fā)明的各方面可用于諸如膝上型計(jì)算機(jī)、游戲控制臺(tái)、手持式導(dǎo)航設(shè)備等其他設(shè)備、或與第二計(jì)算設(shè)備104進(jìn)行通信的任何其他設(shè)備。另外,雖然本發(fā)明的各實(shí)施例參考將數(shù)據(jù)發(fā)送給移動(dòng)計(jì)算設(shè)備602的服務(wù)器來進(jìn)行描述,但本發(fā)明的各方面可在諸如第一計(jì)算設(shè)備102和第二計(jì)算設(shè)備104之間的對(duì)等連接等其他環(huán)境中操作。接著參考圖2,示例性框圖示出用于存儲(chǔ)資源的已知電源開啟時(shí)間的計(jì)算設(shè)備 202以及用于實(shí)現(xiàn)本發(fā)明各方面的計(jì)算機(jī)可執(zhí)行組件,所述計(jì)算設(shè)備202諸如第一計(jì)算設(shè)備102。計(jì)算設(shè)備202包括處理器204和存儲(chǔ)器區(qū)域206或其他計(jì)算機(jī)可讀介質(zhì)。存儲(chǔ)器區(qū)域206存儲(chǔ)多個(gè)時(shí)間表208,諸如時(shí)間表#1到時(shí)間表#M,其中M是正整數(shù)。時(shí)間表208與第二計(jì)算設(shè)備104相關(guān)聯(lián)并由第二計(jì)算設(shè)備104提供來將數(shù)據(jù)發(fā)送給計(jì)算設(shè)備202。應(yīng)用程序執(zhí)行相應(yīng)的時(shí)間表208來將數(shù)據(jù)發(fā)送至諸如相關(guān)聯(lián)的第二計(jì)算設(shè)備104等設(shè)備或從所述設(shè)備中接收數(shù)據(jù),這使得諸如計(jì)算設(shè)備202上的蜂窩無線電等通信接口的電源開啟。例如,應(yīng)用程序由計(jì)算設(shè)備202主存。時(shí)間表208中的每一個(gè)具有激活時(shí)間210,并且每一個(gè)時(shí)間表208與第二計(jì)算設(shè)備104中的至少一個(gè)相關(guān)聯(lián)。在某些實(shí)施例中,時(shí)間表208具有循環(huán)激活時(shí)間210。時(shí)間表208的執(zhí)行包括在激活時(shí)間210完成或執(zhí)行與時(shí)間表208相關(guān)聯(lián)的一個(gè)或多個(gè)動(dòng)作。例如,激活時(shí)間210將相關(guān)聯(lián)的第二計(jì)算設(shè)備104要向計(jì)算設(shè)備202發(fā)送數(shù)據(jù)的時(shí)間表示為絕對(duì)值或偏移量。數(shù)據(jù)的傳輸使用計(jì)算設(shè)備202上的耗電資源(例如,諸如一個(gè)或多個(gè)蜂窩無線電等的通信資源或無線電資源)。雖然時(shí)間表208表示期間要使用通信資源的已知將來時(shí)間,但存儲(chǔ)器區(qū)域206可以另選地或另外地顯式地存儲(chǔ)通信資源的一個(gè)或多個(gè)已知電源開啟時(shí)間。在某些實(shí)施例中,存儲(chǔ)在存儲(chǔ)器區(qū)域206中的時(shí)間表208包括條件時(shí)間表208、無條件時(shí)間表208、消耗通信資源的時(shí)間表208以及不消耗通信資源(或要被優(yōu)化的其他資源)的時(shí)間表208。在這些實(shí)施例中,計(jì)算設(shè)備202在確定傳遞時(shí)間時(shí)過濾、搜索或以其他方式生成時(shí)間表208的子集。例如,無條件時(shí)間表208與條件時(shí)間表208相比具有較大的被執(zhí)行的可能性(例如,最大執(zhí)行可能性),并且由此,在確定傳遞時(shí)間時(shí),與無條件時(shí)間表 208相關(guān)聯(lián)的激活時(shí)間210被賦予比與條件時(shí)間表208相關(guān)聯(lián)的激活時(shí)間210更高的優(yōu)先級(jí)或偏好。在其他實(shí)施例中,對(duì)時(shí)間表208進(jìn)行預(yù)先排序、預(yù)先過濾或以其他方式進(jìn)行分組。 例如,存儲(chǔ)器區(qū)域可以存儲(chǔ)分開的條件、無條件、資源消耗和無資源消耗的時(shí)間表208的各組,以加快傳遞時(shí)間的確定。存儲(chǔ)器區(qū)域206還存儲(chǔ)處理延時(shí)212和網(wǎng)絡(luò)等待時(shí)間214。處理延時(shí)212表示由于計(jì)算設(shè)備202上的處理而導(dǎo)致的延時(shí)。網(wǎng)絡(luò)等待時(shí)間214表示由于數(shù)據(jù)到計(jì)算設(shè)備202 的網(wǎng)絡(luò)106傳輸而導(dǎo)致的延時(shí)。在某些實(shí)施例中,處理延時(shí)212和網(wǎng)絡(luò)等待時(shí)間214中的任一個(gè)或兩者被表達(dá)為偏移量。計(jì)算設(shè)備202使用處理延時(shí)212和網(wǎng)絡(luò)等待時(shí)間214來提供更準(zhǔn)確的傳遞時(shí)間。在某些實(shí)施例中,處理延時(shí)212和網(wǎng)絡(luò)等待時(shí)間214由計(jì)算設(shè)備202 確定(例如,測量在處理或網(wǎng)絡(luò)傳輸期間的時(shí)間差)。在其他實(shí)施例中,將網(wǎng)絡(luò)等待時(shí)間214 提供給計(jì)算設(shè)備202 (例如,通過用設(shè)備將數(shù)據(jù)發(fā)送給計(jì)算設(shè)備202)。存儲(chǔ)器區(qū)域206還存儲(chǔ)一個(gè)或多個(gè)先前確定的傳遞時(shí)間216。先前確定的傳遞時(shí)間216表示用于向計(jì)算設(shè)備202傳遞數(shù)據(jù)的提示時(shí)間或建議時(shí)間。先前確定的傳遞時(shí)間 216表示在將來發(fā)生的時(shí)間。在當(dāng)前時(shí)間是下午12:30的示例中,計(jì)算設(shè)備202確定傳遞時(shí)間為下午12:40并將該傳遞時(shí)間提供給第一應(yīng)用程序。在從第二應(yīng)用程序接收到傳遞時(shí)間的請(qǐng)求之后,計(jì)算設(shè)備202知曉先前確定的傳遞時(shí)間為下午12:40并能夠考慮將該時(shí)間提供給第二計(jì)算設(shè)備104來協(xié)調(diào)計(jì)算設(shè)備202上的通信資源的使用,如以下參考圖3更詳細(xì)地描述的。存儲(chǔ)器區(qū)域206還存儲(chǔ)一個(gè)或多個(gè)計(jì)算機(jī)可執(zhí)行組件,諸如接口組件218、高速緩存組件220、提示組件222和發(fā)布組件224。這些組件的操作在下文中參考圖5來描述。接著參考圖3,示例性流程圖示出將所請(qǐng)求的時(shí)間間隔與時(shí)間表208的激活時(shí)間 210以及先前建議的傳遞時(shí)間216進(jìn)行比較來確定傳遞時(shí)間以向服務(wù)器提出建議。在302 處,諸如第一計(jì)算設(shè)備102等的計(jì)算設(shè)備從諸如服務(wù)器或第二計(jì)算設(shè)備104等的另一計(jì)算設(shè)備接收所請(qǐng)求的時(shí)間值。在某些實(shí)施例中,時(shí)間值包括指定最小時(shí)間值和最大時(shí)間值的時(shí)間間隔或范圍。時(shí)間值可以是絕對(duì)時(shí)間或離當(dāng)前時(shí)間(例如,第一計(jì)算設(shè)備102所接收的時(shí)間)的偏移量。在附錄A中示出用于指定時(shí)間間隔的示例手段。在接收到所請(qǐng)求的時(shí)間值之后,第一計(jì)算設(shè)備102在304處標(biāo)識(shí)與時(shí)間表208相關(guān)聯(lián)的一個(gè)或多個(gè)即將到來的激活時(shí)間210。例如,第一計(jì)算設(shè)備102標(biāo)識(shí)與消耗通信資源 (或要被優(yōu)化的其他資源)的時(shí)間表208相關(guān)聯(lián)的激活時(shí)間210。第一計(jì)算設(shè)備102隨后標(biāo)識(shí)與無條件時(shí)間表208相關(guān)聯(lián)的那些激活時(shí)間210。如果沒有這樣的時(shí)間表208可用,則第一計(jì)算設(shè)備102標(biāo)識(shí)與條件時(shí)間表208相關(guān)聯(lián)的那些激活時(shí)間210。同樣在304,第一計(jì)算設(shè)備102標(biāo)識(shí)一個(gè)或多個(gè)先前確定的傳遞時(shí)間216。例如, 第一計(jì)算設(shè)備102訪問存儲(chǔ)在存儲(chǔ)器區(qū)域206中的先前確定的傳遞時(shí)間216。在306處,將所請(qǐng)求的時(shí)間值與所標(biāo)識(shí)的激活時(shí)間210以及先前確定的傳遞時(shí)間216進(jìn)行比較。同樣在 306,基于該比較,第一計(jì)算設(shè)備102確定傳遞時(shí)間。在所請(qǐng)求的時(shí)間值是間隔的示例中,所確定的傳遞時(shí)間表示該間隔內(nèi)的時(shí)間。另選地或另外地,所確定的傳遞時(shí)間表示與即將到來的激活時(shí)間210中的一個(gè)或者與先前確定的傳遞時(shí)間216中的一個(gè)相對(duì)應(yīng)的時(shí)間。在這些實(shí)施例中,因?yàn)樵谕ㄐ刨Y源的電源開啟的同時(shí)多個(gè)服務(wù)器將使用該通信資源,所以優(yōu)化了通信資源的使用。在308,將所確定的傳遞時(shí)間提供給服務(wù)器。服務(wù)器在所提供的傳遞時(shí)間將數(shù)據(jù)發(fā)送給第一計(jì)算設(shè)備102。在某些實(shí)施例中,所請(qǐng)求的時(shí)間值是從在第一計(jì)算設(shè)備102上執(zhí)行的但與服務(wù)器相關(guān)聯(lián)的應(yīng)用程序接收的。在這些實(shí)施例中,將所確定的傳遞時(shí)間提供給該應(yīng)用程序。該應(yīng)用程序?qū)⑺_定的傳遞時(shí)間傳達(dá)給服務(wù)器,并且服務(wù)器在所確定的傳遞時(shí)間將數(shù)據(jù)發(fā)送給第一計(jì)算設(shè)備102。在多個(gè)服務(wù)器企圖向第一計(jì)算設(shè)備102發(fā)送數(shù)據(jù)的實(shí)施例中,該多個(gè)服務(wù)器中的每一個(gè)具有與其相關(guān)聯(lián)的優(yōu)先級(jí)。第一計(jì)算設(shè)備102在確定傳遞時(shí)間時(shí)使用所分配的優(yōu)先級(jí)。例如,如果通信資源在特定時(shí)間間隔可用,則提出傳遞時(shí)間請(qǐng)求的具有高優(yōu)先級(jí)的服務(wù)器將在特定時(shí)間間隔的較早時(shí)刻接收到所確定的傳遞時(shí)間。具有較低優(yōu)先級(jí)的服務(wù)器將在特定時(shí)間間隔的較晚時(shí)刻接收到所確定的傳遞時(shí)間。接著參考圖4,示例性流程圖示出確定數(shù)據(jù)傳遞時(shí)間并基于處理延時(shí)212和網(wǎng)絡(luò)等待時(shí)間214來調(diào)整所確定的傳遞時(shí)間。在402處,訪問由服務(wù)器或其他第二計(jì)算設(shè)備104 請(qǐng)求的時(shí)間間隔(例如,由第一計(jì)算設(shè)備102訪問)。所請(qǐng)求的時(shí)間間隔表示期間服務(wù)器想要向第一計(jì)算設(shè)備102發(fā)送數(shù)據(jù)的時(shí)間范圍。在404處,搜索激活時(shí)間210(在某些實(shí)施例中,連同先前確定的傳遞時(shí)間216)來標(biāo)識(shí)在所請(qǐng)求的時(shí)間間隔內(nèi)的激活時(shí)間210的子集。 在406處,基于所標(biāo)識(shí)的激活時(shí)間210的子集來確定傳遞時(shí)間以協(xié)調(diào)通信資源的消耗。在 408處,基于與處理延時(shí)212和/或網(wǎng)絡(luò)等待時(shí)間214相對(duì)應(yīng)的偏移量來調(diào)整所確定的傳遞時(shí)間。在410處,將所確定的傳遞時(shí)間發(fā)布給服務(wù)器。在附錄B中描述了用于確定傳遞時(shí)間的示例性指令或操作。接著參考圖5,示例性流程圖示出基于與移動(dòng)計(jì)算設(shè)備602相關(guān)聯(lián)的通信資源的已知電源開啟時(shí)間來確定數(shù)據(jù)傳遞時(shí)間。在圖5的示例中,接口組件218、高速緩存組件 220、提示組件222或發(fā)布組件2 在移動(dòng)計(jì)算設(shè)備602上執(zhí)行。在502處,接口組件218 接收或訪問所請(qǐng)求的時(shí)間間隔或值。該時(shí)間間隔與從服務(wù)器到移動(dòng)計(jì)算設(shè)備602的預(yù)期數(shù)據(jù)傳輸相關(guān)聯(lián)。在504處,高速緩存組件220標(biāo)識(shí)移動(dòng)計(jì)算設(shè)備602上的通信資源的一個(gè)或多個(gè)預(yù)期電源開啟時(shí)間。該預(yù)期電源開啟時(shí)間表示,例如在移動(dòng)計(jì)算設(shè)備602上執(zhí)行的消耗通信資源的時(shí)間表208的即將到來的激活時(shí)間210或先前確定的傳遞時(shí)間216。在506處,提示組件222基于由接口組件218接收的所請(qǐng)求的時(shí)間間隔與由高速緩存組件220標(biāo)識(shí)的預(yù)期電源開啟時(shí)間的比較來確定傳遞時(shí)間。例如,提示組件222將傳遞時(shí)間設(shè)為與預(yù)期電源開啟時(shí)間中的一個(gè)相對(duì)應(yīng)的時(shí)間間隔的起點(diǎn)。在某些實(shí)施例中,接口組件218所接收的請(qǐng)求包括表示數(shù)據(jù)傳輸?shù)念A(yù)期大小的有效負(fù)載值。在這些實(shí)施例中, 提示組件222基于所接收的有效負(fù)載值來確定傳遞時(shí)間以管理移動(dòng)計(jì)算設(shè)備602上的帶寬 (例如,為了避免使通信資源發(fā)生顛簸)。例如,帶有小有效負(fù)載的數(shù)據(jù)包被排定為首先發(fā)送的優(yōu)先級(jí),接著是帶有大有效負(fù)載的數(shù)據(jù)包。作為有效負(fù)載大小的替代或除了有效負(fù)載大小之外,對(duì)于遍歷某些接口的有效負(fù)載賦予優(yōu)先級(jí)并按照優(yōu)先級(jí)降序來發(fā)送。在508處,發(fā)布組件2M將由提示組件222確定的傳遞時(shí)間提供給服務(wù)器。服務(wù)器在所提供的傳遞時(shí)間將數(shù)據(jù)發(fā)送給移動(dòng)計(jì)算設(shè)備602。在某些實(shí)施例中,移動(dòng)計(jì)算設(shè)備602具有多個(gè)蜂窩無線電。在這些實(shí)施例中,接口組件218所接收的請(qǐng)求包括該多個(gè)蜂窩無線電中的一個(gè)的標(biāo)識(shí)。在其他實(shí)施例中,移動(dòng)計(jì)算設(shè)備602將請(qǐng)求分配給該蜂窩無線電中的一個(gè)。在另一些實(shí)施例中,跟蹤時(shí)間表208中具有持久連接的每一個(gè)時(shí)間表所使用的無線電。所標(biāo)識(shí)的蜂窩無線電變?yōu)樘崾窘M件222用來確定傳遞時(shí)間的另一變量。在這些實(shí)施例中,存儲(chǔ)在存儲(chǔ)器區(qū)域206中的先前確定的傳遞時(shí)間216中的每一個(gè)包括相關(guān)聯(lián)的蜂窩無線電的標(biāo)識(shí)。提示組件222在確定傳遞時(shí)間時(shí)對(duì)具有相同所標(biāo)識(shí)的蜂窩無線電的時(shí)間表208排定優(yōu)先級(jí)。接著參考圖6,示例性序列圖示出從兩個(gè)服務(wù)器到移動(dòng)計(jì)算設(shè)備602的數(shù)據(jù)傳遞的調(diào)度。在移動(dòng)設(shè)備上執(zhí)行的兩個(gè)應(yīng)用程序604、606請(qǐng)求到移動(dòng)計(jì)算設(shè)備602的數(shù)據(jù)傳遞的提示。在從調(diào)度器108接收到提示之后,應(yīng)用程序604、606將提示提供給相關(guān)聯(lián)的服務(wù)器610、612。服務(wù)器610、612隨后試圖在所提示的時(shí)間將數(shù)據(jù)發(fā)送給移動(dòng)計(jì)算設(shè)備602。在圖6的示例中,已知電源開啟時(shí)間(例如,即將到來的激活時(shí)間210或先前確定的傳遞時(shí)間216)的列表被稱為ServerSendTime (服務(wù)器發(fā)送時(shí)間)列表。在調(diào)度器108 或其他服務(wù)的啟動(dòng)期間創(chuàng)建^^卯!“義!^打!^列表并且當(dāng)調(diào)度器108結(jié)束處理時(shí)將其清除。 krvei^endTime列表作為高速緩存來對(duì)待從而使得如果高速緩存條目落在所請(qǐng)求的時(shí)間間隔之間,則在確定另一傳遞時(shí)間時(shí)將該高速緩存條目認(rèn)為是候選。在某些實(shí)施例中,高速緩存被表示為帶有 <key,value〉=〈ServerSendTime,frequency〉(< 關(guān)鍵字,值〉=< 服務(wù)器發(fā)送時(shí)間,頻率 >)的散列映射?!碨erverSendTime,frequency〉的映射按照關(guān)鍵字 (ServerSendTime)來排序。在該示例中,映射加快了最接近結(jié)束時(shí)間的krverkndTime的標(biāo)識(shí)。在某些實(shí)施例中,時(shí)間表208中的每一個(gè)的激活時(shí)間210被存儲(chǔ)為按激活時(shí)間 210(例如,升序)排序的高速緩存。高速緩存存儲(chǔ)所有活動(dòng)時(shí)間表208的激活時(shí)間210。用每一個(gè)從服務(wù)器接收的要傳遞數(shù)據(jù)的請(qǐng)求來創(chuàng)建或更新高速緩存。在某些實(shí)施例中,調(diào)度器108簡單地提供或發(fā)布該高速緩存以使服務(wù)器能夠選擇合適的傳遞時(shí)間。在圖6的示例中,在接收到所請(qǐng)求的時(shí)間間隔之后,調(diào)度器108在高速緩存中迭代并刪除已經(jīng)到期(例如,具有早于當(dāng)前時(shí)間的激活時(shí)間210)的所有條目。調(diào)度器108在時(shí)間表208中迭代來標(biāo)識(shí)使用移動(dòng)計(jì)算設(shè)備602上的通信資源的活動(dòng)且循環(huán)的時(shí)間表208的子集。計(jì)算時(shí)間表208子集中每一時(shí)間表208的下一個(gè)激活時(shí)間210。從時(shí)間表208的該子集中,調(diào)度器108標(biāo)識(shí)落在服務(wù)器所請(qǐng)求的時(shí)間間隔內(nèi)的激活時(shí)間210。調(diào)度器108對(duì)與具有高執(zhí)行確定性的時(shí)間表208相關(guān)聯(lián)的激活時(shí)間210賦予偏好。例如,帶有無條件執(zhí)行的時(shí)間表208具有高執(zhí)行確定性。調(diào)度器108基于所標(biāo)識(shí)的時(shí)間表208子集來更新激活時(shí)間210的高速緩存。調(diào)度器108基于激活時(shí)間210的高速緩存和krverkndTime列表來確定傳遞時(shí)間或其他提示時(shí)間。如果激活時(shí)間210中的一個(gè)落在所請(qǐng)求的時(shí)間間隔內(nèi),則將該激活時(shí)間 210添加到krverkndTime列表,并且將頻率設(shè)為一。如果在激活時(shí)間210的高速緩存中沒有滿足的激活時(shí)間210,則調(diào)度器108掃描krverkndTime列表。如果krverkndTime 中的一個(gè)落在所請(qǐng)求的時(shí)間間隔內(nèi),則將該krve^endTime提供給提出請(qǐng)求的服務(wù)器并且在列表中遞增該krverkndTime的頻率。如果一個(gè)以上的krverkndTime落在間隔內(nèi),則選擇具有最高頻率的krverkndTime。如果沒有一個(gè)krverkndTime落在所請(qǐng)求的時(shí)間間隔內(nèi),則選擇最接近的krve^endTime (例如,基于定義的容限或增量區(qū)域)。將傳遞時(shí)間設(shè)為最接近的krverkndTime的起點(diǎn)。如果沒有krverkndTime落在時(shí)間間隔內(nèi),則將所請(qǐng)求的時(shí)間間隔的結(jié)束時(shí)間設(shè)為krvei^endTime。隨后將結(jié)束時(shí)間輸入到 krverkndTime列表中,其頻率為一(1)。雖然圖6的示例示出示例性的傳遞時(shí)間確定,但其他選擇方法也在本發(fā)明各方面的范圍之內(nèi)。此外,選擇方法可以動(dòng)態(tài)地改變。在某些實(shí)施例中,最小時(shí)間值是當(dāng)前時(shí)間而最大時(shí)間值表示最大心跳間隔(例如,移動(dòng)計(jì)算設(shè)備602和服務(wù)器在不傳輸數(shù)據(jù)但仍然保持連接的情況下所能持續(xù)的最長時(shí)間段)。在一實(shí)施例(未示出)中,服務(wù)器是集結(jié)來自一個(gè)或多個(gè)服務(wù)器的數(shù)據(jù)的代理服務(wù)器。代理服務(wù)器在將數(shù)據(jù)發(fā)送給移動(dòng)計(jì)算設(shè)備602之前集結(jié)數(shù)據(jù)。代理服務(wù)器向數(shù)據(jù)包(或向服務(wù)器)分配優(yōu)先級(jí)。優(yōu)先級(jí)表示將該數(shù)據(jù)包發(fā)送給移動(dòng)計(jì)算設(shè)備602的緊急度 (例如,與延時(shí)該包的容忍度相對(duì))。代理服務(wù)器用在發(fā)送數(shù)據(jù)之前等待的意愿(例如,按分鐘)來量化優(yōu)先級(jí)。在移動(dòng)計(jì)算設(shè)備602上,應(yīng)用程序提供最小時(shí)間(例如,當(dāng)前時(shí)間) 以及和發(fā)送該數(shù)據(jù)包的服務(wù)器愿意延遲數(shù)據(jù)傳遞的時(shí)間段相等的最大時(shí)間。當(dāng)移動(dòng)計(jì)算設(shè)備602應(yīng)用程序?qū)⑿奶轵?yàn)發(fā)送給服務(wù)器時(shí),它包括所確定的傳遞時(shí)間或?qū)τ诜?wù)器發(fā)送數(shù)據(jù)的最優(yōu)將來時(shí)間的提示。krverkndTime表示服務(wù)器發(fā)送數(shù)據(jù)的開始時(shí)間。在已知krverkndTime之后的某時(shí)間段資源可用(例如,蜂窩無線電尾)的實(shí)施例中,調(diào)度器108考慮該時(shí)間段。例如, 基于已知蜂窩無線電尾來設(shè)置容限或增量區(qū)域。示例在一示例中,郵件服務(wù)器要求提示并提供12:00和12:20作為最小和最大時(shí)間。 調(diào)度器108具有帶有在12:20的10分鐘間隔時(shí)間段時(shí)間表的活動(dòng)連接的活動(dòng)時(shí)間表。調(diào)度器108標(biāo)識(shí)活動(dòng)時(shí)間表,調(diào)整傳遞時(shí)間以考慮網(wǎng)絡(luò)等待時(shí)間214和/或處理延時(shí)212 (例如,三十秒),確定傳遞時(shí)間為12:19:30,并且將所確定的傳遞時(shí)間提供給服務(wù)器。 在上述示例的變型中,沒有激活時(shí)間210落在所請(qǐng)求的時(shí)間間隔內(nèi)。在該示例中, 調(diào)度器108將12:20的最大時(shí)間設(shè)為所確定的傳遞時(shí)間(例如,ServerSendTime)。
9
在上述示例的延續(xù)中,另一服務(wù)器提供了 12:15和12:30作為最小和最大時(shí)間。 krverkndTime等于12 20,落在所請(qǐng)求的時(shí)間間隔內(nèi)。在調(diào)整了網(wǎng)絡(luò)等待時(shí)間214之后, 調(diào)度器108提供12:19:30作為所確定的傳遞時(shí)間。示例性操作環(huán)境作為示例而非限制,計(jì)算機(jī)可讀介質(zhì)包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)存儲(chǔ)諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)等信息。通信介質(zhì)一般以諸如載波或其它傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號(hào)來體現(xiàn)計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),并且包括任何信息傳遞介質(zhì)。以上的任一種的組合也包括在計(jì)算機(jī)可讀介質(zhì)的范圍之內(nèi)。盡管結(jié)合示例性計(jì)算系統(tǒng)環(huán)境進(jìn)行了描述,但本發(fā)明的各實(shí)施例可用于眾多其它通用或?qū)S糜?jì)算系統(tǒng)環(huán)境或配置。適用于本發(fā)明各方面的公知的計(jì)算系統(tǒng)、環(huán)境和/或配置的示例包括,但不限于移動(dòng)計(jì)算設(shè)備、個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持式或膝上型設(shè)備、多處理器系統(tǒng)、游戲控制臺(tái)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程消費(fèi)電子產(chǎn)品、移動(dòng)電話、網(wǎng)絡(luò)PC、小型機(jī)、大型計(jì)算機(jī)、包括上述系統(tǒng)或設(shè)備中的任一個(gè)的分布式計(jì)算機(jī)環(huán)境寸寸??梢栽谟梢慌_(tái)或多臺(tái)計(jì)算機(jī)或其他設(shè)備執(zhí)行的諸如程序模塊之類的計(jì)算機(jī)可執(zhí)行的指令的一般上下文中來描述本發(fā)明的各實(shí)施例。計(jì)算機(jī)可執(zhí)行指令可以被組織成一個(gè)或多個(gè)計(jì)算機(jī)可執(zhí)行組件或模塊。一般而言,程序模塊包括,但不限于,執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件,以及數(shù)據(jù)結(jié)構(gòu)??梢岳萌魏螖?shù)量的這樣的組件或模塊及其組織來實(shí)現(xiàn)本發(fā)明的各方面。例如,本發(fā)明的各方面不僅限于附圖中所示出并且在此處所描述的特定計(jì)算機(jī)可執(zhí)行指令或特定組件或模塊。本發(fā)明的其他實(shí)施例可以包括具有比此處所示出和描述的功能更多或更少功能的不同的計(jì)算機(jī)可執(zhí)行指令或組件。此處所示和所描述的各實(shí)施例以及此處未具體描述的、但落在本發(fā)明的各方面的范圍內(nèi)的各實(shí)施例構(gòu)成用于基于所請(qǐng)求的時(shí)間間隔內(nèi)的無線電資源的已知電源開啟時(shí)間來確定傳遞時(shí)間的示例性手段,以及用于基于處理延時(shí)212和等待時(shí)間來調(diào)整傳遞時(shí)間的示例性手段。此處所示出和描述的本發(fā)明的各實(shí)施例中的操作的執(zhí)行或?qū)崿F(xiàn)的順序不是必需的,除非另外指定。即,除非另外指定,否則操作可以按任何順序執(zhí)行,且本發(fā)明的各實(shí)施例可以包括比此處所公開的操作更多或更少的操作。例如,構(gòu)想了在一個(gè)操作之前、同時(shí)或之后執(zhí)行另一個(gè)操作是在本發(fā)明的各方面的范圍之內(nèi)的。當(dāng)介紹本發(fā)明的各方面的元素或其實(shí)施例時(shí),冠詞“一”、“一個(gè)”、“該”、“所述”旨
在表示有元素中的一個(gè)或多個(gè)。術(shù)語“包括”、“包含”以及“具有”旨在是包含性的,并意味著除所列出的元素以外還可以有額外的元素。已經(jīng)詳細(xì)地描述了本發(fā)明的各方面,顯然,在不偏離所附權(quán)利要求書所定義的本發(fā)明的各方面的范圍的情況下,可以進(jìn)行各種修改和變化。在不偏離本發(fā)明的各方面的范圍的情況下,可以對(duì)上面的構(gòu)造、產(chǎn)品以及方法作出各種更改,上面的描述中所包含的和各個(gè)附圖中所示出的所有主題應(yīng)該解釋為說明性的,而不是限制性的。附錄 A
10
以下所示的應(yīng)用程序編程接口(API)使得應(yīng)用程序能夠提供最小時(shí)間和最大時(shí)間間隔。在第一計(jì)算設(shè)備上執(zhí)行的調(diào)度器返回落在兩個(gè)間隔之間的提示(例如,用統(tǒng)一時(shí)間代碼格式)。API簽名如下所示。//先決條件_// StartTime <= endTime (開始時(shí)間< =結(jié)束時(shí)間)// CurrentTime <= endTime (當(dāng)前時(shí)間< =結(jié)束時(shí)間)//后置條件_H startTime < = serverSendTime and serverSendTime < = endTime (開始時(shí)間 <=服務(wù)器發(fā)送時(shí)間并且服務(wù)器發(fā)送時(shí)間 < =結(jié)束時(shí)間)HRESULT TaskSchedul erGetBestNetworkTime InRange (__ in const FILETIME^startTime, __in const FILETIME^endTime, __out FILETIME^serverSendTime);該API獲得提示時(shí)間以便服務(wù)器在startTime (開始時(shí)間)和endTime (結(jié)束時(shí)間)之間將數(shù)據(jù)發(fā)送給設(shè)備。參數(shù)startTime[輸入]間隔的開始時(shí)間。endTime[輸入]間隔的結(jié)束時(shí)間。serverSendTime[輸出]服務(wù)器需要將數(shù)據(jù)發(fā)送給設(shè)備的提示時(shí)間。返回值S_0K如果成功則返回的值。E_INVALIDARG如果任何先決條件失敗或者對(duì)于無效自變量返回的值。E_FAIL如果不成功則返回的值。以下示出用于取消先前由 TasMchedulerGetBestNetworkTimelnRangeO 返回的
提示的示例性API。該API由最終未使用提示的任何請(qǐng)求者使用。至少因?yàn)樵诎l(fā)布時(shí)所提示的時(shí)間具有較高的權(quán)重,所以該API提高了本發(fā)明的各方面的準(zhǔn)確性和有效性。有了該 API函數(shù)調(diào)用,調(diào)度器緊密地跟蹤提示時(shí)間值的使用并且改進(jìn)在稍后分發(fā)提示時(shí)間時(shí)調(diào)度器內(nèi)部使用的試探法。在以下示例中,使用jTasl^chedulerCancelBestNetworkTime (任務(wù)調(diào)度器取消最佳網(wǎng)絡(luò)時(shí)間)來取消現(xiàn)有提示的調(diào)用者(帳戶)和使用TaskkhedulerGetB estNetworkTimehRange (任務(wù)調(diào)度器獲得范圍內(nèi)最佳網(wǎng)絡(luò)時(shí)間)來獲得提示的調(diào)用者(帳戶)是同一個(gè)。HRESULT TaskSchedulerCancelBestNetworkTime (__in const
FILETIME*serverSendTime);參數(shù)
11
serverSendTime[輸入]先前由 TaskSchedulerGetBestNetworkTimehRange 返回的提示時(shí)間。返回值S_0K提示時(shí)間的發(fā)布已被跟蹤。S_FALSE提示時(shí)間未被識(shí)別(值已經(jīng)“到期”或者值不是由TaskkhedulerGetBestNe tworkTimelnRange 先前返回的)。E_*在處理請(qǐng)求時(shí)遭遇其他失敗。附錄B以下示出了用于確定傳遞時(shí)間的示例性指令或操作。在服務(wù)啟動(dòng)期間創(chuàng)建krvedendTime列表并且當(dāng)服務(wù)停止時(shí)將其清除。該列表作為高速緩存來對(duì)待從而使得如果高速緩存條目落在間隔之間,則該高速緩存條目可以被認(rèn)為是krvedendTime的候選而不必在所有時(shí)間表中迭代并再次計(jì)算 ServerSendTime。高速緩存可以內(nèi)部地被表示為帶有<key,value) =〈ServerSendTime, mapAcctldtoFreqM〈關(guān)鍵字,值> =〈服務(wù)器發(fā)送時(shí)間,帳戶Id到頻率的映射 >)的散列映射,其中mapAcctldtoFreq是所有者帳戶id到頻率的散列映射,并且可以被定義為map<ACCTID, DW0RD>mapAcctIdtoFreq ;〈ServerSendTime mapAcctldtoFreq)的映射按照關(guān)鍵字(ServerSendTime)來排序。還維護(hù)按NRT (下一運(yùn)行時(shí))來排序的<NRT>列表。該列表在每次調(diào)用API時(shí)創(chuàng)建。該列表存儲(chǔ)所有活動(dòng)時(shí)間表的NRT。接著描述用于確定傳遞時(shí)間的示例性算法。1.在高速緩存中迭代并刪除已經(jīng)到期的所有條目(例如,NRT < CurrentTime (下一運(yùn)行時(shí)<當(dāng)前時(shí)間)的那些條目)。2.如果starttime == endTime(開始時(shí)間==結(jié)束時(shí)間),如果該值不存在高速緩存〈ServerSendTime,mapAcctldtoFreq)中,則將該值添加到該高速緩存,否則如果 ServerSendTime已經(jīng)存在于高速緩存中,則添加/遞增mapAcctldtoFreq中的頻率。3.如果在注冊(cè)表中定義了 ShrinkFactor (收縮因子),則基于收縮因子來縮減 (starttime-endTime)間隔。將Marttime推送為newMartTime (新的開始時(shí)間)并且間隔變?yōu)?newStartTime-endTime)。如果未定義,貝Ij newStartTime = starttime。這么做是為了使得hinttime (提示時(shí)間)總是接近結(jié)束時(shí)間。4.在組集合中迭代。5.在每一組中的所有時(shí)間表中迭代。6.只考慮滿足以下條件的時(shí)間表。a)Recurrence ! = B00TUP(循環(huán)!=引導(dǎo))
b)Network Connectivity = TRUE(網(wǎng)絡(luò)連接=真)(不帶有網(wǎng)絡(luò)連接的時(shí)間表不被認(rèn)為是SendServerTime,因?yàn)樗鼈円苍S能或也許不能幫助縮減無線電自旋)c)如果 IsCellularfreferred = 1 (蜂窩被優(yōu)選=1),則只考慮帶有 CELLULAR = ON(蜂窩=開啟)的時(shí)間表。如果IsCellularfreferred = 0(蜂窩被優(yōu)選=0),則不考慮 CELLULAR (蜂窩)條件。d) Active = TRUE (活動(dòng)=真)。所考慮的時(shí)間表包括當(dāng)前活動(dòng)的并且在給定 newStartTime-endtime且滿足MaxRuncounts (最大運(yùn)行計(jì)數(shù))條件時(shí)將來將保持活動(dòng)的時(shí)間表。7.如接下來所述地從在步驟6中創(chuàng)建的列表中創(chuàng)建krverkndTime。對(duì)于列表(例如,在步驟6中創(chuàng)建的)中選擇的每一個(gè)時(shí)間表,計(jì)算第N個(gè)運(yùn)行時(shí)。 使用公式來計(jì)算第N個(gè)運(yùn)行時(shí)。對(duì)于循環(huán)平均NRT(N) = NRT(N-I) +CurrentIntervalDuration(當(dāng)前間隔持續(xù)時(shí)間)對(duì)于循環(huán)間隔NRT(N) = NRT(N-I) +CurrentIntervalDuration(當(dāng)前間隔持續(xù)時(shí)間)其中NRT(O)=組活動(dòng)時(shí)間表的下一運(yùn)行時(shí)。只考慮屬于以下兩種類別的時(shí)間表。a)無條件且是組中僅有時(shí)間表的時(shí)間表b)無條件時(shí)間表且組中的所有其他時(shí)間表也都無條件。如果組中存在至少一個(gè)帶有某些條件的時(shí)間表,則不將該組考慮為 ServerSendTime。8.這得到 <NRT> 列表和〈ServerSendTimes,mapAcctldtoFreq)的高速緩存。接著,選擇間隔〈neWtartTime,endTime〉中的“最佳”提示時(shí)間?;谧?cè)表設(shè)置 IsPreferredCache (高速緩存被優(yōu)選),至少兩種排列是可能的a)如果Isl^referredCache = 1 (高級(jí)緩存被優(yōu)選=1),則首先在高速緩存〈ServerSendTimes,mapAcctldtoFreq)中查找ServerSendTime0如果只找到一個(gè)krverkndTime,則轉(zhuǎn)到步驟10。如果找到多個(gè)krverkndTime值,則查找?guī)в凶畲箢l率的ServerSendTime 并轉(zhuǎn)到步驟 10。如果找到多個(gè)ServerSendTime值且兩個(gè)或更多ServerSendTime帶有相同的最大值,則選擇基于^eEndtime (使用結(jié)束時(shí)間)注冊(cè)表值的那個(gè)值。如果 UseEndTime = 1則選擇接近結(jié)束間隔的值如果 UseEndTime = 1則選擇接近開始間隔的值否則,如果在高速緩存中未找到,則查看列表<NRT>b)如果IsI^referredCache = 0 (高速緩存被優(yōu)選=0),則首先在列0142]表 <NRT> 中查找 ServerSendTime。如果找至Ij ServerSendTime,
0143]則轉(zhuǎn)到步驟10。
0144]如果找到多個(gè)NRT,則選擇基于^eEndTime注冊(cè)表值的那個(gè)
0145]值
0146]如果 UseEndTime = 1
0147]則選擇接近結(jié)束間隔的值
0148]如果 UseEndTime = 1
0149]則選擇接近開始間隔的值
0150]否則,如果在列表<NRT>中未找到,則查看高速緩存
0151]<ServerSendTime, mapAcctIdToFreq>
0152]9.如果從步驟8未找到ServerSendTime,則
0153]如果 ShrinkFactor = 0
0154]計(jì)算增量區(qū)域并在增量區(qū)域中從高速緩存
0155]<ServerSendTime, mapAcctIdtoFreq> 查找
0156]ServerSendTime。增量區(qū)域可以被認(rèn)為是
0157]Starttime-±曾量至Ij Starttime
0158]如果在增量區(qū)域中也沒有找到ServerSendTime,則基于
0159]UsedEndTime 注冊(cè)表值來賦值 ServerSendTime
0160]如果 UseEndTime = 1
0161]則 ServerSendTime = Endtime
0162]如果 UsedEndTime = 0
0163]則 ServerSendTime = StartTime
0164]如果 ShrinkFactor = 1
0165]因?yàn)閟tarttime已經(jīng)被推送為新的值,所以在這種情況下
0166]無法檢查增量區(qū)域。
0167]將 ServerSendTime 賦值為 EndTime。
0168]ServerSendTime = Endtime
0169]10.如果從步驟 8 找到了 ServerSendTime,則
0170]a.用NetworkLatencyAdjustment (網(wǎng)絡(luò)等待時(shí)間調(diào)整)來調(diào)整
0171]ServerSendTime
0172]ServerSendTime = ServerSendTime-NetworkLatencyAdjustment
0173]檢查是否新的 ServerSendTime > StartTime。(未應(yīng)用 ShrinkFactor
0174]的 StartTime)
0175]如果否,則賦值 ServersendTime = StartTime。(未應(yīng)用 ShrinkFactor
0176]的 StartTime)
0177]11.現(xiàn)在計(jì)算 ServerSendTime,在高速緩存〈ServerSendTimes,
mapAcctIdtoFreq> 中查找該 ServerSendTime 值。a.如果在高速緩存中未找到,則添加該值以及所有者帳戶id的值并且頻率=1b.如果在高速緩存中找到,則查找?guī)鬷d。如果帳戶id也存在,則遞增頻率。如果帳戶Id不存在,則添加該帳戶id并且頻率=1。12.如果用某一時(shí)間值來調(diào)用 TasMchedulerCancelBestNetworkTime,則將在高速緩存〈ServerSendTimes,mapAcctldtoFreq)中搜索該值。如果在高速緩存中找到該值, 則在相應(yīng)的mapAcctldtoFreq中搜索所有者帳戶id。如果在mapAcctldtoFreq中找到某一值,則遞減頻率。當(dāng)頻率=0時(shí),將該條目從mapAcctldtoFreq中移除。同樣,如果mapAcctldtoFreq為空,則將krverkndTime值從高速緩存 〈ServerSendTimes, mapAcctldtoFreq〉中移除。注意1) NetworkLatencyAdjustment是使用網(wǎng)絡(luò)等待時(shí)間和處理延時(shí)來確定的值。 這是考慮網(wǎng)絡(luò)等待時(shí)間的可配置注冊(cè)表?xiàng)l目。每次返回krverkndTime時(shí),應(yīng)該用 NetworkLatencyAdjustment 來設(shè)置偏移量。2)如果設(shè)備的絕對(duì)時(shí)間改變,則需要基于該時(shí)間改變來調(diào)整高速緩存 <ServerSendTime, frequency〉中的時(shí)間值。這可以通過用時(shí)間改變事件的通知注冊(cè)來完成。3)可能存在用將來太過遙遠(yuǎn)的開始/結(jié)束時(shí)間(例如,間隔是10年以后)調(diào)用 API的場景。在這種情況下,在API中執(zhí)行邊界檢查(例如,間隔是在從當(dāng)前時(shí)間起的M小時(shí)之內(nèi))而非計(jì)算NRT<N>。4)包括 MarttimePreferred/EndtimePreferred(開始時(shí)間優(yōu)選 / 結(jié)束時(shí)間優(yōu)選)和Frequencyl^eferred (頻率優(yōu)選)的注冊(cè)表值是可配置注冊(cè)表?xiàng)l目?;谶@些注冊(cè)表值,可以動(dòng)態(tài)地改變選擇算法。
權(quán)利要求
1.一種用于建議經(jīng)由網(wǎng)絡(luò)(106)從服務(wù)器將數(shù)據(jù)發(fā)送給移動(dòng)計(jì)算設(shè)備(60 的時(shí)間的系統(tǒng),所述系統(tǒng)包括用于存儲(chǔ)多個(gè)激活時(shí)間(210)的存儲(chǔ)器區(qū)域006),所述激活時(shí)間(210)與多個(gè)時(shí)間表(208)相關(guān)聯(lián),其中所述多個(gè)時(shí)間表O08)的激活消耗所述移動(dòng)計(jì)算設(shè)備(60 上的無線電資源,所述存儲(chǔ)器區(qū)域(206)還存儲(chǔ)表示所述移動(dòng)計(jì)算設(shè)備上的處理延時(shí)(21 和與所述網(wǎng)絡(luò)(106)相關(guān)聯(lián)的等待時(shí)間014)的偏移量;以及處理器004),所述處理器被編程為訪問所述服務(wù)器所請(qǐng)求的用于將數(shù)據(jù)發(fā)送給所述移動(dòng)計(jì)算設(shè)備(602)的時(shí)間間隔; 基于所請(qǐng)求的時(shí)間間隔來搜索所存儲(chǔ)的多個(gè)激活時(shí)間(210)來標(biāo)識(shí)所述多個(gè)激活時(shí)間O10)的子集;基于所標(biāo)識(shí)的所述多個(gè)激活時(shí)間O10)的子集來確定傳遞時(shí)間; 基于存儲(chǔ)在所述存儲(chǔ)器區(qū)域O06)中的偏移量來調(diào)整所確定的傳遞時(shí)間;以及發(fā)布經(jīng)調(diào)整的傳遞時(shí)間,其中所述服務(wù)器基于所發(fā)布的傳遞時(shí)間來將數(shù)據(jù)發(fā)送給所述移動(dòng)計(jì)算設(shè)備(602)。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,所確定的傳遞時(shí)間包括離當(dāng)前時(shí)間的偏移量。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述處理器還被編程為從在所述移動(dòng)計(jì)算設(shè)備上執(zhí)行的、與服務(wù)器相關(guān)聯(lián)的應(yīng)用程序接收所述時(shí)間間隔。
4.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述服務(wù)器在所發(fā)布的激活時(shí)間將數(shù)據(jù)發(fā)送給所述移動(dòng)計(jì)算設(shè)備。
5.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述處理器還被編程為通過標(biāo)識(shí)具有最大執(zhí)行可能性的時(shí)間表來選擇所述子集中的一個(gè)。
6.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述移動(dòng)計(jì)算設(shè)備包括多個(gè)無線電,其中所述處理器被編程為從所述服務(wù)器接收對(duì)所述時(shí)間間隔的請(qǐng)求,所述請(qǐng)求標(biāo)識(shí)所述無線電中的一個(gè),并且所述處理器被編程為基于所請(qǐng)求的時(shí)間間隔和所標(biāo)識(shí)的無線電來搜索所存儲(chǔ)的多個(gè)激活時(shí)間。
7.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括用于基于所請(qǐng)求的時(shí)間間隔內(nèi)的所述無線電資源的已知電源開啟時(shí)間來確定所述傳遞時(shí)間的裝置;以及用于基于所述處理延時(shí)和等待時(shí)間來調(diào)整所述傳遞時(shí)間的裝置。
8.一種方法,包括第一計(jì)算設(shè)備(10 從第二計(jì)算設(shè)備(104)接收所請(qǐng)求的時(shí)間值; 標(biāo)識(shí)與多個(gè)時(shí)間表(208)相關(guān)聯(lián)的多個(gè)激活時(shí)間O10),其中所述多個(gè)時(shí)間表(208)的激活消耗所述第一計(jì)算設(shè)備(10 上的資源, 標(biāo)識(shí)一個(gè)或多個(gè)先前確定的傳遞時(shí)間(216);將所請(qǐng)求的時(shí)間值與所定義的多個(gè)激活時(shí)間O10)以及所述先前確定的傳遞時(shí)間 (216)進(jìn)行比較;基于所述比較來確定傳遞時(shí)間;以及將所確定的傳遞時(shí)間提供給所述第二計(jì)算設(shè)備(104),其中所述第二計(jì)算設(shè)備(104)在所提供的傳遞時(shí)間將數(shù)據(jù)發(fā)送給所述第一計(jì)算設(shè)備(102)。
9.如權(quán)利要求8所述的方法,其特征在于,接收所請(qǐng)求的時(shí)間值包括接收最小時(shí)間值和最大時(shí)間值。
10.如權(quán)利要求8所述的方法,其特征在于,接收所請(qǐng)求的時(shí)間值包括從與所述第二計(jì)算設(shè)備相關(guān)聯(lián)的應(yīng)用程序接收所請(qǐng)求的時(shí)間值,所述第一計(jì)算設(shè)備主存所述應(yīng)用程序的執(zhí)行,并且還包括將所確定的傳遞時(shí)間提供給所述應(yīng)用程序以便傳送至第二計(jì)算設(shè)備。
11.如權(quán)利要求8所述的方法,其特征在于,所述第二計(jì)算設(shè)備是多個(gè)計(jì)算設(shè)備中的一個(gè),其中所述多個(gè)計(jì)算設(shè)備中的每一個(gè)具有與其相關(guān)聯(lián)的優(yōu)先級(jí),并且確定所述傳遞時(shí)間包括基于與所述第二計(jì)算設(shè)備相關(guān)聯(lián)的優(yōu)先級(jí)來確定所述傳遞時(shí)間。
12.如權(quán)利要求8所述的方法,其特征在于,標(biāo)識(shí)所述多個(gè)激活時(shí)間包括標(biāo)識(shí)與無條件時(shí)間表相關(guān)聯(lián)的多個(gè)激活時(shí)間。
13.如權(quán)利要求8所述的方法,其特征在于,所述時(shí)間值包括時(shí)間間隔,并且確定所述傳遞時(shí)間包括確定所述時(shí)間間隔內(nèi)的、且和所述先前確定的傳遞時(shí)間中的一個(gè)或所述多個(gè)激活時(shí)間中的一個(gè)相對(duì)應(yīng)的傳遞時(shí)間。
14.如權(quán)利要求8所述的方法,其特征在于,所述時(shí)間值包括時(shí)間間隔,并且確定所述傳遞時(shí)間包括確定所述時(shí)間間隔內(nèi)的傳遞時(shí)間,其中所確定的傳遞時(shí)間稍早于所述多個(gè)激活時(shí)間中的一個(gè)。
15.如權(quán)利要求8所述的方法,其特征在于,還包括用于接收所請(qǐng)求的時(shí)間間隔的接口組件,所述所請(qǐng)求的時(shí)間間隔與從第二計(jì)算設(shè)備到所述第一計(jì)算設(shè)備的預(yù)期數(shù)據(jù)傳輸相關(guān)聯(lián);用于標(biāo)識(shí)與所述第一計(jì)算設(shè)備上的通信資源相關(guān)聯(lián)的多個(gè)預(yù)期電源開啟時(shí)間的高速緩存組件,用于基于由所述接口組件接收的時(shí)間間隔與由所述高速緩存組件標(biāo)識(shí)的多個(gè)預(yù)期電源開啟時(shí)間的比較來確定傳遞時(shí)間的提示組件;以及用于將由所述提示組件確定的傳遞時(shí)間提供給所述第二計(jì)算設(shè)備的發(fā)布組件,其中所述第二計(jì)算設(shè)備在所提供的傳遞時(shí)間將數(shù)據(jù)發(fā)送給所述第一計(jì)算設(shè)備。
全文摘要
基于與第一計(jì)算設(shè)備相關(guān)聯(lián)的資源的已知電源開啟時(shí)間來協(xié)調(diào)從多個(gè)第二計(jì)算設(shè)備到第一計(jì)算設(shè)備的數(shù)據(jù)傳遞。第二計(jì)算設(shè)備中的一個(gè)請(qǐng)求用于數(shù)據(jù)傳遞的時(shí)間間隔。第一計(jì)算設(shè)備將所請(qǐng)求的時(shí)間間隔與已知電源開啟時(shí)間進(jìn)行比較來確定傳遞時(shí)間。例如,將所請(qǐng)求的時(shí)間間隔對(duì)照使用資源的循環(huán)時(shí)間表的激活時(shí)間并且對(duì)照先前確定的傳遞時(shí)間來進(jìn)行比較。第二計(jì)算設(shè)備在所確定的傳遞時(shí)間傳遞數(shù)據(jù)以保存資源。在某些實(shí)施例中,出于處理延時(shí)和網(wǎng)絡(luò)等待時(shí)間來調(diào)整傳遞時(shí)間。
文檔編號(hào)H04W56/00GK102165818SQ200980138071
公開日2011年8月24日 申請(qǐng)日期2009年9月24日 優(yōu)先權(quán)日2008年9月25日
發(fā)明者A·P·特蘭, A·劉, K·雷斯尼克, M·S·拉森, S·A·洛爾 申請(qǐng)人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
陇川县| 太仓市| 灵丘县| 中西区| 曲阜市| 水富县| 青州市| 旬邑县| 罗田县| 江孜县| 隆子县| 河池市| 共和县| 梁平县| 滨州市| 开鲁县| 中宁县| 亳州市| 建瓯市| 岢岚县| 宁南县| 湘乡市| 阜平县| 三穗县| 敖汉旗| 哈尔滨市| 寻甸| 赤壁市| 将乐县| 安泽县| 大荔县| 乡宁县| 龙江县| 克什克腾旗| 永寿县| 寻乌县| 西畴县| 丹阳市| 始兴县| 深泽县| 锦州市|