Dalam dunia kompetitif sistem pengendalian mudah alih, pertempuran antara Apple iOS/iPadOS dan Google Android telah menjadi sumber perdebatan dan keutamaan yang berterusan dalam kalangan pengguna, walaupun kebanyakannya Perbandingan telah lebih memfokuskan pada sistem pengendalian desktop.
Setiap sistem ini menawarkan pengalaman unik dan ciri tersendiri, daripada reka bentuk hingga kefungsiannya. Dalam artikel ini, kami akan meneroka perbandingan teknikal terperinci antara iOS/iPadOS dan Android, memeriksa aspek yang lebih teknikal daripada mereka, untuk mengenali mereka dari dalam dan dengan itu membantu dalam pemilihan dalam beberapa cara, walaupun tanpa bergantung pada pilih kasih...
Apa itu iOS?
iOS (sebelum ini OS iPhone) Ia ialah sistem pengendalian mudah alih yang dibangunkan oleh Apple Inc. secara eksklusif untuk perantinya. Ia hadir pada peranti iPhone dan peranti iPod Touch (dihentikan pada pertengahan 2022). Ia adalah sistem pengendalian mudah alih kedua paling banyak digunakan di dunia, selepas Android.
Ia juga berfungsi sebagai asas untuk tiga sistem pengendalian lain yang dicipta oleh Apple: iPadOS, tvOS dan watchOS. Dan, walaupun ia adalah perisian proprietari, bahagian adalah sumber terbuka di bawah Lesen Sumber Awam Apple dan lesen lain.
Ia adalah dikeluarkan pada tahun 2007 untuk iPhone pertamaiOS sejak itu telah diperluaskan untuk menyokong peranti Apple yang lain, seperti iPod Touch (September 2007) dan iPad (diperkenalkan pada Januari 2010, tersedia pada April 2010). Sehingga Mac 2018, Apple App Store mengandungi lebih 2.1 juta aplikasi iOS, satu juta daripadanya berasal dari iPad. Apl mudah alih ini telah dimuat turun secara kolektif lebih 130 bilion kali. Versi utama iOS dikeluarkan setiap tahun, dan versi stabil semasa, iOS 17, dikeluarkan kepada umum pada 18 September 2023.
Walau bagaimanapun, asal-usulnya bermula dua tahun lebih awal, sejak pada tahun 2005, Steve Jobs mula merancang iPhone masa depan, dia terpaksa mengatur pasukan pembangunan sistem pengendalian baharu, yang mana dia akan mengumpulkan kedua-dua pasukan pembangunan macOS dan iPod, masing-masing diketuai oleh Scott Forstall dan Tony Fadell, dalam persaingan dalaman untuk cuba mencipta macOS yang sangat berkurangan atau cuba mengembangkan sistem iPod.
Forstall menang dengan mencipta OS iPhone, yang membolehkan kejayaan iPhone sebagai platform untuk pembangun pihak ketiga. Sistem pengendalian telah diperkenalkan bersama iPhone di Persidangan & Ekspo Macworld pada 9 Januari 2007, dan dikeluarkan pada bulan Jun tahun itu.
Pelesenan dan pembangunan
Walaupun iOS/iPadOS adalah sistem pengendalian tertutup atau proprietari, dilesenkan oleh Apple. Terdapat juga beberapa bahagian sumber terbuka yang berkaitan dengan sistem ini, seperti Darwin, yang dilesenkan di bawah Lesen Sumber Awam Apple (APSL), lesen sumber terbuka dan percuma, walaupun ia tidak serasi dengan GNU GPL.
Apple telah menjadikan kernel XNU sumber terbuka di bawah lesen BSD 3-klausa untuk bahagian asal yang diwarisi daripada sistem BSD, manakala bahagian yang ditambahkan oleh Apple dilesenkan di bawah APSL. Walau bagaimanapun, versi kernel pada iOS tidak tersedia secara umum.
Bagi pembangunan, bahasa himpunan digunakan untuk beberapa perkara dalam kernel, serta bahasa pengaturcaraan C, C++, Objektif-C dan Swift Untuk aplikasi, seperti yang anda ketahui. Semua yang berkaitan dengan sistem pengendalian dibangunkan oleh Apple sendiri; walau bagaimanapun, apl pihak ketiga dibangunkan oleh pelbagai jenis individu, kumpulan dan syarikat.
Untuk menjadikan kehidupan lebih mudah bagi pembangun mencipta aplikasi yang serasi, Apple mempunyai a iOS SDK (Kit Pembangunan Perisian)Pada mulanya, Ketua Pegawai Eksekutif Apple Steve Jobs tidak bercadang untuk membenarkan pembangun pihak ketiga mencipta aplikasi iOS asli, tetapi selepas tekanan daripada pembangun, beliau mengumumkan pada Oktober 2007 bahawa kit pembangunan perisian akan tersedia menjelang Februari 2008. Mungkin keputusan ini menyelamatkan sistem pengendalian, kerana tanpanya, ekosistem aplikasi untuknya akan menjadi sangat lemah, dan Android akan runtuh.
SDK tersedia untuk macOS. Ia menyediakan akses kepada pelbagai ciri dan perkhidmatan peranti iOS/iPadOS, serta simulator untuk peranti mudah alih ini untuk menguji aplikasi semasa pembangunan. A Langganan Program Pembangun Apple Untuk menguji, mendapatkan sokongan teknikal dan mengedarkan aplikasi melalui App Store, anda mesti membayar yuran yang jauh lebih tinggi daripada yuran yang dibayar untuk penerbitan di Google Play.
En ditetapkan dengan XcodeSDK iOS membantu pembangun menulis apl iOS menggunakan bahasa pengaturcaraan yang disokong secara rasmi, seperti Swift dan Objective-C. Syarikat lain juga telah mencipta alat yang membolehkan pembangunan aplikasi asli untuk sistem ini menggunakan bahasa pengaturcaraan masing-masing.
Teras atau kernel
Kernel iOS/iPadOS ialah kernel XNU (XNU bukan Unix). Versi XNU adalah berdasarkan versi Darwin yang berbeza, dan kernel direka bentuk di bawah ASLR (Address Space Layout Randomization), yang merumitkan kemungkinan mengeksploitasi kelemahan dengan tidak mengetahui alamat memori di mana kernel berada, sesuatu yang kami juga ada di Linux, antara lain.
iOS tidak mempunyai sambungan kernel (kexts) Dalam sistem fail, imej kernel asas adalah rawak oleh pemuat but (iBoot), dan dari masa ke masa, versi kernel iOS/iPadOS dan macOS telah bertumpu, kerana iOS memperkenalkan ciri baharu yang kemudiannya dimasukkan ke dalam macOS juga. Apple nampaknya akan menggabungkan kernel secara beransur-ansur, dalam usaha untuk mencapai penumpuan yang telah lama diingini oleh Microsoft dan juga Canonical dalam dunia Linux, atau untuk mencapai sesuatu yang serupa dengan ChromeOS Google.
XNU dibangunkan oleh Apple Inc. sejak Disember 1996 untuk digunakan pada sistem pengendalian macOS dan dikeluarkan sebagai perisian percuma dan sumber terbuka sebagai sebahagian daripada sistem pengendalian Darwin. Dan kemudiannya ia juga akan menjadi asas untuk seluruh sistem pengendalian syarikat.
Bagi mereka yang masih tidak tahu apa itu Darwin, ia adalah sistem pengendalian seperti Unix pusat yang pada asalnya wujud sebagai sistem pengendalian sumber terbuka bebas dan terdiri daripada kod yang diperoleh daripada NeXTSTEP, BSD, Mach dan projek perisian percuma lain, serta kod yang dibangunkan oleh Apple sendiri.
Adakah a isirong hibrid yang menggunakan OSFMK 7.3 (Open Software Foundation Mach Kernel) daripada OSF, elemen FreeBSD dan antara muka pengaturcaraan pemacu berorientasikan objek yang dipanggil I/O Kit. Reka bentuk hibrid ini menggabungkan fleksibiliti mikrokernel dengan prestasi inti monolitik.
Persekitaran pembangunan XCode, walaupun nampaknya milik Apple, menggunakan alat sumber terbuka daripada GCC atau LLVM untuk kompilasi sebenar.
Perlu dikatakan bahawa walaupun XNU serasi dengan seni bina AMD64 dan IA-32, ia akhirnya dialihkan ke Apple Silicon (ARM), dan kini sokongan untuk seni bina lama yang lain telah digugurkan untuk menyelaraskan seni bina. Tambahan pula, seni bina x86 tidak akan masuk akal pada peranti mudah alih, seperti yang berlaku di sini. Tetapi lebih lanjut mengenainya kemudian...
Bahagian BSD kernel menyediakan antara muka pengaturcaraan untuk Aplikasi POSIX (API), model proses Unix untuk tugasan Mach, dasar keselamatan asas, sistem fail maya, sistem fail tempatan dan protokol rangkaian, antara lain. Kit I/O ialah rangka kerja pemacu peranti yang ditulis dalam subset C++ berdasarkan C++ Terbenam. Ia menawarkan reka bentuk berorientasikan objek yang memudahkan untuk menulis pemacu dalam masa dan kod yang lebih singkat, berbilang benang, didayakan berbilang pemproses secara simetri dan membenarkan konfigurasi peranti automatik.
Seni bina yang disokong
Apa yang dipanggil Apple Silicon, kedua-duanya dalam Siri M untuk komputer dan dalam Siri untuk peranti mudah alih, antara siri lain, adalah berdasarkan seni bina ARM atau ISA, tetapi ia bukan ARM tulen. Apple juga telah menambah arahan dan sambungan khususnya sendiri untuk mengoptimumkan prestasi mengikut keperluannya. Dan XNU telah dioptimumkan untuk ISA ini, mencapai prestasi dan kecekapan terbaik.
Maksudnya, Apple menyesuaikan CPUnya, walaupun pada dasarnya ia adalah a ARM ISA hampir keseluruhannya. Walau bagaimanapun, perbezaan kecil ini, bersama-sama dengan fakta bahawa ia adalah SoC yang kompleks dengan komponen lain yang terlibat, adalah sebab mengapa binari yang disusun untuk ARM tulen tidak berfungsi pada peranti ini.
Pada asasnya, cip Apple adalah berdasarkan ARMv8 pada masa ini, walaupun ARMv7-A dan ARMv6 turut digunakan sebelum ini.
Sistem fail APFS
Sistem Fail Apple (APFS) Ia ialah sistem fail proprietari yang dibangunkan dan digunakan oleh Apple Inc. dalam macOS, serta iOS, watchOS, tvOS dan iPadOS. APFS direka bentuk untuk menangani isu asas dengan HFS+ dan telah dioptimumkan untuk pemacu storan kilat yang lebih baharu.
Diumumkan pada persidangan pembangun Apple pada Jun 2016. Sistem ini menggunakan nombor i-nod 64-bit dan menawarkan penyimpanan yang lebih selamatAPFS menggunakan arahan TRIM untuk pengurusan dan prestasi ruang yang lebih baik. Ia menggunakan skema pembahagian GPT, dengan bekas APFS dan volum APFS di dalamnya. Ia menawarkan pengklonan yang cekap, syot kilat, penyulitan asli dan sokongan untuk berbilang pilihan penyulitan. Ia juga memfokuskan pada integriti data, perlindungan failover dan pemampatan telus. Walau bagaimanapun, beberapa had termasuk kekurangan jumlah semak untuk data pengguna, prestasi yang lebih perlahan pada cakera keras dan isu atau kelemahan yang diketahui.
Antara muka grafik
Walaupun tiada butiran diketahui tentang nama GUI untuk skrin sentuh berbilang sentuh, seperti yang diketahui untuk macOS, yang dipanggil Aqua. Apa yang kita tahu ialah rangka kerja itu wujud. UIKit, yang menawarkan pelbagai fungsi untuk membangunkan aplikasi, menyediakan komponen yang membolehkan anda membina infrastruktur utama aplikasi untuk sistem pengendalian ini.
UIKit juga termasuk sokongan untuk animasi, dokumen, lukisan dan percetakan, pengurusan teks dan paparan, carian, sambungan aplikasi, pengurusan sumber dan mendapatkan maklumat tentang peranti semasa. Ia membolehkan anda menyesuaikan sokongan kebolehaksesan dan menyetempatkan antara muka aplikasi untuk bahasa, negara atau wilayah budaya yang berbeza. Di samping itu, UIKit berfungsi dengan lancar rangka kerja SwiftUI, membolehkan anda melaksanakan bahagian aplikasi anda dalam SwiftUI atau mencampurkan elemen antara muka antara kedua-dua rangka kerja.
Perkhidmatan Mudah Alih Apple
Tidak ada terlalu banyak butiran mengenai perkara ini «Perkhidmatan Mudah Alih Apple», Malah, tiada rujukan kepada nama itu, seperti yang terdapat dalam Android dan GMS atau Perkhidmatan Mudah Alih Google. Walau bagaimanapun, apa yang kami tahu ialah ia termasuk siri perkhidmatan dan apl asas.
Sebagai tambahan kepada perkhidmatan penting untuk telefon bimbit, kami juga mempunyai kit aplikasi prapasang, panggilan membisu, seperti Kamera, Foto, Mesej, Mel, Safari, Peta, Siri, Kalendar, App Store, Kenalan, Buku Alamat, Jam, Kalkulator, Cari iPhone Saya, Fail, dsb.
Apl dan kedai aplikasi
Seperti yang saya nyatakan, gedung aplikasi tempat anda boleh memuat turun semua program dan permainan video yang tersedia untuk platform ini dipanggil Apple App Store, seperti yang anda tahu.
Bagi aplikasi yang tersedia, ia sangat banyak, dan semuanya diprogramkan simpulan bahasa:
- Objective-C ialah salah satu bahasa pengaturcaraan yang paling popular untuk pembangunan aplikasi iPhone. Ia adalah bahasa berorientasikan objek berasaskan C yang digunakan bersama Xcode dan Cocoa untuk mencipta apl iOS. Koko ialah antara muka pengaturcaraan yang ditulis dalam Objektif-C yang mengurus memori dan mengikut model MVC. Walaupun Objektif-C telah lama menjadi standard, pada tahun 2010, Apple membenarkan penggunaan kod yang ditafsirkan dalam SDK iOS.
- Swift, sebaliknya, ialah bahasa yang lebih baharu yang direka bentuk untuk menjadi lebih mesra pengguna daripada Objective-C. Ia dianggap sebagai masa depan pembangunan apl iOS dan telah mendapat populariti kerana kemudahan penggunaan dan sintaks yang lebih bersih. Syarikat utama, seperti Firefox dan WordPress, telah menggunakan Swift, dan lebih banyak syarikat dijangka beralih daripada Objective-C kepada Swift pada tahun-tahun akan datang.
Tambahan pula, manakala pada Android pakej dikenali sebagai .apk, pada sistem Apple yang kami ada yang .ipaNamanya berasal daripada pakej iOS App Store, dan ia semudah fail ZIP termampat yang mengandungi apl itu. Dan, melainkan anda melakukan jailbreak, apl yang dimuat turun daripada sumber pihak ketiga tidak boleh dipasang dalam apa jua keadaan atas sebab keselamatan.
jailbreak
Seperti yang anda ketahui, sistem pengendalian mudah alih seperti iOS/iPadOS dan Android menjadi "terkunci"—anda adalah pengguna yang tidak bernasib baik—untuk mengelakkan isu keselamatan. Walau bagaimanapun, ini juga mengehadkan keupayaan anda, dan sesetengahnya melakukan "jailbreak" untuk mendapatkan keistimewaan, yang dikenali sebagai "membuka kunci." penjara, setara dengan akar Android.
Sejak dilancarkan, iOS telah tertakluk kepada pelbagai hacks direka untuk menambah fungsi yang tidak dibenarkan oleh Apple. Sebelum kemunculan App Store iOS pada tahun 2008, sebab utama pemecahan jail adalah untuk memintas mekanisme pembelian Apple untuk memasang aplikasi asli. Walaupun Apple mendakwa tidak mengeluarkan kemas kini perisian yang direka khusus untuk memecahkan alat ini, setiap kemas kini iOS sering menambal eksploitasi jailbreak yang tidak ditambal sebelum ini.
Jailbreaking melibatkan mengeksploitasi dan menampal kernel peranti setiap kali ia but, kerana iOS pada mulanya memuatkan kernelnya sendiri semasa but. Terdapat pelbagai jenis jailbreak, dengan jailbreak yang tidak ditambat adalah yang paling komprehensif, membolehkan peranti dibut semula tanpa komputer. Jailbreak yang ditambat hanya berfungsi sementara untuk satu but. Dalam tahun-tahun kebelakangan ini, penyelesaian separa tertambat dan separa tertambat telah muncul, menawarkan variasi dalam sejauh mana pengubahsuaian pada peranti berterusan antara but semula.
Apakah iPadOS? Perbezaan antara iOS dan iPadOS
iPad Ia masih hanya iOS yang diubah suai untuk tablet. Walaupun ia menyokong apl iOS dan berkongsi banyak pangkalan kodnya dengan keluarga platform iOS yang lebih luas, termasuk tvOS, watchOS dan iOS asal untuk iPhone, iPadOS menampilkan beberapa perbezaan utama dari segi ciri dan keupayaan.
Tidak seperti iOS untuk iPhone, iPadOS telah dioptimumkan untuk kegunaan tablet dan menawarkan ciri khusus tablet. multitasking dan kebolehlanjutanContohnya, iPadOS menyokong mod skrin belah dan boleh berfungsi dengan paparan luaran, ciri yang tidak tersedia dalam iOS untuk iPhone. Selain itu, iPadOS menyokong Apple Pencil dan mempunyai mod desktop web asli, ciri yang tidak ditemui dalam iOS untuk iPhone.
Walaupun penambahbaikan ini, iPadOS mempunyai beberapa batasan berbanding iOS untuk iPhone. Sebagai contoh, iPadOS tidak serasi dengan Apple Watch dan memerlukan iPhone yang disambungkan untuk ciri seperti panggilan telefon dan iMessages/SMS. Keserasian apl juga berbeza, kerana iPadOS boleh menjalankan kebanyakan apl yang direka untuk iOS dalam mod keserasian, tetapi iPhone tidak boleh menjalankan apl yang direka khusus untuk iPadOS.
Dari segi keselamataniPadOS termasuk ciri moden seperti pengesahan biometrik, penyimpanan item selamat untuk kata laluan dan pembayaran, sokongan VPN dan IPv6, penyekatan penjejakan pihak ketiga, penyulitan sandaran dan storan awan yang disulitkan, antara lain.
Mengenai sejarahnya, ia bermula sejak pelancarannya pada tahun 2019, apabila Apple memutuskan untuk membezakan pengalaman sistem pengendalian iPad daripada iPhone. Selama bertahun-tahun, penambahbaikan ketara telah diperkenalkan, seperti mod Sidecar untuk menggunakan iPad sebagai paparan luaran, pengoptimuman tetikus dan pad jejak, dan ciri berbilang tugas baharu, seperti Pengurus Peringkat dalam iPadOS 16, yang membolehkan sehingga empat apl dijalankan dalam satu antara muka desktop.
En Dari segi perniagaan, iPadOS mungkin pilihan yang berdaya maju untuk kes penggunaan tertentu, seperti penggantian komputer riba, kiosk daftar masuk, paparan maklumat tempat kerja atau sistem tempat jualan (POS). Walau bagaimanapun, kesesuaiannya bergantung pada kes penggunaan tertentu, kerana iPadOS tidak boleh menjalankan aplikasi desktop macOS dan terhad kepada apl yang direka bentuk untuk platform iOS.
Pendek kata, perbezaan antara iOS dan iPadOS adalah berikut, selebihnya dikongsi:
| fungsi | iOS (iPhone) | iPadOS (iPad) |
| Skrin pisah untuk apl | Tidak | Ya |
| Sokongan untuk paparan luaran | Tidak | Ya |
| Sidecar (input skrin) | Tidak | Ya |
| Serasi dengan apl untuk iPadOS | Tidak | Ya |
| Serasi dengan apl iOS | Ya | Ya |
| Mod percuma desktop | Tidak | Ya |
| Apple Watch Stand | Ya | Tidak |
| Telefoni | Ya | Ya |
| iMessage / SMS | Ya | Ya |
| Dok UI pada skrin utama | Tidak | Ya |
| Video gambar dalam gambar (PiP). | Ya | Ya |
| Safari dalam mod desktop | Tidak | Ya |
| Kesambungan 4G / 5G | Ya | Ya (beberapa versi) |
| VoIP / persidangan video | Ya | Ya |
| Keselamatan biometrik | Ya | Ya |
| Jalur ultra lebar (UWB) | Ya | Ya |
| Mod kiosk (mod apl tunggal) | Ya | Ya |
| Pengurus Peranti Mudah Alih | Ya | Ya |
| Sokongan untuk Apple Pencil | Tidak | Ya |
Apa itu Android?
Android Ia ialah sistem pengendalian mudah alih yang dibangunkan oleh Google (Alphabet) berdasarkan versi kernel Linux yang diubah suai dan perisian sumber terbuka yang lain. Ia direka terutamanya untuk peranti berasaskan sentuhan seperti telefon pintar dan tablet, walaupun ia juga telah dipasang pada banyak peranti lain, seperti kotak TV, beberapa komputer riba kecil dan sebagainya.
Ia dibangunkan oleh Buka Perikatan Telefon bimbit, konsortium pembangun seperti Google sendiri, LG, SoftBank, Telefónica, HTC, Dell, Sony, Intel, Motorola, Qualcomm, Texas Instruments, Samsung Electronics, T-Mobile, NVIDIA, dsb. Selain itu, ia mempunyai komuniti yang turut menyumbang atau mencipta forksnya sendiri (Huawei's Harmony OS, Baidu, ColorOS, Replicant, Amazons's Line OS, /e/'s Line OS Remix Plus OS, dsb.). Ia diperkenalkan pada November 2007, dan peranti komersial pertama, HTC Dream, telah dilancarkan pada September 2008.
Kernel sistem pengendalian dikenali sebagai Projek Sumber Terbuka Android (AOSP), yang merupakan perisian percuma dan sumber terbuka terutamanya di bawah Lesen Apache. Walau bagaimanapun, kebanyakan peranti menggunakan versi proprietari yang dibangunkan oleh Google, yang termasuk perisian sumber tertutup, seperti Perkhidmatan Mudah Alih Google (GMS) dan yang akan saya perincikan kemudian.
Android telah menjadi sistem pengendalian yang paling banyak digunakan di dunia sejak 2011. Jauh mengatasi iOS/iPadOS dalam ruang mudah alih, dan juga mengatasi Windows pada desktop oleh berjuta-juta pengguna.
Sejarah Android bermula sejak penubuhannya pada tahun 2003, dengan niat awal untuk membangunkan sistem pengendalian termaju untuk kamera digital. Selepas mengalihkan fokus, Google memperoleh Android pada tahun 2005. Sejak itu, ia telah mengalami pelbagai kemas kini, menggunakan nama pencuci mulut dalam susunan abjad, seperti yang anda mungkin sudah tahu...
Selain persaingan dengan sistem Apple, ia juga menghadapi masalah lain, seperti tuntutan undang-undang paten daripada Microsoft, contohnya, untuk penggunaan Sistem fail FATMalah, Microsoft telah membuat lebih banyak wang daripada ini daripada daripada sistem pengendalian Windows Phone sendiri, yang ternyata gagal sepenuhnya.
Pelesenan dan pembangunan
Android dibangunkan oleh Google sehingga perubahan dan kemas kini terkini sedia untuk dikeluarkan, pada ketika itu kod sumber disediakan kepada orang ramai. Projek Sumber Terbuka Android (AOSP), diketuai oleh Google sebagai inisiatif sumber terbuka. Kod AOSP ditemui pada peranti terpilih dengan pengubahsuaian minimum, terutamanya untuk menjadikannya berfungsi pada perkakasan tertentu.
El Kod sumber Android tidak termasuk pemacu peranti, ini ditambahkan oleh setiap pengeluar peranti, selalunya proprietari, diperlukan untuk komponen perkakasan tertentu.
Bagi lesen, mesti dikatakan bahawa Android kebanyakannya adalah sumber terbuka, di bawah lesen GNU GPLv2 untuk kernel Linux dan Apache License 2.0 untuk perisian ruang pengguna. Selain itu, ia mempunyai perisian percuma dan komponen proprietari, seperti gumpalan binari atau pemacu yang ditambahkan oleh pengeluar peranti untuk memastikan keserasian, atau seperti GMS.
Teras atau kernel
Kernel Android adalah berdasarkan cabang sokongan jangka panjang (LTS) bagi kernel linuxSehingga 2023, Android menggunakan versi 4.14, 4.19, 5.4, 5.10 atau 5.15 kernel Linux, disesuaikan dan sering dinamakan android13-5.15 atau android-4.19-stable, bergantung pada peranti tertentu. Kernel Android mempunyai perubahan seni bina tambahan yang dilaksanakan oleh Google di luar kitaran pembangunan kernel Linux biasa.
Perubahan ini termasuk pengenalan komponen seperti pepohon peranti, Ashmem, ION dan pelbagai pengendali di luar ingatan (OOM). Walaupun Google telah menyumbangkan ciri-ciri tertentu kepada kernel Linux, seperti ciri pengurusan kuasa "wakelocks", beberapa sumbangan pada mulanya ditolak oleh pembangun inti teras kerana kebimbangan mengenai kebolehselenggaraan jangka panjang.
Seperti yang anda ketahui, kernel Linux adalah jenis monolitik, mampu memuatkan modul dinamik untuk berfungsi sama seperti mikrokernel. Oleh itu, ia tidak tulen seperti yang dicadangkan dalam beberapa dokumen, tetapi telah berkembang untuk menyesuaikan diri dengan perubahan zaman.
Ramai yang akan tertanya-tanya mengapa Android bukan pengedaran GNU/Linux, dan sebabnya ialah ia tidak menggunakan ekosistem GNU, tetapi berasaskan Linux sahaja, dan sebagai pengganti GNU ia telah menyepadukan shell mksh, sistem util teras asli yang diilhamkan oleh NetBSD, dan perpustakaan libc Bionic, bukannya Perpustakaan GNU C (glibc).
Bagi mereka yang tidak tahu Bionic, yang merupakan garpu pustaka standard BSD C yang dibangunkan oleh Google untuk Android, mengasingkannya daripada lesen GPL dan LGPL. Ia memfokuskan untuk menjadi lebih kecil dan lebih cekap memori daripada glibc dan uClibc, disyorkan untuk pembangunan Android dengan Kit Pembangunan Asli (NDK). Bionic mempunyai had, seperti kekurangan pengendalian pengecualian C++, keperluan untuk memasukkan Perpustakaan Templat Standard (STL) secara manual dan kekurangan sokongan untuk set aksara lanjutan. Ia juga termasuk fungsi khusus Android dalam sesetengah panggilan sistem, dan sejak Android Jelly Bean MR1 (4.2), menawarkan sokongan untuk FORTIFY_SOURCE glibc untuk mengelakkan limpahan penimbal.
Seni bina yang disokong
Walaupun kernel Linux tersedia untuk pelbagai seni bina, Android hanya dialihkan setakat ini. untuk x86 dan ARM. Walau bagaimanapun, kerja juga sedang dijalankan untuk membawa sokongan RISC-V.
Khususnya, sejak Android keluar, sokongan telah diberikan untuk peranti ARMv32 7-bit yang pertama, serta untuk versi ISA yang lebih moden seperti yang baharu. 8-bit ARMv9 atau ARMv64Sudah tentu, ia menyokong kedua-dua IA-32 dan AMD64 pada sisi x86. Dan, seperti yang saya katakan, sokongan RISC-V juga sedang ditambah, yang akan menjadi sangat menarik…
Sistem fail FAT
Android serasi dengan berbilang sistem fail atau FS (Sistem Fail), seperti berikut:
- FAT32 (Jadual Peruntukan Fail 32): Ia adalah sistem fail yang serasi dengan pelbagai jenis platform. Ia mempunyai had pada saiz fail dan partition, menjadikannya sesuai untuk peranti dengan kapasiti storan yang lebih kecil dan keperluan asas.
- Ext3 (Sistem Fail Lanjutan Ketiga): Sistem fail yang direka untuk sistem Linux. Ia memberikan ketahanan dan pemulihan yang lebih baik berbanding pendahulunya, Ext2, dengan melaksanakan penjurnalan.
- Ext4 (Sistem Fail Lanjutan Keempat): Ia adalah versi terbaharu siri Ext untuk sistem Linux. Ia menawarkan prestasi yang lebih baik dan keupayaan untuk mengendalikan fail yang lebih besar dan partition yang lebih besar. Ia juga mengekalkan ciri penjurnalan Ext3.
- exFAT (Jadual Peruntukan Fail Lanjutan): Dibangunkan oleh Microsoft, ia adalah sistem fail yang direka untuk serasi dengan platform Windows dan peranti storan boleh tanggal. Ia biasanya digunakan pada kad memori dan pemacu kilat, dan mengatasi had saiz fail FAT32.
Walau bagaimanapun, kebanyakan peranti Android semasa menggunakan FAT, terutamanya exFAT. Itulah sebabnya Microsoft membuat banyak wang dengan menjual peranti Android dengan menggunakan teknologi ini. Selebihnya sistem fail biasanya tidak digunakan pada peranti mudah alih, tetapi dikhaskan untuk Android x86 secara khusus.
Antara muka grafik
Bahan Design Reka Bentuk Bahan ialah satu set prinsip dan garis panduan reka bentuk yang dibangunkan oleh Google untuk mencipta antara muka visual yang konsisten dan menarik dalam apl dan tapak web. Ia telah diperkenalkan pada tahun 2014 dan memfokuskan pada mencipta pengalaman pengguna yang intuitif dan menarik secara visual. Reka Bentuk Bahan adalah berdasarkan idea bahawa antara muka harus kelihatan dan berkelakuan sama merentas semua platform dan peranti.
Hubungan Reka Bentuk Bahan dengan GUI (Antara Muka Pengguna Grafik) Android adalah rapat, kerana Google telah mengguna pakainya sebagai pendekatan reka bentuk standard untuk aplikasi pada sistem pengendalian Android. Reka Bentuk Bahan menyediakan garis panduan terperinci tentang cara menstruktur antara muka, cara menggunakan warna, tipografi, animasi dan elemen visual untuk mencipta pengalaman yang koheren dan menarik untuk pengguna Android.
Perkhidmatan Mudah Alih Google
Perkhidmatan Mudah Alih Google (GMS) Ia ialah koleksi aplikasi proprietari dan perkhidmatan antara muka pengaturcaraan aplikasi (API) daripada Google yang biasanya diprapasang pada peranti Android, termasuk telefon pintar, tablet, jam tangan pintar dan banyak lagi. Adalah penting untuk ambil perhatian bahawa GMS bukan sebahagian daripada Projek Sumber Terbuka Android (AOSP), yang bermaksud bahawa pengeluar Android mesti mendapatkan lesen daripada Google untuk memasang GMS secara sah pada peranti Android.
Mengenai aplikasi asas Aplikasi teras yang membentuk Perkhidmatan Mudah Alih Google termasuk Carian Google, Google Chrome, YouTube, Google Play, Google Drive, Gmail, Google Meet, Peta Google, Foto Google, Google TV dan Muzik YouTube. Aplikasi teras ini menyumbang dengan ketara kepada pengalaman pengguna pada peranti Android dan merupakan sebahagian daripada ekosistem yang ditawarkan oleh Google pada platform mudah alihnya.
Tidak menjadi sebahagian daripada AOSP, MSG ini boleh dibuang dan menggantikannya dengan perkhidmatan pihak ketiga yang serupa, adalah apa yang Huawei lakukan dengan HMSnya selepas sekatan yang menghalang jenama China daripada menggunakannya, atau juga seperti yang telah dilakukan dalam sistem terbitan lain, seperti Amazon FireOS, yang menggunakan sistem perkhidmatannya sendiri, atau seperti sistem pengendalian /e/ yang berasaskan LineageOS dan menggunakan perkhidmatan lokasi MicroG+Mozilla sebagai pengganti GMS.
Apl dan kedai aplikasi
Sebagai permulaan, apl dan kedai permainan video dalam kes ini ialah Google Play, sebahagian daripada Perkhidmatan Google Play yang disepadukan ke dalam GMS. Dari kedai ini, anda boleh memuat turun dan memasang semua jenis perisian yang tersedia untuk platform, serta menyemak keselamatan, kemas kini dan banyak lagi.
Android adalah berdasarkan kernel Linux, seperti yang saya nyatakan sebelum ini, tetapi dengan perisian tengah, perpustakaan dan API yang ditulis dalam C, dan aplikasi yang berjalan pada rangka kerja aplikasi yang merangkumi Pustaka serasi JavaPlatform ini menggunakan Android Runtime (ART) sebagai persekitaran pelaksanaannya, dengan kompilasi prapemasangan. Sebelum ART, Android digunakan Dalvik sebagai mesin maya yang disusun tepat dalam masa (JIT). Pustaka C standard Android, Bionic, direka khusus untuk Android, lebih ringan daripada glibc dan uClibc serta dioptimumkan untuk CPU frekuensi rendah.
Google menukar tindanan Bluetooth daripada BlueZ kepada BlueDroid pada tahun 2012 atas sebab pelesenan. Tambahan pula, Android secara asalnya tidak mempunyai Sistem Tetingkap X dan tidak menyokong set lengkap perpustakaan GNU. Dalam versi semasa, ia menggunakan Kotak mainan, koleksi utiliti baris perintah dan Trusty OS, sistem pengendalian dalam Android, menyediakan persekitaran pelaksanaan yang dipercayai untuk pelbagai aplikasi, daripada pembayaran mudah alih kepada pengesanan perisian hasad.
Untuk pengurus pakejDalam kes ini, Google Play sendiri digunakan sebagai pengurus pakej, walaupun anda boleh mengkonfigurasi pilihan keselamatan untuk menerima pakej daripada sumber pihak ketiga, atas risiko anda sendiri. Selain itu, kedai aplikasi lain juga boleh dipasang di bawah akar.
Fail yang boleh dipasang dalam kes ini ialah .apk. Fail APK (Pakej Android). Ia ialah format yang digunakan oleh sistem pengendalian Android, biasanya jenis fail JAR. Ia boleh dibina daripada kod sumber Java atau Kotlin dan mengandungi semua elemen program, seperti kod, sumber, sijil dan manifes. Fail APK boleh dijana dan ditandatangani daripada Android App Bundle.
Akar
Akar Pada peranti Android, ia merujuk kepada mendapatkan akses istimewa kepada sistem pengendalian dan sekatan sensitif, seperti /system/, yang setara dengan jailbreak Apple. Tidak seperti pengedaran Linux desktop biasa, pengguna peranti Android tidak mempunyai akses root kepada sistem pengendalian, dan partition tertentu sebahagiannya dibaca sahaja.
Walau bagaimanapun, akses root boleh diperolehi dengan mengeksploitasi kelemahan keselamatan pada Android atau membuka kunci pemuat but. Buka kunci pemuat but, tersedia pada banyak peranti Android, membenarkan akses root tetapi memadamkan semua data pengguna dalam proses. Keupayaan ini digunakan oleh komuniti sumber terbuka untuk meningkatkan keupayaan peranti dan penyesuaian, tetapi ia juga boleh dieksploitasi oleh aktor berniat jahat untuk memasang virus dan perisian hasad.
Ringkasan perbezaan
| Parametros | iOS / iPadOS | Android |
| Pemaju | Apple bertanggungjawab sepenuhnya untuk pembangunan. | Open Handset Alliance (OHA) dan Google bertanggungjawab untuk pembangunan. |
| Lanzamiento inisial | 2007, khususnya pada 29 Julai. | 2008, khususnya pada 23 September. |
| Keluarga | Seperti Unix (XNU – Darwin) | Seperti Unix (Linux) |
| Nama versi pertama | iOS 1 / iPadOS 13 | Android 1.0 |
| Sektor sasaran | Untuk peranti mudah alih seperti iPhone, telefon pintar Apple dan untuk tablet iPad syarikat. Ia juga tersedia untuk pemain iPod. | Untuk pelbagai jenis peranti, daripada telefon mudah alih ke telefon pintar dan tablet, ke kotak TV, TV pintar, komputer riba kecil dan banyak lagi. |
| Pemandu | iOS dan iPadOS hanya dioptimumkan dan pemacu disertakan untuk peranti Apple. | Android berfungsi pada pelbagai jenama dan model yang berbeza, dengan perkakasan daripada pelbagai jenama, jadi ia mesti termasuk pemacu ini. Ia lebih umum. |
| Kernel | iOS dan iPadOS mempunyai teras XNU, seperti macOS. Teras hibrid | Android menggunakan Linux, dan bersifat monolitik dengan pemuatan modul dinamik. |
| lesen | iOS/iPadOS menggunakan lesen APSL dan Proprietary (EULA), bergantung pada pihak tersebut. | Android dilesenkan di bawah GNU GPLv2 dan bahagian lain dilesenkan di bawah Lesen Apache. |
| Bahasa pengaturcaraan | Bahasa seperti Objective-C, Swift, C, dan C++ digunakan untuk pembangunannya. | Android menggunakan Java, C, dan C++, walaupun komponen lain mungkin termasuk bahasa lain juga. |
| Kemas kini | Dengan pengurus kemas kini OTA | Dengan pengurus kemas kini OTA |
| aplikasi | Aplikasi dibangunkan menggunakan Swift. | Aplikasi dibangunkan di Kotlin dan terutamanya Java. |
| Pelayar web lalai | Safari | Chrome |
| Pembantu suara | Siri | Bantuan Google |
| Keselamatan | Ia berdasarkan sistem keselamatannya sendiri dan apl ditapis sebelum diterbitkan di App Store untuk memastikan ia tidak berniat jahat. Sudah tentu, ia mempunyai sistem untuk menyekat sumber pihak ketiga untuk keselamatan, dan sistem kebenaran. | Ia berdasarkan sistem keselamatan SELinux dan apl ditapis sebelum diterbitkan di Google Play untuk memastikan ia tidak berniat jahat. Sudah tentu, ia mempunyai sistem untuk menyekat sumber pihak ketiga untuk keselamatan, dan sistem kebenaran. |
| bahasa | Tersedia dalam kira-kira 24 bahasa yang berbeza. | Tersedia dalam lebih daripada 100 bahasa yang berbeza. |
iOS/iPadOS vs Android: Kelebihan dan keburukan setiap satu
Dengan butiran teknikal yang dinyatakan di atas, anda kini sepatutnya mempunyai idea yang lebih jelas tentang kelebihan dan kekurangan setiap satu. Tetapi untuk memudahkan anda memilih sistem pengendalian yang betul, berikut adalah beberapa kebaikan dan keburukan yang paling ketara bagi setiap satu:
- iOS / iPadOSDireka untuk semua jenis pengguna, ia sangat mudah digunakan dan intuitif, serta selamat, stabil dan menawarkan sejumlah besar apl. Walau bagaimanapun, beralih daripada satu platform ke platform lain boleh menimbulkan beberapa kesukaran, jadi jika anda pernah menggunakan Android sebelum ini dan tidak berpuas hati dengannya, beralih kepada ekosistem Apple akan memerlukan sedikit pelarasan. Sebaliknya, perkara berikut patut diberi perhatian:
- kelebihan:
- Pengoptimuman: iOS/iPadOS, yang direka khusus untuk peranti Apple, memastikan penyepaduan optimum antara perisian dan perkakasan. Ini menjadikan mereka peranti yang sangat pantas dan cekap.
- berkualiti: Apl dan perkakasan biasanya mempunyai kualiti yang lebih tinggi, serta mempunyai reka bentuk yang lebih eksklusif.
- keselamatan: Struktur tertutup dan kawalan ketat App Store menyumbang kepada persekitaran yang lebih selamat dari segi perisian hasad dan ancaman, mungkin mengatasi Android, walaupun ia tidak kebal.
- Ekosistem bersepadu: Penyepaduan lancar dengan peranti Apple yang lain, seperti Mac, iPad, Apple Watch dan perkhidmatan seperti iCloud, membolehkan pengalaman yang sangat baik berbanding dengan ekosistem heterogen, yang mungkin tidak semuanya berfungsi dengan baik.
- kelemahan:
- Penyesuaian terhad: Penyesuaian sistem dan antara muka pengguna lebih terhad berbanding Android. Jailbreaking juga jauh lebih sukar.
- Kos: Peranti Apple biasanya lebih mahal berbanding pilihan Android yang setara.
- Kurang pelbagai peranti: Apple membuat bilangan peranti yang terhad, yang boleh mengehadkan pilihan untuk pengguna, manakala Android menawarkan pilihan yang lebih besar.
- kelebihan:
- AndroidDireka untuk semua jenis pengguna, sangat mudah digunakan dan intuitif, serta selamat, stabil, dan dengan sejumlah besar apl tersedia, malah lebih daripada Apple. Perkara yang sama berlaku jika anda sudah biasa dengan persekitaran Apple, atau mempunyai peranti Apple lain di rumah, sebaiknya pilih iOS/iPadOS untuk kemudahan dan penyepaduan. Juga, perkara berikut patut diserlahkan:
- kelebihan:
- Pelbagai peranti: Android tersedia pada pelbagai jenis peranti daripada pelbagai pengeluar, menawarkan pilihan untuk belanjawan dan pilihan yang berbeza.
- Penyesuaian lanjutan: Pengguna mempunyai kebebasan yang lebih besar untuk menyesuaikan antara muka pengguna dan melaraskan tetapan mengikut keutamaan mereka. Selain itu, anda akan menemui apl seperti pelancar dan banyak ciri lain yang tidak memerlukan root untuk berfungsi dengan baik.
- Sumber terbuka: Sebagai sumber terbuka, ia boleh menyampaikan lebih keyakinan dan anda juga mempunyai ROM dengan kernel bebas gumpalan binari, versi dengan peningkatan keselamatan dan privasi, tanpa GMS, dsb.
- Perkhidmatan Google: Apple tidak mempunyai banyak variasi dalam perkhidmatan seperti Google, dan beberapa telah dikalahkan, seperti Peta berbanding Peta Google. Sebagai contoh, pada peranti ini, anda akan menemui penyepaduan dengan Gmail, GDrive, YouTube, Peta, Chrome, GBoard, Lens, Muzik Play, Foto, dsb. secara lalai.
- kelemahan:
- Pecahan: Pemecahan sistem pengendalian boleh membawa kepada pengalaman pengguna yang tidak konsisten, kerana pengeluar melancarkan kemas kini mengikut kadar mereka sendiri. Walau bagaimanapun, jenama peranti mudah alih utama seperti Google, Samsung dan lain-lain tidak mengalami sebarang masalah.
- Keselamatan boleh ubah: Disebabkan oleh kepelbagaian peranti dan pengeluar, keselamatan boleh berbeza-beza, terutamanya pada peranti lama atau rendah.
- Pengoptimuman kecil: Oleh kerana ia perlu berfungsi pada pelbagai jenis peranti yang berbeza, ia tidak dioptimumkan untuk mana-mana peranti tertentu, yang boleh membawa kepada penyebaran fungsi yang tidak berfungsi pada kesemuanya.
- kelebihan:
Sudah tentu, anda sudah tahu bahawa pilihan antara iOS dan Android akan bergantung pada keutamaan dan faktor individu pengguna seperti belanjawan, penyesuaian yang diingini dan keutamaan untuk ekosistem tertentu…