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