Friday, December 09, 2016

Maksud Linux Kernel



Secara literal, kernel bermaksud bahagian dalam buah bercengkerang seperti buah kelapa sawit. Isinya lembut dan sedikit sahaja tapi di situlah letaknya nilai buah tersebut.

Demikian juga halnya dengan Linux Kernel. Ia adalah bahagian perisian (software) teras yang menjadi perantara di antara mesin komputer dan perisian pengguna yang lain. Sebagai contohnya, pakej Red Hat Linux yang bersaiz sebesar 2.5++ GB sebenarnya mengandungi 47MB sahaja perisian Linux Kernel iaitu kira-kira 2% dari keseluruhan pakej tersebut.  Selebihnya adalah perisian tambahan yang dikenali sebagai perisian pengguna.



Gambarajah di atas menunjukkan peranan Linux Kernel di dalam sistem komputer. Linux Kernel menyediakan khidmat menghubungkan perisian pengguna dengan peranti komputer melalui pintu masuk yang dipanggil System Call

Dari perspektif pengaturcara, System Call kelihatan seperti Function Call sahaja. Namun realitinya ia berbeza sama sekali kerana System Call melibatkan peralihan dari ruang pengguna (user space) kepada ruang kernel (kernel space). Perisian yang membuat System Call tidak perlu mengetahui bagaimana isyarat dihantar kepada atau diterima daripada peranti. Sebaliknya adalah memadai bagi perisian pengguna menggunakan arahan System Call yang disediakan oleh Linux Kernel. Konsep abstraction ini dikenali sebagai Linux Virtual Machine.

Linux Kernel juga bersifat modular; modul boleh ditambah atau dibuang secara dinamik. Hal ini membolehkan saiz Linux Kernel diminimakan dan ia boleh menerima/membuang modul tanpa perlu dihidupkan semula atau reboot.



Terdapat beberapa bentuk nama fail Linux Kernel seperti ditunjukkan di atas. Gambar di atas menunjukkan nama fail Linux Kernel ie vmlinuz; vm membawa maksud virtual memory dan z membawa maksud ianya adalah sejenis compressed format.

No comments: