Jumat, 01 Maret 2013

Perbedaan Antara Kernel Monolitik dan Kernel Modular


  1. Kernel monolitik adalah kernel yang semua di-compile dari awal dan dimuat saat sistem boot. Kelebihannya adalah stabil, tetapi kelemahannya adalah kernel monolitik ini harus di-compile terlebih dahulu sebelum digunakan. Kernel monolitik didefinisikan sebagai sebuah antarmuka virtual yang berada pada tingkat tinggi di atas perangkat keras, dengan sekumpulan primitif atau system call untuk mengimplementasikan layanan-layanan sistem operasi, seperti halnya manajemen proses, konkurensi (concurrency), dan manajemen memori pada modul-modul kernel yang berjalan di dalam mode supervisor.
Meskipun jika setiap modul memiliki layanan operasi-operasi tersebut terpisah dari modul utama, integrasi kode yang terjadi di dalam monolithic kernel sangatlah kuat, dan karena semua modul berjalan di dalam address space yang sama, sebuah bug dalam salah satu modul dapat merusak keseluruhan sistem. Akan tetapi, ketika implementasi dilakukan dengan benar, integrasi komponen internal yang sangat kuat tersebut justru akan mengizinkan fitur-fitur yang dimiliki oleh sistem yang berada di bawahnya dieksploitasi secara efektif, sehingga membuat sistem operasi dengan monolithic kernel sangatlah efisien—meskipun sangat sulit dalam pembuatannya.
Pada sistem operasi modern yang menggunakan monolithic kernel, seperti halnya Linux, FreeBSD, Solaris, dan Microsoft Windows, dapat memuat modul-modul yang dapat dieksekusi pada saat kernel tersebut dijalankan sehingga mengizinkan ekstensi terhadap kemampuan kernel sesuai kebutuhan, dan tentu saja dapat membantu menjaga agar kode yang berjalan di dalam ruangan kernel (kernel-space) seminim mungkin.
Di bawah ini ada beberapa sistem operasi yang menggunakan Monolithic kernel:
  • Kernel sistem operasi UNIX tradisional, seperti halnya kernel dari sistem operasi UNIX keluarga BSD (NetBSD, BSD/I, FreeBSD, dan lainnya).
  • Kernel sistem operasi GNU/Linux, Linux.
  • Kernel sistem operasi Windows (versi 1.x hingga 4.x; kecuali Windows NT).

2.      Kernel modular adalah kernel yang dapat diinstall dan diuninstall. Kernel ini akan dimuat saat saat diperlukan. Salah satu contoh kernel modular ini adalah driver, seperti driver printer, VGA, dsb. Kernel modular terdiri dari modul-modul kernel yang dapat secara dinamik dipasang dan dilepas dari kernel. Modul-modul kernel yang bisa dipasang dan dilepas ini sering disebut dengan modul kernel loadable - Loadable Kernel Module (LKM).

                   Sebagai contoh driver-driver hardware biasanya di insertkan kedalam
kernel dalam bentuk module. Karena sifatnya yang dinamik ini kernel
modular bisa disisipi modul 'jahat' untuk keperluan seperti
backdooring kernel. Di artikel ini saya mencoba sedikit menjelaskan
bagaimana bermain-main dengan module kernel openbsd untuk mengambil
keuntungan dari modul-modul yang disisipkan ke kernel. Module-module
kernel dapat dibagi kedalam 5 kelompok umum:
* Modul System Call
* Modul Virtual File System
* Modul Device Drive
* Modul Execution Interpreter
* Modul Miscellaneous
 
 
Referensi
 
http://www.kecoak.or.id/sarang/TOKET_2/09-openbsd-lkm.txt
http://id.wikipedia.org/wiki/Kernel_monolitik
 
To:
 
 
</

Tidak ada komentar:

Posting Komentar