Rumah > Operasi dan penyelenggaraan > operasi dan penyelenggaraan linux > Adakah terdapat perbezaan antara android dan linux?

Adakah terdapat perbezaan antara android dan linux?

青灯夜游
Lepaskan: 2021-11-23 10:20:51
asal
13814 orang telah melayarinya

Terdapat perbezaan antara android dan linux: 1. Aplikasi Android dibangunkan menggunakan JAVA dan boleh dijalankan pada sistem Android melalui mesin maya JAVA aplikasi Linux dibangunkan menggunakan "C/C" dan boleh dijalankan dalam kod mesin Borang berjalan pada sistem kernel. 2. Terdapat perbezaan dalam perisian pemacu asas antara kedua-duanya.

Adakah terdapat perbezaan antara android dan linux?

Persekitaran pengendalian tutorial ini: sistem CentOS 6, komputer Dell G3.

Sebagai sistem pengendalian arus perdana semasa, Android dan Linux digunakan secara meluas dalam kedua-dua produk pengguna dan bidang kawalan industri. Dikatakan sistem Android lahir daripada sistem Linux, jadi adakah Android sejenis Linux? Sekarang mari kita bincangkan tentang persamaan dan perbezaan antara sistem Android dan Linux.
Adakah terdapat perbezaan antara android dan linux?

1. Apa persamaan kedua-duanya

Android ialah sistem berasaskan kernel Linux. Perkhidmatan sistem teras sistem Android dan Linux semuanya bergantung pada kernel Linux, seperti keselamatan, pengurusan kernel, pengurusan proses, tindanan rangkaian, model pemacu, dll. Kernel Linux juga berfungsi sebagai lapisan abstrak antara perkakasan dan perisian Ia menyembunyikan butiran perkakasan tertentu dan menyediakan perkhidmatan bersatu untuk pembangunan aplikasi lapisan atas

Adakah terdapat perbezaan antara android dan linux?

. 2. Perbezaan dalam rangka kerja sistem

Sistem Linux dan Android ialah dua sistem pengendalian yang berbeza di permukaan, tetapi Android pada asasnya ialah sistem Linux, tetapi Google telah menyesuaikan dan memperibadikannya.

Selain itu, berbanding sistem Linux, android menjalankan mesin maya Java (JVM) yang dipanggil Dalvik (dinamakan semula ART selepas versi 4.4) pada kernel Linuxnya, jadi aplikasi android yang dibangunkan menggunakan JAVA Ia boleh dijalankan pada sistem Android melalui mesin maya JAVA. Aplikasi Linux dibangunkan menggunakan C/C dan boleh dijalankan pada sistem kernel dalam bentuk kod mesin Perbezaan rangka kerja sistem antara kedua-duanya adalah seperti yang ditunjukkan dalam rajah.

Adakah terdapat perbezaan antara android dan linux?

Adakah terdapat perbezaan antara android dan linux?

3 Perbezaan antara perisian pemacu asas Linux dan android

Selain pemacu teras biasa yang disediakan oleh kernel Linux, Android juga menambah pemacu kernel proprietarinya sendiri, seperti pemacu paparan, pemacu Bluetooth, pemacu kamera, pemacu kad memori, pemacu Binder IPC, dsb. .

Selain itu, untuk melindungi hak harta intelek pengeluar perkakasan, sistem Android menambah lapisan HAL, yang boleh mengekstrak bahagian pelaksanaan khusus pemacu dan menghantarnya ke HAL untuk pelaksanaan, dengan itu mengelakkan risiko pemacu perkakasan sumber terbuka, jadi android Pemacu dibahagikan kepada dua bahagian, satu bahagian ditulis ke dalam kernel dan bahagian lain ditulis ke dalam lapisan HAL.

Selain membangunkan pemacu asas, Android juga perlu merangkum pemacu ke dalam antara muka lapisan JNI mengikut peraturan JNI supaya aplikasi (program JAVA) boleh memanggil pemacu kernel melalui JNI. Ambil pemacu paparan Framebuffer sebagai contoh, seperti yang ditunjukkan dalam rajah.

Adakah terdapat perbezaan antara android dan linux?

Model pemacu paparan sistem Linux

Adakah terdapat perbezaan antara android dan linux?

Model pemacu paparan sistem Android

( 1) Sistem Linux : Pemacu Framebuffer hanya perlu disusun ke dalam kernel Linux, dan antara muka baca, tulis, ioctl dan lain-lain yang sepadan diketepikan, supaya ia boleh dipanggil oleh aplikasi komputer hos.
(2) Sistem Android : Pemacu Framebuffer mula-mula menyusun pemacu untuk operasi baca dan tulis daftar perkakasan ringkas ke dalam kernel, dan kemudian menulis pemacu untuk pelaksanaan perkakasan khusus ke dalam lapisan HAL, dan berdasarkan Spesifikasi JNI dirangkumkan ke dalam antara muka JNI, yang boleh dipanggil oleh program aplikasi komputer hos.

4 Perbezaan antara perisian lapisan aplikasi Linux dan android

Walau bagaimanapun, aplikasi Android ditulis dalam bahasa Java dan tidak boleh memanggil antara muka sistem secara langsung dalam bahasa C sistem Linux, bahasa C boleh digunakan untuk memanggil antara muka sistem untuk berkomunikasi dengan kernel, jadi sistem Android mempunyai konsep yang dipanggil JNI, yang digunakan untuk merealisasikan interaksi maklumat antara program Java dan C/C.

(1) Cara aplikasi Android mengakses pemacu kernel Android:

  • APP—>JNI—>Pemacu kernel Android

  • APP—>Perkhidmatan Akses Perkakasan—>Pemacu Kernel Android

(2) Aplikasi Linux mengakses pemacu linux Kaedah program

  • APP—> Pemacu kernel Linux

  • APP—>C library—>Program pemacu kernel Linux

Cadangan berkaitan: "Tutorial Video Linux"

Atas ialah kandungan terperinci Adakah terdapat perbezaan antara android dan linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan