一種無(wú)線通信終端的待機(jī)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電子技術(shù)領(lǐng)域,尤其涉及一種無(wú)線通信終端的待機(jī)方法。
【背景技術(shù)】
[0002]隨著通信技術(shù)的發(fā)展,尤其是網(wǎng)絡(luò)技術(shù)的發(fā)展,V0IP產(chǎn)品的市場(chǎng)需求越來(lái)越大。特別隨著WIFI的廣泛應(yīng)用,使得WIFI終端成為了家庭中必不可少的電器。
[0003]對(duì)于無(wú)線通信終端來(lái)說(shuō),如何省電是本領(lǐng)域技術(shù)人員研究的重點(diǎn)之一。一方面,對(duì)于大型通信終端,例如計(jì)算機(jī),省電可有效節(jié)約能源、降低電力成本;另一方面,對(duì)于小型可移動(dòng)通信終端,例如手機(jī),省電可有效延長(zhǎng)電池的使用時(shí)間,不但節(jié)約了電能,更可避免頻繁充電的麻煩,可顯著提高用戶滿意度。
[0004]雖然現(xiàn)有的無(wú)線通信終端都具備了低功耗待機(jī)功能,但是,在現(xiàn)有的待機(jī)方案下,要么無(wú)線通訊(如WIF1、藍(lán)牙等)無(wú)法正常工作,一同進(jìn)入了待機(jī)狀態(tài),要么就無(wú)法實(shí)現(xiàn)低功耗待機(jī)。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例所要解決的技術(shù)問(wèn)題在于,針對(duì)現(xiàn)有無(wú)線通信終端無(wú)法在保證無(wú)線通訊正常工作的前提下實(shí)現(xiàn)低功耗待機(jī)的缺陷,提供一種無(wú)線通信終端的低功耗待機(jī)方法,并能確保待機(jī)時(shí)無(wú)線通訊正常工作。
[0006]為了解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了一種無(wú)線通信終端的待機(jī)方法,包括以下步驟:
[0007]S1.當(dāng)無(wú)線通信終端進(jìn)入休眠狀態(tài)后,所述無(wú)線通信終端周期性地進(jìn)入一個(gè)部分喚醒狀態(tài),直到所述無(wú)線通信終端被完全喚醒從而結(jié)束待機(jī)狀態(tài)進(jìn)入正常工作狀態(tài);
[0008]S2.在所述部分喚醒狀態(tài)下,喚醒內(nèi)核的內(nèi)核核心模塊、關(guān)鍵驅(qū)動(dòng)和關(guān)鍵進(jìn)程并處理網(wǎng)絡(luò)業(yè)務(wù);
[0009]S3.所述網(wǎng)絡(luò)業(yè)務(wù)處理完后,若無(wú)喚醒事件則重回所述休眠狀態(tài)并重復(fù)所述步驟S1和S2,若有喚醒事件則結(jié)束所述待機(jī)狀態(tài)進(jìn)入所述正常工作狀態(tài)。
[0010]其中,內(nèi)核維護(hù)一張關(guān)鍵驅(qū)動(dòng)列表和一張關(guān)鍵進(jìn)程列表,系統(tǒng)的任意應(yīng)用進(jìn)程通過(guò)指定接口可在所述關(guān)鍵驅(qū)動(dòng)列表和所述關(guān)鍵進(jìn)程列表中分別添加所述關(guān)鍵驅(qū)動(dòng)和所述關(guān)鍵進(jìn)程。
[0011]優(yōu)選地,在所述步驟S1中,所述無(wú)線通信終端從進(jìn)入所述休眠狀態(tài)到進(jìn)入所述部分喚醒狀態(tài)的時(shí)間間隔不超過(guò)10s。
[0012]優(yōu)選地,在所述步驟S2中,一個(gè)所述部分喚醒狀態(tài)持續(xù)的時(shí)間不超過(guò)50ms ;所述部分喚醒狀態(tài)持續(xù)的時(shí)間占所述休眠狀態(tài)持續(xù)的時(shí)間的比例不超過(guò)2%。
[0013]優(yōu)選地,在所述步驟S2中,系統(tǒng)默認(rèn)進(jìn)程的切換周期不超過(guò)1ms。
[0014]優(yōu)選地,所述步驟S2還包括:內(nèi)核自動(dòng)根據(jù)實(shí)時(shí)時(shí)鐘更新系統(tǒng)計(jì)數(shù)器值以補(bǔ)償CPU休眠時(shí)未計(jì)算的系統(tǒng)計(jì)數(shù)器值。
[0015]優(yōu)選地,所述步驟S2還包括:在部分喚醒狀態(tài)下,任意被允許執(zhí)行的進(jìn)程通過(guò)休眠鎖或消息機(jī)制將系統(tǒng)完全喚醒從而進(jìn)入正常工作狀態(tài)。
[0016]優(yōu)選地,所述步驟S2還包括:喚醒所述關(guān)鍵進(jìn)程后,內(nèi)核的功耗管理模塊休眠,預(yù)定時(shí)間后結(jié)束休眠并判斷所述網(wǎng)絡(luò)業(yè)務(wù)是否處理完,若是,則轉(zhuǎn)步驟S3 ;否則再休眠所述預(yù)定時(shí)間。
[0017]優(yōu)選地,所述步驟S2還包括:在所述部分喚醒狀態(tài)下,系統(tǒng)定時(shí)主動(dòng)向網(wǎng)絡(luò)廣播自身的IP地址和物理地址映射。
[0018]優(yōu)選地,在所述待機(jī)狀態(tài)下,關(guān)鍵外設(shè)均處于省電模式,所述關(guān)鍵外設(shè)包括WIF1、藍(lán)牙和按鍵;所述按鍵按下時(shí)觸發(fā)硬件中斷以喚醒CPU。
[0019]實(shí)施本發(fā)明實(shí)施例,具有如下有益效果:本發(fā)明通過(guò)使處于休眠狀態(tài)的無(wú)線通信終端周期性地進(jìn)入一個(gè)功耗極低的部分喚醒狀態(tài)以處理網(wǎng)絡(luò)業(yè)務(wù),如會(huì)話初始協(xié)議(SIP)定期注冊(cè)請(qǐng)求,從而既能實(shí)現(xiàn)低功耗待機(jī)又能保證無(wú)線通信終端的網(wǎng)絡(luò)業(yè)務(wù)功能正常運(yùn)行。同時(shí),因?yàn)椴糠謫拘褷顟B(tài)只喚醒內(nèi)核核心模塊和關(guān)鍵驅(qū)動(dòng)及進(jìn)程,因此可實(shí)現(xiàn)休眠和部分喚醒之間的快速切換。
[0020]另外,每次部分喚醒時(shí),內(nèi)核核心模塊會(huì)自動(dòng)根據(jù)實(shí)時(shí)時(shí)鐘更新系統(tǒng)計(jì)數(shù)器值,從而可保證系統(tǒng)時(shí)間與內(nèi)核時(shí)間同步,實(shí)現(xiàn)在待機(jī)狀態(tài)下,應(yīng)用也能夠利用休眠定時(shí)。
[0021]而且,在部分喚醒狀態(tài)下,系統(tǒng)定時(shí)主動(dòng)向網(wǎng)絡(luò)廣播自身的IP地址和物理地址映射,保證在休眠狀態(tài)下,無(wú)線通信終端不會(huì)被廣播頻繁吵醒,同時(shí)保證網(wǎng)絡(luò)暢通。
【附圖說(shuō)明】
[0022]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0023]圖1是本發(fā)明提供的第一實(shí)施例無(wú)線通信終端的待機(jī)方法流程圖;
[0024]圖2是本發(fā)明提供的第二實(shí)施例無(wú)線通信終端的功耗管理模式狀態(tài)圖;
[0025]圖3是本發(fā)明提供的第三實(shí)施例無(wú)線通信終端的部分喚醒狀態(tài)狀態(tài)圖;
[0026]圖4是本發(fā)明提供的第四實(shí)施例無(wú)線通信終端的功耗示意圖;
[0027]圖5是本發(fā)明提供的第五實(shí)施例功耗管理系統(tǒng)方框圖。
【具體實(shí)施方式】
[0028]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0029]請(qǐng)參見(jiàn)圖1,圖1是本發(fā)明提供的第一實(shí)施例無(wú)線通信終端的待機(jī)方法流程圖。如圖1所示,本實(shí)施例提供的無(wú)線通信終端的待機(jī)方法包括以下步驟:
[0030]S1.當(dāng)無(wú)線通信終端進(jìn)入休眠狀態(tài)后,無(wú)線通信終端周期性地進(jìn)入一個(gè)部分喚醒狀態(tài),直到無(wú)線通信終端被完全喚醒從而結(jié)束待機(jī)狀態(tài)進(jìn)入正常工作狀態(tài);
[0031]在現(xiàn)有技術(shù)中,無(wú)線通信終端進(jìn)入待機(jī)狀態(tài)后CPU始終處于休眠狀態(tài),直到被喚醒從而進(jìn)入正常工作狀態(tài)。但是在本發(fā)明中,無(wú)線通信終端進(jìn)入待機(jī)狀態(tài)后CPU先進(jìn)入休眠狀態(tài),休眠一段時(shí)間后再進(jìn)入一個(gè)部分喚醒狀態(tài),如果沒(méi)有外部事件完全喚醒無(wú)線通信終端,則重回休眠狀態(tài),不斷地在待機(jī)狀態(tài)中周期性重復(fù)休眠狀態(tài)和部分喚醒狀態(tài),直到被完全喚醒則結(jié)束待機(jī)狀態(tài)進(jìn)入正常工作狀態(tài);
[0032]在本發(fā)明提供的一個(gè)優(yōu)選實(shí)施例中,無(wú)線通信終端從進(jìn)入休眠狀態(tài)到進(jìn)入部分喚醒狀態(tài)的時(shí)間間隔不超過(guò)10s,例如為5s,從而能保證處于休眠狀態(tài)的無(wú)線通信終端比較頻繁地進(jìn)入部分喚醒狀態(tài),以保證網(wǎng)絡(luò)業(yè)務(wù)能正常處理,如注冊(cè)認(rèn)證和續(xù)約等;
[0033]S2.在部分喚醒狀態(tài)下,喚醒內(nèi)核的內(nèi)核核心模塊、關(guān)鍵驅(qū)動(dòng)和關(guān)鍵進(jìn)程并處理網(wǎng)絡(luò)業(yè)務(wù);
[0034]優(yōu)選地,內(nèi)核維護(hù)一張關(guān)鍵驅(qū)動(dòng)列表和一張關(guān)鍵進(jìn)程列表,系統(tǒng)的任意應(yīng)用進(jìn)程通過(guò)指定接口可在關(guān)鍵驅(qū)動(dòng)列表和關(guān)鍵進(jìn)程列表中添加關(guān)鍵驅(qū)動(dòng)和關(guān)鍵進(jìn)程,既保證必要的網(wǎng)絡(luò)業(yè)務(wù)及時(shí)處理,又降低了 CPU的負(fù)擔(dān),同時(shí)縮短了 CPU需要喚醒的時(shí)間;
[0035]在一個(gè)優(yōu)選實(shí)施例中,一個(gè)部分喚醒狀態(tài)持續(xù)的時(shí)間不超過(guò)50ms,部分喚醒狀態(tài)持續(xù)的時(shí)間占休眠狀態(tài)持續(xù)的時(shí)間的比例不超過(guò)2%,進(jìn)而保證了無(wú)線通信終端能正常處理必要網(wǎng)絡(luò)業(yè)務(wù)的同時(shí)處于一個(gè)低功耗狀態(tài);
[0036]優(yōu)選地,系統(tǒng)默認(rèn)進(jìn)程的切換周期不超過(guò)1ms,從而保證在斷喚醒狀態(tài)下,關(guān)鍵進(jìn)程都能夠被調(diào)用,提高系統(tǒng)實(shí)時(shí)性;
[0037]在一個(gè)優(yōu)選實(shí)施例中,在部分喚醒狀態(tài)下,系統(tǒng)定時(shí)主動(dòng)向網(wǎng)絡(luò)廣播自身的IP地址和物理地址映射,從而保證在休眠狀態(tài)下無(wú)線通信終端不會(huì)被廣播頻繁吵醒,同時(shí)保證網(wǎng)絡(luò)暢通;
[0038]S3.網(wǎng)絡(luò)業(yè)務(wù)處理完后,若無(wú)喚醒事件則重回休眠狀態(tài)并重復(fù)步驟S1和S2,若有喚醒事件則結(jié)束待機(jī)狀態(tài)進(jìn)入正常工作狀態(tài)。
[0039]優(yōu)選地,當(dāng)無(wú)線通信終端處于待機(jī)狀態(tài)時(shí),關(guān)鍵外設(shè)均處于省電模式,關(guān)鍵外設(shè)包括WIF1、藍(lán)牙和鍵盤(pán)。同時(shí),系統(tǒng)能夠在有按鍵按下的情況下觸發(fā)硬件終端以喚醒CPU處理相關(guān)業(yè)務(wù),保證待機(jī)狀態(tài)下仍然不會(huì)影響用戶體驗(yàn)。
[0040]本實(shí)施例通過(guò)使休眠狀態(tài)下的無(wú)線通信終端周期性地進(jìn)入部分喚醒狀態(tài),同時(shí)保證了無(wú)線通信業(yè)務(wù)正常處理和低功耗待機(jī)。
[0041]請(qǐng)參見(jiàn)圖2,圖2是本發(fā)明提供的第二實(shí)施例無(wú)線通信終端的功耗管理模式狀態(tài)圖。如圖2所示,本實(shí)施例提供的無(wú)線通信終端的功耗管理模式包括6個(gè)狀態(tài):正常工作狀態(tài)A、休眠準(zhǔn)備狀態(tài)B、喚醒處理狀態(tài)C、CPU休眠狀態(tài)D和部分喚醒狀態(tài)E。
[0042]優(yōu)選地,本實(shí)施例功耗管理模式基于安卓(Android)系統(tǒng),其工作原理如下:無(wú)線通信終端系統(tǒng)啟動(dòng)時(shí)首先處于正常工作狀態(tài)A,當(dāng)基本任務(wù)處理完成后,系統(tǒng)準(zhǔn)備進(jìn)入待機(jī)狀態(tài),首先進(jìn)入休眠準(zhǔn)備狀態(tài)B,為系統(tǒng)進(jìn)入CPU休眠狀態(tài)D做準(zhǔn)備,準(zhǔn)備工作包括凍結(jié)所有進(jìn)程和關(guān)閉所有驅(qū)動(dòng)等。休眠準(zhǔn)備狀態(tài)B結(jié)束后進(jìn)入CPU休眠狀態(tài)D。應(yīng)理解,因?yàn)楸景l(fā)明提供的待機(jī)方案需要在休眠后周期性地進(jìn)入一個(gè)部分喚醒狀態(tài),因此在進(jìn)入CPU休眠狀態(tài)前,就設(shè)置好了實(shí)時(shí)時(shí)鐘(RTC)作為鬧鐘。在CPU休眠狀態(tài)D下,CPU能夠被RTC或外部中斷所喚醒,喚醒后進(jìn)入部分喚醒狀態(tài)E,部分喚醒狀態(tài)E時(shí)間較短,優(yōu)選不超過(guò)50ms。在部分喚醒狀態(tài)E下,關(guān)鍵應(yīng)用能夠正常工作,如SIP客戶端,能夠與服務(wù)器進(jìn)行正常數(shù)據(jù)交互,同時(shí)內(nèi)核的功耗管理模塊會(huì)定時(shí)檢查系統(tǒng)狀態(tài)(例如10ms —次),并在以下4種情況下系統(tǒng)會(huì)結(jié)束待機(jī)狀態(tài)進(jìn)入喚醒處理狀態(tài)C:l、電源中斷發(fā)生,2、按鍵輸入,3、專用的喚醒標(biāo)志被置1 (關(guān)鍵應(yīng)用發(fā)現(xiàn)有需要和用戶交互的動(dòng)作時(shí)會(huì)設(shè)置該標(biāo)志),4、系統(tǒng)休眠鎖超時(shí)(用于處理系統(tǒng)中未知模塊,當(dāng)系統(tǒng)中有任務(wù)依賴其他未喚醒進(jìn)程或者未打開(kāi)的驅(qū)動(dòng)時(shí)會(huì)發(fā)生這種情況);否則返回