日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

鴻蒙開始于 2012 年,雖一開始定位于物聯網方向,但到如今,已經發展為一款可兼容 Android 應用的跨平臺操作系統. 最新的 2.0 的官方描述是: HarmonyOS 是新一代的智能終端操作系統,為不同設備的智能化、互聯與協同提供了統一的語言。帶來簡潔,流暢,連續,安全可靠的全場景交互體驗。

Unix 版權之爭

要徹底了解微內核,還得先說到Minix(上篇有提到)和Darwin(macOS,IOS 的內核),都是UnixLike(類 Unix)操作系統.

上文我們了解到, 1969年AT&T公司(貝爾實驗室)開發Unics, 1973年用 C語言重寫后正式命名為 Unix, 后來AT&T意識到了Unix的商業價值, 在1979 年發布 Unix Version 7之后, 不再將Unix源碼授權給學術機構,并對之前的Unix及其變種聲明了著作權權利. 而這期間, BSD 其實已經有了很大發展了.

BSD 全稱 Berkeley Software Distribution, 也被稱為伯克利Unix或Berkeley Unix, 1970年代由伯克利加州大學的學生Bill Joy(比爾·喬伊)開創, BSD許可證非常地寬松,因此BSD常被當作工作站級別的Unix系統,也被用來代表其派生出的各種包. 許多1980年代成立的計算機公司都從BSD中獲益.

1974 年第一個Berkeley的 Unix 系統被安裝在迷你電腦(PDP-11)上,計算機科學系便開始將其作為擴展研究.而后發展為 1BSD,2BSD,3BSD 直到4.4BSD,這其中 4.3BSD 及之前版本都混合了專屬的AT&T UNIX代碼,也就需要當時非常昂貴的AT&T 的許可證.

一些其他組織對單獨的網絡版感興趣,完全獨立于AT&T,不受許可證的支配. 1989年6月,相應的Net/1 誕生,沒有 AT&T 許可證,但是發展到 Net/2 就被 AT&T 在 1992 正式提起訴訟了,這樁訴訟直到 1994 年 1 月了結,到 6 月,4.4BSD以兩種形式發布:可自由再發布的4.4BSD-Lite,不包含AT&T源碼;另有4.4BSD-Encumbered,遵照AT&T的許可證。1995 年開發團隊解散; 之后幾種基于4.4BSD的包,如FreeBSD、OpenBSD和NetBSD都基于4.4BSD-Lite 繼續維護.

微內核架構項目的發展

上篇中已經了解到,Unix 版權之爭,也導致 Minix 和 linux 得以開發和發展起來,而這期間其實還有一個叫 Mach 的項目也得到了發展,由卡內基梅隆大學從 1985 年開發并運行到 1994 年, 到 Mach3.0 版本結束, 也就是 Unix 版權之爭愈演愈烈的那幾年. Mach的開發就是為了取代BSD的傳統UNIX內核出現的, 所以就成了之后的許多新操作系統的設計基礎。Mach之所以突出,是因為其首倡的微核心結構. Linux 的參考者Minix 在 3.x 也被采用微內核架構進行了重寫.與微內核對應的就是宏內核,大名鼎鼎的 Linux 就是使用的宏內核架構,上篇對 Linux 有所介紹,這里就不多說了, 對微內核繼承最好的便是喬布斯的蘋果電腦的 MacOS和蘋果手機的 iOS 了.

現在我大致了解一下 MacOS 的發展歷程.

1985 年喬布斯離開蘋果電腦后創立的公司叫 NeXT, NeXT 公司開發的操作系統叫NeXTStep,這套系統是以Mach和BSD為基礎,以Objective-C作為原生語言,具有很先進的GUI(Graphical User Interface, 圖形用戶界面).

1989 年 9 月 NeXTStep1.0 推出,直到 3.3 版本, 除了主要用于自家的電腦,以及后面也可以運行在 IBM,Sun 等部分平臺上.

1997 年 2月蘋果公司將 NeXT 買下,也就是喬布斯又回歸之后,NeXTStep 就成為了 MacOSX 的基礎. 這里還可順便提一下, 世界上第一臺 WWW Server(即萬維網服務器)是姆·伯納斯-李在一臺 NeXT個人電腦上架出來的,第一個網絡瀏覽器(直接叫 WorldWideWeb)也是以 NeXTStep 為操作系統所開發出來的.

macOS 在 2011 年之前稱 MacOS X,2012 年至 2015 年稱 OS X, 到 2016 年 6 月更名為 macOS, 以便與蘋果其他操作系統 iOS、watchOS 和 tvOS 保持統一的命名風格。最新版本 macOS Big Sur 已于 2020 年 6 月 23 日發布.

macOS 包含兩個主要的部分:核心名為 Darwin,是以 BSD 源代碼和 Mach 微核心為基礎,由蘋果公司于 2002 年 4 月開源,以和獨立開發者社區合作開發;及一個由蘋果公司開發,名為 Aqua 的專利的圖形用戶界面.

所以,本質上來看, macOS(iOS,watchOS,tvOS)是由開源的 Darwin +自家閉源的相關 GUI 服務組成, 這和各家的安卓系統是由開源的 AOSP+各自相應的 UI(GMS,MIUI 等) 服務組成是一樣的模式,到這里,也就更能理解 HarmonyOS 也被處理成 OpenHarmony +相應的 HMS 服務的模式了吧.

操作系統和內核

操作系統(Operation System, 縮寫:OS) 是管理計算機硬件與軟件資源的系統軟件,位于底層硬件與用戶之間,是兩者溝通的橋梁。負責管理與配置內存、決定系統資源供需的優先次序、控制輸入與輸出設備、操作網絡與管理文件系統等基本事務。操作系統也提供一個讓用戶與系統交互的操作界面, 有命令行界面和圖形界面兩種, 用戶可以通過此界面, 輸入命令, 操作系統則對命令進行解釋, 驅動硬件設備, 實現用戶要求。以現代標準而言, 一個標準PC的操作系統應該提供以下的功能:

  • 進程管理(Processing management)和 線程管理(Thread management)
  • 內存管理(Memory management)
  • 驅動程序(Device drivers)
  • 文件系統(File system)
  • 網絡通信(Networking)
  • 安全機制(Security)
  • 用戶界面(User interface)

對于完全的普通用而言, 最直觀的是界面(桌面)系統,以及上層的應用程序, 其他的資源處理等等則都是被系統封裝的黑盒. 就讀者閱讀這篇文章而言, 是在今日頭條 App 或者瀏覽器上進行的,這些都是應用程序,而你所用的手機后電腦則是硬件集合, 此三者的關系如圖:

硬嗑HarmonyOS 之二微內核

應用系統硬件關系

再來看看內核的定義: “內核”指的是一個提供硬件抽象層、磁盤及文件系統控制、多任務等功能的系統軟件。內核是操作系統最基本的部分。它是為眾多應用程序提供對計算機硬件的安全訪問的一部分軟件,這種訪問是有限的,并且內核決定一個程序在什么時候對某部分硬件操作多長時間。直接對硬件操作是非常復雜的,所以內核通常提供一種硬件抽象的方法來完成這些操作。硬件抽象隱藏了復雜性,為應用軟件和硬件提供了一套簡潔,統一的接口,使程序設計更為簡單。

簡單來說,內核是一個操作系統的核心。它負責管理系統的進程、內存、設備驅動程序、文件和網絡系統等等,決定著系統的性能和穩定性。是連接應用程序和硬件的橋梁。

硬嗑HarmonyOS 之二微內核

內核示意圖

我們再來看看內核的分類, 其實主要是有宏內核(也叫單內核)和微內核, 在此基礎上,還有混合內核,外內核等分類, 混合內核可以理解是為了追求性能,對宏內核和微內核做了一些折中,如MacOSX,windowsNT,但都宣稱采用微核心架構; 外內核是一種比較極端的設計方法,其理念是讓用戶程序的設計者來決定硬件接口的設計,這個也就不多聊了.

我們就重點來了解一下宏內核和微內核是什么?

宏內核

宏內核(Monolithic kernel)架構的特性是整個內核程序是一個單一二進制可執行文件,在內核態以監管者模式(Supervisor Mode)來運行。是這樣, 就像我們上面提到的內存,文件,驅動,IO 等等,每個功能被當做一個模塊,全部集合在一起運行在內核進程中, 這些模塊直接的交互是直接通過方法(函數)調用. 如下圖:

硬嗑HarmonyOS 之二微內核

宏內核示意圖

微內核

微內核(Microkernel)架構的特性就是盡可能精簡的精簡程序,以實現一個操作系統所必要的最基本功能,包括線程調度,進程管理,中斷處理. 其他的模塊都移出內核,這就使得內核中最核心的功能,設計上變的更簡單。讓服務各自獨立,可以減少耦合度,易于實現與調試,增加可移植性。這樣某單一組件失效,既不影響內核也不會影響其他模塊, 內核只需要重啟這個這個模塊。同時,也可以視需要抽換或新增某些服務進程,這樣整個系統更加穩定和富有彈性.如圖:

硬嗑HarmonyOS 之二微內核

微內核示意圖

在微內核架構下,還創建了一套進程間通信,通過消息列隊傳遞的這種機制來讓各模塊進程間互換消息,調用服務,以及完成同步。采用主從式架構,使得它在分布式系統中有特別的優勢,因為遠程系統與本地進程間,可以采用同一套進程間通信機制。

微內核的優勢

總結一下,宏內核是模塊集成在一起,而微內核是模塊間分離。對比如下:

 

宏內核

微內核

通信效率

搞(函數調用)

低(進程通信)

穩定性

低(模塊集成一損俱損)

高(模塊獨立互不影響)

擴展性

低(模塊集成一損俱損)

高(模塊獨立互不影響)

代碼量

多(需實現所有模塊)

少(只實現核心機能)

從前面描述中我們也知道, 微內核出現的較晚(1985年 Mach 首倡),實際上在后續的發展中宏內核和微內核相互間都有借鑒, 也就是為什么會有混合內核,超微內核等等, 細究的話,也同樣有著業界的互噴現象.這里我們不深究,懂得即可; 我們繼續來看微內核, 其天生在分布式系統中有優勢; 分布式系統是指一組電腦,透過網絡相互連接傳遞消息通信后并協調它們的行為而形成的系統。所以到此刻我也知道華為 HarmonyOS 采用微內核架構也是一種必然了. 我們還知道它的內核層還有一個 LiteOS, 就是一個輕量級的物聯網操作系統,最小內核尺寸甚至僅為6KB,具備快速啟動、低功耗等優勢. 下面這個是鴻蒙的系統架構圖:

硬嗑HarmonyOS 之二微內核

 

總結

至此,我們也就基本明白了, 鴻蒙操作系統的內核層是怎么回事了. 加上上一篇,我們也就基本明白了, 關于鴻蒙里的 Linux內核, 微內核,分布式,LiteOS 以及如何兼容安卓等核心問題.

其實本來上對于任何一件事物, 我們既要了解它的發展歷程,從而也去思考它的未來期許, 對于那些無腦噴,我是真有點不能理解的,只能說明要么腦瓜確實有問題要么動機有問題.

比如, 說是有的程序員也來噴, 我特別好奇, 打開鴻蒙的開發者網站, 比安卓那邊明顯的多了一個設備開發的入口, 只要多想一下, 其實不難想到這個系統的思路完全有了不同的變化, 否則安卓為什么不這樣做呢?甚至我們早就知道了谷歌還把精力分到了 ChromeOS 和 FuchsiaOS 這其他的操作系統上呢?還去秀你的什么命令,去向外行證明什么套殼之類的噴罵?難道是真的不明白就算是一個上層 App 也有架構演進的過程嗎?真的不明白安卓作為開源項目的 AOSP 代表著什么嗎? 如果僅僅是套個殼,工信部那幫人真的是啥都不懂嗎?如果僅僅是復制修改,谷歌想要追責就沒辦法了嗎?谷歌是怎么封殺的阿里云OS?還是說華為的那幫工程師全是沒臉沒皮,開源出來等著這種人來噴嗎?還是說...

上面這一堆疑問其實也引出了另外一個話題, 就是鴻蒙的多設備鏈接的物聯網,1+8+N 的生態. 從這兩篇系統內核的介紹中, 我們也了解了操作系統的發展本身也是一個場景需求變化的演進發展的過程.從早期大型工業電腦系統,到個人桌面系統,再到手機便攜系統,如今的萬物互聯HarmonyOS. 事實上鴻蒙不是第一個物聯網操作系統,就想剛剛提到了阿里云OS, 除了谷歌封殺, 也同樣有人認為是它出生太早了,所以對于這樣的一個新系統而已,其實最要關注的應該是它的生態問題,這才是決定性的.

分享到:
標簽:HarmonyOS
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定