KARAKTERISTIK SISTEM OPERASI

19 03 2009

Sistem operasi menyembunyikan detail hardware dari pemrogram dan menyediakan interface yang nyaman untuk pemrogram.

Sistem operasi berfungsi sebagai mediator antara hardware komputer dengan pemrogram untuk  mengakses dan menggunakan fasilitas layanan tertentu.

Sistem operasi menyembunyikan detail hardware dari pemrogram dan menyediakan interface yang nyaman untuk pemrogram.

Sistem operasi berfungsi sebagai mediator antara hardware komputer dengan pemrogram untuk  mengakses dan menggunakan fasilitas layanan tertentu.

Layanan yang Diberikan Sistem Operasi adalah :
Pembuatan Program
Sistem operasi menyediakan berbagai fasilitas layanan bagi pemrogram untuk pembuatan program dalam bentuk utilitas (general utilities).
Eksekusi Program
Sistem operasi melakukan penanganan pemuatan instruksi dan data ke memori utama, perangkat input/output (I/O) dan inisialisasi file, dan penyiapan fasilitas.
Akses ke Perangkat I/O
Sistem operasi menangani set instruksi I/O atau sinyal kontrol untuk keperluan operasi.
Akses Terkontrol ke File
Sistem operasi dapat menyediakan perlindungan untuk mengontrol akses ke fasilitas yang digunakan secara bersama.
Akses Sistem
Sistem operasi mengontrol akses ke sistem sebagai keseluruhan dan ke sumber daya sistem tertentu.

Sistem Operasi Sebagai Pengelola Fasilitas
Sebuah komputer adalah sekumpulan fasilitas untuk pemindahan, penyimpanan, dan pengolahan data dan mengontrol ketiga fungsi ini.
Pengontrolan fungsi-fungsi ini dilakukan oleh sistem operasi.
®    Sistem operasi merupakan program yang dieksekusi oleh CPU
Sistem operasi mengarahkan CPU dalam menggunakan fasilitas lainnya dan dalam pewaktuan dan atau penjadwalan eksekusi program.
Jenis Sistem Operasi
Pembedaan jenis sistem operasi didasarkan pada karakteristik.
Karakteristik dapat dibagi menjadi 2 dimensi:

Dimensi pertama:
Ditinjau dari segi interaksi pengguna dengan sistem komputer, ada dua jenis sistem operasi yang independen, yaitu:
Sistem bersifat interaktif
Sistem bersifat batch

Dimensi kedua:
Ditinjau dari segi banyaknya program yang dieksekusi secara simultan, ada dua jenis sistem operasi, yaitu:
Sistem yang menggunakan Multiprogramming
Sistem yang tidak menggunakan Multiprogramming yaitu: Uniprogrammed / One task at a time

Sistem interaktif,
pengguna/pemrogram berinteraksi secara langsung dengan komputer,  biasanya melalui keyboard/layar monitor, untuk meminta eksekusi  tugas atau membentuk transaksi.

Sistem batch,
program-program pengguna ditampung bersama-sama (secara offline) dengan pengguna lainnya dan kemudian diserahkan ke sistem operasi oleh operator komputer.
program diselesaikan, hasilnya dicetak dan dikembalikan ke pengguna.
sistem batch murni sudah jarang ditemukan saat ini.

Dimensi Multiprogramming
Prosesor selalu berada dalam keadaan sibuk karena prosesor mengerjakan lebih dari satu program pada saat yang sama,
Beberapa program dimuatkan ke dalam memori,
Prosesor beralih dengan cepat dari satu program ke program lainnya
Bila menggunakan sistem interaktif, menerapkan time sharing
Persyaratan lain untuk meningkatkan kecanggihan dibanding dengan sistem operasi tipe batch adalah
o    manajemen memori
o    penjadwalan

Tabel Jenis Sistem Operasi

Batch System    Interactive System
Uniprogrammed / One task at a time    Simple batch    Dedicated system
Multiprogrammed    Sophisticated batch    Time sharing

Jadi ada empat jenis sistem operasi secara umum:
Sistem Batch sederhana
Sistem Batch canggih
Sistem Multiprogramming
Sistem Time Sharing

Dua permasalahan yang ada pada sistem komputer lama (terdahulu):
Penjadwalan (Scheduling): pengguna memesan waktu pelayanan mesin, pemesanan waktu mesin hendaknya sama dengan waktu penyelesaian pekerjaan.
Waktu setup (Setup Time): Waktu yang diperlukan untuk pemuatan compiler dan program berbahasa tingkat tinggi (program sumber) ke dalam memori, penyimpanan program yang telah dikompilasi (program object), dan kemudian memuatkan dan melakukan link program object dengan fungsi-fungsi agar program dapat berjalan. Waktu setup harus diusahakan sependek mungkin.

Sistem Batch Sederhana
Dalam sistem batch, pengguna tidak perlu lagi memiliki akses langsung ke mesin. Pengguna menyerahkan pekerjaanya kepada operator komputer yang akan melakukan batch pekerjaan secara berurutan.

Untuk memahami pola kerja batch, kita tinjau dari dua sudut pandang:
Sudut pandang monitor
Sudut pandang CPU.

Dari sudut pandang monitor,
Monitorlah yang mengontrol rangkaian kejadian. Untuk itu monitor harus selalu berada di dalam memori utama (disebut resident monitor) dan selalu tersedia untuk melakukan eksekusi. Monitor membaca job satu persatu. Setelah membaca, job tersebut ditempatkan pada daerah program pengguna, dan kontrol diberikan ke job ini. Pada saat job telah selesai, akan terjadi interupt (internal interupt terhadap komputer) yang mengembalikan kontrol ke monitor, dan segera membaca job berikutnya. Hasil setiap job dicetak dan dikirim ke pengguna.

Dari sudut pandang CPU,
CPU mengeksekusi instruksi-instruksi yang berasal dari lokasi memori yang berisi monitor. Instruksi-instruksi ini akan menyebabkan job berikutnya dibaca ke bagian lain memori utama. Setelah sebuah job dibaca, CPU akan menemukan instruksi cabang pada monitor yang meminta CPU untuk melanjutkan eksekusi di lokasi lain pada memori (awal program pengguna). Kemudian CPU akan mengeksekusi instruksi pada program pengguna sampai CPU menemukan akhir program atau error. Salah satu kejadian itu akan menyebabkan CPU mengambil instruksi berikutnya dari program monitor.
“Kontrol diserahkan ke CPU” berarti CPU mengambil dan mengeksekusi instruksi dalam program pengguna.

“Kontrol dikembalikan ke monitor” berarti CPU mengambil dan mengeksekusi instruksi dari program monitor.

Beberapa feature yang perlu diperhatikan dalam sistem operasi batch:
Proteksi Memori : Pada saat program pengguna dieksekusi, maka program itu tidak boleh mengubah area memori yang berisi monitor. Bila terjadi perubahan area memori, maka hardware CPU akan mendeteksi suatu error dan memindahkan kontrol ke monitor. Kemudian monitor membatalkan job, mencetak pesan error, dan memuatkan job berikutnya.
Pewaktu (Timer) : Pewaktu digunakan untuk mencegah sebuah job memonopoli sistem. Pewaktu disetel pada awal setiap job. Bila waktu habis, terjadi sebuah interrupt, dan kontrol kembali ke monitor.
Privileged Instruction : Instruksi tertentu ditandai dengan privileged dan hanya dapat dieksekusi oleh monitor. Instruksi ini meliputi instruksi I/O, sehingga monitor menguasai kontrol semua perangkat I/O. Hal ini akan mencegah pembacaan instruksi kontrol job dari job berikutnya secara tidak sengaja.

Sistem Batch Canggih
Karena kecepatan prosesor lebih cepat dibandingkan kecepatan perangkat I/O, maka sering terjadi prosesor berada pada keadaan idle.

Read satu record                0,0015 detik
Execute 100 instruksi            0,0001 detik
Write satu record            0,0015 detik
Total                     0,0031 detik

Persen utilisasi CPU = 0,0001 / 0,0031 = 0,032 = 3,2 %

Pada contoh di atas komputer menghabiskan lebih dari 96% waktunya untuk menunggu perangkat I/O menyelesaikan proses transfer data.

Untuk mengatasi hal ini maka diterapkan sistem operasi modern yang dikenal dengan Multiprogramming.

Multiprogramming
Dalam multiprogramming, bila sebuah job perlu menunggu I/O, maka prosesor dapat beralih ke job lainnya, yang tidak sedang menunggu I/O. Dalam multiprogramming, memori dapat menampung tiga atau lebih program dan dapat beralih ke setiap program tersebut. Multiprogramming banyak digunakan dalam sistem operasi modern.

Berikut contoh operasi multiprogramming dan uniprogramming:

Penjadwalan (Scheduling)
Tugas utama sistem operasi modern adalah multiprogramming
Hal terpenting dalam multiprogramming adalah scheduling
Dalam sistem operasi multiprogramming, beberapa job dipertahankan di memori, setiap job saling bergantian menggunakan CPU dan menunggu I/O
Kunci peningkatan efisiensi menggunakan multiprogramming adalah penjadwalan yang efektif.
Ada tiga jenis penjadwalan :
o    High level scheduling (Penjadwalan tingkat tinggi)
o    Short term scheduling (Penjadwalan jangka pendek)
o    I/O scheduling

Penjadwalan tingkat tinggi
o    Menentukan job mana yang akan dimasukkan ke sistem untuk pemrosesan
o    Mengontrol derajat multiprogramming (jumlah proses yang berada di dalam memori).
o    Job yang diijinkan ditambahkan pada antrian job pada penjadwal jangka pendek
o    Bekerja dalam modus batch atau interaktif

Penjadwalan jangka pendek
o    Dikenal dengan istilah dispatcher
o    Mengeksekusi dan membuat keputusan yang lebih detil tentang job yang akan dieksekusi untuk kesempatan selanjutnya.
o    Keadaan proses

Ada lima keadaan proses :
§    New : Sebuah program diijinkan oleh penjadwal tingkat tinggi namun belum siap melakukan eksekusi. Sistem akan menginisialisasi proses, yang akan mengubahnya menjadi berada dalam keadaan siap.
§    Ready : Proses telah berada dalam keadaan siap dieksekusi dan sedang menunggu akses ke prosesor
§    Running : Proses sedang dieksekusi oleh prosesor
§    Waiting : Proses ditahan eksekusinya untuk menunggu sumber daya sistem, misal I/O.
§    Halted : Proses telah dihentikan dan akan dihancurkan oleh sistem operasi.

Untuk setiap proses direpresentasikan dalam sistem operasi dengan blok kontrol proses yang berisi sbb.:
o    Identifier : Setiap proses saat itu memiliki identifier yang unik.
o    State : Keadaan proses saat itu (new, ready, dll)
o    Priority : Tingkatan prioritas relatif
o    Program Counter : Alamat instruksi berikutnya di dalam program yang akan dieksekusi.
o    Memori pointers : Lokasi awal dan akhir proses di dalam memori
o    Context Data : Data ini adalah data yang berada di dalam register pada prosesor pada saat proses sedang dieksekusi.
o    I/O Status Information : Meliputi request I/O yang belum dipenuhi perangkat I/O yang diassign ke proses ini, daftar file yang di-assign ke proses dll.
o    Accounting Information : dapat meliputi jumlah waktu prosesor dan clock time yang digunakan, batas waktu, nomor account, dll.

Ketika prosesor menerima job baru, prosesor menerima blok kontrol proses yang kosong dan menempatkan proses yang bersangkutan di dalam keadaan yang baru, setelah sistem terisi blok kontrol proses dengan benar, maka proses dipindahkan ke keadaan siap (ready).

Manajemen memori
Dalam sistem uniprogramming, memori utama dibagi menjadi dua bagian:
Bagian untuk sistem operasi (monitor resident)
Bagian untuk program yang saat itu sedang dieksekusi

Dalam sistem multiprogramming, bagian “pengguna” dari memori harus dibagi lagi untuk mengakomodasi sejumlah proses. Tugas pembagian dilakukan secara dinamis oleh sistem operasi dan dikenal sebagai manajemen memori.


Aksi

Information

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s




%d blogger menyukai ini: