91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

android init 進程學習

發布時間:2020-04-09 19:53:22 來源:網絡 閱讀:747 作者:denghai586 欄目:移動開發

前言

    小生是做android系統的,結合自己的工作與看的相關資料,留下如下感悟。愿與諸君分享交流,以求共同進步。不當之處望各位看官在留言中指正。

init進程總體說明

    首先我們帶著兩個問題來看本節:init進程是個什么玩意兒?它的主要作用是什么?

    android系統中的init進程是從原生linux系統中的init進程中繼承過來的。絕大部份功能保持一致,但也有些許差異,它們之前的差異會在下面的內容中詳細敘述。如果非要給android系統的init進程一個類似定義的東西的話,我的理解是:   

    init進程是由linux內核啟動的第一個用戶空間的程序,主要負責系統運行環境初始化與子進程管理等相關工作。

    android系統中的init進程主要負責以下五種任務:

    1、讀取分析執行init.rc和init.{hardversion}.rc等相關初始化腳本。(與linux中init進程的主要區別點)

    2、生成設備驅動節點。

    3、處理子進程相關消息。

    4、初始化屬性服務。

    5、顯示開機logo

各功能詳細說明


    待續。。。


工作修改實例

    工作中修改init進程代碼主要是為了增加以下功能:

    因為我在做android盒子,所以需要增加一個自適應屏幕分辯率大小與logo大小并讓logo居中顯示的小功能。

    實現思路如下:

        1、修改后綴名為rle的logo文件格式,在其開頭處加上描述該文件高度與寬度的8字節數據。

        2、修改init源碼中的logo.c文件,讀取rle文件時探測是否為自定義格式。如果不是則按照以前的流程,如果是則讀取logo圖片的高寬用做后續使用。

        3、讀取當前顯示fb的大小,并與logo圖片的高寬一起計算得出圖片繪制的起始位置與結束位置,其他的像素點則用宏定義的顏色進行繪制。

    




向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永兴县| 兴宁市| 东海县| 平谷区| 宜阳县| 泗阳县| 二连浩特市| 皮山县| 资溪县| 阿克苏市| 商洛市| 揭阳市| 蚌埠市| 扶余县| 内乡县| 乌拉特中旗| 沽源县| 东丰县| 隆林| 建宁县| 宾川县| 彰化县| 衡山县| 咸宁市| 浠水县| 嘉祥县| 石柱| 邵阳市| 祁连县| 扶沟县| 淮阳县| 九龙县| 乐安县| 吉木乃县| 南澳县| 土默特右旗| 南投市| 巴彦淖尔市| 耿马| 长乐市| 台北县|