Rumah  >  Artikel  >  Tutorial sistem  >  Analisa kemas kini ciri kernel Android dan kernel Linux standard

Analisa kemas kini ciri kernel Android dan kernel Linux standard

WBOY
WBOYasal
2024-06-03 11:53:511110semak imbas

Android系统内核剖析

[Abstrak] Analisis linux seni bina sistem platform android, analisis kod sumber Android terkini, bandingkan dengan kod sumber kernel Linux standard, analisis kemas kini fungsi kernel Android secara terperinci dan bincangkan perbezaan antara. Kernel Android dan kernel Linux standard Perbezaan dan kelebihan Android di platform Unicom China telah dianalisis, dan Android diletakkan di antara pelbagai kernel Ia juga memperkenalkan pemerolehan dan penyusunan kernel Android dalam persekitaran Ubuntu.

[Kata kunci]Android; linux;

Nombor Klasifikasi Perpustakaan Cina: G354.3 Kod Dokumen: Nombor Artikel: 1009-914X (2013) 33-0119-01

1. Gambaran keseluruhan

Dengan perkembangan pesat teknologi terbenam, kelajuan operasi dan fungsi bersepadu platform pintar China Unicom telah bertambah baik. Tambahan pula, Open Handset Alliance OHA, yang diketuai oleh Google, mengambil kesempatan daripada situasi tersebut dan melancarkan platform terminal Android China Unicom pada tahun 2008. Android ialah platform terminal China Unicom yang terbuka dan percuma [1]. Ia telah memecahkan monopoli sistem pengendalian Symbian Motorola pada platform telefon pintar tradisional Pada masa yang sama, kelebihan platformnya juga telah memperkayakan pelbagai fungsi Perisian.

2. Seni bina sistem Android

Android ialah sistem pengendalian telefon mudah alih sumber terbuka berdasarkan platform Linux yang dibangunkan oleh Google Ia adalah platform terminal China Unicom yang merangkumi semua perisian yang diperlukan untuk telefon China Unicom berfungsi Ia terdiri daripada sistem pengendalian, perisian tengah, UI aplikasi.

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

Seni bina sistem Android terdiri daripada empat peringkat berikut dari bawah ke bawah [2]: Modul kernel berasaskan Linux, perpustakaan masa jalan dan perpustakaan lain, rangka kerja aplikasi dan aplikasi.

Lapisan pertama: Sistem pengendalian Linux dan pengembangan sistem Android, dilaksanakan oleh bahasa C.

Lapisan kedua: lapisan perpustakaan sistem dan perisian linux persekitaran masa jalan Android, dilaksanakan oleh C/C++.

Lapisan ketiga: Rangka kerja aplikasi Android Tersembunyi di hadapan setiap aplikasi ialah satu siri perkhidmatan dan sistem.

Tahap 4: Apl Android

Lapisan aplikasi Android terdiri daripada semua aplikasi yang dijalankan pada peranti Android Selain aplikasi sistem seperti panggilan, mesej teks dan kenalan, ia juga termasuk aplikasi pihak ketiga lain yang dipasang pada peranti itu. 3. Analisis kernel Android

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

Peranan kernel 2.1 dalam sistem pengendalian

Android adalah berdasarkan sistem pengendalian Linux dan terdiri daripada empat bahagian utama: perkakasan, kernel sistem, perkhidmatan sistem dan aplikasi. Antaranya, kernel adalah bahagian teras Fungsi utamanya adalah untuk berinteraksi dengan perkakasan komputer, merealisasikan kawalan pengaturcaraan dan operasi soket perkakasan, menjadualkan akses kepada sumber perkakasan, dan pada masa yang sama menyediakan persekitaran pelaksanaan perantaraan dan virtualisasi. perkakasan kepada bicu. Fungsi utama termasuk: rutin perkhidmatan gangguan, penjadual proses, pengurusan memori video ruang alamat proses, dan komunikasi antara proses.

2.2 kernel Android

Untuk membandingkan dan menganalisis kernel Android, kami membina platform kompilasi dan pembangunan kernel Android pada sistem pengendalian Ubuntu, dan memuat turun versi kod kernel Android terkini JellyBean melalui repo.

Selepas perbandingan terperinci dengan kod sumber kernel Linux standard, didapati terdapat perbezaan antara kernel Android dan kernel Linux standard dari segi sistem fail, mekanisme komunikasi antara proses, pengurusan memori, dsb.

(1) Sistem Fail

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

Inti Android telah mengurangkan sistem fail YAFFS2 yang tidak diterima pakai dalam kernel Linux standard.

(2) Mekanisme komunikasi antara proses

Binder ialah mekanisme komunikasi antara proses linux kernel android, walaupun ia menyediakan fungsi panggilan prosedur jauh (RPC). dalam

Mekanisme Pengikat sistem Android terdiri daripada komponen sistem, iaitu Klien, Pelayan, ServiceManager dan pemacu Binder Client, Server dan ServiceManager dijalankan dalam ruang pengguna, dan pemacu Binder berjalan dalam ruang kernel.

(3) Pengurusan memori video

Dalam modul pengurusan memori video, kernel Android menggunakan kernel peringkat rendah yang tidak digunakan dalam kernel Linux standard

Strategi pengurusan deposit. Sistem Android menggunakan mekanisme yang dipanggil LMK (LowMemoryKiller), yang mengelaskan dan mengumpulkan proses mengikut kepentingannya. Apabila memori video tidak mencukupi, proses dalam kumpulan tahap terendah akan ditutup.

4. Pemerolehan dan penyusunan kernel Android

Berikut mengambil sistem pengendalian Ubuntu13.04 sebagai contoh untuk menerangkan cara membinanya di bawah sistem Ubuntu13.04

Kompilasi kernel Android dan platform pembangunan. Untuk membina persekitaran kompilasi kernel Android pada Ubuntu, langkah-langkah khusus adalah seperti berikut:

(1) Reka bentuk persekitaran sistem, senarai pakej perisian yang diperlukan flex, bison, gperf, libsdl-dev, libesd0-

dev, libwxgtk2.6-dev (pilihan), build-essential, zip, curl; (2) Pasang versi 1.7 JDK (3) Pasang repo (4) Bina folder bin dalam direktori fail utama dan tambahnya kepada Antara pembolehubah persekitaran; (5) Muat turun skrip repo dan tukar atributnya kepada boleh laku curlhttp:///repo>~/bin/repochmoda+x~/bin/repo (6) Buat direktori untuk menyimpan kod sumber mkdircoredroidcdcoredroid ( 7) Dapatkan kod kernel Android: gitclonegit:///kernel/common.git

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

Selepas langkah di atas, versi terkini kernel Android akan dimuat turun ke folder coredroid. Selepas kompilasi membuat selesai, fail zImage dijana Anda boleh menggunakan simulator untuk menguji dan menjalankan cdmydroid/out/cupcake/out/target/product/genericemulator-imagesystem.img-datauserdata.img-ramdiskramdisk.img-kernel~ /coredroid/common/arch/arm/ boot/zImage

5. Kesimpulan

Inti Android dioptimumkan daripada kernel Linux standard Ia mewarisi pelbagai kelebihan kernel Linux dan mengekalkan struktur utama kernel Linux standard. Pada masa yang sama, Android telah membuat perubahan dalam sistem fail, pengurusan memori, mekanisme komunikasi antara proses, pengurusan kuasa dan aspek lain mengikut keperluan platform China Unicom, menambah pemacu yang berkaitan dan fungsi baharu yang diperlukan, dan serasi dengan kebanyakan operasi Linux terbenam yang diperkemas Berbanding dengan sistem lain, Android mengekalkan struktur asas Linux standard untuk sebab ini, sistem Android mempunyai rangkaian aplikasi yang lebih luas dan skalabiliti yang lebih kukuh.

Rujukan

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

[2] Gong Lei, Zhou Cong Pembangunan dan penyelidikan aplikasi terminal China Unicom berdasarkan Android [M]. [3]Zhao Jiong Anotasi Lengkap Linux Kernel[M]. [4] Chen Lijun Analisis dan Aplikasi Kernel Linux[J].

Atas ialah kandungan terperinci Analisa kemas kini ciri kernel Android dan kernel Linux standard. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn