分析Android核心與標準Linux核心的功能更新
#[摘要]剖析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及應用程式組成。
#Android系統架構自底向下由以下4個層次組成[2]:基於Linux的核心模組、執行時間函式庫與其他函式庫、應用程式框架、應用程式。
第一層:Linux作業系統與Android系統擴充,由C語言實作。
第二層:系統函式庫層與Android執行階段環境linux 軟體,由C/C++實作。
第三層:Android應用程式框架隱藏在每位應用程式前面的是一系列服務和統。
第四層:Android應用程式
Android應用程式層由所有運行在Android裝置上的應用程式共同構成,它除了包括通話、簡訊、聯絡人等系統應用,還包括其他後續安裝到裝置中的第三方應用程式。 3.Android核心剖析
#2.1核心在作業系統中的地位
Android基於Linux作業系統,由硬體、系統核心、系統服務和應用程式等四大部份組成。其中,核心是最核心的部分,其主要作用在於與電腦硬體進行交互,實現對硬體的程式控制和插口操作,調度存取硬體資源,同時向應用程式提供一個中級的執行環境和對硬體的虛擬插口。主要功能包括:中斷服務程序、程序調度程序、進程位址空間的記憶體管理、進程間通訊。
2.2Android核心
為了比較剖析Android內核,在Ubuntu作業系統上建置了Android內核的編譯開發平台,透過repo,下載最新的Android核心程式碼版本JellyBean。
經過與標準Linux核心原始碼進行詳盡對比,可以發覺,Android核心與標準Linux核心在檔案系統、進程間通訊機制、記憶體管理等方面存在不同。
(1)檔案系統
#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
#經過以上步驟,最新版本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中文網其他相關文章!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

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

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

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

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

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

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

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

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

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