首頁 系統教程 Linux 分析Android核心與標準Linux核心的功能更新

分析Android核心與標準Linux核心的功能更新

Jun 03, 2024 am 11:53 AM

Android系统内核剖析

#[摘要]剖析android平台系統架構linux 刪除資料夾,透過對最新Android原始碼的解析,將其與標準Linux核心原始碼比較,詳盡解析Android核心的功能更新,討論Android核心與標準Linux核心之間的不同以及Android在聯通平台的優勢,並對Android在各類核心之間作出一個定位,介紹了Ubuntu環境下Android核心的取得與編譯。

[關鍵字]Android;linux;核心;編譯

中圖分類號:G354.3文獻標示碼:A文章編號:1009-914X(2013)33-0119-01

1、概述

隨著嵌入式技術的急速發展,聯通智慧平台的運作速率和所整合的功能獲得了極大提高。進而,由Google主導的開放手機聯盟OHA乘勢在2008年推出了Android聯通終端平台。 Android是一個開放、自由的聯通終端平台[1],它的,打破了摩托羅拉Symbian作業系統作業系統在傳統智慧型手機平台上的壟斷地位,同時,其平台化的優勢也大大豐富各類手持式設備軟體的功能。

2、Android系統架構

Android是Google開發的基於Linux平台的開源手機作業系統,它是一個聯通終端平台,包括了聯通電話工作所需的全部軟體,由作業系統、中間件、UI及應用程式組成。

linux内核android_内核管理器_内核稳定

#Android系統架構自底向下由以下4個層次組成[2]:基於Linux的核心模組、執行時間函式庫與其他函式庫、應用程式框架、應用程式。

第一層:Linux作業系統與Android系統擴充,由C語言實作。

第二層:系統函式庫層與Android執行階段環境linux 軟體,由C/C++實作。

第三層:Android應用程式框架隱藏在每位應用程式前面的是一系列服務和統。

第四層:Android應用程式

Android應用程式層由所有運行在Android裝置上的應用程式共同構成,它除了包括通話、簡訊、聯絡人等系統應用,還包括其他後續安裝到裝置中的第三方應用程式。 3.Android核心剖析

内核管理器_linux内核android_内核稳定

#2.1核心在作業系統中的地位

Android基於Linux作業系統,由硬體、系統核心、系統服務和應用程式等四大部份組成。其中,核心是最核心的部分,其主要作用在於與電腦硬體進行交互,實現對硬體的程式控制和插口操作,調度存取硬體資源,同時向應用程式提供一個中級的執行環境和對硬體的虛擬插口。主要功能包括:中斷服務程序、程序調度程序、進程位址空間的記憶體管理、進程間通訊。

2.2Android核心

為了比較剖析Android內核,在Ubuntu作業系統上建置了Android內核的編譯開發平台,透過repo,下載最新的Android核心程式碼版本JellyBean。

經過與標準Linux核心原始碼進行詳盡對比,可以發覺,Android核心與標準Linux核心在檔案系統、進程間通訊機制、記憶體管理等方面存在不同。

(1)檔案系統

内核稳定_linux内核android_内核管理器

#Android核心中降低了標準Linux核心中沒有採納的YAFFS2檔案系統。

(2)進程間通訊機制

Binder是一種進程間通訊機制linux核心android,雖然是提供遠端過程呼叫(RPC)功能。在

Android系統的Binder機制中,由一個系統元件組成,分別是Client、Server、ServiceManager和Binder驅動程序,其中Client、Server和ServiceManager運行在用戶空間,Binder驅動程式運行核心空間。

(3)顯存管理

在顯存管理模組,Android核心採用了一種不用於標準Linux核心的低內

儲存管理策略。 Android系統採用的則是一種稱為LMK(LowMemoryKiller)的機制,這些機制將流程依重要性分級、分組。顯存不足時,將處於最低層級群組的進程關閉。

4、Android核心取得與編譯

下邊以Ubuntu13.04作業系統為例,講解在Ubuntu13.04系統下怎樣搭建

Android核心編譯開發平台。在Ubuntu上建置Android核心編譯環境,具體步驟如下:

(1)打算系統環境,須要的軟體包列表flex,bison,gperf,libsdl-dev,libesd0-

dev,libwxgtk2.6-dev(optional),build-essential,zip,curl;(2)安裝JDK的1.7版本;(3)安裝repo;(4)在主檔案目錄建立一個bin資料夾並加入環境變數當中;(5)下載repo腳本,將它的屬性改為可執行curlhttp:///repo>~/bin/repochmoda+x~/bin/repo;(6)建立一個儲存原始碼的目錄mkdircoredroidcdcoredroid(7)取得Android核心程式碼:gitclonegit:///kernel/common.git

linux内核android_内核管理器_内核稳定

#經過以上步驟,最新版本Android核心就被下載到資料夾coredroid當中。 make編譯完成後產生zImage文件,可用模擬器測試運行cdmydroid/out/cupcake/out/target/product/genericemulator-imagesystem.img-datauserdata.img-ramdiskramdisk.img-kernel~/coredroid/common/arch/arm/ boot/zImage

5、結語

Android核心由標準Linux核心優化得來,其承繼了Linux核心的各類別優點,保留了標準Linux核心的主體架構。同時,Android根據聯通平台的需求,在檔案系統、記憶體管理、進程間通訊機制、電源管理等方面進行了更改,添加相關的驅動程式及必要的新功能,而且與大多數精簡的嵌入式Linux操作系統相比,Android很大程度上保留了標準Linux的基本架構,為此,Android系統應用範圍愈加廣泛,拓展性更強。

參考文獻

[1]CodeHome.Android-AnOpenHandsetAllianceProject.[EB/OL]http:///android/what-is-android.

[2]公磊,週聰.基於Android的聯通終端應用程式開發與研[M].人民郵電出版社linux核心android,2007

[3]趙炯.Linux內核完全註釋[M].機械工業出版社,2004.

[4]陳莉君.Linux核心的剖析及應用[J].南京郵電大學學報.

以上是分析Android核心與標準Linux核心的功能更新的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1653
14
CakePHP 教程
1413
52
Laravel 教程
1304
25
PHP教程
1251
29
C# 教程
1224
24
Linux最好使用的是什麼? Linux最好使用的是什麼? Apr 03, 2025 am 12:11 AM

Linux最適合用作服務器管理、嵌入式系統和桌面環境。 1)在服務器管理中,Linux用於託管網站、數據庫和應用程序,提供穩定性和可靠性。 2)在嵌入式系統中,Linux因其靈活性和穩定性被廣泛應用於智能家居和汽車電子系統。 3)在桌面環境中,Linux提供了豐富的應用和高效的性能。

Linux的5個基本組件是什麼? Linux的5個基本組件是什麼? Apr 06, 2025 am 12:05 AM

Linux的五個基本組件是:1.內核,管理硬件資源;2.系統庫,提供函數和服務;3.Shell,用戶與系統交互的接口;4.文件系統,存儲和組織數據;5.應用程序,利用系統資源實現功能。

Linux最有用的是什麼? Linux最有用的是什麼? Apr 09, 2025 am 12:02 AM

Linux在服務器、嵌入式系統和桌面環境中的應用廣泛。 1)在服務器領域,Linux因其穩定性和安全性成為託管網站、數據庫和應用的理想選擇。 2)在嵌入式系統中,Linux因其高度定制性和高效性而受歡迎。 3)在桌面環境中,Linux提供了多種桌面環境,滿足不同用戶需求。

如何學習Linux基礎知識? 如何學習Linux基礎知識? Apr 10, 2025 am 09:32 AM

Linux基礎學習從零開始的方法包括:1.了解文件系統和命令行界面,2.掌握基本命令如ls、cd、mkdir,3.學習文件操作,如創建和編輯文件,4.探索高級用法如管道和grep命令,5.掌握調試技巧和性能優化,6.通過實踐和探索不斷提陞技能。

什麼是Linux設備? 什麼是Linux設備? Apr 05, 2025 am 12:04 AM

Linux設備是運行Linux操作系統的硬件設備,包括服務器、個人電腦、智能手機和嵌入式系統。它們利用Linux的強大功能執行各種任務,如網站託管和大數據分析。

互聯網在Linux上運行嗎? 互聯網在Linux上運行嗎? Apr 14, 2025 am 12:03 AM

互聯網運行不依賴單一操作系統,但Linux在其中扮演重要角色。 Linux廣泛應用於服務器和網絡設備,因其穩定性、安全性和可擴展性受歡迎。

Linux的缺點是什麼? Linux的缺點是什麼? Apr 08, 2025 am 12:01 AM

Linux的缺點包括用戶體驗、軟件兼容性、硬件支持和學習曲線。 1.用戶體驗不如Windows或macOS友好,依賴命令行界面。 2.軟件兼容性不如其他系統,缺乏許多商業軟件的原生版本。 3.硬件支持不如Windows全面,可能需要手動編譯驅動程序。 4.學習曲線較陡峭,掌握命令行操作需要時間和耐心。

Linux操作是什麼? Linux操作是什麼? Apr 13, 2025 am 12:20 AM

Linux操作系統的核心是其命令行界面,通過命令行可以執行各種操作。 1.文件和目錄操作使用ls、cd、mkdir、rm等命令管理文件和目錄。 2.用戶和權限管理通過useradd、passwd、chmod等命令確保系統安全和資源分配。 3.進程管理使用ps、kill等命令監控和控制系統進程。 4.網絡操作包括ping、ifconfig、ssh等命令配置和管理網絡連接。 5.系統監控和維護通過top、df、du等命令了解系統運行狀態和資源使用情況。

See all articles