Senin, 17 Desember 2007

Sistem Operasi ( Bagian 5 )

Sistem Operasi saat ini


http://ysutarso.files.wordpress.com/2007/04/vmis1.jpg

Sistem operasi-sistem operasi utama yang digunakan komputer sistem umum (termasuk PC, komputer personal) terbagi menjadi 3 kelompok besar:

  1. Keluarga Microsoft Windows - yang antara lain terdiri dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows 95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, dan Windows Vista yang akan dirilis pada tahun 2007)).
  2. Keluarga Unix yang menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.
  3. Mac OS, adalah sistem operasi untuk komputer keluaran Apple yang biasa disebut Mac atau Macintosh. Sistem operasi yang terbaru adalah Mac OS X versi 10.4 (Tiger). Awal tahun 2007 direncanakan peluncuran versi 10.5 (Leopard).

Sedangkan komputer Mainframe, dan Super komputer menggunakan banyak sekali sistem operasi yang berbeda-beda, umumnya merupakan turunan dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll.


Proses

Prosesor mengeksekusi program-program komputer. Prosesor adalah sebuah chip dalam sistem komputer yang menjalankan instruksi-instruksi program komputer. Dalam setiap detiknya prosesor dapat menjalankan jutaan instruksi.

Program adalah sederetan instruksi yang diberikan kepada suatu komputer. Sedangkan proses adalah suatu bagian dari program yang berada pada status tertentu dalam rangkaian eksekusinya. Di dalam bahasan Sistem Operasi, kita lebih sering membahas proses dibandingkan dengan program. Pada Sistem Operasi modern, pada satu saat tidak seluruh program dimuat dalam memori, tetapi hanya satu bagian saja dari program tersebut. Sedangkan bagian lain dari program tersebut tetap beristirahat di media penyimpan disk. Hanya pada saat dibutuhkan saja, bagian dari program tersebut dimuat di memory dan dieksekusi oleh prosesor. Hal ini sangat menghemat pemakaian memori.

Beberapa sistem hanya menjalankan satu proses tunggal dalam satu waktu, sedangkan yang lainnya menjalankan multi-proses dalam satu waktu. Padahal sebagian besar sistem komputer hanya memiliki satu prosesor, dan sebuah prosesor hanya dapat menjalankan satu instruksi dalam satu waktu. Maka bagaimana sebuah sistem prosesor tunggal dapat menjalankan multi-proses? Sesungguhnya pada granularity yang sangat kecil, prosesor hanya menjalankan satu proses dalam satu waktu, kemudian secara cepat ia berpindah menjalankan proses lainnya, dan seterusnya. Sehingga bagi penglihatan dan perasaan pengguna manusia, seakan-akan prosesor menjalankan beberapa proses secara bersamaan.

Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga merubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya).


Status Proses

Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu:

  1. Ready, yaitu status dimana proses siap untuk dieksekusi pada giliran berikutnya
  2. Running, yaitu status dimana saat ini proses sedang dieksekusi oleh prosesor
  3. Blocked, yaitu status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas

Tidak ada komentar: