色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

微內核的差異性及開發工作

嵌入式IoT ? 來源:搜狐網 ? 作者:搜狐網 ? 2020-09-01 10:23 ? 次閱讀

1.本文目的

隨著RT-Thread Smart微內核發布會的臨近,對于開源社區以及國產RTOS比較關注的人或許早有耳聞。RT-Thread要發布微內核操作系統了。從去年的華為提出鴻蒙微內核到目前為止,都未曾真正見到一個微內核系統面向大眾。從真正的開發者角度來看,或許真正的關注點不在于多少先進技術的提出,而實際的關注點在于是否好用,是否能夠快速高效的開發出穩定的產品,是否用上了之后能夠減少自己的工作量。本文主要從微內核開發的思維角度出發,談一談RT-Thread Smart以及我個人進行微內核開發工作的所思所想。

2.微內核的差異性

內核是操作系統中管理資源的核心部分,它充當著計算機程序與硬件之間橋梁。

其實在程序運行時,用戶態程序想要訪問外設,必須要通過內核進行資源調度,然后進行統一的管理。現在許多CPU中,最基本的都會有用戶模式和超級管理員模式兩種。用戶程序首先必須要有可以自己管理的一段內存空間,進行業務邏輯的設計,如果要使用到共享資源或者硬件資源時,那就需要通知內核,此時內核進行調度和分配,在合適的時機給申請資源的應用程序。如果訪問特殊的寄存器,這時候,還需要切換CPU的模式,從而訪問超級管理員才能使用的寄存器。

這種權限的控制核心都是由內核進行,用戶態程序申請訪問內核資源的時候,通常是通過軟件中斷的形式實現,這會導致硬件的中斷處理程序將控制權轉移到作為操作系統一部分的適當的中斷處理程序上,在進程中將模式位轉換為內核模式。中斷處理程序檢查生成了哪個中斷,如果合適,檢查附加參數(通常通過寄存器傳遞),然后調用適當的內核服務例程來處理系統調用請求的服務。

此時如果用戶程序訪問了非法指令,或者訪問了本不該自己訪問的東西,也會產生軟件中斷,從而將事件交給內核處理,內核進行保存錯誤日志,并負責清理垃圾。

上述也僅僅介紹了內核態與用戶態的基本工作流程,微內核基本也是沿用了這套思想,但是微內核體現的正是這個微的特定。為了體現微這個特點,微內核一般只會提供最少的進程和內存管理的服務,客戶端程序與應用程序只在用戶地址空間之間進行消息的傳遞,這樣并不會影響內核的功能,但是這樣的方式會大大增加消息傳遞的負載,也就是說,大量的消息傳遞也會降低系統的運行性能。但這些犧牲帶來的好處也是顯而易見的,對開發者來說非常的方便,不用過分關注內核的穩定性問題,只需要好好處理上層的業務邏輯即可。

3.微內核該怎么寫應用程序?

微內核的應用程序部分一般不需要過度的去關注內核部分的代碼,就像我們進行Linux開發應用程序一樣。首先應該充分的相信微內核內核部分的可靠性,如果一出問題就總是懷疑內核是不是有BUG那就不太適合進行微內核的開發工作。我們在開發Linux的時候,遇到問題,總不會把Linux的整個代碼再review一遍,這樣是費力不討好。

所以進行微內核的開發工作,首先需要知道微內核提供的編程規范,以及所提供的API函數進行程序設計。其實在C語言中,也是會提供一些標準庫函數的,比如RT-Thread Smart中提供的musl庫等等。當然還有不同微內核系統中所提供的專用的API,比如對RT-Thread比較熟悉的人,在上手RT-Thread Smart時,也能夠找到很多之前用到的函數API的接口的影子。

而APP的編譯是獨立的,只需要交叉編譯工具鏈,將程序鏈接到指定的入口地址,無論是通過makefile還是scons或者CMake都做不做限制,編譯出來的程序,微內核通過加載器加載到內存中去執行程序。

另外編寫應用程序需要注意的是不同線程之間的消息傳遞機制,以及線程與進程之間的關系。這個是非常值得關注和思考的問題。

4.微內核的效率和實時性怎么樣?

我覺得微內核的實時性是弱于RTOS強于LInux的,之所有有這樣的結論,是因為微內核確實會存在大量消息傳遞機制傳遞消息的問題。對于直接進行處理事件的RTOS來說,這樣的方式必然會降低系統響應的速度。如果業務邏輯簡單倒是看不到很明顯的差異,但是一旦涉及到任務量大,應用程序很多的情況時,內核的負載太大了。

例如在用戶態進行網絡協議棧的處理上來說,如果說驅動在內核層,網絡協議棧在用戶層,數據將直接從內核驅動過來,然后通過消息傳遞機制比如共享內存傳遞到用戶態,用戶態接收到通知,然后再拷貝數據,處理數據,然后通過系統調用,又將處理好的數據傳遞到內核層。這個過程涉及到太長的鏈路,一定會影響系統的性能。但是如果驅動在應用層,那也需要大量的消息傳遞機制來確保兩個進程間的通信的迅速以及準確。總體說起來,對于目前高性能的處理器來說,性能一般不是太大的瓶頸,架構的穩定與系統復雜度也是需要好好均衡的,魚與熊掌不可得兼,舍魚而取熊掌者也,至于其中的利弊,個人來做評判與選擇。

5.如何客觀的評價RT-Thread Smart混合微內核?

從我的角度去看這個東西,或許是用瑕不掩瑜這個詞語概況比較恰當一點。凡事在開始階段,都是在摸著石頭過河,沒有人會知道這個東西的真正面目是什么,也沒有人徹底的能夠描繪出它的全貌,所以開發的過程一步一步的進行的是挖坑再填坑的過程,剛開始沒有輪子,然后慢慢有了一個輪子形狀的東西,能轉但是很奇怪,因為并不方正。然后慢慢的砍成一個方形的,之后慢慢磨,終于變成圓形的了,這時候就走的很順暢了。我說的上述過程大概就是我做了一點微內核的開發工作的心路歷程吧。

真正的做下來,沒有什么嘗試是毫無意義的。造不如買,買不如租這種思維模式,收益的也只是眼前,從長遠的大趨勢上來看,唯有走在最前面的人,才能看得到最好的風景。這次RT-Thread Smart 混合微內核的發布,具體能夠有哪些東西值得關注,我后面再慢慢細說。我不敢說這個是一個極其好用的東西,但是我覺得至少走出了第一步,這也是一個突破。更多的功能完善,更加穩定的實現細節可能需要的是更多的努力吧,還有需要更多人的智慧,才能不斷推進技術走向更高的高峰。

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

    關注

    0

    文章

    5

    瀏覽量

    6539
  • 微內核
    +關注

    關注

    0

    文章

    57

    瀏覽量

    13430

原文標題:微內核進行開發工作究竟是怎樣的感受?

文章出處:【微信號:Embeded_IoT,微信公眾號:嵌入式IoT】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    晶體管之間的差異

    晶體管之間的差異性:就三極管,mos管和可控硅之間的差別和相同點的相關概念有點模糊,請各位大俠指點!!!
    發表于 06-07 23:27

    SKYLAB:BLE藍牙模塊SKB360與SKB362相比差異性

    智能照明方案。為了方便工程師的BLE4.0模塊選型,本篇小編就來具體為大家介紹一下BLE4.0模塊SKB360和SKB362的差異性。SKB360和SKB362的不同點:硬件區別:SoC類型不一樣
    發表于 06-07 18:08

    線性穩壓器和開關式穩壓器的特性有什么差異性

    線性穩壓器和開關式穩壓器的特性有什么差異性?DCDC開關式穩壓器有哪幾種類型?
    發表于 03-08 07:59

    基于 stm32 的應用實例 —— USART 串口通訊(stm32 與主機通訊)精選資料分享

    目標一、基于寄存器、固件庫編程的差異性二、參考資料文章說明一、基于寄存器、固件庫編程的差異性基于寄存器與基于固件庫的 stm32 LED 流水燈例子的編程方式有什么差異使用固件庫,目前比較多的例程
    發表于 08-03 06:03

    模擬電路設計使HDTV體現出差異性

    模擬電路設計使HDTV體現出差異性 隨著高清電視(HDTV)顯示器技術的成熟,模擬視頻和音頻處理的質量將最終使電視機之間產生差異性。HDTV中的數字處理(包括圖像擴縮、
    發表于 10-29 15:54 ?644次閱讀
    模擬電路設計使HDTV體現出<b class='flag-5'>差異性</b>

    RS274D與RS274X 的差異性比較

    RS274D與RS274X 的差異性比較 GERBER FILE 目前常見到的有二種格式 RS-274D 及 RS-274X . 在CAM軟件中,這二種格式都有支援,這二種格式的最大分別,在于RS-274X 內
    發表于 03-09 11:52 ?7491次閱讀
    RS274D與RS274X 的<b class='flag-5'>差異性</b>比較

    考慮季節差異性的不同時間尺度含風電系統旋轉備用優化研究

    考慮季節差異性的不同時間尺度含風電系統旋轉備用優化研究_溫步瀛
    發表于 01-04 16:32 ?0次下載

    測試軟件及測試終端差異性研究分析

    ,Probe軟件在不同終端下的測試指標相差不大;CDS在不同終端條件下的測試結果差異性很大,對測試終端要求較高。ATU和Probe相比較,相同條件下ATU測試指標差于Probe測試指標。
    的頭像 發表于 02-01 09:22 ?7204次閱讀
    測試軟件及測試終端<b class='flag-5'>差異性</b>研究分析

    SMR和ZNS兩種技術差異,你不能不知道

    分析對比一下SMR和ZNS這兩種技術的差異性
    的頭像 發表于 06-25 10:32 ?5103次閱讀
    SMR和ZNS兩種技術<b class='flag-5'>差異</b>,你不能不知道

    電流法的測試結果差異性影響分析

    原文標題:【賽盛技術案例分享】測試布置與分布參數對輻射發射及電流法的測試結果差異性影響分析 文章出處:【信公眾號:深圳市賽盛技術有限公司】歡迎添加關注!文章轉載請注明出處。 責任編輯:haq
    的頭像 發表于 09-28 15:17 ?2140次閱讀
    電流法的測試結果<b class='flag-5'>差異性</b>影響分析

    工業以太網交換機存在有哪些差異性

    通過之前對工業交換機的認知,我們了解到工業以太網交換機采用存儲轉換的交換方式,同時提高了以太網通信速度,并且內置智能報警設計監控網絡運行狀況,使得在惡劣危險的工業環境中保證以太網可靠穩定的運行。那么,工業以太網交換機有哪些差異性呢?
    的頭像 發表于 10-23 14:47 ?2347次閱讀

    閑談工業以太網交換機和家用交換機的差異性

    通過之前對工業交換機的認知,我們了解到工業以太網交換機采用存儲轉換的交換方式,同時提高了以太網通信速度,并且內置智能報警設計監控網絡運行狀況,使得在惡劣危險的工業環境中保證以太網可靠穩定的運行。那么,工業以太網交換機有哪些差異性呢》接下來我們就跟隨飛暢科技的小編一起來看看吧!
    發表于 10-27 11:37 ?1602次閱讀

    基于差異性累積與子空間傳播的法向估計算法

    以分割為基礎的法向估計算法主要是通過法向的差異來構造點之間的相似性。針對由于距離屬性的缺失使這類算法對于緊鄰面及一些光滑曲面的估計結果并不理想的問題,提出基于差異性累積與子空間傳播的法向估計
    發表于 04-21 11:13 ?1次下載
    基于<b class='flag-5'>差異性</b>累積與子空間傳播的法向估計算法

    基于差異性代碼克隆的代碼塊補全提示方法

    在軟件編程中,通過代碼補全提示可以提高編碼效率,但目前缺乏有效的工具和手段從規模差異較大的相似代碼中找到合適的候選代碼。針對該問題,基于差異性代碼克隆技術設計一種新的代碼塊補全提示方法。通過改進
    發表于 05-28 11:22 ?4次下載

    可編程IC的類型、主要功能、相似性和差異性

    電子發燒友網站提供《可編程IC的類型、主要功能、相似性和差異性.pdf》資料免費下載
    發表于 01-03 14:08 ?0次下載
    可編程IC的類型、主要功能、相似性和<b class='flag-5'>差異性</b>
    主站蜘蛛池模板: 果冻传媒在线观看高清完整免费| 国产99久久久欧美黑人刘玥| 啦啦啦视频在线观看WWW| 亚洲精品福利在线| 国产系列视频二区| 亚洲欧美日韩国产另类电影| 黄页网站免费视频大全9| 在线亚洲免费| 日本老师xxxxx18| 国产精品亚洲精品久久品| 亚洲日产2020乱码草莓毕| 久久精品嫩草影院免费看| xxxxxx视频| 亚洲色欲啪啪久久WWW综合网| 毛片在线看片| 国产亚洲精品成人AV久久| 538视频这里只有精品| 人妻少妇久久久久久97人妻| 国产原创中文视频| jiz中国zz| 中文字幕亚洲无线码一区| 小草影院免费| 日本少妇内射视频播放舔| 毛片免费在线播放| 精品无码三级在线观看视频| 成人在线视频免费看| 99日影院在线播放| 国产www视频| 最新国产av.在线视频| 亚洲成年人影院| 小小水蜜桃免费影院| 少妇系列之白嫩人妻| 青青草国拍2018| 欧美人成人亚洲专区中文字幕| 老师的丝袜脚| 狂躁美女BBBBBB视频| 久久AV喷吹AV高潮欧美| 和尚轮流澡到高潮H| 黄色三级网站在线观看| 国产精品久久自在自2021| x69老师x日本|