先舉個例子,大家很熟悉的Windows里面含有內核,也含有UI系統,含有桌面程序,普通人可以直接使用Windows。
但是Linux僅僅是一個內核(它提供進程管理、文件系統等概念),必須在Linux之上安裝各種APP,普通人才可以使用。基于Linux內核制作出來的完整系統有Ubuntu、debian等等,普通人可以直接使用這些完整系統。
所以鴻蒙要對標的是Windows、安卓、IOS這類完整系統,而Linux只是鴻蒙支持的內核之一。鴻蒙支持多種內核,有Linux,也有Liteos-a。
鴻蒙的體系很龐大,看下圖,內核只是其中之一:
Liteos-a是什么
Liteos-a是一個內核(也常常被叫做操作系統,反正大家都把操作系統、內核混著說)。常見的內核有freeFTOS、rt-thread、UCOS,這些都屬于實時操作系統(RTOS),Linux不是實時操作系統。
有了那么多操作系統,為什么還要開發Liteos-a呢?
大多數的RTOS都是運行于MCU(單片機上),不支持MMU(內存管理單元),內核空間和APP空間不能隔離開,APP出錯后整個系統就會崩潰;也不支持POSIX接口,這使得大量的開源軟件無法直接在MCU上運行。
Linux的強大在于它支持的硬件非常多,但是它過于龐大,啟動慢、耗電,這些缺點導致它不適合用在物聯網領域。比如倒車攝像頭,沒人能忍受2秒鐘后才看見圖像:即使你能忍受,也很難把Linux優化到2秒內啟動。
Liteos-a為物聯網而生,支持MMU,支持內核/APP空間隔離、支持各個APP空間隔離,系統更健壯;支持POSIX接口,大量開源軟件可以在Liteos-a上直接使用;啟動快,省電。
Liteos-a是一個輕量級的內核,設計精巧。它要成功,就必須持更多芯片、更多外設,這也是我們把Liteos-a移植到非海思芯片,并錄制教程的原因。
除了Liteos-a,還有一個Liteos-m,后者運行在沒有MMU的芯片上,也就是運行在MCU上……
Liteos-a目錄結構
我們以Cortex-A系列處理器內核為例:kernel_liteos_a,可以知道總共有12個目錄,4個文件,具體目錄和文件作用,如下所示:
目錄的作用:
文件的作用:
原文標題:鴻蒙實戰課堂 | 韋老師手把手教你Liteos-a內核移植全流程
文章出處:【微信公眾號:電子發燒友網】歡迎添加關注!文章轉載請注明出處。
-
Liteos
+關注
關注
10文章
32瀏覽量
47483 -
鴻蒙
+關注
關注
56文章
2267瀏覽量
42480
原文標題:鴻蒙實戰課堂 | 韋老師手把手教你Liteos-a內核移植全流程
文章出處:【微信號:elecfans,微信公眾號:電子發燒友網】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論