Manajemen Proses Pada Sistem Operasi

7
Manajemen Proses Pada Sistem Operasi Secara informal, proses adalah program dalam eksekusi. Suatu proses adalah lebih dari kode program, dimana kadang kala dikenal sebagai bagian tulisan. Proses juga termasuk aktivitas yang sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor’s register. Suatu proses umumnya juga termasuk process stack, yang berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan sebuah data section, yang berisikan variabel global. suatu program adalah satu entitas pasif, seperti isi dari sebuah berkas yang disimpan didalam disket, sebagaimana sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang mengkhususkan pada instruksi selanjutnya untuk dijalankan dan seperangkat sumber daya/ resource yang berkenaan dengannya. Walau dua proses dapat dihubungkan dengan program yang sama, program tersebut dianggap dua urutan eksekusi yang berbeda. Sebagai contoh, beberapa pengguna dapat menjalankan copy yang berbeda pada mail program, atau pengguna yang sama dapat meminta banyak copy dari program editor. Tiap-tiap proses ini adakah proses yang berbeda dan walau bagian tulisan-text adalah sama, data section bervariasi. Juga adalah umum untuk memiliki proses yang menghasilkan banyak proses begitu ia bekerja. 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

description

egeg

Transcript of Manajemen Proses Pada Sistem Operasi

Page 1: Manajemen Proses Pada Sistem Operasi

Manajemen Proses Pada Sistem Operasi

Secara informal, proses adalah program dalam eksekusi. Suatu proses adalah lebih dari kode

program, dimana kadang kala dikenal sebagai bagian tulisan. Proses juga termasuk aktivitas yang

sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar

prosesor/ processor’s register. Suatu proses umumnya juga termasuk process stack, yang

berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan

sebuah data section, yang berisikan variabel global. suatu program adalah satu entitas pasif,

seperti isi dari sebuah berkas yang disimpan didalam disket, sebagaimana sebuah proses dalam

suatu entitas aktif, dengan sebuah program counter yang mengkhususkan pada instruksi

selanjutnya untuk dijalankan dan seperangkat sumber daya/ resource yang berkenaan dengannya.

Walau dua proses dapat dihubungkan dengan program yang sama, program tersebut dianggap

dua urutan eksekusi yang berbeda. Sebagai contoh, beberapa pengguna dapat menjalankan copy

yang berbeda pada mail program, atau pengguna yang sama dapat meminta banyak copy dari

program editor. Tiap-tiap proses ini adakah proses yang berbeda dan walau bagian tulisan-text

adalah sama, data section bervariasi. Juga adalah umum untuk memiliki proses yang

menghasilkan banyak proses begitu ia bekerja.

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

Page 2: Manajemen Proses Pada Sistem Operasi

DEFINISI PROSES

Terdapat beberapa definisi mengenai proses, antara lain :

a. Merupakan konsep pokok dalam sistem operasi, sehingga masalah manajemen proses adalah

masalah utama dalam perancangan sistem operasi.

b. Proses adalah program yang sedang dieksekusi.

c. .Proses adalah unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan

oleh sistem operasi.

Proses dalam sistem dapat dieksekusi secara bersama-sama, proses tersebut harus dibuat dan

dihapus secara dinamis. Maka, sistem operasi harus menyediakan suatu mekanisme umtuk

pembuatan proses dan terminasi proses.

Operasi pada Proses.

Metode-metode proses dalam system komputer

1. Batch Processing

Proses ini timbul akibat kesulitan dan kekurangan yang dijalani pada waktu komputer

dioperasikan tanpa sistem operasi yang disampaikan dalam satu kelompok (batch).

2. Multi Programming

Yaitu Suatu Usaha menambah pemanfaatan CPU dimana diusahakan agar CPU jangan sampai

dalam keadaan nganggur atau diam (tidak sedang melakukan eksekusi). Dilakukan dengan

memanfaatkan waktu pada saat suatu program sedang menunggu penyelesaian proses I/O dan

CPU dalam status tidak beroperasi

3. Time Sharing

Time Sharing adalah proses dimana waktu CPU dabagi menjadi satu unit yang disebut time slice

sehingga memungkinkan banyak User untuk mengeksekusi komputer

4. Real Time System

Sistem Real Time merupakan proses dimana waktu menjadi pertimbangan utamanya. Sistem

komputer yang real time harus mampu memproses data secepat mungkin dimana hasilnya akan

digunakan untuk mengetahui dari mana proses tadi berasal

Page 3: Manajemen Proses Pada Sistem Operasi

5. Multi Processing

Didalam Sistem MultiProcessing beberapa proses digunakan untuk melakukan pemrosesan dan

menghemat waktu proses.

Pengendalian proses

Pengendalian proses adalah disiplin ilmu yang melibatkan statistika dan teknik yang

melibatkan pembuatan mekanisme dan algoritma untuk mengendalikan keluaran dari suatu

proses tertentu.

Sebagai contoh adalah sistem pengaturan temperatur ruangan agar temperatur ruangan terjaga

konstan setiap saat, misalnya pada 20 °C. Pada kasus ini, temperatur disebut sebagai variabel

terkendali. Selain itu, karena temperatur diukur oleh suatu termometer dan digunakan untuk

menentukan kerja pengendali (apakah ruangan perlu didinginkan atau tidak), temperatur juga

merupakan variabel input. Temperatur yang diinginkan (20 °C) adalah setpoint. Keadaan dari

pendingin (misalnya laju keluaran udara pendingin) dinamakan variabel termanipulasi karena

merupakan variabel yang terkena aksi pengendalian.

Alat pengendalian yang umum digunakan adalah Programmable Logic Controller (PLC). Alat ini

digunakan untuk membaca input analog maupun digital, melakukan serangkaian program logika,

dan menghasilkan serangkaian output analog maupun digital. Pada kasus sistem pengaturan

temperatur, temperatur ruangan menjadi input bagi PLC. Pernyataan-pernyataan logis akan

membandingkan setpoint dengan masukan nilai temperatur dan menentukan apakah perlu

dilakukan penambahan atau pengurangan pendinginan untuk menjaga temperatur agar tetap

konstan. Output dari PLC akan memperbesar atau memperkecil aliran keluaran udara pendingin

bergantung pada kebutuhan. Untuk suatu sistem pengendalian yang kompleks, perlu digunakan

sistem pengendalian yang lebih kompleks daripada PLC. Contoh dari sistem ini adalah

Distributed Control System (DCS) atau sistem SCADA.

Dalam prakteknya, sistem pengendalian proses dapat dikarakteristikkan dalam bentuk:

• Diskrit – Terdapat pada aplikasi manufaktur dan pengemasan. Pemasangan dengan bantuan

robot, seperti yang umum digunakan pada produksi otomotif, dapat dikarakteristikkan sebagai

pengendalian proses diskrit. Sebagian besar proses manufaktur diskrit melibatkan produksi

bagian produk secara diskrit, seperti pembentukan logam.

• Partaian – Beberapa aplikasi membutuhkan digabungkannya beberapa bahan baku spesifik

Page 4: Manajemen Proses Pada Sistem Operasi

dengan cara tertentu pada jangka waktu tertentu untuk menghasilkan produk samping atau

produk akhir. Contohnya adalah pada produksi lem dan perekat, yang umumnya membutuhkan

pencampuran bahan baku dalam suatu reaktor yang dipanaskan selama periode waktu tertentu.

Contoh lain adalah pada produksi makanan dan obat. Proses partaian biasanya dilakukan untuk

memproduksi produk dengan kapasitas rendah hingga sedang.

• Kontinu – Seringkali proses produksi berlangsung secara terus menerus tanpa terhenti.

Pengendalian temperatur air pada jaket pemanas secara terus menerus adalah contoh

pengendalian proses secara kontinu. Contoh produksi yang berlangsung secara kontinu adalah

produksi bahan bakar. Proses kontinu pada proses produksi digunakan untuk memproduksi

produk dengan kapasitas besar.

Contoh

Sebuah termostat adalah contoh sederhana sistem pengendalian dengan loop tertutup: secara

konstan mengukur temperatur dan mengatur bukaan kerangan untuk meningkatkan atau

menurunkan temperatur ruangan sesuai dengan pengaturan pengguna.

Penjadwalan Proses

A. Deskripsi Penjadwalan Proses

• Penjadwalan proses merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi

yang berkaitan dengan urutan kerja yang dilakukan sistem komputer.

• Sedangkan proses merupakan unit kerja terkecil yang secara individu memiliki sumberdaya

atau unit pemilikan sumberdaya.

Tugas penjadwalan diantaranya adalah sebagai berikut :

• Memutuskan proses yang berjalan.

• Memutuskan kapan dan selama berapa lama proses itu berjalan.

Sasaran utama dalam penjadwalan proses adalah :

• Adil (fairness)

Adil adalah proses-proses diperlukan sama yaitu mendapat jatah waktu pemrosesan yang sama

dan tak ada pemroses yang tak kebagian layanan pemroses sehingga mengalami (starvation).

• Efisiensi

Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio) waktu sibuk pemroses.

• Waktu tanggap (response time), dibagi menjadi :

1. Sistem Interaktif

Waktu tanggap dalam sistem interaktif didefinisikan sebagai waktu yang dihabiskan dari saat

karakter terakhir dari perintah dimasukkan atau transaksi sampai hasil pertama muncul dilayar

Page 5: Manajemen Proses Pada Sistem Operasi

(terminal). Waktu tanggap ini disebut terminal response time

2. Sistem Realtime

Pada sistem waktu nyata (real-time), waktu tanggap di definisikan sebagai waktu dari saat

kejadian (internal atau eksternal) sampai instruksi pertama rutin layanan yang dimaksud

dieksekusi, disebut event response time. Sasaran penjadwalan adalah meminimalkan waktu

tanggap.

3. Turn Arround Time

Waktu yang dihabiskan dari saat program atau job mulai masuk ke sistem sampai proses

diselesaikan sistem.

4. Throughput

Throughput adalah jumlah kerja yang dapat diselesaikan dalam satu unit waktu.

B. Tipe-tipe Penjadwalan

• Penjadwalan jangka pendek (short-termscheduller)

Penjadwalan ini bertugas menjadwalkan alokasi pemroses diantara proses-proses ready

dimemori utama.

• Penjadwalan jangka menengah (medium-termscheduller)

Penjadwalan jangka menengah adalah menangani proses-proses swapping (aktivitas pemindahan

proses yang tertunda dari memory utama ke memory sekunder)

• Penjadwalan jangka panjang (long-termscheduller)

Penjadwalan jangka panjang bekerja terhadap antrian batch (proses-proses dengan penggunaan

sumberdaya yang intensif) dan memilih batch berikutnya yang harus di eksekusi.

C. Strategi Penjadwalan

• Penjadwalan Nonpreemptive

Begitu proses diberi jatah waktu pemroses maka pemroses tidak dapat diambil alih oleh proses

lain sampai proses itu selesai.

• Penjadwalan Preemptive

Saat proses diberi jatah waktu pemroses maka pemroses dapat diambil alih oleh proses lain

sehingga proses disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu pemroses

tiba kembali pada proses itu.

D. Algoritma-algoritma Penjadwalan

Algoritma-algoritma yang menerapkan strategi nonpreemptive diantaranya adalah :

• FIFO (First - In , First - Out)

• SJF (Shortest Job First)

Page 6: Manajemen Proses Pada Sistem Operasi

• HRN (Highest Ratio Next)

• MFQ (Multiple Feedbak Queues)

Algoritma-algoritma yang menerapkan strategi preemptive diantaranya adalah :

• RR (Round-Robin)

• SRF (Shortest - Remaining - First)

• PS (Priority Schedulling)

• GS (Guaranteed Schedulling)

Klasifikasi lain berdasarkan adanya prioritas di proses-proses yaitu :

1. Algoritma penjadwalan tanpa berprioritas.

2. Algoritma penjadwalan berprioritas yang terdiri dari :

o Algoritma penjadwalan berprioritas statik.

o Algoritma penjadwalan berprioritas dinamis.