91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

嵌入式系統(tǒng)又迎來了生命中的第二個春天

倩倩 ? 來源:lq ? 作者: CSDN ? 2019-10-08 16:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近我國自研的操作系統(tǒng)接連開源,先是MiniGui(Github地址:https://github.com/VincentWei/minigui),可能現(xiàn)在提起MiniGui大家已經(jīng)比較陌生了。

不過對于筆者-曾經(jīng)的CSDN嵌入式論壇版主而言,MiniGui是個如雷貫耳的名字,在十幾年前MiniGui和WINCE是各個各種開發(fā)板的標(biāo)配,當(dāng)時論壇上也有各種關(guān)于MiniGui移植及開發(fā)的帖子。

但是由于當(dāng)時的嵌入式系統(tǒng)多用來制作手持式PDA,車載導(dǎo)航儀等設(shè)備,所以安卓出現(xiàn)后迅速占領(lǐng)了上述市場,MiniGUI等嵌入式操作系統(tǒng)逐漸沒落。

但是我們整理互聯(lián)網(wǎng)發(fā)展的脈絡(luò)可以看到,內(nèi)容的不斷豐富與終端的不斷擴展是兩條主線,隨著網(wǎng)上數(shù)據(jù)量的持續(xù)爆炸性增長,今后新增的流量肯定主要來自于對于萬物互聯(lián)的紅利。

而與傳統(tǒng)互聯(lián)網(wǎng)內(nèi)容+用戶的模式不同,物聯(lián)網(wǎng)則是場景+用戶的模式,誰能整合場景誰能笑到最后。所以之后的嵌入式系統(tǒng)又迎來了生命中的第二個春天。

巨頭們的布局

騰訊在三天前正式發(fā)布了其物聯(lián)網(wǎng)終端的操作系統(tǒng)TinyOS(Github地址:https://github.com/Tencent/TencentOS-tiny),其系統(tǒng)架構(gòu)圖如下:

目前看其內(nèi)核部分已經(jīng)開發(fā)完成,并已經(jīng)完全開源。雖然從其從tinyos內(nèi)核的代碼來看(詳見https://blog.csdn.net/BEYONDMA/article/details/101355221),還是為物聯(lián)終端做了一定優(yōu)化與裁減的,不過從下面的場景圖來看,騰訊其實醉翁之意不在酒,以操作系統(tǒng)為契機入局物聯(lián)網(wǎng)的相關(guān)鏈條已經(jīng)規(guī)劃完整。

而且從比操作系統(tǒng)發(fā)布還早幾天就掛在淘寶上的開發(fā)板來看,更是說明騰訊對于旗下云平臺能夠整合物聯(lián)場景的巨大野心。

AliOS Thing3.0發(fā)布

云棲大會第三天,阿里不出意外的拿出了AliOS Things 3.0(Github地址https://github.com/alibaba/AliOS-Things/tree/rel_3.0.0),與TencentOS Tiny一樣這款OS也是與阿里云平臺無縫對接的,而且它的內(nèi)核還直接支持了自家的AI芯片,提前布局AI+物聯(lián)網(wǎng)。

由于AliOS Things已經(jīng)開源兩年有余,所以其開發(fā)者體驗相對較好,他們的IDE是基于VSCODE的,筆者已經(jīng)下單他們的開發(fā)板了,后續(xù)親測OS后再發(fā)體驗。

可見巨頭的邏輯就是要整合物聯(lián)網(wǎng)時代的場景,他們的OS都是免費的,而且技術(shù)支持也強,不過巨頭就是要做物聯(lián)時代的ANDROID,最終一統(tǒng)天下。

老牌嵌入式操作系統(tǒng)的選擇

MiniGui做為已經(jīng)存在了20多年的嵌入式操作系統(tǒng),其架構(gòu)圖如下:

從底至上,MiniGUI 由如下幾個模塊組成:

圖形抽象層(Graphics Abstraction Layer,GAL):

圖形抽象層將來自不同操作系統(tǒng)或設(shè)備的圖形接口進(jìn)行抽象,為 MiniGUI 上層提供統(tǒng)一的圖形接口。在圖形抽象層內(nèi),包含有針對 Linux FB 設(shè)備、eCos LCD 設(shè)備等的軟件組成部分。

這些軟件組成部分通過調(diào)用底層設(shè)備的接口來實現(xiàn)具體的圖形抽象層操作,如打開設(shè)備、設(shè)置分辨率及顯示模式、關(guān)閉設(shè)備等。

我們將這些用于適配圖形抽象層接口的軟件組成部分稱為“引擎(engine)”,其概念和操作系統(tǒng)中的設(shè)備驅(qū)動程序類似。

輸入抽象層(Input Abstraction Layer,IAL):

和 GAL 類似,輸入抽象層將 MiniGUI 涉及的所有輸入設(shè)備,如鍵盤(keyboard)、小鍵盤(keypad)、鼠標(biāo)(mouse)、觸摸屏(touch screen)等抽象了出來,為上層提供一致的接口。要支持不同的鍵盤、觸摸屏或者鼠標(biāo)接口,則通過為 IAL 編寫不同的輸入引擎實現(xiàn)。

MiniGUI 通過 IAL 及其輸入引擎,提供對 Linux 控制臺(鍵盤及鼠標(biāo))、觸摸屏、遙控器、小鍵盤等輸入設(shè)備的支持。

圖形設(shè)備接口(Graphics Device Interfaces,GDI):

該模塊基于圖形抽象層為上層應(yīng)用程序提供圖形相關(guān)的接口,如繪制曲線、輸出文本、填充矩形等等。圖形設(shè)備接口中含包含其他比較獨立的子模塊,如字體字符集(font and charset)支持、圖像(image)支持等。

消息處理模塊(Messaging Module):

該模塊在輸入抽象層基礎(chǔ)上,實現(xiàn)了 MiniGUI 的消息處理機制,為上層提供了完備的消息管理接口。

眾所周知,幾乎所有的GUI 系統(tǒng)本質(zhì)上都是事件驅(qū)動的,系統(tǒng)自身的運行,以及GUI 應(yīng)用程序的運行,都依賴于消息處理模塊。

多窗口處理模塊(Windowing Module)和控件(Control 或 Widget):

基于圖形設(shè)備接口和消息處理模塊,MiniGUI 實現(xiàn)了多窗口處理模塊。該模塊為上層應(yīng)用程序提供了創(chuàng)建主窗口和控件的基本接口,并負(fù)責(zé)維護控件類。

控件類是用來實現(xiàn)控件代碼重用的重要概念,利用控件類(control class),我們可以創(chuàng)建屬于某個控件類的多個控件實例(instance),從而讓這些控件實例使用同一個控件類的代碼,這樣,我們就實現(xiàn)了類似 C++ 那樣的類和實例概念,從而可以最大程度上重復(fù)利用已有代碼,并提高軟件的可維護性。

MiniGUI 的控件模塊實現(xiàn)了常見的 GUI 控件,如靜態(tài)框、按鈕、編輯框、列表框、下拉框等等。

外觀支持(Look and Feel):

這個模塊是 MiniGUI V3.0 提供給上層應(yīng)用程序的接口,可用來定制 MiniGUI 窗口、控件的繪制。

在 MiniGUI V3.0 之前的版本中,對主窗口和控件的定制能力,還沒有被抽離出來形成獨立的模塊,但我們?nèi)匀豢梢酝ㄟ^配置選項讓 MiniGUI 的主窗口、控件具有三種顯示風(fēng)格,分別是:類似 PC 的三維風(fēng)格(PC3D)、平板風(fēng)格(FLAT)、流行風(fēng)格(FASHION)。

在 MiniGUI 3.0 中,主窗口和控件的外觀可完全由應(yīng)用程序自行定制,在創(chuàng)建主窗口或者控件時,指定外觀渲染器(renderer)的名稱,就可以讓主窗口或者控件具有各自不同的外觀。

可以看到MiniGUI從創(chuàng)立伊始就放棄了對于RTOS內(nèi)核的編寫,直接基于linux等內(nèi)核來做封裝。簡單聊兩句基于MiniGUI的圖形應(yīng)用開發(fā)。

typedefstruct _MSG { HWND hwnd;int message; WPARAM wParam; LPARAM lParam;#ifdef _LITE_VERSIONunsignedint time;#elsestructtimevaltime;#endifPOINT pt;#ifndef _LITE_VERSIONvoid* pAdd;#endif }MSG;typedef MSG* PMSG;

可以看到其對于消息的定義幾乎與WINDOWS一致,其建立窗體等操作也幾乎與WINDOWS一樣。所以MiniGUI的設(shè)計有很大程序是為降低嵌入式系統(tǒng)圖形界面開發(fā)難度而產(chǎn)生的。

國產(chǎn)實時操作系統(tǒng)內(nèi)核的先驅(qū)RTthread

提到咱們國產(chǎn)的loT操作系統(tǒng)RTthread也是一個無論如何也繞不過去的標(biāo)志,如果RTthread在06年初就發(fā)布了第一版,而且經(jīng)過了這十幾年的上億臺設(shè)備裝機的技術(shù)沉淀,RTthread的社區(qū)也已經(jīng)儼然發(fā)展成為國內(nèi)最強的嵌入式社區(qū)了,筆者剛剛到他們的論壇上逛了一圈,真的是強手如云,大咖云集。

具體內(nèi)核相關(guān)知識后續(xù)會再發(fā)文介紹這里也就不再贅述了。而且最新的消息顯示MiniGUI開始支持RTthread的內(nèi)核了,可見傳統(tǒng)的嵌入式操作系統(tǒng)廠商的策略是要盡量保持生態(tài)的多元化,抱團取暖。

HybridOS的開源計劃

最近MiniGUI的飛漫軟件又官宣了他們的HybridOS開源計劃,而根據(jù)目前的材料看HybridOS最大的看點是要用HTML來統(tǒng)一UI的開發(fā),這與之前使用WIN32的設(shè)計來統(tǒng)一UI開發(fā)的邏輯如出一轍。

我們知道由于物聯(lián)網(wǎng)終端真的是不一而足,與手機終端完全不同,其不同終端的碎片化需求太多太復(fù)雜,比如,有的智能燈泡要藍(lán)牙即可,而智能空調(diào)可能就要有Wi-Fi了。

而我們金融行業(yè)要做智能合約可能對于終端的算力又有一定的要求,這樣碎片化的場景,由于Android硬件設(shè)備的要求門檻較高,就不太適合了, 而直接用Linux裁減,這對于人才的要求又太高。

所以與騰訊等巨頭整合全場景的目標(biāo)不同,MiniGUI的背后其是保持生態(tài)多樣性的邏輯,他的目標(biāo)是降低開發(fā)門檻,避免初創(chuàng)公司必須選擇鴻蒙或者TinyOS這種大廠的操作系統(tǒng)。

讓場景的提供方可以通過較低成本驗證自身的想法,而避免從一開始就走上巨頭們早已畫好的圓圈。

在他們的官宣當(dāng)中對于其后續(xù)要發(fā)布的HybridOS物聯(lián)網(wǎng)操作系統(tǒng)有如目標(biāo):

1. HybridOS 的設(shè)備端系統(tǒng)基于 Linux 內(nèi)核,充分利用 Linux 內(nèi)核生態(tài),降低各種驅(qū)動程序的開發(fā)難度以及各種協(xié)議棧的支持難度,從而降低開發(fā)成本。

2. 和基于 RTOS(實時操作系統(tǒng))技術(shù)發(fā)展而來的物聯(lián)網(wǎng)操作系統(tǒng)(如RT-Thread、LiteOS)相比,HybridOS 更傾向于運行在具有更高硬件配置的智能物聯(lián)網(wǎng)設(shè)備上,而不是小型的單功能物聯(lián)網(wǎng)設(shè)備上,后者的硬件配置往往有限。

3. HybridOS 不僅僅運行在智能物聯(lián)網(wǎng)設(shè)備中,它同時還提供了針對云端以及客戶端的標(biāo)準(zhǔn)框架和編程接口,為開發(fā)者提供了從設(shè)備到云再到客戶端的完整軟件棧和協(xié)議棧。在未來,HybridOS 還計劃統(tǒng)一客戶端和設(shè)備端上的 App 開發(fā)接口。

4. HybridOS 將基于區(qū)塊鏈技術(shù)為物與物之間的通訊提供一個全新的實現(xiàn)方法。在 HybridOS定義的實現(xiàn)方法下,所有的數(shù)據(jù)都帶有不可篡改的數(shù)字簽名以及時間戳,而所有數(shù)據(jù)的傳輸和存儲都可加密。這將從根本上提高物聯(lián)網(wǎng)的安全性。

后記

我們可以看到巨頭的邏輯是要讓其它公司免費使用其OS上車,然后接入其loT云平臺成者直接收購無縫整合,敗者自生自滅,從而將自己立于不敗之地,而傳統(tǒng)的嵌入式公司邏輯則是降低OS的使用開發(fā)門檻,讓物聯(lián)網(wǎng)生態(tài)鏈上的企業(yè)能有自主選擇。也讓我們拭目以待,物聯(lián)網(wǎng)時代能否產(chǎn)生新的巨頭。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    3747

    瀏覽量

    133661
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2945

    文章

    47826

    瀏覽量

    415251
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4968

    瀏覽量

    73999
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    嵌入式系統(tǒng)安全設(shè)計原則

    隨著物聯(lián)網(wǎng)、工業(yè)控制和智能設(shè)備的普及,嵌入式系統(tǒng)的安全問題越來越突出。一小小的漏洞,就可能導(dǎo)致設(shè)備被入侵、數(shù)據(jù)泄露,甚至對人身安全產(chǎn)生威脅。因此,從設(shè)計階段開始就考慮安全,是每一
    的頭像 發(fā)表于 01-19 09:06 ?341次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>安全設(shè)計原則

    arm嵌入式主板優(yōu)缺點

    ,ARM嵌入式主板作為單芯片系統(tǒng),幾乎只需要極少的外圍電路就可以讓功能順利進(jìn)行。第二,穩(wěn)定的系統(tǒng),除了要有穩(wěn)定的硬件外,還需要有穩(wěn)定的軟件,嵌入式
    發(fā)表于 01-08 07:08

    什么是嵌入式操作系統(tǒng)?

    要理解嵌入式操作系統(tǒng)(Embedded Operating System,簡稱 RTOS/EOS),我們可以從本質(zhì)定義→核心區(qū)別→實際作用→典型特征→嵌入式開發(fā)場景適配,五維度來拆解
    發(fā)表于 12-09 10:33

    嵌入式與FPGA的區(qū)別

    ,一是嵌入式軟件開發(fā),主要與嵌入式cao作系統(tǒng)、應(yīng)用軟件等有關(guān)。第二嵌入式硬件開發(fā),需要掌握硬件設(shè)計、模擬仿真、 PCB設(shè)計等技能。 ?2
    發(fā)表于 11-20 07:12

    嵌入式系統(tǒng)的定義和應(yīng)用領(lǐng)域

    嵌入式系統(tǒng),簡而言之,就是一種專為特定設(shè)備或裝置設(shè)計的計算機系統(tǒng)。它們通常配備一嵌入式處理器,其控制程序被存儲在ROM中。這些
    發(fā)表于 11-17 06:49

    Wi-Fi FEM研發(fā),開啟第二個十年

    轉(zhuǎn)載自《鐘林談芯》 人生如逆旅,我亦是行人。十年之旅,?一起同行,?步步開花,Wi-Fi FEM研發(fā),我們開啟第二個十年。 2015年,在 銳迪科 (RDA)一起走進(jìn)Wi-Fi FEM賽道,未來的路
    的頭像 發(fā)表于 11-12 15:37 ?446次閱讀
    Wi-Fi FEM研發(fā),開啟<b class='flag-5'>第二個</b>十年

    嵌入式就業(yè)形勢好不好?

    投身該領(lǐng)域的工程師提供參考。 一、行業(yè)熱鬧背后的就業(yè)現(xiàn)實 近年來,隨著物聯(lián)網(wǎng)、人工智能等技術(shù)的興起,嵌入式行業(yè)迎來了前所未有的發(fā)展機遇。崗位需求看似繁多,但企業(yè)對于人才的要求卻日益嚴(yán)苛。 過去,掌握
    發(fā)表于 11-10 11:48

    模擬SPI,只有第二個正常,為什么?

    模擬SPI,一用于VS1003,另一用于SPI模式的SD卡。只有第二個SPI可以正常使用, static struct stm32_soft_spi_config
    發(fā)表于 09-29 07:19

    DIY 流體模擬吊墜():第二個、第三、更多的吊墜......

    “ ?上文?DIY 流體模擬吊墜(一):理論與第一吊墜的制作?介紹了流體模擬的理論并打造了第一吊墜,現(xiàn)在繼續(xù)制造第二、三吊墜......? ”
    的頭像 發(fā)表于 09-17 23:17 ?2245次閱讀
    DIY 流體模擬吊墜(<b class='flag-5'>二</b>):<b class='flag-5'>第二個</b>、第三<b class='flag-5'>個</b>、更多的吊墜......

    嵌入式接口通識知識之SPI接口

    CPOLCPHAMODE000MODE101MODE210MODE311模式0(CPOL=0,CPHA=0):CPOL=0:空閑時候為低電平,第一跳變沿是上升沿,第二個跳變沿是下降沿。CPHA=0:數(shù)據(jù)在第一跳變
    發(fā)表于 08-14 14:45

    Linux嵌入式和單片機嵌入式的區(qū)別?

    :使用Linux操作系統(tǒng),可以運行各種復(fù)雜的應(yīng)用程序和驅(qū)動程序。 4. 資源需求 : 單片機嵌入式 :對硬件資源的需求較低,通常只需要一單片機芯片,內(nèi)存和存儲空間較小。 Linux嵌入
    發(fā)表于 06-20 09:46

    AMD第二代Versal AI Edge和Versal Prime系列加速量產(chǎn) 為嵌入式系統(tǒng)實現(xiàn)單芯片智能

    我們推出了 AMD 第二代 Versal AI Edge 系列和第二代 Versal Prime 系列,這兩款產(chǎn)品是對 Versal 產(chǎn)品組合的擴展,可為嵌入式系統(tǒng)實現(xiàn)單芯片智能。
    的頭像 發(fā)表于 06-11 09:59 ?1871次閱讀

    嵌入式開發(fā)入門指南:從零開始學(xué)習(xí)嵌入式

    基礎(chǔ) 3. 學(xué)習(xí)路徑推薦第一階段:熟悉開發(fā)環(huán)境(如Keil、IAR、STM32)第二階段:掌握裸機編程與驅(qū)動開發(fā)第三階段:學(xué)習(xí)RTOS(實時操作系統(tǒng))如FreeRTOS第四階段:深入理解Linux嵌入式
    發(fā)表于 05-15 09:29

    如何在設(shè)備上通過USBEZ-USB?將第二個SPI閃存用作文件系統(tǒng)的應(yīng)用說明或建議?

    是否有關(guān)于如何在 設(shè)備上通過 將第二個 SPI 閃存用作文件系統(tǒng)的應(yīng)用說明或建議?USBEZ-USB?
    發(fā)表于 05-09 06:26

    Python在嵌入式系統(tǒng)中的應(yīng)用場景

    你想把你的職業(yè)生涯提升到一新的水平?Python在嵌入式系統(tǒng)中正在成為一股不可缺少的新力量。盡管傳統(tǒng)上嵌入式開發(fā)更多地依賴于C和C++語言,Python的優(yōu)勢在于其簡潔的語法、豐富的
    的頭像 發(fā)表于 03-19 14:10 ?1506次閱讀