成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

如何將RTOS系統(tǒng)啟動時間做到“毫秒級”?AliOS Things是這樣做的

Zachary / 2926人閱讀

摘要:自年以來,在智能家居市場的驅(qū)動下,智能貓眼市場膨脹速度驚人。移動偵測即人體感應當有人經(jīng)過門前時會自動啟動拍照或者錄像功能記錄來訪者。而實時操作系統(tǒng)內(nèi)核小巧,對任何中斷指令都可以做到馬上響應,系統(tǒng)啟動時間則只有幾秒鐘。

1、背景

????隨著人工智能的迅速發(fā)展,智能家居的時代已經(jīng)到來,除了智能安全防盜門、智能門鎖,智能音箱等市場快速增長外,智能貓眼行業(yè)異軍突起,成為智能家居板塊的重要品類。房門作為每個房子的入口,其智能化改進空間遠不止門鎖。智能入戶安全是一套解決方案,不僅門鎖需要智能化,貓眼這個需求本身也是和入戶安全息息相關,或許會是智能家居最主要的入口之一。

????據(jù)新思界產(chǎn)業(yè)研究中心發(fā)布的《2019-2025年中國智能貓眼行業(yè)市場深度評估及市場前景預測報告》[1],2017年全球智能家居設備在市場上的銷售量為6.63億臺,預計到2023年,智能家居設備銷售量將達到19.4億臺,超過智能手機銷售量。自2014年以來,在智能家居市場的驅(qū)動下,智能貓眼市場膨脹速度驚人。據(jù)數(shù)據(jù)顯示,2016年中國智能貓眼出貨量超過60萬臺,同比增速超過40%,到2017年智能貓眼出貨量超過110萬臺。

????單從這個數(shù)據(jù)來看倒也不用大驚小怪,但是如果我們換個角度從時間的維度來分析就會發(fā)現(xiàn)從2015年線上銷售20萬臺到2017年的110萬臺,短短兩年的時間整個銷售數(shù)據(jù)卻增加了5倍還多。而目前國內(nèi)真正具有研發(fā)生產(chǎn)能力的電子貓眼廠家卻屈指可數(shù),整個市場已經(jīng)出現(xiàn)了供不應求的局面,可見電子貓眼行業(yè)目前正處于紅利期與爆發(fā)期。

????目前的智能貓眼一般具有紅外夜視、移動偵測、Wi-Fi控制等。紅外夜視功能是在子機內(nèi)置了紅外夜視燈,這樣在晚上也能清晰的看清來訪者。移動偵測即PIR人體感應當有人經(jīng)過門前時會自動啟動拍照或者錄像功能記錄來訪者。Wi-Fi功能則可以實現(xiàn)手機與貓眼的遠程連接,配合移動偵測功能當有人在門外移動時會自動推送信息到主人的手機上,但是目前具有Wi-Fi功能電子貓眼的功耗普遍較高,待機時間偏短,一個月可能就需要更換一次電池。

????智能貓眼的待機功耗主要是紅外攝像頭及其相應的電路,而移動偵測功能檢測到有人經(jīng)過門前時會自動啟動貓眼內(nèi)的攝像頭進行拍攝或者錄像功能記錄來訪者圖像或視頻,并且并且還要顯示在屏幕上;因此,啟動速度將會是影響功耗的重要原因。另外,為了實現(xiàn)防盜或安防的目的,當人體經(jīng)過時需要即時完成啟動并抓拍圖像;人體經(jīng)過攝像頭的時間通??赡苄∮?strong>2秒鐘,因此對啟動速度提出了更高的要求。傳統(tǒng)的Linux操作系統(tǒng)雖然全球通用,但也有其難以彌補的缺陷。Linux操作系統(tǒng)有龐大的內(nèi)核,對任何中斷指令的響應都需要一個復雜的處理過程,對一些需要快速響應的場合顯得有些力不從心,系統(tǒng)重啟更需要好幾十秒。而RTOS實時操作系統(tǒng)內(nèi)核小巧,對任何中斷指令都可以做到馬上響應,系統(tǒng)啟動時間則只有幾秒鐘。因此如智能貓眼類的IPC(IP Camera)領域大量采用RTOS實時操作系統(tǒng)來保證系統(tǒng)的快速響應與高可靠性。

采用了RTOS實時操作系統(tǒng)的IPC設備可以在無需工作時進入深度休眠,一旦需要再快速啟動,這種真待機功能為IPC設備大大降低功耗,提高IPC設備的待機時間。

2、競品分析

????傳統(tǒng)的RTOS操作系統(tǒng)相較于Linux系統(tǒng)具備快速啟動的優(yōu)勢,啟動時間可以達到1秒以內(nèi),如RTT Smart啟動時間可以做到500 ms [2]。但這對于大多電池供電的IPC設備而言,啟動時間仍然過長;因為IPC設備啟動過程的電流高達幾百毫安,因此啟動時間的長短將對IPC設備的電池更換或充電頻率仍然帶來相當嚴重的影響。

圖2-1?Linux

????傳統(tǒng)RTOS的啟動流程如圖2-2所示,啟動過程分成若干階段,每個階段完成不同的初始化操作。設備上電或重啟或喚醒首先進入RESET入口函數(shù),完成必要的CPU工作模式和系統(tǒng)棧初始化操作,接著進入RTOS內(nèi)核入口再完成一系列硬件初始化操作;這些操作全部串行進行,如圖2-2中完成pre_hw_1_init的初始化操作之后,再進行pre_hw_2_init的初始化操作;另外,硬件的初始化操作大部分都是需要一定時間來等待硬件電路的真正初始化完成,如pre_hw_1_init完成對應硬件寄存器寫入操作之后,還需要等待對應的硬件真正完成初始化之后才可以進行后續(xù)硬件pre_hw_2_init的初始化操作,即使pre_hw_1_initpre_hw_2_init沒有依賴關系。傳統(tǒng)的RTOS啟動模型導致啟動時間的進一步優(yōu)化相當困難,因為硬件必須要確保真正完成初始化之后才可以進行相關操作,否則會帶來不確定的錯誤。

圖2-2?RTOS

????如果需要進一步降低RTOS的啟動速度,進而降低IPC設備的待機時間,提高IPC設備的用戶體驗,傳統(tǒng)RTOS的初始化模型將舉步維艱。微內(nèi)核AliOS Things引入了一種新的系統(tǒng)啟動模型,啟動時間相較于傳統(tǒng)RTOS的啟動時間降低一個數(shù)量級。

3、AliOS Things啟動加速引擎

????傳統(tǒng)RTOS的串行化啟動模型,導致不同的初始化過程只能一個接一個的初始化,系統(tǒng)啟動的總時間等于所有操作和等待硬件完成相關設置的時間,如圖2-2中的,而其中大部分時間都是等待硬件完成相關設置的時間。而階段內(nèi)部的大部分初始化操作都是不相關的,完成可以并行化操作,也即pre_hw_1_init完成相關寄存器的讀寫操作后,在等待與pre_hw_1_init相關硬件完成具體設置的過程中進行pre_hw_2_init的初始化操作,這樣與pre_hw_1_initpre_hw_2_init相關具體硬件設置等待時間就可以重合,階段的總用時就可以由降低為,模型如圖3-1所示。

?圖3-1 AliOS Things?Bengine模型圖

????Bengine提高初始化注冊接口供系統(tǒng)按照不同的優(yōu)先級注冊初始化函數(shù),相同優(yōu)先級的初始化函數(shù)之間沒有依賴關系,相同優(yōu)先級的初始化函數(shù)由Bengine根據(jù)具體的執(zhí)行時間負責分組,保證不同不同組之間的初始化函數(shù)的總用時均勻分布,同時確保所有高優(yōu)先級的初始化函數(shù)執(zhí)行完畢之后才會執(zhí)行次優(yōu)先級初始化例程。

圖3-2 AliOS Things?Bengine架構圖

  • init mgmt: 提供初始化例程的注冊功能,注冊時可以根據(jù)時間需要指定初始化例程的優(yōu)先級;
  • init grouping: 對相同優(yōu)先級或相同階段的初始化例程按照執(zhí)行時間進行分組,保證每個組內(nèi)的初始化例程總用時基本相同;
  • grp scheduler: 對不同的分組啟動多任務調(diào)度,同時保證所有的分組都執(zhí)行完畢之后,再去處理次優(yōu)先級的初始化階段;
  • grp schuduler: 不同的分組調(diào)度到不同的任務執(zhí)行;
  • grp sync: 不同分組的任務執(zhí)行完組內(nèi)的初始化例程之后,完成與調(diào)度器之間的同步,便于調(diào)度器處理次優(yōu)先級的初始化例程;

  • lockfree ipc: 采用高速并行化的IPC通信機制,保證初始化任務之間的高速并行,相互之間無干擾;

  • bengine stat: 性能統(tǒng)計和初始化例程的執(zhí)行時間統(tǒng)計;

????相較于傳統(tǒng)的RTOS啟動流程,Bengine的啟動模型需要相關驅(qū)動進行簡單的修改,但不牽涉到具體算法和驅(qū)動框架的修改,只是在驅(qū)動需要等待硬件完成相關設置時,主動讓出CPU的執(zhí)行權限(如圖3-3中的紅色標注的 sleep或者?sw_wait_for_sem操作),以便于讓其他初始化獲得執(zhí)行的機會,具體改造示例如圖3-3所示。

圖3-3 Bengine代碼示例

4、測試數(shù)據(jù)

????采用Bengine加速引擎的微內(nèi)核AliOS Things與某廠商合作的IPC設備系統(tǒng)啟動時間如圖4-1所示,整個內(nèi)核+驅(qū)動的啟動總用時為57ms左右,相較于傳統(tǒng)RTOS啟動耗時500 ms基本降低了一個數(shù)量級;

圖4-1 AliOS ThingsBengine

開發(fā)者支持

如需更多技術支持,可加入釘釘開發(fā)者群,或者關注微信公眾號。

更多技術與解決方案介紹,請訪問HaaS官方網(wǎng)站https://haas.iot.aliyun.com

?

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/121967.html

相關文章

  • 國慶假期學門新技術,拒絕只做crud boy, 就從操作系統(tǒng)開始(三)

    摘要:因為操作系統(tǒng)一直被看做是計算機軟件的基石。本系列是我學習操作系統(tǒng)的筆記,操作系統(tǒng)是以為例子。其他的操作系統(tǒng)也是差不多。將設備驅(qū)動一共分為個級別,每個級別的驅(qū)動初始化聲明宏定義及其在系統(tǒng)啟動過程中的啟動順序如下表所示。 老板說我技術需要有長進,不能只做一個crud boy。 于是我選來選去,...

    Hegel_Gu 評論0 收藏0
  • 震驚!這個操作系統(tǒng)的應用加載只需要“毫秒”耗時

    摘要:本文主要介紹應用程序加載如何做到毫秒級耗時。圖不同視角看左邊是從匯編器和鏈接器的視角來看這個文件,開頭的描述了體系結構和操作系統(tǒng)等基本信息,并指出和在文件中的什么位置,在匯編和鏈接過程中沒有用到,所以是可有可的,中保存了所有的描述信息。 1、背景 AliOS Thing 是AliOS家族旗...

    incredible 評論0 收藏0
  • 發(fā)現(xiàn)一個非常好用的RTC(實時音視頻通信)方案,做直播和視頻通話都很牛

    摘要:除了一些線程調(diào)度和線程模型的調(diào)整,我們還需要進行業(yè)務邏輯上的優(yōu)化,比如縮減高消耗,低反饋的業(yè)務模塊,降低消耗,限制業(yè)務邏輯隊列內(nèi)存分配增長空間,避免某些業(yè)務場景中內(nèi)存持續(xù)增長導致系統(tǒng)奔潰。 1、HaaS RTC背景介紹 HaaS RTC是阿里云IoT聯(lián)合視頻云開發(fā)的IoT設備端上的實時通...

    LeviDing 評論0 收藏0
  • 常見物聯(lián)網(wǎng)操作系統(tǒng)介紹

    摘要:相比之下,物聯(lián)網(wǎng)操作系統(tǒng)領域的碎片化問題則非常嚴重,并沒有哪幾個操作系統(tǒng)占據(jù)絕對優(yōu)勢,正處于百花齊放百家爭鳴的階段。在年被公司正式收購,將自己的服務內(nèi)嵌到系統(tǒng)中,并于年推出了集成無線連接安全等功能的物聯(lián)網(wǎng)操作系統(tǒng)。 物聯(lián)網(wǎng)操作系統(tǒng)是運行在物聯(lián)網(wǎng)設備上的提供物物相連能力的操作系統(tǒng),其核心在于...

    AdolphLWQ 評論0 收藏0
  • AliOS Things v1.1.2新特性

    摘要:系統(tǒng)特性方面,集成了,協(xié)議棧,網(wǎng)絡適配架構,支持,及支持。關于進一步信息,請訪問,阿里云套件支持集成了的協(xié)議棧,并對做了高度優(yōu)化,在平臺上使用量可以低至以下。已和阿里云套件全面對接打通。組件的多差分升級特性也可以進一步降低帶寬,及使用量。 摘要: AliOS Things v1.1.2概述 時隔兩周,AliOS Things新版本v1.1.2發(fā)布。這里和大家分享一下v1.1.2的一些新...

    Donne 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<