在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

嵌入式系統又迎來了生命中的第二個春天

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

掃碼添加小助手

加入工程師交流群

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

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

但是由于當時的嵌入式系統多用來制作手持式PDA,車載導航儀等設備,所以安卓出現后迅速占領了上述市場,MiniGUI等嵌入式操作系統逐漸沒落。

但是我們整理互聯網發展的脈絡可以看到,內容的不斷豐富與終端的不斷擴展是兩條主線,隨著網上數據量的持續爆炸性增長,今后新增的流量肯定主要來自于對于萬物互聯的紅利。

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

巨頭們的布局

騰訊在三天前正式發布了其物聯網終端的操作系統TinyOS(Github地址:https://github.com/Tencent/TencentOS-tiny),其系統架構圖如下:

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

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

AliOS Thing3.0發布

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

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

可見巨頭的邏輯就是要整合物聯網時代的場景,他們的OS都是免費的,而且技術支持也強,不過巨頭就是要做物聯時代的ANDROID,最終一統天下。

老牌嵌入式操作系統的選擇

MiniGui做為已經存在了20多年的嵌入式操作系統,其架構圖如下:

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

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

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

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

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

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

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

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

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

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

消息處理模塊(Messaging Module):

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

眾所周知,幾乎所有的GUI 系統本質上都是事件驅動的,系統自身的運行,以及GUI 應用程序的運行,都依賴于消息處理模塊。

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

基于圖形設備接口和消息處理模塊,MiniGUI 實現了多窗口處理模塊。該模塊為上層應用程序提供了創建主窗口和控件的基本接口,并負責維護控件類。

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

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

外觀支持(Look and Feel):

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

在 MiniGUI V3.0 之前的版本中,對主窗口和控件的定制能力,還沒有被抽離出來形成獨立的模塊,但我們仍然可以通過配置選項讓 MiniGUI 的主窗口、控件具有三種顯示風格,分別是:類似 PC 的三維風格(PC3D)、平板風格(FLAT)、流行風格(FASHION)。

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

可以看到MiniGUI從創立伊始就放棄了對于RTOS內核的編寫,直接基于linux等內核來做封裝。簡單聊兩句基于MiniGUI的圖形應用開發。

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的設計有很大程序是為降低嵌入式系統圖形界面開發難度而產生的。

國產實時操作系統內核的先驅RTthread

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

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

HybridOS的開源計劃

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

我們知道由于物聯網終端真的是不一而足,與手機終端完全不同,其不同終端的碎片化需求太多太復雜,比如,有的智能燈泡要藍牙即可,而智能空調可能就要有Wi-Fi了。

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

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

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

在他們的官宣當中對于其后續要發布的HybridOS物聯網操作系統有如目標:

1. HybridOS 的設備端系統基于 Linux 內核,充分利用 Linux 內核生態,降低各種驅動程序的開發難度以及各種協議棧的支持難度,從而降低開發成本。

2. 和基于 RTOS(實時操作系統)技術發展而來的物聯網操作系統(如RT-ThreadLiteOS)相比,HybridOS 更傾向于運行在具有更高硬件配置的智能物聯網設備上,而不是小型的單功能物聯網設備上,后者的硬件配置往往有限。

3. HybridOS 不僅僅運行在智能物聯網設備中,它同時還提供了針對云端以及客戶端的標準框架和編程接口,為開發者提供了從設備到云再到客戶端的完整軟件棧和協議棧。在未來,HybridOS 還計劃統一客戶端和設備端上的 App 開發接口。

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

后記

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

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式系統
    +關注

    關注

    41

    文章

    3672

    瀏覽量

    131120
  • 物聯網
    +關注

    關注

    2929

    文章

    46093

    瀏覽量

    390168
  • 代碼
    +關注

    關注

    30

    文章

    4893

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    AMD第二代Versal AI Edge和Versal Prime系列加速量產 為嵌入式系統實現單芯片智能

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

    嵌入式開發入門指南:從零開始學習嵌入式

    基礎 3. 學習路徑推薦第一階段:熟悉開發環境(如Keil、IAR、STM32)第二階段:掌握裸機編程與驅動開發第三階段:學習RTOS(實時操作系統)如FreeRTOS第四階段:深入理解Linux嵌入式
    發表于 05-15 09:29

    如何在設備上通過USBEZ-USB?將第二個SPI閃存用作文件系統的應用說明或建議?

    是否有關于如何在 設備上通過 將第二個 SPI 閃存用作文件系統的應用說明或建議?USBEZ-USB?
    發表于 05-09 06:26

    DLP4710EVM-LC為什么無法作為筆記本電腦的第二個屏幕?

    第二個屏幕”,此時投影為電腦顯示界面的上下重復疊加;筆記本電腦設置為“擴展”或“復制”,投影僅顯示4710的預存靜態圖片。 而將4710EVM-LC的HDMI接到臺式機電腦的HDMI口,作為唯一的屏幕時,顯示都是正常的。
    發表于 02-18 07:30

    嵌入式系統開發與硬件的關系 嵌入式系統開發常見問題解決

    嵌入式系統開發與硬件的關系 嵌入式系統是專為特定應用設計的計算機系統,它們通常嵌入在所控制的設備
    的頭像 發表于 12-09 09:38 ?898次閱讀

    【「嵌入式系統設計與實現」閱讀體驗】+ 學習一STM32的案例

    嵌入式系統設計與實現——第六屆全國大學生嵌入式芯片與系統設計競賽芯片應用賽道優秀作品剖析》一書的基本情況。今天來學習一具體的案例。 這本
    發表于 12-06 22:22

    如何加裝第二個路由器

    加裝第二個路由器可以擴展你的無線網絡覆蓋范圍,提高網絡速度,或者為特定區域提供更穩定的連接。以下是加裝第二個路由器的步驟,以及一些注意事項: 1. 選擇合適的路由器 在選擇第二個路由器時,考慮以下
    的頭像 發表于 10-18 09:19 ?1823次閱讀

    如何橋接第二個無線路由器

    在現代家庭和辦公室環境中,無線網絡已成為連接設備和訪問互聯網的重要方式。然而,隨著空間的擴大和無線設備的增多,單個無線路由器可能無法提供足夠的覆蓋范圍。為了解決這個問題,許多用戶選擇通過橋接第二個
    的頭像 發表于 10-18 09:16 ?2051次閱讀

    嵌入式系統的原理和應用

    嵌入式系統是一種專用的計算機系統,其設計初衷是執行特定任務,而非作為通用計算機使用。這類系統通常作為更大系統的一部分,起到控制、監控或輔助的
    的頭像 發表于 10-05 17:03 ?2083次閱讀

    嵌入式系統的未來趨勢有哪些?

    嵌入式系統是指將我們的操作系統和功能軟件集成于計算機硬件系統之中,形成一專用的計算機系統。那么
    發表于 09-12 15:42

    學習hypervisor嵌入式產品安全設計

    第一部分(第1~2章)介紹Hypervisor基礎,涵蓋虛擬化技術與實現、主流的嵌入式Hypervisor產品,以及基于分離內核的嵌入式Hypervisor等內容。第二部分(第3~12章)介紹
    發表于 08-25 09:11

    RTOS版本的sdk,為什么無法讀取第二個512Mflash的內容?

    我使用最新的RTOS版本的sdk,為什么無法讀取第二個512Mflash的內容?我是按照1M的flash編譯的和燒錄的。
    發表于 07-22 06:47

    2024年第二季度PC出貨量實現連續第二個季度增長

    7月19日,知名市場調研機構Counterpoint Research揭曉的最新研究報告揭示了一振奮人心的趨勢:2024年第二季度,全球個人電腦(PC)出貨量實現了連續第二個季度的同比增長,增幅達
    的頭像 發表于 07-19 16:15 ?942次閱讀

    嵌入式熱門領域有哪些?

    通過物聯網連接各種物理設備和傳感器,促使它們之間實現信息的交換和數據的共享。從智能家居到智能城市,物聯網的應用不斷擴展,為嵌入式系統工程師帶來了廣泛的就業機會和發展前景。 自動駕駛 自動駕駛技術作為
    發表于 07-16 09:23

    嵌入式系統怎么學?

    嵌入式系統怎么學? 隨著物聯網、智能制造等新技術的興起,嵌入式系統的應用范圍更加廣泛。包括但不限于工業控制、汽車電子、醫療設備、智能家居、智慧城市、消費電子、通信設備等。學習
    發表于 07-02 10:10
    主站蜘蛛池模板: 一区二区三区视频在线 | 美女涩涩网站 | 色天天综合色天天天天看大 | 成人三级视频 | 四虎在线永久免费观看 | 亚欧人成精品免费观看 | 五月天精品在线 | 中文字幕人成不卡一区 | 欧美大尺度aaa级毛片 | 一区二区三区www | 狠狠干狠狠操视频 | 天天干天天弄 | 美脚连裤袜老师正在播放 | 国产毛片哪里有 | 日韩一级片在线播放 | 色婷五月综激情亚洲综合 | 成年人黄色免费网站 | 久久香蕉国产视频 | 色视频2| 99久在线| 1024亚洲视频 | 你懂的在线观看网址 | 国产精品久久精品牛牛影视 | 麒麟色欧美影院在线播放 | h网站在线 | free性欧美video69| 日本高清视频在线www色 | 亚洲人成电影在线小说网色 | 国产乱人视频免费播放 | 免费一级特黄a | 日韩啪啪电影 | 精品视频一区二区三区四区五区 | 特级aaa毛片| 丁香狠狠色婷婷久久综合 | 最近2018中文字幕免费视频 | 久久久久久国产精品免费免费 | 午夜视频福利在线 | 成人网在线观看 | 在线片视频网站 | 李老汉和小花的性生生活 | 日本成人福利视频 |