鸿蒙OS真的是PPT吗?
?假期余額不足
?
?
PPT調(diào)研——鴻蒙
?
最近發(fā)了一些有關(guān)鴻蒙OS的一些教程的文章,收到了不少網(wǎng)友的質(zhì)疑——華為的鴻蒙是不是PPT系統(tǒng)?
到目前為止,網(wǎng)上對(duì)于鴻蒙OS系統(tǒng)的態(tài)度還是表示不是很樂觀。
就拿“開發(fā)者大會(huì)”來說,一般的開發(fā)者大會(huì)都是比較直接:來我官網(wǎng),開發(fā)文檔在這,SDK在那里下載,開發(fā)技術(shù)棧是這個(gè),之后再拉幾個(gè)adoble、unreal的人站在臺(tái)上說我們的系統(tǒng)支持xx生產(chǎn)力工具、xx平臺(tái)等等。
而在鴻蒙OS開發(fā)者大會(huì)中,人們最后感覺什么都沒有看明白,這是個(gè)啥?開發(fā)文檔上哪呢?SDK在哪?用什么語言開發(fā)?等等
將客戶端、服務(wù)端、OS領(lǐng)域能講到的一大堆專屬詞匯重新定義,之后都放到PPT中,之后媒體一看,哇這個(gè)真叼!哇,這個(gè)干貨巨多!.......而最終到了開發(fā)者這里卻是一臉懵逼。
?
網(wǎng)友留言精選
有一位網(wǎng)友這樣說:
怎么說呢,目前它自己的東西啥都沒看到,Android的影子到處都是,甚至字體都是Android的。
況且就不說鴨子理論了:一個(gè)東西長(zhǎng)得像Android,用起來像Android,跑的APP也是Android的,那它就是Android。
就退一步說,你真自己自主研發(fā)了一個(gè)系統(tǒng),一行代碼沒看別人的,結(jié)果濃濃的既視感,那也是丟人現(xiàn)眼的。去看看隔壁米天堂的《還原神作》為什么被罵,心里也該有點(diǎn)13數(shù)了。
這是丟人現(xiàn)眼啊,就是真把源碼放出來,完全和Android不一樣也是丟人現(xiàn)眼啊
你家孩子長(zhǎng)得跟隔壁老王那么像,居然不覺得丟人還理直氣壯,還要犟嘴。
鏈接:https://www.zhihu.com/question/339734329/answer/783315034
?
不過鴻蒙和Android還是有一些區(qū)別的!
?
區(qū)別
?
01
鴻蒙OS不基于linux內(nèi)核
?
鴻蒙和Android相比,根本的區(qū)別在于它的核心不包括linux內(nèi)核。華為為其未來的操作系統(tǒng)開發(fā)了全新的微內(nèi)核。微內(nèi)核比單片內(nèi)核小,因?yàn)樗话\(yùn)行操作系統(tǒng)所需要的最少量代碼。華為的微內(nèi)核大約有l(wèi)inux內(nèi)核代碼量的千分之一,因?yàn)樗话ň€程線程調(diào)度和IPC。所有其他服務(wù)(例如設(shè)備驅(qū)動(dòng)、文件系統(tǒng)等)都會(huì)在用戶空間運(yùn)行。
這樣一來,IPC成為操作系統(tǒng)整體性能的一個(gè)重要因素。
華為成其微內(nèi)核提供的IPC比Fuchsia OS快5倍,比QNX微內(nèi)核快三倍。
02
系統(tǒng)分層
Android是基于Linux的自由及開放源代碼的操作系統(tǒng),主要用于移動(dòng)設(shè)備,如智能手機(jī)和平板,由Google公司和開放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開發(fā)。
?
我們可以看出Android系統(tǒng)分為四層,從高到低分別是應(yīng)用程序?qū)印?yīng)用程序框架層、系統(tǒng)運(yùn)行庫(kù)層和Linux內(nèi)核。
01
應(yīng)用程序?qū)?/strong>
?
該層主要提供了一些核心應(yīng)用程序包,用來存放應(yīng)用程序、主界面、聯(lián)系人、電話、瀏覽器、日歷等
?
02
應(yīng)用程序框架層
?
用來支持引用層中程序的運(yùn)行,包括Activity Manager活動(dòng)管理器、Window Manager窗口管理器、Content Provider內(nèi)容提供者、View System視圖系統(tǒng)、Notification Manager通知管理、Package Manager包管理、Telephony Manager電話管理、Resource Manager資源管理、Location Manager位置管理器、XMPP Services服務(wù)等一共十個(gè)部分。
?
03
系統(tǒng)運(yùn)行庫(kù)
?
包含了Libraries系統(tǒng)庫(kù)和Android Runtime安卓運(yùn)行時(shí)環(huán)境
Libraries系統(tǒng)庫(kù)
系統(tǒng)庫(kù)包括九個(gè)子系統(tǒng),分別是Surface Manager圖層管理、Media Manager媒體管理、SQLite小型數(shù)據(jù)庫(kù)、OpenGLESate開放圖形庫(kù)用來支持3D效果、FreeType位圖和矢量、WebKit瀏覽器內(nèi)核、SGL 2D圖形引擎庫(kù)、SSL為數(shù)據(jù)通信提供支持、libc C語言的函數(shù)庫(kù)
Android?Runtime安卓運(yùn)行時(shí)環(huán)境
core Labraries安卓開發(fā)核心庫(kù)、DaLvik Virtual Machine Dalvik虛擬機(jī)。
前者既兼容了大多數(shù)Java語言所需要調(diào)用的功能函數(shù),又包括了Android的核心庫(kù),比如android.os、android.net、android.media等等。后者是一種基于寄存器的java虛擬機(jī),Dalvik虛擬機(jī)主要是完成對(duì)生命周期的管理、堆棧的管理、線程的管理、安全和異常的管理以及垃圾回收等重要功能。--SQLite是遵守ACID的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它包含在一個(gè)相對(duì)小的C程序庫(kù)中;OpenGL-開放圖形庫(kù)(英語:Open Graphics Library,縮寫為 OpenGL)是個(gè)定義了一個(gè)跨編程語言、跨平臺(tái)的應(yīng)用程序接口(API)的規(guī)范,它用于生成二維、三維圖像。
04
Linux內(nèi)核
提供各種驅(qū)動(dòng)程序 Display Driver?顯示驅(qū)動(dòng)、Camra Driver?相機(jī)驅(qū)動(dòng)、Bluetooth Driver?藍(lán)牙驅(qū)動(dòng)、Flash Memory?Driver?內(nèi)存驅(qū)動(dòng)、Binder?(pc)Driver?進(jìn)程驅(qū)動(dòng)、USB Driver、Audio Driver?音頻驅(qū)動(dòng)、Power?Managemnet?電源管理、WIFI?Driver?無線驅(qū)動(dòng)、Keypad Driver?鍵盤驅(qū)動(dòng)
?
接下來我們看看鴻蒙OS的系統(tǒng)架構(gòu):
?
?
鴻蒙OS仍然是四層:應(yīng)用層、程序框架層、基礎(chǔ)服務(wù)層、內(nèi)核層。
01
應(yīng)用層
?
應(yīng)用層包括系統(tǒng)應(yīng)用和第三方非系統(tǒng)應(yīng)用。HarmonyOS的應(yīng)用由一個(gè)或者多個(gè)FA(Freature Ability)或者PA(Particle Ability)組成。其中,FA有UI界面,提供用戶交互能力;而PA無UI界面,提供后臺(tái)運(yùn)行任務(wù)的能力以及統(tǒng)一數(shù)據(jù)訪問抽象。基于FA/PA開發(fā)的應(yīng)用,能夠?qū)崿F(xiàn)特定的業(yè)務(wù)能力,支持跨設(shè)備調(diào)度與分發(fā),為用戶提供一致、高效的應(yīng)用體驗(yàn)。
?
02
框架層
?
框架層為HarmonyOS的應(yīng)用程序提供了Java/C/C++/JS等多語言的用戶程序框架和Ability框架,以及各種軟硬件服務(wù)對(duì)外開放的多語言框架API;同時(shí)為采用HarmonyOS的設(shè)備提供了C/C++/JS等多語言的框架API,不同設(shè)備支持的API與系統(tǒng)的組件化裁剪程度相關(guān)。
?
03
系統(tǒng)服務(wù)層
?
系統(tǒng)服務(wù)層是HarmonyOS的核心能力集合,通過框架層對(duì)應(yīng)用程序提供服務(wù),該層包含了以下幾個(gè)部分:
?
-
系統(tǒng)基本能力子系統(tǒng)集
-
基礎(chǔ)軟件服務(wù)子系統(tǒng)集
-
增強(qiáng)軟件服務(wù)子系統(tǒng)集
-
硬件服務(wù)子系統(tǒng)集
?
04
內(nèi)核層
?
-
內(nèi)核子系統(tǒng)
?
HarmonyOS采用多內(nèi)核設(shè)計(jì),支持針對(duì)不同資源受限設(shè)備選用適合的OS內(nèi)核。內(nèi)核抽象層通過屏蔽多內(nèi)核差異,對(duì)上層提供基礎(chǔ)的內(nèi)核能力,包括進(jìn)程/線程管理、內(nèi)存管理、文件系統(tǒng)、網(wǎng)絡(luò)管理和外設(shè)管理等。
?
-
驅(qū)動(dòng)子系統(tǒng)
?
????????驅(qū)動(dòng)框架(HDF)是鴻蒙硬件生態(tài)開放的基礎(chǔ),提供統(tǒng)一的外設(shè)訪問能力和驅(qū)動(dòng)開發(fā)、管理框架。
?
總結(jié)
確實(shí)可以看出鴻蒙的設(shè)計(jì)思路上還有許多都是Android的影子。
只有站在巨人的肩膀上我們才能看的更遠(yuǎn),Android作為現(xiàn)在成熟的操作系統(tǒng),經(jīng)歷了多年的迭代和優(yōu)化,在安全性、易用性以及生態(tài)上已經(jīng)非常優(yōu)秀了。鴻蒙作為一個(gè)后期之后,或者要成為市場(chǎng)中的新系統(tǒng),必須要取其精華,去其糟粕才能給用戶帶來更好的體驗(yàn)。
所以說,操作系統(tǒng)這件事是要站在巨人的肩膀之上才能不斷成長(zhǎng)甚至超越。做操作系統(tǒng)其實(shí)并不是很難,難的是上面沒有程序開發(fā)人員支持你,下面沒有硬件廠商的支持你,最后還是一個(gè)實(shí)驗(yàn)室里的玩具。
我個(gè)人感覺華為向操作系統(tǒng)進(jìn)軍是對(duì)的,專有的操作系統(tǒng)研發(fā)難度小于通用操作系統(tǒng),假如將來華為的系統(tǒng)成功走進(jìn)了手機(jī)市場(chǎng),估計(jì)會(huì)走蘋果一樣的路,只支持自己的硬件,而應(yīng)用層面一定會(huì)和Android兼容。不過當(dāng)初微軟也曾嘗試在自己的Windows Phone10中兼容Android,最終還是失敗了。
假如幾年之后鴻蒙成功進(jìn)入手機(jī)市場(chǎng),估計(jì)到時(shí)候是另一場(chǎng)博弈了吧——Android不允許開發(fā)者支持鴻蒙OS!
?
好多資源都在這里!
總結(jié)
以上是生活随笔為你收集整理的鸿蒙OS真的是PPT吗?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 互联网大牛们的电脑桌面
- 下一篇: 西北大学软工专硕专业课面试可能会问到的问