proses

11
Proses

Upload: lassie

Post on 24-Feb-2016

43 views

Category:

Documents


0 download

DESCRIPTION

Proses. Konsep Proses dalam system operasi Semua komputer modern dapat melakukan berbagai macam pekerjaan pada saat yang bersamaan . Selama user menjalankan program, komputer juga dapat melakukan pekerjaan lain seperti membaca data dari disk, atau mencetak ke printer. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Proses

Proses

Page 2: Proses

Konsep Proses dalam system operasi• Semua komputer modern dapat melakukan berbagai macam pekerjaan

pada saat yang bersamaan.• Selama user menjalankan program, komputer juga dapat melakukan

pekerjaan lain seperti membaca data dari disk, atau mencetak ke printer.• Pada sistem multiprograming, komputer biasanya menjalankan program

secara bergantian dalam jumlah puluhan atau ratusan setiap detiknya.• Padahal komputer hanya menjalankan satu program pada satu waktu

tertentu. Itulah sebabnya kenapa dalam waktu satu detik komputer menjalankan banyak program.

• Kondisi inilah yang dinamakan parallelism atau pseudoparallelism.• Kondisi ini sangat sulit sehingga selama puluhan tahun para perancang

sistem operasi berusaha mengembangkan suatu model sehingga paralellism dapat ditangani dengan mudah.

Page 3: Proses

Proses• Pada model ini semua program yang berjalan pada komputer termasuk didalamnya sistem

operasi diorganisasikan sebagai sejumlah proses yang berjalan secara sequential (berurutan).

• Tanenbaum berpendapat bahwa proses adalah sebuah program yang dieksekusi yang termasuk didalamnya program counter, register, dan variabel.

• Perbedaan antara proses dan program– Misalkan ada pembuat kue yang ingin membuat kue ulang tahun. – Orang tersebut melibatkan resep, dapur dan sejumlah input seperti telur, gula, tepung, vanilli dan

lain sebagainya.– Resep itu di analogikan sebagai program karena dia merupakan kumpulan step yang harus dilalui

(Algoritma)– Orang yang membuat kue dianalogikan sebagai CPU yang melakukan pengolahan– Proses itu adalah aktivitas yang dilakukan seperti membaca resep, memadukan setiap bahan,

memanggang kue– Sekarang bayangkan pada saat yang bersamaan anak si pembuat kue datang menangis sambil

mengatakan habis disengat lebah.– Pembuat kue langsung menandai sampai tahap mana step dilakukan (state proses disimpan)

kemudian melakukan pekerjaan yang lebih penting yaitu melakukan pertolongan. Setelah semuanya bisa ditangani maka dia kembali membuat kue dan memulai dari step terakhir yang ditinggalkan.

Page 4: Proses

Meskipun tiap-tiap proses terdiri dari suatu kesatuan yang terpisah namun adakalanya proses-proses tersebut butuh untuk saling berinteraksi. Satu proses bisa dibangkitkan dari output proses lainnya sebagai input.Pada saat proses dieksekusi, akan terjadi perubahan status. Status proses didefiniskan sebagai bagian dari aktivitas proses yang sedang berlangsung saat itu.Gambar menunjukkan diagram status proses. Status proses terdiri dari :a. New: proses sedang dibuat.b. Running: proses sedang dieksekusi.c. Waiting: proses sedang menunggu beberapa event yang akan terjadi (seperti menunggu untuk menyelesaikan I/O atau menerima sinyal).d. Ready: proses menunggu jatah waktu dari CPU untuk diproses.e. Terminated: proses telah selesai dieksekusi.

Page 5: Proses

Process Control Block (PCB)Masing-masing proses direpresentasikan oleh Sistem Operasi dengan menggunakan Process Control Block (PCB) Informasi yang terdapat pada setiap proses meliputi :

a. Status Proses. New, ready, running, waiting dan terminated.b. Program Counter. Menunjukkan alamat berikutnya yang akan dieksekusi oleh proses tersebut.c. CPU Registers. Register bervariasi tipe dan jumlahnya tergantung arsitektur komputer yang bersangkutan. Register- Register tersebut terdiri-atas: accumulator, index register, stack pointer, dan register serbaguna dan beberapa informasi tentangkode kondisi. Selama Program Counter berjalan, status informasi harus disimpan pada saat terjadi interrupt. d. Informasi Penjadwalan CPU. Informasi tersebut berisi prioritas dari suatu proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya.e. Informasi Manajemen Memori. Informasi tersebut berisi nilai (basis) dan limit register, page table, atau segment table tergantung pada sistem memory yang digunakan oleh SO.f. Informasi Accounting. Informasi tersebut berisi jumlah CPU dan real time yang digunakan, time limits, account numbers, jumlah job atau proses, dll.g. Informasi Status I/O. Informasi tersebut berisi deretan I/O device (seperti tape driver) yang dialokasikan untuk proses tersebut, deretan file yang dibuka, dll.

Page 6: Proses
Page 7: Proses

Antrian PenjadwalanPenjadwalan direpresentasikan dalam bentuk antrian yang disimpan sebagai linkedlist dan berisi pointer awal dan akhir PCB. Tiap-tiap PCB memiliki suatu pointer field yang menunjuk ke proses berikutnya. Jenis-jenis antrian penjadwalan adalah sebagai berikut :• Job Queue. Semua proses yang masuk pada suatu sistem akan diletakkan ke dalam job queue.• Ready Queue. Sedangkan proses-proses yang ada di memori utama dan menunggu untuk dieksekusi diletakkan pada suatu list yang disebut dengan ready queue.• Device Queue. Deretan proses yang sedang menunggu peralatan I/O tertentu disebut dengan device queue.Setiap proses dapat berpindah dari satu antrian ke antrian lain.

Page 8: Proses

Terdapat dua bentuk penjadwal, yaitu:a. Longterm-Scheduler (job scheduler), menyeleksi proses-proses mana yang harus dibawa ke ready queue.b. Short-term Scheduler (CPU scheduler), memilih proses-proses yang siap untuk dieksekusi, dan mengakolakasikan CPU ke salah satu dari proses-proses tersebut.

Deadlock• Deadlock dalam arti sebenarnya adalah kebuntuan.

Kebuntuan yang dimaksud dalam sistem operasi adalah kebuntuan proses.

• Jadi Deadlock ialah suatu kondisi dimana proses tidak berjalan lagi atau pun tidak ada komunikasi lagi antar proses.

• Deadlock disebabkan karena proses yang satu menunggu sumber daya yang sedang dipegang oleh proses lain yang sedang menunggu sumber dayayang dipegang oleh proses tersebut. Dengan kata lain setiap proses dalam set menunggu untuksumber yang hanya dapat dikerjakan oleh proses lain dalam set yang sedang menunggu.

Page 9: Proses

Deadlock

Page 10: Proses

Mengapa terjadi• Menurut Coffman (1971) ada empat kondisi yang dapat

mengakibatkan terjadinya Deadlock, yaitu:– Mutual Eksklusif: hanya ada satu proses yang boleh memakai

sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus menunggu hingga sumber daya tadi dilepaskan atau tidak ada proses yang memakai sumber daya tersebut.

– Memegang dan menunggu: proses yang sedang memakai sumber daya boleh meminta sumber daya lagi maksudnya menunggu hingga benar-benar sumber daya yang diminta tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama

– Tidak ada Preemption: sumber daya yang ada pada sebuah proses tidak boleh diambil begitu saja oleh proses lainnya. Untuk mendapatkan sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh berjalan

– Circular Wait: kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya yang dipegang proses berikutnya

Page 11: Proses

Cara Penanggulangan

• Mengabaikan Deadlock• Mendeteksi dan memperbaiki• Menghindari dengan protocol sehingga sistem

tidak masuk ke area deadlock• Memastikan bahwa hanya salah satu kondisi yang

penting tidak dapat menunggu