Pengertian
dan fungsi kernel
Kernel adalah suatu perangkat
lunak yang
menjadi bagian utama dari sebuah sistem
operasi. karena akses terhadap perangkat
keras terbatas,
sedangkan ada lebih dari satu program yang harus dilayani dalam waktu yang
bersamaan maka kernel juga bertugas untuk mengatur kapan dan berapa lama suatu
program dapat menggunakan satu bagian perangkat keras tersebutTugasnya melayani
bermacam program aplikasi untuk mengakses perangkat
keras komputer secara aman. Kernel berfungsi layaknya jembatan
yang menghubungkan antara software dan hardware pada komputer.
Fungsi utama kernel adalah untuk mengelola
sumber daya komputer dan memungkinkan program lain untuk menjalankan dan
menggunakan sumber daya koputer tersebut. Untuk menjalankan aplikasi suatu kernel pertama kali harus
menyediakan space address untuk aplikasi lalu men-load file yang berisi kode
aplikasi ke dalam memory, mempersiapkan stack untuk program dan percabangan ke
lokasi lain untuk program, dan kemudian baru memulai eksekusi program.
Tanggung jawab Kernel termasuk mengelola sumber
daya sistem (komunikasi antara hardware dan komponen software). Biasanya
sebagai komponen dasar dari suatu sistem operasi, kernel dapat menyediakan
lapisan abstraksi terendah-level untuk sumber daya (terutama prosesor dan
perangkat Input Output) bahwa perangkat lunak aplikasi harus terkontrol untuk
melakukan fungsinya. Kernel biasanya membuat fasilitas tersebut tersedia untuk
proses aplikasi melalui inter-process communication mechanisms dan system
calls. System call ini digunakan untuk mengimplementasikan berbagai
layanan yang diberikan oleh sistem pengoperasian. Program sistem dan semua
program-program lainnya yang dijalankan di atas kernel disebut user mode.Kernel Linux
terdiri dari beberapa bagian penting, seperti: pengurusan proses, pengurusan
ingatan, pemacu perkakasan, pemacu sistem fail, pengurusan jaringan dan
lain-lain. Namun bahagian yang terpenting ialah pengurusan proses dan pengurusan
ingatan. Pengurusan
ingatan meliputi penggunaan ingatan, kawasan pertukaran, bahagian-bahagian
kernel dan untuk cache penimbal (buffer cache). Pengurusan proses
menangani penggunaan proses-proses dan penjadualan proses. Pada bahagian dasar
kernel terdapat pemacu perkakasan untuk setiap jenis perkakasan komputer yang disokong.
Berikut beberapa fungsi kernel:
1. Pengurusan proses.
Tugas utama sebuah
system pengoperasian kernel ialah membenarkan aplikasi yang lain untuk berjalan
dan menyokong mereka dengan ciri-ciri tambahan, seperti pengabstrakan
perkakasan, untuk menjalan proses, kernel mesti memuat turun failnya kepada
ingatan, menyediakan stack untuk program dan pergi ke lokasi yang diberikan di
dalam program, ini memulakan perjalanan sesebuah program, cara ini dipanggil scheduling. Dalam sistem berbilang kerja, kernel secara
asasnya akan memberikan setiap program sedikit masa dan menukarkan dari proses
ke proses dengan cepat dengan itu ia akan muncul kepada pengguna jika proses
ini dijalankan secara terus menerus. Kernel mesti juga menyediakan proses ini
untuk berkomunikasi, ini dikenali sebagai inter-process
communication. Ini kemungkinan ada
multipemprosesan yang menyokong kernel tersebut.
2. Pengurusan ingatan.
Kernel mempunyai
akses penuh dalam ingatan sistem dan menyediakan cara-cara untuk membenarkan userland
program untuk mengakses memori ini dengan selamat. Cara pertama untuk mengurus
ingatan ialah virtual addressing, biasanya arkib dengan mukasurat atau segmentation. Virtual addressingmembenarkan kernel untuk memberikan alamat fizikal
yang muncul sebagai alamat yang lain iaitu virtual address, ini membenarkan setiap program mempercayai ia
hanya satu program (sebahagian daripada kernel) yang berjalan, dan ini
mengelakkan aplikasi daripada berlanggar antara satu sama lain.
3. Pengurusan peranti.
Dalam arahan untuk
melakukan sesuatu tugas, kernel perlu untuk mengakses perbagai peranti yang
bersambungan di dalam komputer, sebagai contoh, dalam arahan untuk memaparkan
pengguna apa-apa sahaja, pemacu monitor perlu untuk muncul, peranti ini boleh
dikawal melalui pemacu, di mana ia mesti dibuat oleh pembangun dan/atau
disediakan oleh pengilang sesuatu peranti tersebut.
Pengurus peranti
pertamanya akan melakukan semakan keatas bas perkakasan yang berbeza (seperti
USB, PCI), dalam arahan unruk mengesan semua peranti yang telah dipasang dan
kemudiannya mencari pemacu yang bersesuaian, selepas ini, semuanya bergantung
kepada jenis kernel dan rekaan kernel.
4. Sistem panggilan.
Dalam arahan untuk
menyediakan kerja yang berguna, program userland mesti mempunyai akses kepada
semua perkhidmatan yang disediakan oleh kernel. Ini dilaksanakan secaar
berbeza-beza oleh kernel yang berlainan, tetapi mesti disediakan oleh C
library, dimana ia menukarkan kelemahan kesemua system panggilan, sama ada
diberikan atau melalui memori yang dikongsi.
5. Shell.
Shell adalah perisian atau aplikasi yang menjadi alat untuk perhubungan
antara pangguna untuk berhubung dengan sistem operasi, shella akan membaca apa
sahaja yang dimasukkan oleh pengguna dan memahaminya sebagai arahan untuk
menjalankan perisian lain, memanipulasi fail, dan memberikan output. Shell juga
turut dikenali sebagai command line interface
Terdapat pelbagai shell untuk Unix/Linux. Korn shell atau
POSIX shell adalah shell yang biasa di kebanyakkan jenis unix atau linux.
Kedudukan kernel dalam
sistem komputer.
Kedudukkan kernel pada
sistem komputer adalah pada root directory yang mengandungi
kedua-dua boot program dan fail yang mengandungi kernel untuk sistem. Kernel
biasanya menpunyai pelbagai nama, berbeza dari pengilang mesin antara satu sama
lain, tetapi kebiasannya ia mempunyai perkataan nix supaya pengguna dapat
mencarinya dengan wildcard characters.
Referensi
To:
keren min, makasih
BalasHapussolder uap