对于鸿蒙的一点见解
周五我在東莞出差,下班后看了開發者大會的視頻回放,回到酒店,我跟鄧總說,我們今天不要拍視頻,也不要打王者了,你給我下鴻蒙的代碼來看看,然后,那天晚上我們都沒有上線王者,鄧總把代碼下載后研究了3個小時。
后面我跟韋老師聊了下,韋老師是參與鴻蒙開發的,他很興奮,也很開心,這因為鴻蒙有一部分的心血也是來自于他,然后他跟我說「先這樣吧,我晚上要把鴻蒙移植到我們的開發板上」,然后,那天晚上大家都看到韋老師發的那個朋友圈,鴻蒙移植成功,做嵌入式開發的人都懂,調通一個東西后,那種愉悅和放松的心情,總是想伸個懶腰休息一下。
對我而言,我對鴻蒙期待不是很大,而且我是覺得鴻蒙在一定程度上是需要吹牛的「之前的那個發布會是需要吹牛,但是這次的這個,能看到鴻蒙需要大家一起的努力的」,這點上,希望我是錯誤的,因為韋老師告訴我,參與鴻蒙開發的人,在國內都是屬于頂尖的。
但是,鴻蒙依然會遇到一些問題,這些問題可能不僅僅是技術就可能解決的。
鴻蒙對標的是安卓系統,而且鴻蒙為了兼容現在的設備,鴻蒙一定需要兼容安卓的某些特性「比如adb」,要不然現在的所有設備使用上就有問題。
OS和內核是兩個東西,鴻蒙的內核可以是Linux,也可以是華為自己開發的內核,看代碼命名是Liteos_a,這個是一個實時內核,實時內核和非實時內核有非常明顯的區分,我們正常使用的windows,Linux等都是分時系統,每個任務都有一個時間片,實時系統調度算法和分時系統是不同的,像嵌入式系統freertos,rtt是實時系統。從這里隱約可以看出來華為的對手并不是Linux。
----?舉例子
一年級的小明,每天都在努力跑步,并宣稱說,我要打敗那個三年級的大雄,然后等過了幾天,小明對同班的小花說,我要打敗的人是你,在一年級這個班級,我才是真正的老大。
ps:Linux內核也可以打上實時補丁。
---- 如果鴻蒙VS安卓
安卓開發的應用需要重新開發,這部分不僅需要華為方面的努力,還需要產品公司的人去學習鴻蒙的api,一款應用可能需要ios、安卓、鴻蒙三個系統的開發人員,因為現在世面上的鴻蒙手機還沒有,所以這個技術積累還是很少的。
---- 廠商愿意不愿意使用鴻蒙,這個才是最大的問題。
我們知道,手機芯片原廠釋放芯片的同時也會釋放SDK包,如果需要占領手機市場,那就需要搞定這些芯片原廠,適配他們的芯片,適配他們的外設,雖然安卓發展到現在已經很多個版本了,但是依然每天有很多問題需要解決。
安卓發展到現在,也出現了很多新穎有用的特性,比如我之前在視頻里面提到的,Android 9之后有一個特性「就是不需要關閉WIFI也能打開手機熱點」,這是一個非常有效而且有用的功能,這個功能可以讓信號覆蓋不到的地方組網,而且安卓的很多現有特性對用戶來說是非常重要的,用戶會為了鴻蒙而拋棄體驗嗎?
鴻蒙想達到安卓,我覺得路子還是非常長。但是Liteos是非常值得期待的。
因為Liteos要打的可能不是Linux而是一些嵌入式RTOS,比如Freertos。
但是這也會遇到同樣的問題,芯片廠商愿意不愿意花精力和心思去做這個事情,比如說Nordic,這個是一個非常典型的藍牙芯片,它有自己的app,協議棧,如果讓他們在他們的芯片上重新開發Liteos,不管從穩定性,可量產性,都還是未知的。
我之前做的ESP32,用的是Freertos,如果Liteos想占領IOT市場,就需要在這方面下功夫,比如讓廠商在芯片上移植Liteos,相對于搞定高通這樣的芯片廠商,搞定樂鑫這樣的國產芯片相對容易多了。
鴻蒙的出來,在學生和開發者之中是比較轟動的,學生和開發者都喜歡大牛,喜歡新鮮的技術,而且學生和開發者大部分有情懷,但是鴻蒙想靠開發者和學生去一統江湖,有困難,因為資源在廠商手里,不是在開發者和學生手機。但開發者和學生的作用卻很大,他們可以移植Liteos到不同的芯片上去,擴大Liteos的使用,提升Liteos的穩定性和擴展性。
13年,那時候,平板行業非常火熱,然后也有一家國內大企業想吃一下這塊蛋糕,跟方案公司合作,但是后來沒有量產,一個原因是芯片原廠技術支持不到位,出現的問題比較多,做產品跟做技術不一樣,做產品的周期非常短,不可能原地等待原廠研究很長時間。
----為啥Liteos使用駝峰命名?
這個就是一個習慣的問題,并不能說誰好誰不好,但是如果以前看Linux代碼都是下劃線的形式,突然變成大寫,第一感覺就是有點奇怪。
縮進方式用空格縮進我覺得這是一個提升,tab鍵因為在不同的軟件中會顯示不同,總是需要設置才能顯示正常,也算是制定了好的標準。
---- 中文注釋
在每個文件的前面,會有一串英文解釋這段代碼的作用,有點疑問,為什么不直接寫成中文。畢竟中文的話,閱讀起來會相對輕松一些。
----?其他
其他也說不出個所以然,大家看到鴻蒙應該都會有自己的看法,也想知道要不要跟著華為走,現在要不要開始學習鴻蒙,我覺得這些都是太過于著急了。
那天直播結束,我們就聯系了一個朋友,說要買點海思的芯片,得到的消息是芯片已經是斷貨狀態,我猜測,可能已經有人開始操作了。
看代碼可以看到其實很多技術是相通的,而且因為是中國人維護和開發,文檔和交流上會方便很多,我覺得沒必要緊張,該怎么學習還是怎么學習,至少我覺得可以說明一點,到目前位置,脫離C語言來寫內核還不太現實,好好學習C語言,學習操作系統,不說其他的,學習51單片機也差不到哪里去。
總結
- 上一篇: servlet笔试题java,Java推
- 下一篇: 我的丈母娘