Nama : I Putu Gede Eka Yuda Arista
Nim : 1605551019.
Dosen : I Putu Agus Eka Pratama ST., MT.
Matakuliah : Network Operating System.
Kampus : Universitas Udayana, Fakultas Teknik,
Program Studi Teknologi Informasi.
Haii udah lama nih gak nongol dan
bikin artikel, pasti pada kangen kan hehe, kali ini saya akan lanjutin artikel
mengenai salah satu bagian dari sistem operasi yaitu Kernel. Ingin tau lebih
banyak tentang Kernel? Yuk cekidot
Kernel adalah
sebuah perangkat lunak yang membuat komunikasi / mediator antara aplikasi
komputer dan perangkat keras, yang menyediakan pelayanan sistem seperti
pengaturan memori untuk proses-proses yang sedang berjalan, pengaturan
file-file, input-output terhadap dan dari suatu device dan masih banyak lagi
fungsi tambahan yang lainnya. Intinya adalah kernel merupakan suatu penghubung
(antara software dan hardware). Kernel menjalankan servis dasar dari sistem
operasi seperti manajemen memori, manajemen proses, manajemen file, dan
manajemen i/o (input/output). Ketika menjalankan servis-servis tersebut, kernel
terdiri dari bermacam isi tergantung dari sistem operasinya, tetapi umumnya ada
scheduler, supervisor, interrupt handler, dan memory manager. Berikut ini
merupakan pengertian isi dari sistem operasi :
1. Scheduler berfungsi untuk mengatur pembagian waktu dan
urutan dari proses-proses yang ingin mendapatkan servis dari kernel.
2. Supervisor berfungsi untuk memberikan servis oleh kernel
kepada proses yang sudah dijadwalkan.
3. Interrupt handler berfungsi untuk menangani seluruh
permintaan dari hardware yang ingin mendapatkan servis dari kernel.
4. Memori manager berfungsi untuk mengatur alokasi alamat di
memori.
Setelah kita mempelajari
pengertian dan definisi dari Kernel, sekarang apa fungsi dari Kernel itu
sendiri? Berikut adalah fungsi dari Kernel pada sistem operasi komputer:
1. Kernel berfungsi untuk melayani perangkat lunak aplikasi
untuk dapat mengakses perangkat keras atau hardware secara aman.
2. Kernel juga berfungsi sebagai pengatur kapan dan berapa lama sebuah program aplikasi
dapat menggunakan satu bagian perangkat keras. hal tersebut biasanya disebut
dengan Multiplexing
3. Membantu dan mendukung perangkat lunak aplikasi untuk
mengeksekusi dengan fitur abtraksi perangkat keras (hardware)
Setelah kita
mempelajari pengertian dan definisi dari Kernel, sekarang apa fungsi dari
Kernel itu sendiri? Berikut adalah fungsi dari Kernel pada sistem operasi
komputer:
1. Kernel monolitik yaitu kernel yang mengintegrasikan
banyak fungsi di dalam kernel dan menyediakan lapisan abstraksi perangkat keras
secara penuh terhadap perangkat keras yang berada di bawah sistem operasi.
2. Kernel Microkernel adalah kernel yang menyediakan hanya
sekumpulan kecil dari abstraksi perangkat keras sederhana, dan menggunakan
aplikasi-aplikasi yang disebut dengan server untuk menyediakan fungsi-fungsi
lainnya.
3. Kernel Hybrid (modifikasi dari microkernel) adalah kernel
yang persis atau mirip dengan microkernel, akan tetapi ia juga memasukkan
beberapa kode atau tambahan kode di dalam ruangan kernel suapaya ia menjadi
lebih cepat atau untuk meningkatkan performanya.
4. Kernel Exokernel adalah kernel yang tidak menyediakan
sama sekali abstraksi perangkat keras, akan tetapi ia menyediakan sekumpulan
library yang menyediakan fungsi akses ke perangkat keras (hardware) secara
langsung atau hampir-hampir langsung.
Kernel Linux
Kernel Linux adalah kernel yang digunakan dalam sistem operasi GNU/Linux.
Kernel Linux dirilis di bawah Lisensi Publik Umum GNU versi 2 (GPLv2) (dengan
bermacam-macam Firmware dengan lisensi tidak gratis yang bervariatif[butuh
rujukan]), dan dikembangkan oleh kontributor dari seluruh dunia. Diskusi
perkembangan dari hari ke hari dilakukan di Mailing List Linux Kernel.
Kernel Linux pada awalnya dibayangkan dan kemudian dibuat oleh murid Ilmu
Komputer berkebangsaan Finlandia, Linus Torvalds pada tahun 1991. Pengembang
dan Pengguna Linux bertambah dengan cepat, lalu mereka mengadaptasi kode dari
proyek-proyek software gratis untuk digunakan sebagai Sistem Operasi baru. Linux
kernel telah menerima kontribusi dari ribuan programmer. Banyak Distribusi
Linux telah dirilis berdasarkan Kernel Linux.Berikut ini merupakan bagan
mengenai kompleksnya Kernel Linux.
Kernel yang
didisain untuk linux hanya akan dipakai oleh sistem operasi tersebut. Linux
mempunyai kernel yang didisain untuknya tetapi user bisa memodifikasinya sesuai
kebutuhannya masing-masing. Hal tersebut juga yang membuat kernel lebih dikenal
di linux karena sifat kernelnya yang open source, berbeda dengan sistem operasi
lainnya yang kernelnya tidak bisa dimodifikasi. Berikut ini merupakan bagan
mengenai kompleksnya Kernel Linux.
Praktek Kernel Linux
Pada praktek kali ini, akan dilakukan pembedahan pada Kernel
Linux. Pembedahan dilakukan dengan membuka source code Kernel Linux versi awal.
Berikut beberapa penjelasan tentang direktori yang ada.
1. Direktori boot
Terdapat 2 file pada dikertori boot yaitu boot.s dan head.s. Berikut merupakan penjelasannya.
- boot.s = file yang berfungsi untuk menjalankan startup BIOS.
- head.s = file yang berfungsi sebagai kode startup 32-bit pada Linux.
2. Direktori lib
Terdapat 11 file pada ditektori lib yaitu _exit.c, close.c, ctype.c, dup.c, errno.c, execve.c, open.c, setsid.c, string.c, wait.c, dan write.c. Berikut penjelasannya.
- _exit.c berfungsi menjalan fungsi _exit(int exit_code)
- close.c berfungsi menjalankan fungsi syscall1(int,close,int,fd)
- ctype.c berfungsi menggunakan library ctype.h yang berfungsi untuk menguji dan mengkonversi karakter.
- dup.c berfungsi menjalankan fungsi yang sama dengan file close.c namun parameternya berbeda yaitu syscall1(int,dup,int,fd)
- execve.c berfungsi menjalankan fungsi _syscall3(int,execve,const char*, file, char **, argv, char **, envp)
- open.c berfungsi menggunakan library stdarg. yang berfungsi mengakses berbagai jumlah argumen dilewatkan ke fungsi. File ini menjalankan fungsi open.
- setsid.c berfungsi menjalankan fungsi _syscall0(pid_t,setsid)
- string.c berfungsi menggunakan library string.h dan mendeklarasikan fungsi extern, inline, dan __LIBRARY__
- wait.c berfungsi menggunakan library sys/wait.h dan menjalankan fungsi wait.
- write.c berfungsi menjalankan fungsi _syscall3(int,write,intfd,const char*, buf, off_t, count)
Referensi
[1] I Putu Agus Eka Pratama. "PPT Network Operating System Pertemuan ke-8". 2018.
- close.c berfungsi menjalankan fungsi syscall1(int,close,int,fd)
- ctype.c berfungsi menggunakan library ctype.h yang berfungsi untuk menguji dan mengkonversi karakter.
- dup.c berfungsi menjalankan fungsi yang sama dengan file close.c namun parameternya berbeda yaitu syscall1(int,dup,int,fd)
- execve.c berfungsi menjalankan fungsi _syscall3(int,execve,const char*, file, char **, argv, char **, envp)
- open.c berfungsi menggunakan library stdarg. yang berfungsi mengakses berbagai jumlah argumen dilewatkan ke fungsi. File ini menjalankan fungsi open.
- setsid.c berfungsi menjalankan fungsi _syscall0(pid_t,setsid)
- string.c berfungsi menggunakan library string.h dan mendeklarasikan fungsi extern, inline, dan __LIBRARY__
- wait.c berfungsi menggunakan library sys/wait.h dan menjalankan fungsi wait.
- write.c berfungsi menjalankan fungsi _syscall3(int,write,intfd,const char*, buf, off_t, count)
Referensi
[1] I Putu Agus Eka Pratama. "PPT Network Operating System Pertemuan ke-8". 2018.
Website paling ternama dan paling terpercaya di Asia
BalasHapusSistem pelayanan 24 Jam Non-Stop bersama dengan CS Berpengalaman respon tercepat
Memiliki 9 Jenis game yang sangat digemari oleh seluruh peminat poker / domino
Link Alternatif :
arena-domino.club
arena-domino.vip
100% Memuaskan ^-^