Kamu membuka laptopnya. Klik pada aplikasi. Ini berhasil. Sebagian besar pengguna tidak pernah melihat ke balik terpal. Mereka seharusnya tidak perlu melakukannya. Namun memahami mesinnya membantu menjelaskan mengapa Mac terasa berbeda dari PC Windows dan perangkat Linux. Rahasianya bukanlah sihir. Itu kode. Khususnya, kernel XNU.
Saat Anda menekan tombol power, kernel XNU akan dimuat terlebih dahulu. Itu adalah bos perangkat keras. Ini menentukan berapa banyak memori yang dialokasikan untuk aplikasi apa pun. Ini mengatur waktu CPU. Ia mengawasi disk drive untuk memastikan data tidak hilang begitu saja. Namun XNU tidak dibangun dari awal. Ini adalah hibrida.
Yayasan Mach
Inti dari XNU adalah Mach. Ini bukanlah hal baru. Ini adalah produk Universitas Carnegie Mellon dan berasal dari tahun 1980-an. Mengapa menggunakan kode tahun 80an? Karena itu berhasil. Mach menangani beban berat manajemen memori virtual. Ini juga menangani multitasking.
Saat Mac Anda mulai terlalu panas, Mach akan bertindak. Hal ini dapat mengurangi kecepatan pemrosesan CPU. Ini bukan sebuah kesalahan. Ini adalah sebuah fitur. Sistem ini memprioritaskan ketahanan perangkat keras dibandingkan kecepatan mentah. Anda mungkin memperhatikan kipas berputar atau aplikasi sedikit lambat. Itu adalah Mach yang melindungi silikon Anda.
Kit I/O: Hub Koneksi
Selanjutnya kita memiliki Kit Input-Output. Itu adalah bagian dari kernel, tetapi memiliki tugas khusus. Ini mengontrol driver perangkat. Anda tahu itu. Ini adalah penerjemah yang memungkinkan printer Anda berkomunikasi dengan komputer Anda. Tanpa ini, perangkat kerasnya hanyalah plastik mahal.
I/O Kit menggunakan versi C++ khusus dan terbatas. Ini bukan C++ lengkap. Itu dipreteli. Efisien. Lapisan ini menangani masuk dan keluarnya data secara besar-besaran. Ia mengelola permintaan yang berpindah dari Mac ke periferal Anda dan sebaliknya.
Jadi Anda dapat menyambungkan mouse USB, drive FireWire, dan layar Thunderbolt secara bersamaan. Kit I/O mengaturnya. Tidak ada kebingungan. Ini memproses teknologi yang berbeda secara bersamaan. Jika Anda mencobanya pada beberapa arsitektur PC lama, Anda mungkin mengalami konflik driver. Mac umumnya tidak.
BSD: Penjaga Keamanan
Pilar ketiga XNU berasal dari Berkeley Software Distribution (BSD). Ini adalah turunan UNIX. Anggap saja seperti penjaga. Atau penjaga di klub eksklusif.
Saat Anda masuk, BSD menentukan izin Anda. Administrator memiliki kebebasan memerintah. Mereka dapat menghapus program. Mereka dapat menginstal perangkat lunak tingkat sistem. Pengguna standar? Mereka mendapat lebih sedikit. Lapisan BSD menerapkan aturan-aturan ini. Ini menghentikan pengguna normal untuk merusak sesuatu. Ini juga menyinkronkan proses. Itu membuat sistem tetap terorganisir.
Tanpa lapisan ini, Mac OS X akan menjadi kekacauan dengan izin yang saling bertentangan. Siapa pun dapat menghapus sistem. BSD menjaga perdamaian.
Konsep tumpukan
Para insinyur menganggap Mac OS X sebagai tumpukan. Ini adalah model konseptual. Bawah: Perangkat keras dan firmware. Selanjutnya adalah kernel XNU. Di atas itu: layanan inti. Berikutnya, layanan aplikasi. Atas: Aplikasi sebenarnya yang Anda gunakan.
Tumpukan ini penting. Ini menunjukkan bagaimana lapisan berinteraksi. Perubahan nuklir dapat menimbulkan efek riak. Memperbarui GUI biasanya tidak merusak intinya. Pemisahan itu disengaja.
Layanan inti dan GUI
Lapisan layanan inti berisi kerangka kerja. Tangani tugas seperti pencarian teks dalam berbagai bahasa. Menyediakan API sistem. Pengembang menggunakan API ini untuk membangun perangkat lunak. Layanan inti melakukan pekerjaan berat di latar belakang.
Tingkat layanan aplikasi ditampilkan. Ini adalah antarmuka pengguna grafis (GUI). Buat jendela, ikon, dan kursor. Ini adalah saluran komunikasi antar aplikasi. Lapisan ini memudahkan untuk menyalin teks dari browser dan menempelkannya ke dalam dokumen. Ini adalah bagaimana aplikasi dapat berkomunikasi satu sama lain.
Apa yang dimaksud dengan XNU?
Nama itu sendiri adalah sebuah lelucon. Insinyur komputer menyukai permainan kata-kata yang buruk. XNU tidak mewakili singkatan yang rumit. Artinya “X bukan Unix”.
Unix adalah sistem operasi lain. Mac OS X berbagi DNA yang sama. Tapi itu bukan Unix. Namanya menekankan perbedaan ini. Itu adalah penghormatan terhadap leluhur dan perpecahan. Ini merupakan pengingat bahwa meskipun Mac dibangun berdasarkan prinsip-prinsip UNIX, ia sendiri merupakan sebuah monster.
Kernel menangani memori. Seri I/O menangani koneksi. BSD menjaga keamanan. Tumpukan itu menyatukan mereka. Lain kali Anda ingin Mac Anda berjalan dengan lancar, ingatlah kode yang melakukan pekerjaan tak kasat mata untuk Anda. Ini bukan sihir. Ini adalah arsitektur.


















