Rumah > Artikel > Operasi dan penyelenggaraan > Adakah sistem Android juga berasaskan Linux?
Sistem Android berasaskan sistem Linux Android ialah nama sistem pengendalian mudah alih sumber terbuka berdasarkan platform Linux yang diumumkan oleh Google pada 5 November 2007. Platform ini terdiri daripada sistem pengendalian, middleware; , antara muka pengguna dan komposisi perisian aplikasi.
Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.
Adakah sistem Android juga berdasarkan sistem Linux?
Pengenalan kepada sistem pengendalian Android
Android adalah berdasarkan sistem pengendalian Linux yang diumumkan oleh Google pada 5 November 2007 Nama sistem pengendalian mudah alih sumber terbuka bagi platform Linux Platform ini terdiri daripada sistem pengendalian, perisian tengah, antara muka pengguna dan perisian aplikasi. Ia menggunakan seni bina timbunan perisian (Timbunan Perisian, juga dikenali sebagai timbunan perisian) dan terutamanya dibahagikan kepada tiga bahagian. Lapisan bawah adalah berdasarkan kernel Linux, dibangunkan dalam bahasa C, dan hanya menyediakan fungsi asas; lapisan tengah merangkumi Perpustakaan fungsi dan Mesin Maya mesin maya, dibangunkan dalam C++. Lapisan atas ialah pelbagai perisian aplikasi, termasuk program panggilan, program mesej teks, dll. Perisian aplikasi dibangunkan oleh setiap syarikat sendiri, menggunakan Java sebagai sebahagian daripada program.
Maksud asal perkataan Android merujuk kepada "robot". sistem yang dibina untuk terminal mudah alih dan perisian mudah alih yang lengkap.
Seni bina sistem:
Seni bina sistem Android, seperti sistem pengendaliannya, menggunakan seni bina berlapis. Android dibahagikan kepada empat lapisan, daripada peringkat tinggi ke peringkat rendah, iaitu lapisan aplikasi, lapisan rangka kerja aplikasi, lapisan masa jalan sistem dan lapisan kernel Linux.
1. Aplikasi
Android akan dikeluarkan bersama-sama dengan satu siri pakej aplikasi teras, yang termasuk pelanggan, program pesanan ringkas SMS, kalendar, peta, penyemak imbas, dan Program pengurusan kenalan dsb. Semua aplikasi ditulis menggunakan bahasa JAVA.
2. Rangka Kerja Aplikasi
Pembangun juga mempunyai akses penuh kepada rangka kerja API yang digunakan oleh aplikasi teras. Reka bentuk seni bina aplikasi memudahkan penggunaan semula komponen; mana-mana aplikasi boleh menerbitkan blok fungsinya dan mana-mana aplikasi lain boleh menggunakan blok fungsi yang diterbitkan (tetapi mesti mematuhi keselamatan rangka kerja). Begitu juga, mekanisme penggunaan semula aplikasi juga membolehkan pengguna menggantikan komponen program dengan mudah.
3. Pustaka masa jalan sistem
Android mengandungi beberapa pustaka C/C++, yang boleh digunakan oleh komponen yang berbeza dalam sistem Android. Mereka menyediakan perkhidmatan kepada pembangun melalui rangka kerja aplikasi Android.
4. Lapisan kernel Linux
Inti Android ialah versi kernel yang diubah suai berdasarkan kernel Linux. Ia menyediakan pemacu peranti untuk menyokong platform Android.
Struktur sistem:
1. Kernel sistem
Android berjalan pada kernel Linux, tetapi ia bukan GNU/Linux. Kerana kebanyakan fungsi yang disokong secara umum GNU/Linux tidak disokong oleh Android, termasuk Kaherah, X11, Alsa, FFmpeg, GTK, Pango dan Glibc, dsb., telah dialih keluar. Android menggantikan Glibc dengan Bionic, Kaherah dengan Skia, FFmpeg dengan teras terbuka, dsb. Untuk mencapai aplikasi komersial, Android mesti mengalih keluar bahagian yang dihadkan oleh lesen GNU GPL Contohnya, Android mengalihkan pemacu ke Ruang Pengguna, memisahkan sepenuhnya pemacu Linux daripada kernel Linux. Bionic/Libc/Kernel/ bukan fail pengepala Kernel standard. Pengepala Kernel Android dijana daripada pengepala Kernel Linux menggunakan alat untuk mengekalkan pemalar, struktur data dan makro.
2. Lapisan Abstraksi Perkakasan
HAL (Lapisan Abstraksi Perkakasan) Android boleh menyediakan modul pemacu perkakasan dalam bentuk sumber tertutup. Tujuan HAL adalah untuk memisahkan rangka kerja Android daripada kernel Linux supaya Android tidak terlalu bergantung pada kernel Linux untuk mencapai konsep kebebasan Kernel Ia juga membolehkan pembangunan rangka kerja Android berkembang tanpa mengambil kira pelaksanaan pemacu.
3. Perisian perantara
Jambatan komunikasi antara sistem pengendalian dan aplikasi terbahagi kepada dua lapisan: lapisan fungsi (Perpustakaan) dan mesin maya (Mesin Maya). Bionic ialah versi libc Android yang dipertingkatkan. Android juga termasuk Webkit, yang dipanggil Webkit adalah enjin di belakang pelayar Safari Apple. Surface flinger memaparkan kandungan 2D atau 3D pada skrin. Android menggunakan rantai alat (Toolchain) untuk BionicLibc milik Google sendiri.
Android menggunakan OpenCORE sebagai rangka kerja multimedia asas. Open CORE boleh dibahagikan kepada 7 blok utama: PVPlayer, PVAuthor, Codec, PacketVideo Multimedia Framework (PVMF), Operating System Compatibility Library (OSCL), Common dan OpenMAX.
Android menggunakan skia sebagai enjin grafik teras, dipasangkan dengan OpenGL/ES. Fungsi skia dan LinuxCairo adalah setara, tetapi berbanding dengan Linux Cairo, fungsi skia hanyalah asas. Pada tahun 2005, Skia telah diperoleh oleh Google Pada awal tahun 2007, kod sumber Skia GL telah diumumkan kepada umum.
Pangkalan data multimedia Android menggunakan sistem pangkalan data SQLite. Pangkalan data dibahagikan kepada pangkalan data awam dan pangkalan data persendirian. Pengguna boleh mendapatkan pangkalan data yang dikongsi melalui kelas ContentResolver (Lajur).
Lapisan tengah Android kebanyakannya dilaksanakan di Java dan menggunakan Mesin Maya Dalvik khas. Mesin maya Dalvik ialah mesin maya Java "Berasaskan Daftar" Semua pembolehubah disimpan dalam daftar sementara, dan arahan mesin maya dikurangkan secara relatif.
Mesin maya Dalvik boleh mempunyai berbilang kejadian (Instance Setiap aplikasi Android dijalankan dengan mesin maya Dalvik sendiri, supaya sistem boleh dioptimumkan semasa menjalankan program). Mesin maya Dalvik tidak menjalankan Java bytecode (Bytecode), tetapi menjalankan fail yang dipanggil format .dex.
4. Mekanisme kebenaran keselamatan
Android sendiri ialah sistem pengendalian dengan kebenaran berasingan. Dalam sistem pengendalian jenis ini, setiap aplikasi berjalan dengan identiti sistem yang unik (ID pengguna Linux dan ID kumpulan). Setiap bahagian sistem juga menggunakan kaedah pengenalan bebasnya sendiri. Beginilah cara Linux mengasingkan aplikasi daripada aplikasi dan aplikasi daripada sistem.
Komponen aplikasi:
Empat komponen utama pembangunan Android ialah:
1. Aktiviti: Digunakan untuk menyatakan fungsi.
2. Perkhidmatan: Menjalankan perkhidmatan di latar belakang dan tidak menyediakan persembahan antara muka.
3. Penerima Siaran (BroadcastReceiver): digunakan untuk menerima siaran.
4. Pembekal Kandungan: Menyokong penyimpanan dan membaca data dalam berbilang aplikasi, bersamaan dengan pangkalan data.
Cadangan berkaitan: "Tutorial Video Linux"
Atas ialah kandungan terperinci Adakah sistem Android juga berasaskan Linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!