tugas os system call

8
SYSTEM CALL,KERNEL DAN MIKRO KERNEL Disusun Oleh Nama : 1. As'ad Syamsul Arifin (262110337) 2. Fandi Ahmad (262110350) 3. PRODI TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI

Upload: sam-f-chaerul

Post on 04-Aug-2015

204 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tugas Os System Call

SYSTEM CALL,KERNEL DAN MIKRO KERNEL

Disusun Oleh

Nama : 1. As'ad Syamsul Arifin (262110337)

2. Fandi Ahmad (262110350)

3.

PRODI TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS ISLAM SULTAN AGUNG

SEMARANG

2012

Page 2: Tugas Os System Call

SYSTEM CALL , KERNEL DAN MIKRO KERNEL

A. SYSTEM CALL

1. Pengertian System Call

Layanan langsung sistem operasi ke pemrograman, disebut dengan system call atau

API (application programming interface). System call adalah tata cara pemanggilan di

program aplikasi untuk memperoleh layanan yang disediakan oleh sistem operasi. System

call berupa sistem operasi untuk keperluan tertentu yang spesifik.

System Call untuk manajemen proses diperlukan untuk mengatur proses-proses yang

sedang berjalan. Kita dapat melihat penggunaan system calls untuk manajemen proses pada

Sistem Operasi Unix. Contoh yang paling baik untuk melihat bagaimana system call bekerja

untuk manajemen proses adalah Fork.

Fork adalah satu satunya cara untuk membuat sebuah proses baru pada sistem Unix.

Fork membuat duplikasi yang mirip dengan proses aslinya, termasuk file descriptor, register,

dan lainnya. Setelah perintah Fork, child akan mengeksekusi kode yang berbeda dengan

parentnya.

System Calls menyediakan interface pelayanan-pelayanan yang disediakan oleh sistem

operasi, umumnya sebagai rutin-rutin yang ditulis dengan bahasa C atau C++, atau beberapa

tugas yang mengakses hardware secara langsung menggunakan bahasa rakitan. Biasanya

programmer lebih memilih Application Programming Interface (API) dibandingkan dengan

low level programming.

2. Keuntungan dan Kerugian

Keuntungan dan kerugian menggunakan system call sama antarmuka yaitu untuk

memanipulasi baik file dan perangkat adalah Setiap perangkat dapat diakses seolah-olah itu

adalah file dalam file sistem. Karena sebagian besar penawaran kernel dengan perangkat

melalui antarmuka file, relatif mudah untuk menambahkan device driver baru dengan

menerapkan kode perangkat keras khusus untuk mendukung antarmuka file abstrak. Oleh

karena itu, manfaat pengembangan baik kode program pengguna, yang dapat bewritten untuk

mengakses perangkat dan file dalam samemanner, dan perangkat sopir kode, yang dapat

Page 3: Tugas Os System Call

ditulis untuk mendukung API yang didefinisikan dengan baik. Kerugian itu dengan

menggunakan antarmuka yang sama adalah bahwa mungkin akan sulit untuk menangkap

fungsi peralatan tertentu dalam konteks akses file API, sehingga baik mengakibatkan

hilangnya fungsi atau kerugian kinerja. Beberapa ini dapat diatasi dengan penggunaan operasi

ioctl yang menyediakan antarmuka tujuan umum untuk proses untuk memanggil operasi pada

perangkat.

3. Jenis – Jenis System Call

Ada lima jenis system calls utama, yaitu:

1. Process control merupakan system calls yang mengendalikan proses-proses yang

berjalan.

2. File manipulation adalah kumpulan system calls yang bertugas untuk melakukan

manipulasi file seperti pembacaan, penulisan, penghapusan dan pengubahan.

3. Device manipulation adalah system calls yang mengatur penggunaan peralatan-

peralatan yang terhubung pada mesin tersebut.

4. Information maintenance. System calls yang menghubungkan user dengan sistem

operasi dalam hal berbagi informasi.

5. Communications. Ada dua model komunikasi yaitu pertukaran informasi dilakukan

melalui fasilitas komunikasi antar proses yang disediakan oleh sistem operasi

(Message-Passing) dan pertukaran dengan menggunakan memori (shared-memory).

B. KERNEL DAN MIKRO KERNEL

1. Kernel

kernel adalah suatu perangkat lunak yang menjadi bagian utama dari sebuah sistem

operasi. Tugasnya melayani bermacam program aplikasi untuk mengakses perangkat keras

komputer secara aman. Karena akses terhadap perangkat keras terbatas, sedangkan ada lebih

dari satu program yang harus dilayani dalam waktu yang bersamaan, maka kernel juga

Page 4: Tugas Os System Call

bertugas untuk mengatur kapan dan berapa lama suatu program dapat menggunakan satu

bagian perangkat keras tersebut. Hal tersebut dinamakan sebagai multiplexing.

Akses kepada perangkat keras secara langsung merupakan masalah yang kompleks,

oleh karena itu kernel biasanya mengimplementasikan sekumpulan abstraksi hardware.

Abstraksi-abstraksi tersebut merupakan sebuah cara untuk menyembunyikan kompleksitas,

dan memungkinkan akses kepada perangkat keras menjadi mudah dan seragam. Sehingga

abstraksi pada akhirnya memudahkan pekerjaan programer.

Untuk menjalankan sebuah komputer kita tidak harus menggunakan kernel sistem

operasi. Sebuah program dapat saja langsung diload dan dijalankan diatas mesin (telanjang)

komputer, yaitu bilamana pembuat program ingin melakukan pekerjaannya tanpa bantuan

abstraksi perangkat keras atau bantuan sistem operasi. Teknik ini digunakan oleh komputer

generasi awal, sehingga bila kita ingin berpindah dari satu program ke program lain, kita

harus mereset dan meload kembali program-program tersebut.

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.

2. Mikrokernel

Mikrokernel berisi sebuah abstraksi yang sederhana terhadap hardware, dengan

sekumpulan primitif atau system call yang dapat digunakan untuk membuat sebuah sistem

operasi agar dapat berjalan, dengan layanan-layanan seperti manajemen thread, komunikasi

antar address space, dan komunikasi antar proses. Layanan-layanan lainnya, yang biasanya

Page 5: Tugas Os System Call

disediakan oleh kernel, seperti halnya dukungan jaringan, pada pendekatan microkernel justru

diimplementasikan di dalam ruangan pengguna (user-space), dan disebut dengan server.

Server atau disebut sebagai peladen adalah sebuah program, seperti halnya program

lainnya. Server dapat mengizinkan sistem operasi agar dapat dimodifikasi hanya dengan

menjalankan program atau menghentikannya. Sebagai contoh, untuk sebuah mesin yang kecil

tanpa dukungan jaringan, server jaringan (istilah server di sini tidak dimaksudkan sebagai

komputer pusat pengatur jaringan) tidak perlu dijalankan. Pada sistem operasi tradisional

yang menggunakan monolithic kernel, hal ini dapat mengakibatkan pengguna harus

melakukan rekompilasi terhadap kernel, yang tentu saja sulit untuk dilakukan oleh pengguna

biasa yang awam.

Dalam teorinya, sistem operasi yang menggunakan microkernel disebut jauh lebih

stabil dibandingkan dengan monolithic kernel, karena sebuah server yang gagal bekerja, tidak

akan menyebabkan kernel menjadi tidak dapat berjalan, dan server tersebut akan dihentikan

oleh kernel utama. Akan tetapi, dalam prakteknya, bagian dari system state dapat hilang oleh

server yang gagal bekerja tersebut, dan biasanya untuk melakukan proses eksekusi aplikasi

pun menjadi sulit, atau bahkan untuk menjalankan server-server lainnya.

Sistem operasi yang menggunakan microkernel umumnya secara dramatis memiliki

kinerja di bawah kinerja sistem operasi yang menggunakan monolithic kernel. Hal ini

disebabkan oleh adanya overhead yang terjadi akibat proses input/output dalam kernel yang

ditujukan untuk mengganti konteks (context switch) untuk memindahkan data antara aplikasi

dan server.

Beberapa sistem operasi yang menggunakan microkernel:

1. IBM AIX, sebuah versi UNIX dari IBM

2. Amoeba, sebuah kernel yang dikembangkan untuk tujuan edukasi

3. Kernel Mach, yang digunakan di dalam sistem operasi GNU/Hurd, NexTSTEP,

OPENSTEP, dan Mac OS/X

4. Minix, kernel yang dikembangkan oleh Andrew Tanenbaum untuk tujuan edukasi

5. Symbian OS, sebuah sistem operasi yang populer digunakan pada hand phone,

handheld device, embedded device, dan PDA Phone.

Page 6: Tugas Os System Call

Daftar Pustaka

http://dewa18.wordpress.com/2009/10/28/operasi-sistem-komputer-struktur-sistem-operasi-

dan-system-call

http://2009030ifunsika.blogdetik.com/category/sistem-operasi/

http://en.wikipedia.org/wiki/System_call

http://dewa18.wordpress.com/2009/10/28/operasi-sistem-komputer-struktur-sistem-operasi-

dan-system-call/

http://blog.unsri.ac.id/rennyamalia/sistem-operasi/tugas-sistem-operasi-2/mrdetail/48335/

http://www.google.co.id/url?

sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCIQFjAA&url=http%3A%2F

%2Fopenstorage.gunadarma.ac.id%2Fhandouts%2FS1_Sistem%2520Informasi

%2FLectureNote-Sistem-Operasi-Jurusan-

SK.doc&ei=m_aGT8CPCsewiQeB0f3HBw&usg=AFQjCNGVu6xWXCP43n8JbNWeBxnTj

HnWoQ