Arsitektur Unix Dan Kernel pdf
SISTEM OPERASI
ANGGOTA KELOMPOK :
CHRISTIAN ISWAHYUDI
DANIEL ADITYA NUGROHO
HENDRAYANA HARYAWAN
STEFANUS NYOMAN HENDRAWAN CITRA
KELAS
: AB 123
PROGRAM STUDI
: SISTEM INFORMASI
(120030027)
(120030031)
(120030411)
(120030493)
SEKOLAH TINGGI MANAJEMEN INFORMATIKA
DAN TEKNIK KOMPUTER
(STMIK) STIKOM BALI
2013
ABSTRAK
UNIX memiliki tujuan dalam Computer Networking, maka kemampuan dari UNIX
dalam memberikan jasa internet lebih berkembang dan lebih reliable. Banyak orang
mengatakan bahwa ber-network-ria dengan UNIX lebih cepat dibandingkan dengan sistem
operasi lain nya. Tetapi hal ini relatif, dikatakan relatif karena banyak faktor yang
menentukan performasi network dan tidak semudah itu untuk dibandingkan.
Saat ini UNIX sudah tidak terbatas sebagai komputer server/pemberi layanan
internet. Sekarang UNIX sudah mampu menggantikan fungsi Windows sebagai komputer
workstation/alat untuk bekerja sehari-hari, dan lebih stabil. Hal ini disebabkan oleh
perkembangan UNIX yang mulai terlihat prospeknya sebagai sistem operasi workstation
uga, tanpa meninggalkan arah perkembangan dalam Computer Networking.
UNIX lebih stabil dibandingkan dengan sistem operasi lainnya, hal ini disebabkan
konsep dan proses pembuatan karnel. Salah satu kestabilan UNIX, UNIX tidak pernah
mengalami kegagalan sistem yang disebabkan oleh sistem oprerasi tersebut.
KATA PENGANTAR
Puji syukur kami panjatkan kepada Tuhan Yang Maha Esa, karena atas berkat
rahmatnya sehingga makalah ini dapat diselesaikan sesuai dengan yang diharapkan.
Makalah ini disusun dengan memenuhi tugas Sistem Operasi. Dalam makalah ini
membahas mengenai UNIX dan KERNEL.
Makalah ini dibuat untuk memperdalam pemahaman mahasiswa tentang UNIX.
Dalam penulisan makalah ini, penyusun menyadari bahwa apa yang disampaikan ini masih
jauh dari kesempurnaan, maka dengan segala kerendahan hati, penyusun mengharapkan
kritik dan saran yang bersifat membangun untuk kebaikan dalam penulisan makalah ini.
Penyusun mohon maaf apabila terdapat kekurangan dan kesalahan dalam penulisan
makalah ini. Akhir kata semoga makalah ini bermanfaat bagi kita semua.
BAB I
UNIX
1. DEFINISI SISTEM OPERASI
Sistem operasi adalah perangkat lunak komputer yang mengatur dan
mengendalikan operasi dasar sistem komputer.
Tugas dari system operasi diantaranya :
• Melakukan fungsi manajemen sistem berkas
• Mengendalikan berbagai sumber pada sistem, seperti disk ndan printer
• Mengatur sejumlah pemakai yang menggunakan system bersamaan
• Membentuk penjadualan proses-proses didalam sistem.
Beberapa sifat dan keistimewaan sistem operasi yang diturunkan
dan diadopsi dari sistem operasi UNIX.
Sifat dan Keistimewaan UNIX :
1. Portabilitas
Portabilitas berarti ketidakbergantungan pada suatu perangkat keras
yang memungkikan pemakai tidak perlu terpaku pada satu vendor dan
mudah untuk diadaptasikan ke sistem komputer yang lain. Berikut adalah
table yang menggambarkan perbandingan system operasi dengan
erangkat
keras.
2. MultiUser
Multiuser berarti sejumlah orang (pemakai) dapat menggunakan
system secara bersamaan dan berbagi sumber (disk, printer dan
sebagainya). Keuntungan dengan adanya sifat multiuser :
Penghematan perangat keras Perangkat keras (misalnya printer,
disk) dapat dipakai oleh banyak pemakai.
Data dapat diakses oleh banyak pemakai secara serentak Ini
berarti tidak ada penduplikasian data, Selain itu konsistensi data
lebih terjamin.
3. Multitasking
Seorang pemakai dapat melakukan beberapa pekerjaan dalam waktu
yang bersamaan dari sebuah terminal. Pekerjaan-pekerjaan yang tidak
memerlukan interaksi dari pemakai (seperti melakukan pengurutan data
dan pengecekan kosa kata) bisa dilaksanakan di latar belakang.
Pemrosesan
ini
memungkinkan
saat
suatu
pekerjaan
sedang
dilaksanakan oleh system, pemakai dapat melakukan tugas-tugas yang
lain. Kemampuan system operasi ynag memungkinkan seseorang dapat
melaksanakan beberapa tugas
pada saat
bersamaan dinamakan
multitasking.
4. Sistem Berkas Yang Hierarkis
Sistem berkas yang hierarkis memungkinkan pemakai
mengorganisasikan informasi atau data dalam bentuk yang mudah untuk
diingat dan mudah untuk mengaksesnya. Informasi-informasi yang ada
dapat diatur misalnya dikelompokan per pemakai atau berdasarkan suatu
departemen.
5.
Utilitas
Sistem operasi tersusun atas sejumlah program, yang antara lain
beberapa
utilitas.
Utilitas-utilitas
mempunyai
bermacammacam, antara lain berhubungan dengan :
Manajemen berkas
Penyunting berkas
Pendukung komunikasi
Pendukung pengembangan perangkat lunak
tugas
yang
Dengan mengombinasikan utilitas-utilitas yang ada, pemakai dapat
membuat program baru untuk melaksanakan tugas seperti yang
diharapkan. Hal ini dapat dilakukan dengan cepat dan mudah.
6. Shell UNIX / LINUX (Lain-Lain)
Shell UNIX (LINUX) menjadi jembatan antara pemakai dan system. Ia
bertindak sebagai penerjemah perintah yang sangat bermanfaat bagi
pemakai. Kemampuan shell mencakup dua hal :
Modus interaktif
Modus pemrograman.
Pada mode interakif, pemakai dapat memberikan perintah
dan kemudian shell akan mengerjakan perintah yang
diberikan. Hal ini dapat diulang-ulang. Sebab begitu shell
telah selesai menjalankan peritah, shell akan menunggu
pemakai memberikan perintah kembali.
Pada modus pemrograman, pemakai dapat menyusun
suatu program yang berupa sejumlah perintah yang biasa
disebut skrip shell. Selanjutnya, shell akan mengerjakan
perintah-perintah tersebut secara berurutan. Hal seperti ini
sangat bermanfaat untuk menangani pekerjaan yang bersifat
rutin. Pada modus ini pemakai dapat membuat suatu
prototype suatu kegiatan tanpa harus menggunakan bahasa
pemrograman seperti C Baik pada mode interaktif maupun
pemrograman, pemakai dapat dengan mudah mengarahkan
keluaran-keluaran perintah yang normalnya ke layer menjadi
ke suatu berkas. Bahkan pemakai dapat juga mengatur agar
hasil suatu perintah menjadi masukan bagi perintah yang
lain.
2. BEBERAPA SISTEM OPERASI
Sebagian besar sistem operasi berbasis UNIX tidak menggunakan nama
UNIX, seperti yang ditujukan pada tabel berikut, umumnya namanama yang
digunakan mengandung UX, IX, X atau U. Beberapa diantaranya seperti PC/IX,
XENIX, VENIX, Minix, dan Coherent diterapkan pada PC.
Walaupun banyak sekali versi UNIX, sebenarnya saat ini terdapat tiga
versi yang menonjol, yaitu :
System V Release 3,
System V Release 4 (SVR4), dan
BSD (Barkeley Software Distribution) UNIX.
Linux sebagai Sistem Operasi yang semacam UNIX di implementasikan
dengan menggabungkan fitur-fitur yang dimiliki oleh ketiga versi tersebut plus
berbagai utilitas GNU. Itulah sebabnya, secara prinsip jika kita mempelajari Linux
pada dasarnya kita juga sedang mempelajari UNIX.
3. MANAJEMEN SISTEM OPERASI
Manajemen Sistem Operasi pada UNIX berhubungan erat antara
perangkat lunak dan perangkat keras dilukiskan pada gambar berikut.
Komponen-komponen penting dalam system operasi UNIX / LINUX
berupa :
Kernel
Shell
Utilitas
Aplikasi
Kernel
Kernel adalah inti dari system UNIX, yang mengontrol perangkat keras
dan membentuk berbagai fungsi beraras rendah. Fungsi-fungsi yang
dilaksanakan oleh kernel :
• Pelayanan tanggal dan jam system
• Manajemen berkas dan penanganan sekuriti
• Pelayanan operasi masukan dan keluaran
• Manajemen dan penjadwalan proses
• Manajemen memori
• Melakukan kegiatan akuntansi sistem
• Melakukan penanganan kesalahan dan interupsi
Shell
Shell adalah penerjemah pada system UNIX / LINUX. Perangkat lunak
inilah yang menjadi jembatan antara pemakai dan system UNIX / LINUX.
Pemakai cukup memberikan perintah dan shell yang akan menanganinya.
Perintah sendiri dapat berupa :
Perintah built-in Perintah yang merupakan bagian internal dari shell
Perintah eksternal Perintah yang bukan bagian internal dari shell
(dapat berupa utilitas atau program aplikasi)
Ada beberapa jenis shell yang beredar saat ini. Empat diantaranya yang
sangat menonjol adalah :
Bourne shell,
C shell,
Korn shell, dan
Bourne Again shell.
Bourne shell adalah jenis shell yang tertua pada system UNIX. Nama
shell ini berdasarkan nama penciptanya Stephen R. Bourne, dari
Laboratorium Bell, AT&T. Shell ini diperkenalkan pertama kali pada akhir 70an dan dipakai sebagai shell utama pada UNIX yang berpatokan pada AT&T.
C shell diciptakan oleh Bill Joy. Shell ini menjadi standar pada system
UNIX versi Barkeley. Format perintah menyerupai bahasa C. Kini muncul
versi pengembangannya yang disebut tesh.
Korn shell adalah shell yang diciptakan oleh David Korn di
Laboratorium Bell, AT & T pada tahun 1983. Namun shell ini baru
dipublikasikan pada tahun 1986. Shell ini bersifat kompatible dengan Bourne
shell, artinya perintah-perintah yang didukung Bourne shell juga dapat
dijalankan pada Korn shell.
Bourne Again shell (bash) populer di lingkungan Unix. Shell ini dibuat
dengan menyertakan fitur yang terdapat pada Korn Shell dan C Shell dan
tentu saja bersifat kompatible dengan Bourne shell.
Utilitas
Utilitas adalah program yang disediakan sistem UNIX / LINUX untuk
melaksanakan tugas tertentu. Jumlahnya sangat banyak dengan fungsi yang
beraneka ragam.
Program Aplikasi
Aplikasi adalah program-program yang dibuat oleh pemakai, untuk
memenuhi kebutuhannya sendiri. Program-program ini dapat dibuat dengan
menggunakan sejumlah utilitas, perintah built-in milik shell, atau dibangun
dengan bahasa pemrograman seperti C, COBOL, atau Python dan berbagai
development tool seperti Oracle dan Informix. Bisa juga berupa program
paket yang dibeli dari pemasok perangkat lunak
4. KEMAMPUAN-KEMAMPUAN YANG DIMILIKI OLEH UNIX:
Multiuser : Sistem dapat digunakan oleh lebih dari satu orang pada satu
saat. Tentunya harus digunakan lebih dari satu terminal yang
dihubungkan.
Multitasking : Sistem dapat melakukan beberapa tugas atau proses pada
waktu yang bersamaan.
Sistem file : Organisasi file di unix memiliki struktur pohon yang terdiri
dari file dan direktori.
Shell : Merupakan antar muka pemakai dengan sistem Unix.
Utilitas-utilitas : Unix memiliki lebih dari 200 utilitas yang dapat
digunakan untuk mengelola sistem.
Surat elektronik : Unix dilengkapi dengan fasilitas untuk pengiriman surat
antar pemakai di lingkungan sistem Unix.
Konsep perangkat keras : Perangkat keras yang terhubung pada sistem
Unix akan dianggap sebagai file biasa. Unix tidak membedakan antara
perangkat keras dan file biasa.
Komunikasi antar proses : Keluaran dari suatu proses dapat diproses
langsung oleh proses lainnya
Jaringan : Pemakai Unix dapat berhubungan dengan pemakai lain dalam
satu computer. Disamping itu pemakai Unix juga dapat berkmunikasi
dengan pemakai lain pada computer lainnya dalam satu jaringan lokal
atau LAN.
Keamanan : Unix menyediakan fasilitas keamanan untuk pemakai biasa,
pengembang sistem, dan administrator sistem serta jaringan sistem.
5. PEMAKAI PADA SISTEM UNIX ADA DUA JENIS, YAITU:
Pemakai biasa adalah pemakai yang diberi ijin untuk menggunakan
sistem dan beberapa fasilitas lain dalam Unix dengan batas-batas
perijinan tertentu. Dengan demikian pemakai biasa tidak dapat secara
bebas keluar masuk direktori lain atau tidak dapat secara bebas
menggunakan file-file di dalam sistem.
Super user adalah pemakai yang memiliki hak istimewa di dalam
sistem Unix karena memiliki kemampuan memiliki kemampuan yang
tidak dibatasi oleh perijinan yang diterapkan pada sistem. Super user
dapat keluar masuk direktori atau menggunakan file secara bebas.
Pada umumnya super user dimiliki oleh administrator sistem.
Administrator sistem adalah pemakai yang bertanggung jawab untuk
mengelola sistem. Nama pemakai dari rekening super user, di dalam
/etc/passwd biasanya bernama root dengan nomor id pemakai 0.
6. PERINTAH-PERINTAH DASAR PADA UNIX:
Echo
: Perintah untuk menampilkan karakter ke layar terminal.
Who
: Menampilkan siapa saja pemakai yang sedang aktif di
dalam
sistem Unix
Date
: Melihat tanggal dan waktu sekarang.
Logout
: Perintah untuk keluar dari sistem.
Pasword
mengganti
.
: Perintah yang digunakan untuk membuat atau
password.
BAB II
KERNEL
1. FASILITAS DASAR YANG DISEDIAKAN OLEH KERNEL
Tujuan utama dari adanya kernel adalah untuk mengatur pembagian sumber
sumber daya dan program mana yang boleh mengakses dan menggunakan
sumber daya tersebut. Pada umumnya, sumber daya tersebut antara lain adalah
CPU, memori dan Perangkat I/O
Central Processing Unit (CPU). Sebagai bagian utama komputer, CPU
bertugas dalam mengeksekusi program atau proses. Dalam hal ini, kernel bertugas
menentukan setiap saat berapa banyak program yang harus dialokasikan ke CPU.
Memori Komputer. Memori digunakan untuk menyimpan instruksi program
dan juga data. Keduanya dibutuhkan oleh memori agar suatu program dapat
dieksekusi. Biasanya beberapa program akan berusaha mengakses meori, bahkan
seringkali meminta memori melebihi yang dimiliki komputer. Di sinilah kernel
bertugas untuk menentukan porsi pemakaian memori yang dapat dipakai oleh tiap
program dan menentukan apa yang akan dikerjakan ketika tidak cukup tersedia
memori.
Perangkat I/O. Beberapa perangkat I/O yang umumnya dipakai, misalnya:
keyboard, mouse, monitor, Hard Disk, printer, scanner, dsb. Kernel melanjutkan
request dari suatu aplikasi yang ingin melakukan suatu aksi I/O kepada perangkat
yang sesuai dan menyediakan metode yang sesuai untuk memakai perangkat
tersebut.
1.1 Pengaturan Proses
Tugas utama kernel adalah membantu eksekusi aplikasi dan mendukungnya
dengan fitur seperti abstraksi hardware. Suatu proses mendefinisikan seberapa
porsi memori yang dapat diakses oleh suatu aplikasi. Pengaturan proses kernel
harus memperhitungkan perangkat yang dibawa oleh hardware untuk
perlindungan memori.
Untuk menjalankan aplikasi, sebuah kernel pertama kali harus menyediakan
space address untuk aplikasi, lalu me-load file yang berisi kode aplikasi ke dalam
memori, mempersiapkan stack untuk program dan percabangan ke lokasi lain
dalam program, dan kemudian baru memulai eksekusi program.
Dalam sebuah sistem pre-emptive multitasking, kernel akan memberi slot waktu
kepada setiap program dan berpindah dari satu proses ke proses yang lain
dengan cepat hingga terlihat seperti proses-proses ini dieksekusi secara
bersamaan.
Kernel menggunakan algoritma penjadwalan utnuk menentukan proses mana
yang akan dikerjakan berikutnya dan berapa lama waktu yang akan diberikan.
Algoritma yang dipilih mungkin akan mengijinkan beberapa proses memiliki
prioritas yang lebih tinggi daripada yang lain.
Umumnya kernel juga menyediakan cara agar proses-proses ini dapat saling
berkomunikasi hal ini dikenal sebagai Inter-Process Communication (IPC).
Pendekatan utama IPC ini adalah untuk shared memory, message passing dan
remote procedure call.
1.2 Pengaturan Memori
Kernel memiliki akses penuh ke memori sistem dan harus memberikan ijin
kepada
proses-proses
untuk
mengakses
memori
secara
aman
ketika
membutuhkan. Langkah pertama yang dilakukan untuk melakukan hal ini di
antaranya adalah virtual addressing. Virtual addressing menijinkan kernel untuk
menjadikan suatu alamat fisik untuk tampil sebagai alamat lain, alamat virtual.
Space alamat virtual mungkin berbeda untuk masing-masing proses; memori
yang diakses suatu proses pada alamat virtual tertentu mungkin berbeda dengan
memori yang diakses proses lain pada alamat yang sama. Hal ini
menyebabkan tiap program seakan menjadi satu-satunya program yang berjalan
dan karenanya dapat mencegah terjadinya crash antar program.
Dalam kebanyakan sistem, alamat virtual suatu program dapat berupa data
yang sebenarnya tidak ada dalam memori. Layer abstraksi yang disediakan
virtual addressing mengijinkan Sistem Operasi untuk menggunakan penyimpan
data, seperti Hard Disk, untuk menyimpan apa yang mestinya ada di memori
utama (RAM). Akibatnya, Sistem Operasi dapat mengijinkan program untuk
memakai memori melebihi memori fisik yang yang dimiliki oleh komputer. Virtual
addressing juga mengijinkan dibuatnya partisi vritual memori di dua area yang
terpisah, satu dipakai oleh kernel (kernel space) dan yang lain untuk aplikasi
(user space). Aplikasi tidak diijinkan oleh CPU untuk memakai alamat kernel,
yang akhirnya hal ini akan mencegah agar aplikasi tidak merusak kernel.
1.3 Pengaturan perangkat
Untuk
menjalankan
fungsinya,
aplikasi
membutuhkan
akses
ke
perangkatperangkat yang terhubung ke komputer, yang dikontrol oleh kernel
melalui device driver. Sebagai contoh, untuk menampilkan sesuatu di layar,
sebuah aplikasi harus membuat request ke kernel. Kernel lalu akan melanjutkan
request tersebut ke driver
display yang kemudian akan bertanggung jawab
mem-plot karakter/pixel.
Kernel harus memelihara sejumlah perangkat yang tersedia. Daftar perangkat
ini dapat berupa plug and play (dideteksi oleh Sistem Operasi saat perangkat
dijalankan), di-configure oleh user, atau bahkan advance (misal dalam system
embedded di mana kernel akan diubah jika hardware diubah).
1.4 System calls
Untuk mengakses layanan yang disediakan oleh kernel, biasanya kernel
menyediakan library C atau API (Application Programming Interface) yang
selanjutnya akan melibatkan fungsi kernel yang berhubungan.
Metode untuk melibatkan fungsi kernel berbeda-beda antar kernel. Jika
isolasi memori sedang dipakai, tidak mungkin bagi proses untuk memanggil
kernel secara langsung, karena hal itu merupakan pelanggaran aturan akses
kontrol dari prosesor. Beberapa kemungkinan antara lain;
Menggunakan interrupt software-simulated. Metode ini tersdia dalam
hampir semua hardware, karenanya sangat umum.
Menggunakan call gate. Call gate adalah address khusus di mana
alamat tersebut ditambahkan dalam daftar yang disimpan dalam memori
kernel yang diketahui prosesor. Ketika prosesor mendeteksi call ke lokasi
tersebut, prosesor kemudian mengalihkannya ke lokasi target tanpa
menyebabkan pelanggaran akses.
Menggunakan instruksi system call khusus. Teknik ini membutuhkan
dukungan hardware khusus, yang mana arsitektur umum (khususnya x86)
mungkin kesulitan.
Menggunakan memory-based queue. Sebuah aplikasi yang membuat
request dalam jumlah besar tapi tidak perlu menunggu hasilnya dapat
menambahkan detil request-nya ke suatu area memori yang di-scan secara
priodik oleh kernel untuk menemukan request.
2. BEBERAPA DESAIN KERNEL
Sebuah kernel sistem operasi tidak harus ada dan dibutuhkan untuk menjalankan
sebuah komputer. Program dapat langsung dijalankan secara langsung di dalam sebuah
mesin (contohnya adalah CMOS Setup) sehingga para pembuat program tersebut membuat
program tanpa adanya dukungan dari sistem operasi atau hardware abstraction. Cara kerja
seperti ini, adalah cara kerja yang digunakan pada zaman awal-awal dikembangkannya
komputer (pada sekitar tahun 1950).
Kerugian dari diterapkannya metode ini adalah pengguna harus melakukan reset ulang
komputer tersebut dan memuatkan program lainnya untuk berpindah program, dari satu
program ke program lainnya. Selanjutnya, para pembuat program tersebut membuat
beberapa komponen program yang sengaja ditinggalkan di dalam komputer, seperti halnya
loader atau debugger, atau dimuat dari dalam ROM (Read-Only Memory). Seiring dengan
perkembangan zaman komputer yang mengalami akselerasi yang signifikan, metode ini
selanjutnya membentuk apa yang disebut dengan kernel sistem operasi.
Selanjutnya, para arsitek sistem operasi mengembangkan kernel sistem
operasi
yang pada akhirnya terbagi menjadi empat bagian yang secara desain berbeda,
sebagai berikut:
Monolithic Kernel. Monolithic kernel mengintegrasikan banyak fungsi di
dalam kernel dan menyediakan lapisan abstraksi perangkat keras secara penuh
terhadap perangkat keras yang berada di bawah sistem operasi.
Microkernel. Microkernel menyediakan sedikit saja dari abstraksi perangkat
keras dan menggunakan aplikasi yang berjalan di atasny yang disebut dengan
server untuk melakukan beberapa fungsionalitas lainnya.
Hybrid kernel. Hybrid kernel adalah pendekatan desain microkernel yang
dimodifikasi. Pada hybrid kernel, terdapat beberapa tambahan kode di dalam
ruangan kernel untuk meningkatkan performanya.
Exokernel. Exokernel menyediakan hardware abstraction secara minimal,
sehingga program dapat mengakses hardware secara langsung. Dalam pendekatan
desain exokernel, library yang dimiliki oleh sistem operasi dapat melakukan
abstraksi yang mirip dengan abstraksi yang dilakukan dalam desain monolithic
kernel.
BAB III
PENUTUP
KESIMPULAN
UNIX adalah salah satu sistem operasi yang tersedia untuk digunakan di komputer
pribadi, server dan jaringan. Beberapa kalangan menganggap sistem operasi UNIX lebih
efesien dan dapat di andalkan dibandingkan dengan sistem operasi lainnya. Sistem operasi
UNIX dikenal karena ringan fitur dan kemampuan untuk mengintregasikan dengan lancar
dengan sistem operasi lain. UNIX memiliki tujuan dalam Computer Networking, maka
kemampuan dari UNIX dalam memberikan jasa internet lebih berkembang dan lebih reliable.
SARAN
Mengingat banyaknya manfaat yang dapat kita ambil dari sistem operasi LINUX
khususnya UNIX, tidak ada salahnya kita mencoba untuk menggunakan sistem operasi ini.
Sehingga pada saatnya nanti Indonesia memiliki sumber daya manusia yang telah siap
untuk bermain disektor industri perangkat lunak.
DAFTAR PUSTAKA
http://epriwards.blogspot.com/2012/09/layanan-sistem-operasi-unix.html
http://heriosusanto.blogspot.com/2013/05/sistem-operasi-unix.html
http://oc.its.ac.id/ambilfile.php?idp=696
http://freepdfdb.org/ppt/u-n-i-x-78394918.html
ANGGOTA KELOMPOK :
CHRISTIAN ISWAHYUDI
DANIEL ADITYA NUGROHO
HENDRAYANA HARYAWAN
STEFANUS NYOMAN HENDRAWAN CITRA
KELAS
: AB 123
PROGRAM STUDI
: SISTEM INFORMASI
(120030027)
(120030031)
(120030411)
(120030493)
SEKOLAH TINGGI MANAJEMEN INFORMATIKA
DAN TEKNIK KOMPUTER
(STMIK) STIKOM BALI
2013
ABSTRAK
UNIX memiliki tujuan dalam Computer Networking, maka kemampuan dari UNIX
dalam memberikan jasa internet lebih berkembang dan lebih reliable. Banyak orang
mengatakan bahwa ber-network-ria dengan UNIX lebih cepat dibandingkan dengan sistem
operasi lain nya. Tetapi hal ini relatif, dikatakan relatif karena banyak faktor yang
menentukan performasi network dan tidak semudah itu untuk dibandingkan.
Saat ini UNIX sudah tidak terbatas sebagai komputer server/pemberi layanan
internet. Sekarang UNIX sudah mampu menggantikan fungsi Windows sebagai komputer
workstation/alat untuk bekerja sehari-hari, dan lebih stabil. Hal ini disebabkan oleh
perkembangan UNIX yang mulai terlihat prospeknya sebagai sistem operasi workstation
uga, tanpa meninggalkan arah perkembangan dalam Computer Networking.
UNIX lebih stabil dibandingkan dengan sistem operasi lainnya, hal ini disebabkan
konsep dan proses pembuatan karnel. Salah satu kestabilan UNIX, UNIX tidak pernah
mengalami kegagalan sistem yang disebabkan oleh sistem oprerasi tersebut.
KATA PENGANTAR
Puji syukur kami panjatkan kepada Tuhan Yang Maha Esa, karena atas berkat
rahmatnya sehingga makalah ini dapat diselesaikan sesuai dengan yang diharapkan.
Makalah ini disusun dengan memenuhi tugas Sistem Operasi. Dalam makalah ini
membahas mengenai UNIX dan KERNEL.
Makalah ini dibuat untuk memperdalam pemahaman mahasiswa tentang UNIX.
Dalam penulisan makalah ini, penyusun menyadari bahwa apa yang disampaikan ini masih
jauh dari kesempurnaan, maka dengan segala kerendahan hati, penyusun mengharapkan
kritik dan saran yang bersifat membangun untuk kebaikan dalam penulisan makalah ini.
Penyusun mohon maaf apabila terdapat kekurangan dan kesalahan dalam penulisan
makalah ini. Akhir kata semoga makalah ini bermanfaat bagi kita semua.
BAB I
UNIX
1. DEFINISI SISTEM OPERASI
Sistem operasi adalah perangkat lunak komputer yang mengatur dan
mengendalikan operasi dasar sistem komputer.
Tugas dari system operasi diantaranya :
• Melakukan fungsi manajemen sistem berkas
• Mengendalikan berbagai sumber pada sistem, seperti disk ndan printer
• Mengatur sejumlah pemakai yang menggunakan system bersamaan
• Membentuk penjadualan proses-proses didalam sistem.
Beberapa sifat dan keistimewaan sistem operasi yang diturunkan
dan diadopsi dari sistem operasi UNIX.
Sifat dan Keistimewaan UNIX :
1. Portabilitas
Portabilitas berarti ketidakbergantungan pada suatu perangkat keras
yang memungkikan pemakai tidak perlu terpaku pada satu vendor dan
mudah untuk diadaptasikan ke sistem komputer yang lain. Berikut adalah
table yang menggambarkan perbandingan system operasi dengan
erangkat
keras.
2. MultiUser
Multiuser berarti sejumlah orang (pemakai) dapat menggunakan
system secara bersamaan dan berbagi sumber (disk, printer dan
sebagainya). Keuntungan dengan adanya sifat multiuser :
Penghematan perangat keras Perangkat keras (misalnya printer,
disk) dapat dipakai oleh banyak pemakai.
Data dapat diakses oleh banyak pemakai secara serentak Ini
berarti tidak ada penduplikasian data, Selain itu konsistensi data
lebih terjamin.
3. Multitasking
Seorang pemakai dapat melakukan beberapa pekerjaan dalam waktu
yang bersamaan dari sebuah terminal. Pekerjaan-pekerjaan yang tidak
memerlukan interaksi dari pemakai (seperti melakukan pengurutan data
dan pengecekan kosa kata) bisa dilaksanakan di latar belakang.
Pemrosesan
ini
memungkinkan
saat
suatu
pekerjaan
sedang
dilaksanakan oleh system, pemakai dapat melakukan tugas-tugas yang
lain. Kemampuan system operasi ynag memungkinkan seseorang dapat
melaksanakan beberapa tugas
pada saat
bersamaan dinamakan
multitasking.
4. Sistem Berkas Yang Hierarkis
Sistem berkas yang hierarkis memungkinkan pemakai
mengorganisasikan informasi atau data dalam bentuk yang mudah untuk
diingat dan mudah untuk mengaksesnya. Informasi-informasi yang ada
dapat diatur misalnya dikelompokan per pemakai atau berdasarkan suatu
departemen.
5.
Utilitas
Sistem operasi tersusun atas sejumlah program, yang antara lain
beberapa
utilitas.
Utilitas-utilitas
mempunyai
bermacammacam, antara lain berhubungan dengan :
Manajemen berkas
Penyunting berkas
Pendukung komunikasi
Pendukung pengembangan perangkat lunak
tugas
yang
Dengan mengombinasikan utilitas-utilitas yang ada, pemakai dapat
membuat program baru untuk melaksanakan tugas seperti yang
diharapkan. Hal ini dapat dilakukan dengan cepat dan mudah.
6. Shell UNIX / LINUX (Lain-Lain)
Shell UNIX (LINUX) menjadi jembatan antara pemakai dan system. Ia
bertindak sebagai penerjemah perintah yang sangat bermanfaat bagi
pemakai. Kemampuan shell mencakup dua hal :
Modus interaktif
Modus pemrograman.
Pada mode interakif, pemakai dapat memberikan perintah
dan kemudian shell akan mengerjakan perintah yang
diberikan. Hal ini dapat diulang-ulang. Sebab begitu shell
telah selesai menjalankan peritah, shell akan menunggu
pemakai memberikan perintah kembali.
Pada modus pemrograman, pemakai dapat menyusun
suatu program yang berupa sejumlah perintah yang biasa
disebut skrip shell. Selanjutnya, shell akan mengerjakan
perintah-perintah tersebut secara berurutan. Hal seperti ini
sangat bermanfaat untuk menangani pekerjaan yang bersifat
rutin. Pada modus ini pemakai dapat membuat suatu
prototype suatu kegiatan tanpa harus menggunakan bahasa
pemrograman seperti C Baik pada mode interaktif maupun
pemrograman, pemakai dapat dengan mudah mengarahkan
keluaran-keluaran perintah yang normalnya ke layer menjadi
ke suatu berkas. Bahkan pemakai dapat juga mengatur agar
hasil suatu perintah menjadi masukan bagi perintah yang
lain.
2. BEBERAPA SISTEM OPERASI
Sebagian besar sistem operasi berbasis UNIX tidak menggunakan nama
UNIX, seperti yang ditujukan pada tabel berikut, umumnya namanama yang
digunakan mengandung UX, IX, X atau U. Beberapa diantaranya seperti PC/IX,
XENIX, VENIX, Minix, dan Coherent diterapkan pada PC.
Walaupun banyak sekali versi UNIX, sebenarnya saat ini terdapat tiga
versi yang menonjol, yaitu :
System V Release 3,
System V Release 4 (SVR4), dan
BSD (Barkeley Software Distribution) UNIX.
Linux sebagai Sistem Operasi yang semacam UNIX di implementasikan
dengan menggabungkan fitur-fitur yang dimiliki oleh ketiga versi tersebut plus
berbagai utilitas GNU. Itulah sebabnya, secara prinsip jika kita mempelajari Linux
pada dasarnya kita juga sedang mempelajari UNIX.
3. MANAJEMEN SISTEM OPERASI
Manajemen Sistem Operasi pada UNIX berhubungan erat antara
perangkat lunak dan perangkat keras dilukiskan pada gambar berikut.
Komponen-komponen penting dalam system operasi UNIX / LINUX
berupa :
Kernel
Shell
Utilitas
Aplikasi
Kernel
Kernel adalah inti dari system UNIX, yang mengontrol perangkat keras
dan membentuk berbagai fungsi beraras rendah. Fungsi-fungsi yang
dilaksanakan oleh kernel :
• Pelayanan tanggal dan jam system
• Manajemen berkas dan penanganan sekuriti
• Pelayanan operasi masukan dan keluaran
• Manajemen dan penjadwalan proses
• Manajemen memori
• Melakukan kegiatan akuntansi sistem
• Melakukan penanganan kesalahan dan interupsi
Shell
Shell adalah penerjemah pada system UNIX / LINUX. Perangkat lunak
inilah yang menjadi jembatan antara pemakai dan system UNIX / LINUX.
Pemakai cukup memberikan perintah dan shell yang akan menanganinya.
Perintah sendiri dapat berupa :
Perintah built-in Perintah yang merupakan bagian internal dari shell
Perintah eksternal Perintah yang bukan bagian internal dari shell
(dapat berupa utilitas atau program aplikasi)
Ada beberapa jenis shell yang beredar saat ini. Empat diantaranya yang
sangat menonjol adalah :
Bourne shell,
C shell,
Korn shell, dan
Bourne Again shell.
Bourne shell adalah jenis shell yang tertua pada system UNIX. Nama
shell ini berdasarkan nama penciptanya Stephen R. Bourne, dari
Laboratorium Bell, AT&T. Shell ini diperkenalkan pertama kali pada akhir 70an dan dipakai sebagai shell utama pada UNIX yang berpatokan pada AT&T.
C shell diciptakan oleh Bill Joy. Shell ini menjadi standar pada system
UNIX versi Barkeley. Format perintah menyerupai bahasa C. Kini muncul
versi pengembangannya yang disebut tesh.
Korn shell adalah shell yang diciptakan oleh David Korn di
Laboratorium Bell, AT & T pada tahun 1983. Namun shell ini baru
dipublikasikan pada tahun 1986. Shell ini bersifat kompatible dengan Bourne
shell, artinya perintah-perintah yang didukung Bourne shell juga dapat
dijalankan pada Korn shell.
Bourne Again shell (bash) populer di lingkungan Unix. Shell ini dibuat
dengan menyertakan fitur yang terdapat pada Korn Shell dan C Shell dan
tentu saja bersifat kompatible dengan Bourne shell.
Utilitas
Utilitas adalah program yang disediakan sistem UNIX / LINUX untuk
melaksanakan tugas tertentu. Jumlahnya sangat banyak dengan fungsi yang
beraneka ragam.
Program Aplikasi
Aplikasi adalah program-program yang dibuat oleh pemakai, untuk
memenuhi kebutuhannya sendiri. Program-program ini dapat dibuat dengan
menggunakan sejumlah utilitas, perintah built-in milik shell, atau dibangun
dengan bahasa pemrograman seperti C, COBOL, atau Python dan berbagai
development tool seperti Oracle dan Informix. Bisa juga berupa program
paket yang dibeli dari pemasok perangkat lunak
4. KEMAMPUAN-KEMAMPUAN YANG DIMILIKI OLEH UNIX:
Multiuser : Sistem dapat digunakan oleh lebih dari satu orang pada satu
saat. Tentunya harus digunakan lebih dari satu terminal yang
dihubungkan.
Multitasking : Sistem dapat melakukan beberapa tugas atau proses pada
waktu yang bersamaan.
Sistem file : Organisasi file di unix memiliki struktur pohon yang terdiri
dari file dan direktori.
Shell : Merupakan antar muka pemakai dengan sistem Unix.
Utilitas-utilitas : Unix memiliki lebih dari 200 utilitas yang dapat
digunakan untuk mengelola sistem.
Surat elektronik : Unix dilengkapi dengan fasilitas untuk pengiriman surat
antar pemakai di lingkungan sistem Unix.
Konsep perangkat keras : Perangkat keras yang terhubung pada sistem
Unix akan dianggap sebagai file biasa. Unix tidak membedakan antara
perangkat keras dan file biasa.
Komunikasi antar proses : Keluaran dari suatu proses dapat diproses
langsung oleh proses lainnya
Jaringan : Pemakai Unix dapat berhubungan dengan pemakai lain dalam
satu computer. Disamping itu pemakai Unix juga dapat berkmunikasi
dengan pemakai lain pada computer lainnya dalam satu jaringan lokal
atau LAN.
Keamanan : Unix menyediakan fasilitas keamanan untuk pemakai biasa,
pengembang sistem, dan administrator sistem serta jaringan sistem.
5. PEMAKAI PADA SISTEM UNIX ADA DUA JENIS, YAITU:
Pemakai biasa adalah pemakai yang diberi ijin untuk menggunakan
sistem dan beberapa fasilitas lain dalam Unix dengan batas-batas
perijinan tertentu. Dengan demikian pemakai biasa tidak dapat secara
bebas keluar masuk direktori lain atau tidak dapat secara bebas
menggunakan file-file di dalam sistem.
Super user adalah pemakai yang memiliki hak istimewa di dalam
sistem Unix karena memiliki kemampuan memiliki kemampuan yang
tidak dibatasi oleh perijinan yang diterapkan pada sistem. Super user
dapat keluar masuk direktori atau menggunakan file secara bebas.
Pada umumnya super user dimiliki oleh administrator sistem.
Administrator sistem adalah pemakai yang bertanggung jawab untuk
mengelola sistem. Nama pemakai dari rekening super user, di dalam
/etc/passwd biasanya bernama root dengan nomor id pemakai 0.
6. PERINTAH-PERINTAH DASAR PADA UNIX:
Echo
: Perintah untuk menampilkan karakter ke layar terminal.
Who
: Menampilkan siapa saja pemakai yang sedang aktif di
dalam
sistem Unix
Date
: Melihat tanggal dan waktu sekarang.
Logout
: Perintah untuk keluar dari sistem.
Pasword
mengganti
.
: Perintah yang digunakan untuk membuat atau
password.
BAB II
KERNEL
1. FASILITAS DASAR YANG DISEDIAKAN OLEH KERNEL
Tujuan utama dari adanya kernel adalah untuk mengatur pembagian sumber
sumber daya dan program mana yang boleh mengakses dan menggunakan
sumber daya tersebut. Pada umumnya, sumber daya tersebut antara lain adalah
CPU, memori dan Perangkat I/O
Central Processing Unit (CPU). Sebagai bagian utama komputer, CPU
bertugas dalam mengeksekusi program atau proses. Dalam hal ini, kernel bertugas
menentukan setiap saat berapa banyak program yang harus dialokasikan ke CPU.
Memori Komputer. Memori digunakan untuk menyimpan instruksi program
dan juga data. Keduanya dibutuhkan oleh memori agar suatu program dapat
dieksekusi. Biasanya beberapa program akan berusaha mengakses meori, bahkan
seringkali meminta memori melebihi yang dimiliki komputer. Di sinilah kernel
bertugas untuk menentukan porsi pemakaian memori yang dapat dipakai oleh tiap
program dan menentukan apa yang akan dikerjakan ketika tidak cukup tersedia
memori.
Perangkat I/O. Beberapa perangkat I/O yang umumnya dipakai, misalnya:
keyboard, mouse, monitor, Hard Disk, printer, scanner, dsb. Kernel melanjutkan
request dari suatu aplikasi yang ingin melakukan suatu aksi I/O kepada perangkat
yang sesuai dan menyediakan metode yang sesuai untuk memakai perangkat
tersebut.
1.1 Pengaturan Proses
Tugas utama kernel adalah membantu eksekusi aplikasi dan mendukungnya
dengan fitur seperti abstraksi hardware. Suatu proses mendefinisikan seberapa
porsi memori yang dapat diakses oleh suatu aplikasi. Pengaturan proses kernel
harus memperhitungkan perangkat yang dibawa oleh hardware untuk
perlindungan memori.
Untuk menjalankan aplikasi, sebuah kernel pertama kali harus menyediakan
space address untuk aplikasi, lalu me-load file yang berisi kode aplikasi ke dalam
memori, mempersiapkan stack untuk program dan percabangan ke lokasi lain
dalam program, dan kemudian baru memulai eksekusi program.
Dalam sebuah sistem pre-emptive multitasking, kernel akan memberi slot waktu
kepada setiap program dan berpindah dari satu proses ke proses yang lain
dengan cepat hingga terlihat seperti proses-proses ini dieksekusi secara
bersamaan.
Kernel menggunakan algoritma penjadwalan utnuk menentukan proses mana
yang akan dikerjakan berikutnya dan berapa lama waktu yang akan diberikan.
Algoritma yang dipilih mungkin akan mengijinkan beberapa proses memiliki
prioritas yang lebih tinggi daripada yang lain.
Umumnya kernel juga menyediakan cara agar proses-proses ini dapat saling
berkomunikasi hal ini dikenal sebagai Inter-Process Communication (IPC).
Pendekatan utama IPC ini adalah untuk shared memory, message passing dan
remote procedure call.
1.2 Pengaturan Memori
Kernel memiliki akses penuh ke memori sistem dan harus memberikan ijin
kepada
proses-proses
untuk
mengakses
memori
secara
aman
ketika
membutuhkan. Langkah pertama yang dilakukan untuk melakukan hal ini di
antaranya adalah virtual addressing. Virtual addressing menijinkan kernel untuk
menjadikan suatu alamat fisik untuk tampil sebagai alamat lain, alamat virtual.
Space alamat virtual mungkin berbeda untuk masing-masing proses; memori
yang diakses suatu proses pada alamat virtual tertentu mungkin berbeda dengan
memori yang diakses proses lain pada alamat yang sama. Hal ini
menyebabkan tiap program seakan menjadi satu-satunya program yang berjalan
dan karenanya dapat mencegah terjadinya crash antar program.
Dalam kebanyakan sistem, alamat virtual suatu program dapat berupa data
yang sebenarnya tidak ada dalam memori. Layer abstraksi yang disediakan
virtual addressing mengijinkan Sistem Operasi untuk menggunakan penyimpan
data, seperti Hard Disk, untuk menyimpan apa yang mestinya ada di memori
utama (RAM). Akibatnya, Sistem Operasi dapat mengijinkan program untuk
memakai memori melebihi memori fisik yang yang dimiliki oleh komputer. Virtual
addressing juga mengijinkan dibuatnya partisi vritual memori di dua area yang
terpisah, satu dipakai oleh kernel (kernel space) dan yang lain untuk aplikasi
(user space). Aplikasi tidak diijinkan oleh CPU untuk memakai alamat kernel,
yang akhirnya hal ini akan mencegah agar aplikasi tidak merusak kernel.
1.3 Pengaturan perangkat
Untuk
menjalankan
fungsinya,
aplikasi
membutuhkan
akses
ke
perangkatperangkat yang terhubung ke komputer, yang dikontrol oleh kernel
melalui device driver. Sebagai contoh, untuk menampilkan sesuatu di layar,
sebuah aplikasi harus membuat request ke kernel. Kernel lalu akan melanjutkan
request tersebut ke driver
display yang kemudian akan bertanggung jawab
mem-plot karakter/pixel.
Kernel harus memelihara sejumlah perangkat yang tersedia. Daftar perangkat
ini dapat berupa plug and play (dideteksi oleh Sistem Operasi saat perangkat
dijalankan), di-configure oleh user, atau bahkan advance (misal dalam system
embedded di mana kernel akan diubah jika hardware diubah).
1.4 System calls
Untuk mengakses layanan yang disediakan oleh kernel, biasanya kernel
menyediakan library C atau API (Application Programming Interface) yang
selanjutnya akan melibatkan fungsi kernel yang berhubungan.
Metode untuk melibatkan fungsi kernel berbeda-beda antar kernel. Jika
isolasi memori sedang dipakai, tidak mungkin bagi proses untuk memanggil
kernel secara langsung, karena hal itu merupakan pelanggaran aturan akses
kontrol dari prosesor. Beberapa kemungkinan antara lain;
Menggunakan interrupt software-simulated. Metode ini tersdia dalam
hampir semua hardware, karenanya sangat umum.
Menggunakan call gate. Call gate adalah address khusus di mana
alamat tersebut ditambahkan dalam daftar yang disimpan dalam memori
kernel yang diketahui prosesor. Ketika prosesor mendeteksi call ke lokasi
tersebut, prosesor kemudian mengalihkannya ke lokasi target tanpa
menyebabkan pelanggaran akses.
Menggunakan instruksi system call khusus. Teknik ini membutuhkan
dukungan hardware khusus, yang mana arsitektur umum (khususnya x86)
mungkin kesulitan.
Menggunakan memory-based queue. Sebuah aplikasi yang membuat
request dalam jumlah besar tapi tidak perlu menunggu hasilnya dapat
menambahkan detil request-nya ke suatu area memori yang di-scan secara
priodik oleh kernel untuk menemukan request.
2. BEBERAPA DESAIN KERNEL
Sebuah kernel sistem operasi tidak harus ada dan dibutuhkan untuk menjalankan
sebuah komputer. Program dapat langsung dijalankan secara langsung di dalam sebuah
mesin (contohnya adalah CMOS Setup) sehingga para pembuat program tersebut membuat
program tanpa adanya dukungan dari sistem operasi atau hardware abstraction. Cara kerja
seperti ini, adalah cara kerja yang digunakan pada zaman awal-awal dikembangkannya
komputer (pada sekitar tahun 1950).
Kerugian dari diterapkannya metode ini adalah pengguna harus melakukan reset ulang
komputer tersebut dan memuatkan program lainnya untuk berpindah program, dari satu
program ke program lainnya. Selanjutnya, para pembuat program tersebut membuat
beberapa komponen program yang sengaja ditinggalkan di dalam komputer, seperti halnya
loader atau debugger, atau dimuat dari dalam ROM (Read-Only Memory). Seiring dengan
perkembangan zaman komputer yang mengalami akselerasi yang signifikan, metode ini
selanjutnya membentuk apa yang disebut dengan kernel sistem operasi.
Selanjutnya, para arsitek sistem operasi mengembangkan kernel sistem
operasi
yang pada akhirnya terbagi menjadi empat bagian yang secara desain berbeda,
sebagai berikut:
Monolithic Kernel. Monolithic kernel mengintegrasikan banyak fungsi di
dalam kernel dan menyediakan lapisan abstraksi perangkat keras secara penuh
terhadap perangkat keras yang berada di bawah sistem operasi.
Microkernel. Microkernel menyediakan sedikit saja dari abstraksi perangkat
keras dan menggunakan aplikasi yang berjalan di atasny yang disebut dengan
server untuk melakukan beberapa fungsionalitas lainnya.
Hybrid kernel. Hybrid kernel adalah pendekatan desain microkernel yang
dimodifikasi. Pada hybrid kernel, terdapat beberapa tambahan kode di dalam
ruangan kernel untuk meningkatkan performanya.
Exokernel. Exokernel menyediakan hardware abstraction secara minimal,
sehingga program dapat mengakses hardware secara langsung. Dalam pendekatan
desain exokernel, library yang dimiliki oleh sistem operasi dapat melakukan
abstraksi yang mirip dengan abstraksi yang dilakukan dalam desain monolithic
kernel.
BAB III
PENUTUP
KESIMPULAN
UNIX adalah salah satu sistem operasi yang tersedia untuk digunakan di komputer
pribadi, server dan jaringan. Beberapa kalangan menganggap sistem operasi UNIX lebih
efesien dan dapat di andalkan dibandingkan dengan sistem operasi lainnya. Sistem operasi
UNIX dikenal karena ringan fitur dan kemampuan untuk mengintregasikan dengan lancar
dengan sistem operasi lain. UNIX memiliki tujuan dalam Computer Networking, maka
kemampuan dari UNIX dalam memberikan jasa internet lebih berkembang dan lebih reliable.
SARAN
Mengingat banyaknya manfaat yang dapat kita ambil dari sistem operasi LINUX
khususnya UNIX, tidak ada salahnya kita mencoba untuk menggunakan sistem operasi ini.
Sehingga pada saatnya nanti Indonesia memiliki sumber daya manusia yang telah siap
untuk bermain disektor industri perangkat lunak.
DAFTAR PUSTAKA
http://epriwards.blogspot.com/2012/09/layanan-sistem-operasi-unix.html
http://heriosusanto.blogspot.com/2013/05/sistem-operasi-unix.html
http://oc.its.ac.id/ambilfile.php?idp=696
http://freepdfdb.org/ppt/u-n-i-x-78394918.html