Arsitektur Unix Dan Kernel PDF

Title Arsitektur Unix Dan Kernel
Author Christian Iswahyudi
Pages 18
File Size 318.3 KB
File Type PDF
Total Downloads 792
Total Views 883

Summary

SISTEM OPERASI ANGGOTA KELOMPOK :  CHRISTIAN ISWAHYUDI (120030027)  DANIEL ADITYA NUGROHO (120030031)  HENDRAYANA HARYAWAN (120030411)  STEFANUS NYOMAN HENDRAWAN CITRA (120030493) KELAS : AB 123 PROGRAM STUDI : SISTEM INFORMASI SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN TEKNIK KOMPUTER (STMIK) STI...


Description

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 ...


Similar Free PDFs