November 28, 2010

Kernel

1.    Apa yang dimaksud dengan kernel?
Kernel adalah  interface/jembatan  antara user-level program dengan hardware. perangkat lunak yang menjadi bagian utama dari sebuah sistem operasi.
Kernel merupakan inti dari sistem operasi dan bagian yang pertama kali diload ke memori ketika sistem mulai dan tetap berjalan sampai sistem berhenti. Servisnya diperlukan oleh bagian dari sistem operasi lainnya dan program aplikasi.
2.   Fungsi kernel
a.    melayani bermacam program aplikasi untuk mengakses perangkat keras komputer secara aman.
b.    mengatur kapan dan berapa lama suatu program dapat menggunakan satu bagian perangkat keras tersebut(multiplexing) karena akses terhadap perangkat keras terbatas, sedangkan ada lebih dari satu program yang harus dilayani dalam waktu yang bersamaan.
c.    mengimplementasikan sekumpulan abstraksi. Akses kepada perangkat keras secara langsung merupakan masalah yang kompleks. Abstraksi-abstraksi tersebut merupakan sebuah cara untuk menyembunyikan kompleksitas, dan memungkinkan akses kepada perangkat keras menjadi mudah dan seragam. Sehingga abstraksi pada akhirnya memudahkan pekerjaan programer.
3.   System Call
System call adalah tata cara pemanggilan di program aplikasi untuk memperoleh layanan yang disediakan oleh sistem operasi. System call berupa rutin sistem operasi untuk keperluan tertentu yang spesifik. Bentuk system call beragam, terbanyak berupa rutin prosedur atau fungsi.
4.   Perbedaan dan cara kerja/ konsep antara desain micro kernel dan hybrid kernel?
a.  Mikro kernel
Pada awalnya, konsep mikro kernel dikembangkan pada sistem operasi Mach. Ide dasar dari pengembangan kernel mikro adalah bahwa hanya fitur-fitur yang perlu saja yang diimplementasikan dalam kernel (mengenai fitur-fitur apa saja yang perlu diimplementasikan, ini bisa berbeda tergantung desain sistem operasi).
Komponen-komponen sistem operasi yang berada di luar kernel mikro diimplementasikan sebagai server process dan berkomunikasi dengan message passing via kernel mikro. Misalnya jika user ingin membuat berkas baru, dia mengirim pesan ke file system server, atau jika ingin membuat proses baru, dia mengirimkan pesan ke process server.
Kelebihan dari mikro kernel:
·        Interface yang seragam. Proses tidak lagi dibedakan, baik antara kernel-level maupun user-level, karena semuanya berkomunikasi via message passing.
·        ExtensibilityBisa menambahkan fitur-fitur baru tanpa perlu melakukan kompilasi ulang.
·        FlexibilityFitur-fitur yang sudah ada bisa dikurangi, atau dimodifikasi sesuai dengan kebutuhan sehingga menjadi lebih efisien. Misalnya tidak semua pengguna membutuhkan security yang sangat ketat, atau kemampuan untuk melakukan distributed computing.
·        PortabilityPada kernel mikro, semua atau sebagian besar kode yang prosesor-spesifik berada di dalamnya. Jadi, proses porting ke prosesor lain bisa dilakukan dengan relatif sedikit usaha. Pada kelompok desktop misalnya, tampaknya dominasi Intel makin kuat. Tapi, sampai seberapa lama itu bisa bertahan? Karena itulah, portability adalah salah satu isu yang sangat penting.
·        ReliabilitySemakin besar suatu software, maka tentulah semakin sulit untuk menjamin reliability-nya. Desain dengan pendekatan berlapis sangatlah membantu, dan dengan pendekatan kernel mikro bisa lebih lagi. Kernel mikro dapat dites secara ekstensif .Karena dia menggunakan API yang sedikit, maka bisa meningkatkan kualitas code di luar kernel.
·        Support for object-oriendted OSModel kernel mikro sangat sesuai untuk mengembangkan sistem operasi yang berbasis object-oriented. Contoh sistem operasi yang menggunakan kernel mikro adalah MacOS X dan QNX.
b.  Hybrid Kernel
Kernel hibrida merupakan arsitektur kernel yang menggabungkan aspek-aspek yang terdapat pada mikrokernel dan kernel monolitik.
Gagasan di belakang kernel hibrida adalah membuat suatu struktur kernel yang serupa seperti mikrokernel, namun diimplementasikan sebagai kernel monolitik. Berbeda dengan mikrokernel, semua (atau setidaknya hampir semua) layanan sistem terdapat pada ruang kernel dan bukan pada ruang pengguna. Seperti halnya pada kernel monolitik, tidak ada beban penurunan unjuk kerja seperti pada mikrokernel atas mekanisme penyampaian pesan, dan mekanisme proses lainnya, juga memiliki pemahaman yang sama seperti kernel monolitik, tidak ada keuntungan apapun atas penyediaan layanan pada ruang pengguna.
Kenapa Linux bisa dibuat Live CD? Karena kernel pada linux bertipe monolitik. 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. Linux Live CD hanya memiliki tempat di memori utama (RAM), sehingga setelah di-restart, semua isi RAM akan dikosongkan dan Linux Live CD harus melakukan inisialisasi ulang untuk mendeteksi semua perangkat keras yang dimiliki oleh user. Selain itu, kinerja dari Linux Live CD sendiri juga tidak bisa maksimal, karena kecepatan komputer untuk mengakses CD-ROM jauh lebih lambat dibandingkan dengan kecepatan mengakses harddisk. Pada sistem operasi modern yang menggunakan monolithic kernel, seperti halnya Linux 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.
Apakah sistem operasi selain linux dapat dibuat untuk live cd/usb ? Ada, antara lain Mac OSx dari unix dan XP dari windows. Namun sekitar tahun 2008, Mac OSx belum bisa dibuat live CD.
Dulu OS Live CD diawali oleh Linux karya Libus Torvald, kemudian beberapa waktu sesudah itu Windows muncul dengan XPnya yang ikut dengan Live CDnya. Maksudnya live CD ialah OS yang dapat diinstalkan pada komputer melalui boot dari suatu media, dalam hal ini CD. Dulu jamannya Flopy Disk (Disket), kemudian CD/DVD, sekarang yang lebih merakyat yaitu flash disk. Dengan perkembangan itu Linux juga selalu mengembangkan perangkatnya, sekarang sudah ada distro linux yang bisa langsung dijalankan melalui USB Flash Disk. MCNLive turunan dari Mandriva, kurang lebih sekitar 512 mb. OS ini sudah memakai standar GUI jadi sangat mudah dalam mengoperasikannya. Anda dapat menngunduhnya melalui ftp://ftp.nluug.nl/pub/os/Linux/distr/mandrakeclubnl/mcnlive/VirtualCity/MCNLive-VirtualCity.iso 
Mungkin dalam benak anda akan terfikir, apakah OS lain tidak bisa kita intal melalui media USB. Jawabnya bisa, anda dapat melakukan instalasi tersebut tapi dengan beberapa cara dan tambaha software.
Teknologi LiveCD merupakan gagasan paling brilian dari sebuah sistem operasi, yang dalam hal ini, Linux sebagai pelopor teknologi tersebut. Dengan teknologi LiveCD, user dibuat mudah dengan interface instalasi desktop yang mudah dipahami. Dan secara khusus, distribusi Linux yang sangat akrab dengan teknologi LiveCD Install adalah distribusi Ubuntu Linux. Paket instalasi dalam sekeping CD: praktis, simpel, 100 % fungsional dan tentu saja efisien.

0 komentar:

Post a Comment