0. 前言
我平常主要活躍在51CTO OpenHarmony技術(shù)社區(qū)上和華為官方的開發(fā)者論壇上。
51CTO OpenHarmony技術(shù)社區(qū)有我的技術(shù)專欄《鴻蒙系統(tǒng)學(xué)習(xí)筆記》,這個專欄匯集了我在過去一年多時間里學(xué)習(xí)鴻蒙開發(fā)技術(shù)的一些心得,其中不少博文收獲了不少好評。 下面就簡單列一下鏈接出來,感興趣的讀者請移步去那邊閱讀,這里就不費(fèi)時費(fèi)力轉(zhuǎn)過來了。
- 0.1 《鴻蒙系統(tǒng)的啟動流程v2.0》----LiteOS_A內(nèi)核系統(tǒng)
- 0.2 《鴻蒙系統(tǒng)的啟動流程v3.0》++LiteOS_M內(nèi)核系統(tǒng)
- 0.3 《鴻蒙系統(tǒng)的的編譯流程及分析v1.0》----小型系統(tǒng)+輕量系統(tǒng)
- 0.4 關(guān)于“Hi3861_WiFiIoT工程”的一組文章
- 0.5 《鴻蒙的DFX子系統(tǒng)》----小型系統(tǒng)+輕量系統(tǒng)
- 0.6 關(guān)于“SAMGR--系統(tǒng)服務(wù)框架子系統(tǒng)”的一組文章,V1.0為比較隨意的博文,發(fā)表在51CTO OpenHarmony技術(shù)社區(qū);V2.0為比較正式的博文,在2021年下半年發(fā)表在“確實?開源”論壇,拿去參加第四屆中國軟件開源創(chuàng)新大賽(代碼評注組),榮獲二等獎,V2.0版本博文入口為《OHOS的系統(tǒng)服務(wù)框架子系統(tǒng)(SAMGR)代碼解讀》
- 0.6 關(guān)于標(biāo)準(zhǔn)系統(tǒng)的編譯部分,有幾篇簡短博文。
- 0.7 關(guān)于鴻蒙系統(tǒng)的驅(qū)動子系統(tǒng)部分,也有幾篇博文,但后來停止繼續(xù)更新,主要是把它們寫到書里去了。
上面這些博文內(nèi)容,將會以更詳盡、更完整的全新面貌呈現(xiàn)在我的技術(shù)書籍《沉浸式剖析OpenHarmony源代碼》里面,其中驅(qū)動子系統(tǒng),是全書的重點(diǎn),花了整本書25%的篇幅去深扒鴻蒙系統(tǒng)的驅(qū)動開發(fā)幾乎所有細(xì)節(jié),敬請期待。
剛剛我也在本社區(qū)也開通了《鴻蒙系統(tǒng)學(xué)習(xí)筆記》專欄,未來有新的博文要發(fā)表,我將盡量兩邊同步發(fā)布。
1. 歷程
2021年大概也就是3月底的這個時候,我才算是真正結(jié)識OpenHarmony的。
?
當(dāng)時也是為了尋找工作機(jī)會,就去了解一下?lián)f是搭載了HarmonyOS 1.0的華為智慧屏產(chǎn)品(我的老本行就是家庭影音產(chǎn)品方向的),然后在網(wǎng)上也搜索了解一下HarmonyOS是什么個情況,再然后就被吸引過來了。
?
當(dāng)然我也順帶了解了一下物聯(lián)網(wǎng)的發(fā)展情況,看到了《信息通信行業(yè)發(fā)展規(guī)劃(2016-2020年)》和《信息通信行業(yè)發(fā)展規(guī)劃物聯(lián)網(wǎng)分冊(2016-2020年)》兩份文件還有其它一些資料,才發(fā)現(xiàn)原來物聯(lián)網(wǎng)這盤棋這么大!2021年3月發(fā)布的《“十四五”規(guī)劃綱要》和11月發(fā)布的《“十四五”信息通信行業(yè)發(fā)展規(guī)劃》做了更詳細(xì)和具體的規(guī)劃,要知道我黨向來是說到做到的,今天的規(guī)劃,明天就變成現(xiàn)實了!
?
3月底,我才開始從gitee下載代碼回來學(xué)習(xí)的,此時OpenHarmony已經(jīng)開源半年多了,所以我算不上最早接觸OpenHarmony的那一批人,不過也還不算晚。
?
我在51CTO OpenHarmony技術(shù)社區(qū)活躍起來,應(yīng)該就是2021年3月底開始的,至今剛好一年,所以又到了盤點(diǎn)一下的時間了。
?
經(jīng)過一些日子的學(xué)習(xí)和整理,4月初我在51CTO OpenHarmony技術(shù)社區(qū) 發(fā)表了第一篇博文,沒想到這么受大家的歡迎,這給了我很大的鼓勵。當(dāng)時純粹就是想盡量深入理解一下OpenHarmony,也把自己的一些學(xué)習(xí)心得分享出來而已,多少也帶點(diǎn)開源的意思。大家可以看到我早期分享的博文,都帶有相應(yīng)的pdf文檔的,只想著方便大家學(xué)習(xí)使用就好。網(wǎng)絡(luò)上的各種轉(zhuǎn)載不標(biāo)明出處也就罷了,畢竟寫出來就是為了給別人學(xué)習(xí)的,也省得我自己動手去轉(zhuǎn)載。但后來看到有人拿著這些文檔去招搖撞騙,還有些地方拿過去給人收費(fèi)(Xx幣或積分)下載,我就感覺不爽了,這不是我的本意。所以后來就漸漸不帶pdf文檔了,請各位小伙伴多加包涵。
?
6、7月份的時候,有兩位自稱是出版社編輯的人在社區(qū)私信上問我要不要合作出書,我婉拒了~~,因為我也是要找書看的人,還沒敢有寫書給別人看的想法。
?
后來怎么等也不見有南向開發(fā)的書上市,這是個問題,但也是個機(jī)會。正所謂“王侯將相寧有種乎”,所有的書不還都是人寫出來的嘛!既然沒有,那就自己寫一本!所以在9月份之后,我就比較少在社區(qū)上發(fā)文了,一個是沒空了,另一個是因為都寫到書里去了~~
?
10月份,我參加了HDC,對OpenHarmony的技術(shù)路線和未來的發(fā)展有了更進(jìn)一步的認(rèn)識;HDC上也順便結(jié)識了幾位大佬,更加確定了這個方向可以走得很遠(yuǎn)。
?
經(jīng)過幾個月的學(xué)習(xí)、總結(jié)、整理,到農(nóng)歷年底的時候,這本書其實已經(jīng)基本成型了。
?
但是寫書畢竟不是寫技術(shù)博客,技術(shù)博客的隨意性和行文的口語化等,在書上肯定是不允許的。因此今年2/3月份,主要都是圍繞原創(chuàng)圖書的寫作規(guī)范,來對章節(jié)、行文、圖表、甚至標(biāo)點(diǎn)符號的使用等方面做調(diào)整,這也是一個非常繁瑣的過程。
?
雖然初稿已經(jīng)提交出版社了,但是從編輯的角度來看,肯定還少不了幾輪的來回溝通和微調(diào),然后才能印刷出版~~
?
所以接下來還需要關(guān)注此書的小伙伴們耐心再等等。
?
與OpenHarmony共同成長的這一年,OpenHarmony茁壯成長碩果累累,我也收獲頗豐,至少又完成了一件以前都不敢想的事情,心里的成就感是斂不住的。
2.成果
本書的章節(jié)安排,基本上就是本人學(xué)習(xí)OpenHarmony開發(fā)從入門到深入的過程實錄,從一個初學(xué)者的視角來一邊學(xué)習(xí),一邊總結(jié),漸進(jìn)式地進(jìn)行條分縷析,以展現(xiàn)我所理解的OpenHarmony。
本書目前分為9章,各章節(jié)的大概內(nèi)容如下:
- 第1章,簡單介紹OpenHarmony的發(fā)展歷史、技術(shù)特性和發(fā)展前景。
- 第2章,OpenHarmony的設(shè)備開發(fā)環(huán)境搭建步驟繁瑣且復(fù)雜,是開發(fā)者入門OpenHarmony驅(qū)動開發(fā)遇到的第一個攔路虎,本章提供了一個清晰的開發(fā)環(huán)境搭建步驟,為開發(fā)者提供一個可行的操作參考。
- 第3章,簡單介紹系統(tǒng)架構(gòu)和一二級目錄結(jié)構(gòu),讓開發(fā)者對OpenHarmony有一個整體的認(rèn)識。
- 第4章,OpenHarmony的編譯構(gòu)建體系非常復(fù)雜,多種構(gòu)建工具常常交叉使用,非常容易讓人產(chǎn)生困擾。本章在目前情況下盡量把小型系統(tǒng)、標(biāo)準(zhǔn)系統(tǒng)的編譯體系講清楚,幫助開發(fā)者理清系統(tǒng)構(gòu)建上的頭緒。
- 第5章,詳細(xì)分析了OpenHarmony系統(tǒng)服務(wù)層各大功能組件的詳細(xì)啟動流程。
- 第6章,分析了OpenHarmony設(shè)備驅(qū)動開發(fā)需要關(guān)注的部分子系統(tǒng),特別是DFX子系統(tǒng)和IoT硬件子系統(tǒng)。
- 第7章,詳細(xì)分析了OpenHarmony系統(tǒng)服務(wù)框架的基礎(chǔ)理念和實現(xiàn),即所有功能和特性,都抽象為服務(wù)進(jìn)行管理和使用。這一章,目前僅限于對輕量系統(tǒng)和小型系統(tǒng)的系統(tǒng)服務(wù)框架進(jìn)行分析,暫未涉及標(biāo)準(zhǔn)系統(tǒng)部分。本章的內(nèi)容,在2021年下半年拿去參加第四屆中國軟件開源創(chuàng)新大賽(代碼評注組),榮獲二等獎。
- 第8章,初步分析了分布式通信子系統(tǒng)的部分組件,其中的軟總線組件是OpenHarmony實現(xiàn)萬物互聯(lián)/萬物智聯(lián)的基石。因為軟總線是一個非常龐大且復(fù)雜的系統(tǒng),這幾個月來我一直嘗試盡可能深入地去理解它,但是技術(shù)難點(diǎn)非常多,我對軟總線核心部分的理解,還沒有能夠非常順暢地串聯(lián)起來,因此想要做出如第7章和第9章那樣完整而細(xì)致的總結(jié),目前還做不到,只能請讀者們見諒了。后繼會在社區(qū)上發(fā)博文以記錄軟總線模塊的學(xué)習(xí)心得,待有所理解后再匯總到本書的更新版本中去。
- 第9章,非常深入地分析了驅(qū)動子系統(tǒng)自下而上的大量實現(xiàn)細(xì)節(jié),為驅(qū)動開發(fā)者們深入理解OpenHarmony的驅(qū)動框架提供一個參考。驅(qū)動子系統(tǒng)中還有不少地方,本書沒有進(jìn)一步展開深入分析的,未來也會以社區(qū)博文的方式進(jìn)行補(bǔ)充。
另外,目前本書暫未涉及系統(tǒng)移植方面的經(jīng)驗總結(jié),是一個比較大的遺憾,希望未來能夠一并補(bǔ)全。
因為實際上我也是OpenHarmony的一個初學(xué)者,在學(xué)習(xí)和總結(jié)中,難免會有各種疏漏和錯誤,讀者朋友在閱讀本書時,發(fā)現(xiàn)我有理解不對的地方,還請積極反饋給我,大家一起討論,共同進(jìn)步。
-
系統(tǒng)開發(fā)
+關(guān)注
關(guān)注
2文章
118瀏覽量
9808 -
驅(qū)動開發(fā)
+關(guān)注
關(guān)注
0文章
130瀏覽量
12079 -
鴻蒙系統(tǒng)
+關(guān)注
關(guān)注
183文章
2634瀏覽量
66368 -
OpenHarmony
+關(guān)注
關(guān)注
25文章
3723瀏覽量
16341
發(fā)布評論請先 登錄
相關(guān)推薦
評論