| Tweet |
|
Topik:
|
Apa Itu Kernel? Penjelasan Lengkap tentang Inti dari Setiap Sistem OperasiOleh: Hobon.id (13/07/2026)
Setiap kali kita membuka aplikasi, terhubung ke Wi-Fi, menyimpan file, atau mencolokkan drive USB, sepotong perangkat lunak yang hampir pasti tidak akan pernah kita lihat atau berinteraksi langsung dengannya diam-diam memungkinkan semua itu terjadi. Perangkat lunak itu adalah kernel, yaitu inti terdalam dari setiap sistem operasi, dan bisa dibilang bagian kode terpenting yang berjalan di komputer, ponsel, atau server mana pun yang ada. Ia tidak pernah menampilkan jendela, tidak pernah menampilkan ikon, dan tidak pernah meminta input kita secara langsung, namun tidak ada hal lain di perangkat yang dapat berfungsi tanpanya.Memahami apa sebenarnya kernel itu, dan apa yang dilakukannya, akan menghilangkan misteri salah satu konsep paling mendasar dalam komputasi, yaitu lapisan yang berada di antara perangkat keras fisik di dalam perangkat kita dan setiap bagian perangkat lunak yang sebenarnya kita interaksi dengannya. Di sini, kami akan menjelaskan secara tepat apa yang dilakukan kernel, bagaimana strukturnya, berbagai filosofi arsitektur yang digunakan perancang sistem operasi untuk membangunnya, dan bagaimana konsep tersebut berperan dalam sistem operasi nyata sehari-hari yang berjalan di miliaran perangkat saat ini. Advertisement:
Apa Sebenarnya Itu KernelKernel adalah komponen inti dari sistem operasi, yang bertanggung jawab untuk mengelola sumber daya perangkat keras komputer dan menyediakan layanan fundamental yang dibutuhkan semua perangkat lunak lain untuk berjalan. Ini adalah program pertama yang dimuat ke dalam memori saat komputer dinyalakan, dan tetap berada di memori selama perangkat tetap menyala, bertindak sebagai otoritas pusat yang menjadi perantara antara setiap aplikasi yang berjalan di sistem dan perangkat keras fisik — seperti prosesor, memori, perangkat penyimpanan, antarmuka jaringan, dan setiap komponen fisik lainnya — yang pada akhirnya perlu digunakan oleh aplikasi tersebut. Cara paling simpel untuk memahami peran kernel adalah sebagai penerjemah dan penjaga gerbang, yang berada di antara dua dunia yang jika tidak, tidak akan memiliki cara yang andal untuk berkomunikasi. Di satu sisi terdapat perangkat keras fisik, yaitu seperti prosesor yang mengeksekusi instruksi mesin mentah, chip memori yang menyimpan data biner mentah, dan perangkat penyimpanan yang membaca dan menulis sektor fisik. Di sisi lain terdapat setiap perangkat lunak yang berjalan di perangkat, yaitu seperti browser web, pengolah kata, klien email, dan setiap proses latar belakang yang berjalan diam-diam tanpa kita sadari. Tidak satu pun dari perangkat lunak tersebut memiliki cara langsung dan aman untuk berkomunikasi dengan perangkat keras secara mandiri, sebab jika setiap aplikasi diizinkan untuk mengontrol prosesor, memori, dan penyimpanan secara langsung sesuka hati, hasilnya akan berupa kekacauan terus-menerus, dengan program-program yang berbeda saling mengganggu data satu sama lain, memperebutkan sumber daya fisik yang sama, dan menyebabkan seluruh sistem mengalami kerusakan secara berkala. Kernel ada khusus untuk mencegah kekacauan tersebut, bertindak sebagai perantara tunggal dan tepercaya yang harus dilalui setiap aplikasi untuk benar-benar melakukan sesuatu di tingkat perangkat keras. Tanggung Jawab Inti KernelTugas kernel terbagi menjadi beberapa kategori tanggung jawab yang berbeda, masing-masing menangani sumber daya fundamental yang berbeda yang perlu dikelola dan dibagikan dengan aman di antara banyak program yang bersaing secara bersamaan. Manajemen ProsesPada saat tertentu, komputer modern menjalankan puluhan atau bahkan ratusan program terpisah secara bersamaan — browser, aplikasi perpesanan, layanan sistem latar belakang, dan proses lain yang tak terhitung jumlahnya, semuanya tampak berjalan bersamaan meskipun inti prosesor secara teknis hanya dapat mengeksekusi satu instruksi pada satu waktu. Kernellah yang menciptakan ilusi simultanitas ini, melalui teknik yang disebut penjadwalan proses, yaitu ia dengan cepat mengalihkan perhatian prosesor antara berbagai proses yang berjalan, memberi masing-masing sedikit waktu untuk dieksekusi sebelum beralih ke yang berikutnya, berputar begitu cepat sehingga dari perspektif manusia, semuanya tampak terjadi bersamaan. Selain sekadar beralih antar proses, kernel bertanggung jawab untuk membuat proses baru ketika sebuah program diluncurkan, menghentikannya ketika sebuah program ditutup atau mengalami crash, mengalokasikan waktu prosesor secara adil (atau sesuai prioritas, untuk tugas-tugas yang benar-benar perlu dijalankan lebih mendesak daripada yang lain), dan menangani komunikasi yang perlu terjadi ketika proses-proses terpisah perlu berkoordinasi atau berbagi data satu sama lain. Kemampuan terakhir ini, yang dikenal sebagai komunikasi antar proses, adalah yang memungkinkan sesuatu yang sederhana seperti menyalin teks di satu aplikasi dan menempelkannya ke aplikasi lain untuk benar-benar berfungsi dengan andal. Manajemen MemoriSetiap proses yang berjalan membutuhkan sebagian memori komputer untuk menyimpan kode dan datanya selama eksekusi, dan kernel bertanggung jawab untuk mengalokasikan memori tersebut ke setiap proses, melacak dengan cermat wilayah mana yang sedang digunakan dan oleh siapa, serta mengklaim kembali memori ketika suatu proses tidak lagi membutuhkannya. Yang terpenting, kernel juga memberlakukan batasan ketat antara memori proses yang berbeda, yaitu satu proses tidak diizinkan untuk membaca atau menulis ke ruang memori milik proses lain, yang merupakan jaminan keamanan dan stabilitas mendasar. Tanpa penegakan ini, program yang ditulis dengan buruk atau berbahaya dapat merusak data program lain, membaca informasi sensitif yang seharusnya tidak diaksesnya, atau menyebabkan seluruh sistem macet dengan menulis ke memori yang bergantung pada kernel itu sendiri. Sebagian besar kernel modern menerapkan teknik yang disebut memori virtual, yang memberi setiap proses ilusi bahwa ia memiliki akses ke blok memori besar yang berdekatan sepenuhnya miliknya sendiri, meskipun memori fisik aktual yang terpasang di mesin jauh lebih terbatas dan, pada kenyataannya, dibagi dan diatur di antara banyak proses secara bersamaan. Kernel menangani kompleksitas yang cukup besar dalam menerjemahkan antara memori virtual yang dirasakan oleh setiap proses dan alamat memori fisik sebenarnya tempat data disimpan, termasuk teknik seperti paging, yang memungkinkan kernel untuk sementara memindahkan data yang saat ini tidak digunakan dari memori fisik yang cepat ke penyimpanan disk yang lebih lambat, sehingga membebaskan memori fisik untuk proses yang lebih membutuhkannya saat itu. Manajemen PerangkatSetiap perangkat keras yang terhubung ke komputer — seperti keyboard, monitor, kartu jaringan, drive penyimpanan, printer, dan periferal lainnya yang tak terhitung jumlahnya — memerlukan instruksi khusus, yang seringkali sangat teknis, untuk benar-benar berkomunikasi, dan instruksi tersebut berbeda secara signifikan dari satu produsen dan model perangkat keras ke yang lain. Kernel mengelola kompleksitas ini melalui driver perangkat, yaitu potongan kode khusus, yang sering disediakan oleh produsen perangkat keras itu sendiri, yang tahu persis cara berkomunikasi dengan perangkat keras tertentu dan mengekspos fungsionalitas tersebut ke seluruh sistem melalui antarmuka standar. Abstraksi ini benar-benar ampuh: karena kernel menangani detail rumit dan spesifik perangkat keras melalui driver, aplikasi yang berjalan di atasnya tidak perlu tahu atau peduli apakah kita menggunakan merek kartu grafis tertentu atau merek lain, atau apakah penyimpanan kita adalah hard drive tradisional atau solid-state drive — mereka hanya meminta kernel untuk membaca file atau menggambar sesuatu di layar, dan kernel akan mencari tahu instruksi tingkat perangkat keras spesifik yang diperlukan untuk mewujudkannya, menggunakan driver apa pun yang sesuai dengan perangkat keras yang terpasang. Manajemen Sistem FileKernel bertanggung jawab untuk mengatur bagaimana data sebenarnya disimpan dan diambil dari perangkat penyimpanan permanen, menyajikan apa yang seringkali secara fisik merupakan susunan sektor penyimpanan yang kompleks sebagai hierarki file dan folder yang bersih dan intuitif yang berinteraksi dengan pengguna dan aplikasi. Ini termasuk melacak secara tepat di mana data setiap file secara fisik berada pada perangkat penyimpanan, mengelola izin yang menentukan pengguna dan proses mana yang diizinkan untuk membaca, menulis, atau mengeksekusi file tertentu, dan menangani kompleksitas yang cukup besar yang terlibat dalam mendukung berbagai format sistem file. System Call dan Penanganan InterupsiAplikasi membutuhkan cara yang terkontrol dan terdefinisi dengan baik untuk meminta layanan dari kernel — seperti membuka file, mengalokasikan memori, mengirim data melalui koneksi jaringan — dan ini terjadi melalui mekanisme yang disebut system call. System call pada dasarnya adalah permintaan formal yang dibuat aplikasi ke kernel, memintanya untuk melakukan beberapa operasi istimewa atas nama aplikasi, karena aplikasi itu sendiri tidak diizinkan untuk berinteraksi langsung dengan perangkat keras atau sumber daya sistem yang sensitif. Model berbasis permintaan ini merupakan inti dari bagaimana kernel mempertahankan kendali dan stabilitas di seluruh sistem yang menjalankan banyak program independen yang saling tidak percaya secara bersamaan. Selain menangani permintaan yang diprakarsai oleh perangkat lunak, kernel juga harus menanggapi interupsi, yaitu sinyal yang dihasilkan oleh perangkat keras itu sendiri, yang menunjukkan bahwa sesuatu memerlukan perhatian segera, seperti kartu jaringan yang mengumumkan bahwa data baru saja tiba, atau keyboard yang memberi sinyal bahwa sebuah tombol telah ditekan. Sistem penanganan interupsi kernel memungkinkannya untuk menghentikan sementara apa pun yang sedang dilakukannya, menanggapi peristiwa perangkat keras dengan tepat, dan kemudian melanjutkan pekerjaan sebelumnya, memastikan bahwa peristiwa perangkat keras yang sensitif terhadap waktu ditangani dengan cepat daripada tertunda di belakang tugas perangkat lunak apa pun yang saat ini sedang mendapat perhatian prosesor. Kernel Space vs. User SpaceSalah satu konsep terpenting yang mendasari bagaimana kernel menjaga stabilitas dan keamanan adalah pembagian sistem yang sedang berjalan menjadi dua tingkat hak akses yang berbeda, yang biasa disebut kernel space dan user space. Kernel space adalah tempat kernel itu sendiri berjalan, dengan akses penuh dan tidak terbatas ke perangkat keras dan memori komputer. User space adalah tempat aplikasi biasa berjalan, yang sengaja dibatasi untuk mengakses langsung perangkat keras atau memori milik proses lain, dan sebagai gantinya diharuskan untuk melalui kernel, melalui systam call, setiap kali mereka membutuhkan sesuatu yang memerlukan hak akses yang lebih tinggi. Pemisahan ini diberlakukan pada tingkat perangkat keras oleh prosesor itu sendiri, bukan hanya sebagai konvensi perangkat lunak — CPU modern menerapkan mode hak akses yang berbeda (sering disebut ring, dengan ring 0 biasanya dicadangkan untuk kernel dan ring dengan hak akses lebih rendah untuk aplikasi pengguna), dan prosesor secara fisik menolak untuk mengeksekusi instruksi hak akses tertentu kecuali kode yang memintanya berjalan dalam mode yang sesuai. Batasan yang diberlakukan oleh perangkat keras inilah yang menjadikan pembagian ruang kernel/pengguna sebagai jaminan keamanan yang nyata, bukan hanya konvensi sopan yang dapat diabaikan oleh program yang berperilaku buruk. Nilai praktis dari pemisahan ini sangat besar. Jika aplikasi user space mengalami crash, macet, atau berperilaku tidak wajar, kerusakan umumnya terbatas pada satu proses tersebut — kernel dapat mendeteksi kegagalan, membersihkan sumber daya proses, dan sisa sistem terus berjalan normal. Tetapi karena kernel itu sendiri berjalan dengan hak istimewa penuh dan tidak terbatas serta tidak memiliki jaring pengaman yang setara di atasnya, kegagalan serius di tingkat kernel merupakan peristiwa yang jauh lebih berdampak, seringkali menyebabkan seluruh sistem crash daripada hanya satu program yang berperilaku tidak wajar, itulah sebabnya kode kernel diatur dengan standar ketelitian, pengujian, dan pengawasan yang jauh lebih tinggi daripada aplikasi ruang pengguna pada umumnya. Jenis-Jenis Arsitektur KernelTidak setiap sistem operasi membangun kernelnya dengan cara yang sama, dan pilihan arsitektur spesifik yang dibuat oleh perancang kernel melibatkan pertimbangan yang nyata dan bermakna antara kinerja, stabilitas, dan kompleksitas. Kernel MonolitikKernel monolitik menggabungkan hampir semua layanan inti sistem operasi — seperti manajemen proses, manajemen memori, driver perangkat, sistem file, dan jaringan — ke dalam satu program besar yang berjalan sepenuhnya di dalam ruang kernel. Karena semuanya berada bersama-sama dalam satu ruang alamat terpadu, komunikasi antara subsistem kernel yang berbeda sangat cepat, karena driver perangkat dapat langsung memanggil fungsi dalam subsistem manajemen memori tanpa biaya tambahan yang terlibat dalam melintasi komponen yang terpisah dan terisolasi. Kernel Linux adalah contoh paling menonjol dari desain monolitik, dan keunggulan kinerjanya telah menjadikan arsitektur ini pilihan dominan untuk sebagian besar sistem operasi desktop dan server yang digunakan saat ini. Kelemahannya adalah karena begitu banyak kode berjalan bersamaan dengan hak akses kernel penuh, bug di satu subsistem — bahkan sesuatu yang tampaknya kecil seperti driver perangkat yang ditulis dengan buruk — berpotensi menyebabkan crash atau membahayakan seluruh sistem, karena tidak ada isolasi yang kuat antara berbagai komponen yang berada di dalam kernel monolitik yang sama. MikrokernelMikrokernel mengambil filosofi yang berlawanan, menjaga kernel itu sendiri sekecil dan seminimal mungkin, hanya menangani tanggung jawab yang paling penting dan mendasar — biasanya penjadwalan proses dasar, manajemen memori, dan komunikasi antar proses — sementara mendorong semua hal lain, termasuk driver perangkat dan sistem file, ke dalam proses terpisah yang berjalan di ruang pengguna, terisolasi dari inti kernel dan satu sama lain. Desain ini menawarkan keuntungan stabilitas yang nyata dan bermakna, yaitu jika driver perangkat yang berjalan sebagai proses ruang pengguna terpisah mengalami crash dalam sistem berbasis mikrokernel, driver tersebut berpotensi dapat dihidupkan kembali tanpa menyebabkan seluruh sistem operasi mati, karena driver tersebut tidak pernah diberikan akses tanpa batasan dan tanpa isolasi yang sama seperti driver bawaan kernel monolitik. Konsekuensinya adalah performa: karena komponen yang berbeda sekarang harus berkomunikasi melintasi batas proses daripada saling memanggil secara langsung dalam satu ruang alamat bersama, komunikasi tersebut membawa lebih banyak overhead, yang secara historis membuat desain mikrokernel murni lebih lambat daripada rekan monolitiknya untuk banyak beban kerja dunia nyata. Minix dan QNX adalah contoh penting dari filosofi mikrokernel dalam praktiknya. Kernel HibridaMenyadari bahwa kedua filosofi murni tersebut memiliki kekurangan nyata, sebagian besar sistem operasi komersial utama yang banyak digunakan saat ini telah memilih pendekatan hibrida, yaitu mencoba untuk menangkap beberapa manfaat kinerja dari desain monolitik bersamaan dengan beberapa manfaat modularitas dan isolasi dari mikrokernel. Kernel Windows NT, yang mendasari setiap versi Windows modern, dan kernel XNU, yang mendasari macOS dan iOS, keduanya merupakan desain hibrida, menjalankan sebagian besar layanan inti di dalam ruang kernel untuk kinerja, mirip dengan kernel monolitik, sambil menjaga subsistem tertentu lebih modular dan terisolasi daripada desain monolitik murni pada umumnya. EksokernelPendekatan keempat yang kurang umum tetapi secara konseptual menarik, eksokernel, mendorong minimalisme mikrokernel lebih jauh lagi, yaitu mencoba untuk memberikan aplikasi kontrol tingkat rendah yang jauh lebih langsung atas sumber daya perangkat keras sambil hanya menyediakan lapisan perlindungan yang paling tipis yang diberlakukan kernel di antara mereka. Exokernel sebagian besar tetap menjadi arsitektur penelitian dan akademis, bukan sesuatu yang ditemukan dalam sistem operasi arus utama yang banyak digunakan, tetapi mereka telah secara signifikan memengaruhi pemikiran selanjutnya tentang seberapa banyak abstraksi yang benar-benar perlu diterapkan oleh kernel dibandingkan dengan seberapa banyak kendali yang dapat dengan aman dikembalikan ke aplikasi itu sendiri. Kernel Dunia Nyata yang Sudah Kita GunakanKernel Linux, yang pertama kali dirilis oleh Linus Torvalds pada tahun 1991 dan terus dikembangkan oleh komunitas global yang besar sejak saat itu, hampir pasti merupakan kernel yang paling banyak digunakan di planet ini jika semua kategori perangkat dihitung bersama. Kernel ini menggerakkan sebagian besar server dan infrastruktur cloud di dunia, membentuk dasar sistem operasi Android yang berjalan di miliaran ponsel pintar, dan mendasari banyak perangkat tertanam, mulai dari router rumahan hingga TV pintar hingga sistem kontrol industri. Sifat open source-nya memungkinkan kernel ini untuk diadaptasi dan diperluas untuk berbagai macam perangkat keras dan kasus penggunaan yang jauh melampaui apa yang mungkin pernah diantisipasi oleh penciptanya. Kernel Windows NT, yang pertama kali diperkenalkan pada awal tahun 1990-an dan terus disempurnakan sejak saat itu, mendasari setiap versi modern Microsoft Windows, mulai dari komputer desktop dan laptop hingga penerapan Windows Server yang berjalan di pusat data perusahaan. Desain hibridanya memungkinkan Microsoft untuk menyeimbangkan tuntutan kinerja komputasi konsumen dengan modularitas dan ekosistem driver yang dibutuhkan untuk mendukung berbagai macam perangkat keras pihak ketiga yang sangat beragam. Kernel XNU milik Apple, yang merupakan hibrida yang dibangun di atas fondasi mikrokernel Mach dan BSD Unix, menggerakkan macOS, iOS, iPadOS, dan watchOS, memberikan seluruh jajaran perangkat Apple fondasi kernel bersama meskipun perangkat keras dan kasus penggunaan yang sebenarnya dilayani oleh lini produk yang berbeda sangat berbeda. Dan khususnya di perangkat seluler, bersama dengan Linux yang menggerakkan inti Android, iOS berbasis XNU milik Apple mewakili kernel dominan lainnya yang berinteraksi dengan sebagian besar orang setiap hari, terlepas dari apakah mereka pernah secara sadar memikirkan apa yang sebenarnya berjalan di bawah antarmuka ponsel mereka atau tidak. Bagaimana Kernel Terintegrasi ke dalam Sistem Operasi yang Lebih LuasPenting untuk memperjelas perbedaan yang seringkali kabur dalam percakapan sehari-hari, yaitu kernel bukanlah hal yang sama dengan sistem operasi secara keseluruhan, meskipun kedua istilah tersebut terkadang digunakan secara bergantian. Sistem operasi adalah paket perangkat lunak lengkap yang membuat komputer dapat digunakan — termasuk kernel, tetapi juga kumpulan komponen tambahan yang jauh lebih luas, seperti utilitas sistem, pustaka yang diandalkan aplikasi, antarmuka pengguna grafis (pada sistem yang memilikinya), dan seringkali kumpulan aplikasi dan layanan yang terbundel. Kernel secara khusus adalah lapisan inti dan dasar dalam paket yang lebih luas tersebut — yaitu bagian yang bertanggung jawab atas manajemen sumber daya tingkat terendah yang dijelaskan di sini — sementara semua hal lain dalam sistem operasi dibangun di atas layanan yang disediakan kernel. Inilah sebagian alasan mengapa, secara historis, perdebatan kadang-kadang muncul tentang apakah sistem operasi seperti "Linux" seharusnya lebih tepat disebut "GNU/Linux" — kernel Linux itu sendiri sebenarnya hanyalah kernel, dan sistem operasi yang lebih luas dan sepenuhnya dapat digunakan yang dibangun di sekitarnya (Ubuntu, Fedora, Debian, dan banyak lainnya) menggabungkan kernel tersebut dengan sejumlah besar perangkat lunak tambahan, yang sebagian besar berasal dari proyek GNU, untuk menghasilkan sesuatu yang dapat diinstal dan digunakan pengguna biasa sehari-hari. Kernel adalah inti yang penting dan menopang beban — tetapi sebenarnya hanya satu komponen, betapapun mendasarnya, dalam struktur yang jauh lebih besar yang membentuk sistem operasi yang lengkap dan dapat digunakan. Apa yang Terjadi Saat Komputer BootingMemahami peran kernel menjadi lebih jelas ketika kita menelusuri apa yang sebenarnya terjadi saat komputer dinyalakan. Firmware awal — secara historis BIOS, dan pada sistem modern biasanya UEFI — berjalan terlebih dahulu, melakukan pemeriksaan perangkat keras dasar dan kemudian menemukan dan memuat program kecil yang disebut bootloader dari perangkat penyimpanan. Tugas bootloader sempit tetapi penting, yaitu menemukan citra kernel pada disk, memuatnya ke dalam memori, dan menyerahkan kendali eksekusi kepadanya. Setelah kernel mengambil alih, ia menginisialisasi subsistem inti yang dijelaskan di sini — seperti menyiapkan manajemen memori, menginisialisasi driver perangkat untuk perangkat keras yang dideteksinya, dan mempersiapkan sistem manajemen proses yang akan digunakannya untuk menjalankan semua hal lainnya. Hanya setelah inisialisasi ini selesai, kernel meluncurkan proses user space pertama, yang kemudian berlanjut ke memulai semua layanan sistem tambahan dan, akhirnya, layar login atau antarmuka grafis yang sebenarnya dilihat dan diinteraksikan pengguna. Segala sesuatu yang dialami seseorang saat menggunakan komputer — setiap jendela, setiap aplikasi, setiap interaksi — berada di atas proses inisialisasi kernel yang terjadi dalam beberapa detik pertama setelah dinyalakan, hampir sepenuhnya tidak terlihat oleh orang yang menunggu perangkat mereka selesai memulai. Mengapa Kernel PentingKernel jarang mendapat perhatian langsung dari orang-orang yang menggunakan perangkat yang didukungnya, dan ketidakjelasan itu, dalam arti sebenarnya, merupakan tanda keberhasilannya — kernel yang terus-menerus menunjukkan keberadaannya melalui kerusakan, ketidakstabilan, atau gangguan yang terlihat pada aplikasi yang sedang berjalan adalah kernel yang tidak menjalankan tugasnya dengan baik. Tujuan utamanya adalah untuk mengelola jaringan tuntutan yang sangat kompleks dan saling bersaing pada sumber daya perangkat keras bersama yang terbatas, dengan tenang dan andal sehingga perangkat lunak yang berjalan di atasnya dapat berasumsi bahwa sumber daya tersebut akan tersedia, dengan aman, kapan pun dibutuhkan. Memahami apa yang dilakukan kernel — penjadwalan proses, manajemen memori, abstraksi perangkat, organisasi sistem file, dan batasan yang diberlakukan antara kernel space dan user space — akan memberikan pemahaman teknis yang benar-benar mendasar yang menjelaskan banyak hal tentang bagaimana komputer sebenarnya bekerja di balik antarmuka yang berinteraksi langsung dengan sebagian besar orang. Setiap aplikasi bergantung padanya, setiap perangkat keras dimediasi melaluinya, dan pilihan arsitektur spesifik yang dibuat oleh para perancangnya — monolitik, mikrokernel, atau hibrida — membentuk karakteristik kinerja, stabilitas, dan keamanan dari setiap perangkat yang dibangun di atasnya. Advertisement:
Jadi, kernel adalah inti dasar dari setiap sistem operasi, yaitu lapisan perangkat lunak yang mengelola prosesor, memori, penyimpanan, dan setiap sumber daya perangkat keras lainnya pada komputer, sekaligus menyediakan antarmuka yang terkontrol dan terstandarisasi yang menjadi dasar bagi semua perangkat lunak lain untuk benar-benar melakukan sesuatu. Kernel menegakkan batasan penting antara kernel space dan user space yang menjaga sistem tetap stabil bahkan ketika aplikasi individual berperilaku tidak wajar, dan kernel membuat pilihan arsitektur — monolitik, mikrokernel, atau hibrida — yang membentuk kinerja dan stabilitas fundamental dari semua yang dibangun di atasnya.
Artikel Terkait:
|