這二個月的時間,有一半都投資在 Multi-Core 的技術工作上,開發之餘,順勢整理了 8 門課程給一些客戶。日前也開始進入教材編輯階段了,本週完成 3 門課程,在此簡單做個紀錄。
Android 電源管理: PowerManagerService, Power Hint 與 Power HAL
Jelly Bean 強化了 Power HAL 的功能,並且透過 Power Hint 的方式增強 Power Saving。這個主題會著重在 Power HAL 的實作,以及 Wakelock 的原理。如何將 Control Group、CPU Governors 與 PowerManagerService 放在一起使用 (Put all together):能達到什麼目標,解決哪些過去的問題?都是這門課程的重點。
Android Hardware Rendering and Composer
針對 SurfaceFlinger的Hardware Rendering 架構做介紹,此外也將介紹 hwcompower 的原理以及實作概念。這門課程是 Android Graphics System 的延伸,特別將硬體加速的部份抽離出來,獨立講解。這門課程的重點戲之一,就是 hwcomposer HAL 的實作。
HAL Stub: Implementation in Multi-core Way
這是筆者近期比較特別的研究主題,實作成果也陸續整合至 MagicLEGO 平臺,或許未來能提供一個絕佳的效能與多核心 Turnkey solution。本課程跨越 Android Framework、Kernel scheduling、Thread building block 等多個領域,將是未來很重要的多核心技術。本課程利用簡單的實例,說明 HAL 的實作如何針對多核心進行重構,以支援多核心環境。
後記
上述課程,都會搭配 Simple code 進行講解,當然也會有實作展示。所有的成果,都會整合至 MagicLEGO 平臺,課程也以 MagicLEGO 做為講解標地。
Jollen's Blog 使用 Github issues 與讀者交流討論。請點擊上方的文章專屬 issue,或 open a new issue
您可透過電子郵件 jollen@jollen.org,或是 Linkedin 與我連絡。更歡迎使用微信,請搜尋 WeChat ID:jollentw