deskripsi dan kontrol proses kelompok 2

32
Deskripsi dan Kontrol Proses Pada Sistem Operasi KELOMPOK 2 1. Alan Kurniawan NIM : 7201130159 2. Bayu Tricahyo NIM : 7201130168 3. Dadang Badrudin NIM : 7201130181 4. Moch. Faisal.C NIM : 7201130171 1

Upload: faisal

Post on 25-Dec-2015

285 views

Category:

Documents


12 download

DESCRIPTION

deskripsi kontrol proses

TRANSCRIPT

Page 1: Deskripsi Dan Kontrol Proses Kelompok 2

Deskripsi dan Kontrol ProsesPada Sistem Operasi

KELOMPOK 2

1. Alan Kurniawan NIM : 72011301592. Bayu Tricahyo NIM : 72011301683. Dadang Badrudin NIM : 72011301814. Moch. Faisal.C NIM : 7201130171

FAKULTAS ILMU KOMPUTERJURUSAN SISTEM INFORMASI

TAHUN 2014

1

Page 2: Deskripsi Dan Kontrol Proses Kelompok 2

KATA PENGANTAR

Assalamualaikum wr wb Segala puji bagi Allah tuhan semesta alam yang telah memberikan kami kesehatan sehingga kami dapat mengerjakan tugas makalah ini dalam keadaan rahmatnya serta shalawat dan salam kita tetap tercurahkan kepada baginda Muhammaad Rasulullah SAW yang kita tunggu syafaatnya di yaumul akhir kelak, Alhamdulillah makalah ini selesai dibuat dengan mengambil beberapa referensi dari internet tentang pengantar dan perkembangan komputer semoga apa yang kelompok kami buat ini dapat memenuhi tugas makalah Deskripsi dan Kontrol Proses Sistem Operasi yang telah diberikan. Wassalamualaikum wr wb.

Jakarta, 18 Oktober 2014

Kelompok 2

2

Page 3: Deskripsi Dan Kontrol Proses Kelompok 2

DAFTAR ISI :

I. KATA PENGANTAR Hal... 2

II. DAFTAR ISI Hal... 3

III. BAB 1 PENDAHULUAN1.1 Latar belakang Hal... 41.2 Rumusan Masalah Hal... 51.3 Tujuan Hal... 5

IV. BAB 2 PEMBAHASAN2.1 Deskripsi Proses Hal… 62.1.1 Konsep Proses Hal… 62.2 Proses Hal… 82.2.1 Proses State (Status Proses) Hal… 8-92.2.2 Control Proses Block Hal…10-112.3 Operasi-Operasi Pada Proses Hal…11-22

V. BAB 3 PENUTUP3.1 Kesimpulan Hal… 23

3

Page 4: Deskripsi Dan Kontrol Proses Kelompok 2

BAB 1. PENDAHULUAN

Dalam Ilmu komputer, Sistem operasi yang dalam bahasa Inggris

disebut Operating system atau OS adalah perangkat lunak sistem

yang bertugas untuk melakukan kontrol dan manajemen perangkat

keras serta operasi-operasi dasar sistem, termasuk menjalankan

software aplikasi seperti program-program pengolah kata dan

browser web.

Secara umum, Sistem Operasi adalah software pada lapisan

pertama yang ditaruh pada memori komputer pada saat komputer

dinyalakan. Sedangkan software-software lainnya dijalankan setelah

Sistem Operasi berjalan, dan Sistem Operasi akan melakukan

layanan inti umum untuk software-software itu. Layanan inti umum

tersebut seperti akses ke disk, manajemen memori, skeduling task,

dan antar-muka user. Sehingga masing-masing software tidak perlu

lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani

dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan

tugas-tugas inti dan umum tersebut dinamakan dengan "kernel"

suatu Sistem Operasi.

1.1 Latar belakang

Keberadaan sistem operasi dalam sistem komputer adalah

sebagai perangkat lunak yang mempunyai tugas

mengendalikan dan mengkoordinasikan seluruh hardware dan

software sebagai sumber daya komputer sekaligus

memberikan pelayanan kepada program aplikasi dan

pemrogram untuk memudahkan pemanfaatan sumber

dayanya. Proses sebagai suatu entitas yang dinamis

mengandung sejumlah instruksi, data, program counter,

4

Page 5: Deskripsi Dan Kontrol Proses Kelompok 2

kumpulan register serta stack yang berisi alamat memori.

Proses juga dapat dikatakan sebagai program yang sedang

dieksekusi (program aplikasi / sistem operasi). Proses dapat

dikatakan sebagai unit kerja terkecil yang secara individu

memiliki sumber daya – sumber daya dan dijadwalkan oleh

sistem operasi. Dengan demikian sistem operasi mempunyai

kegiatan yang sangat kompleks dalam mengelola seluruh

sumber daya dan memberikan pelayanan terhadap proses –

proses sesuai kebutuhan. Kegiatan tersebut menjadikan sistem

operasi membutuhkan suatu manajemen proses.

1.2 Rumusan Masalah

a) Deskripsi Proses

b) Proses status

c) Proses control block

1.3 Tujuan

a) Untuk memenuhi tugas Sistem Operasi

b) Mengetahui Pengertian Proses

c) Mengetahui Proses pada sistem operasi

5

Page 6: Deskripsi Dan Kontrol Proses Kelompok 2

BAB 2. PEMBAHASAN

2.1. Deskripsi Proses

Satu selingan pada diskusi kita mengenai sistem operasi yaitu bahwa ada

sebuah pertanyaan mengenai apa untuk menyebut semua aktivitas CPU. Sistem

batch mengeksekusi jobs, sebagaimana suatu system time-shared telah

menggunakan program pengguna, atau tugas-tugas/pekerjaan-pekerjaan.

Bahkan pada sistem tunggal, seperti Microsoft Windows dan Macintosh OS,

seorang pengguna mampu untuk menjalankan beberapa program pada saat

yang sama, sebuah Word Processor, Web Browser, dan paket e-mail. Bahkan

pengguna dapat melakukan hanya satu program pada satu waktu, sistem

operasi perlu untuk mendukung aktivitas program internalnya sendiri, seperti

management memory. Dalam banyak hal, seluruh aktivitas ini adalah serupa,

maka kita menyebut seluruh program itu proses-proses (processes).

2.1.1. Konsep 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

6

Page 7: Deskripsi Dan Kontrol Proses Kelompok 2

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 juga merubah nilai prioritas proses tertentu, agar proses tersebut

dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya :

pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem

operasi menaikkan nilai prioritasnya).

Awalnya sistem komputer hanya diperbolehkan menjalankan satu program

dalam satu waktu. Program ini memiliki kontrol penuh terhadap sistem, dan

memiliki akses ke semua sumber daya sistem. Kebutuhan ini menghasilkan

gagasan dari sebuah proses, yang merupakan program dalam eksekusi. Proses

adalah unit kerja dalam sistem time-sharing modern.

Sistem Operasi diharapkan semakin kompleks oleh penggunanya. Sebuah

sistem karena terdiri dari kumpulan proses: Operasi-sistem proses

mengeksekusi kode sistem, dan proses mengeksekusi kode pengguna. Semua

proses ini berlangsung bersamaan dengan meggunakan CPU multiplexing.

Dengan beralih CPU antara proses, sistem operasi dapat membuat komputer

lebih produktif.

7

Page 8: Deskripsi Dan Kontrol Proses Kelompok 2

2.2. Proses

Proses adalah program yang sedang dieksekusi. Proses lebih dari sekedar kode

program yang kadang-kadang dikenal sebagai bagian teks. Seperti nilai dari

program counter dan isi dari register prosesor. Selain itu, proses umumnya

termasuk proses stack, yang berisi data temporer (seperti parameter metoda,

alamat return dan variabel lokal), dan sebuah bagian data, yang berisi variabel

global. Program bukanlah sebuah proses. Program adalah sebuah entitas pasif,

seperti isi file yang disimpan pada disk, sedangkan proses adalah suatu entitas

aktif, dengan sebuah program counter menentukan instruksi berikutnya untuk

mengeksekusi dan seperangkat sumber daya yang terkait. Meskipun dua proses

dapat dikaitkan dengan program yang sama, mereka tetap dianggap dua urutan

eksekusi yang terpisah.

2.2.1 Process State (status 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 1. Proses State ( Proses Status)

8

Page 9: Deskripsi Dan Kontrol Proses Kelompok 2

Keterangan :

1. Proses di blok untuk melayani input karena sumber daya yang

diminta belum tersedia / meminta layanan I/O sehingga menunggu

kejadian muncul.

2. Penjadwalan mengambil proses lain.

3. Penjadwalan mengambil proses ini (baru).

4. Input telah tersedia.

Penjelasan Status (State)

Terdapat transisi di antara state-state selama siklus hidup proses, yaitu:

Proses yang baru diciptakan akan segera mempunyai status Ready.

Proses dengan status running → blocked karena sumber daya yang

diminta belum tersedia atau meminta layanan perangkat

masukan/keluaran sehingga menunggu kejadian muncul. Proses

menunggu kejadian alokasi sumber daya atau selesainya layanan

perangkat masukan/keluaran (event wait).

Proses dengan status running → ready karena penjadwal memutuskan

eksekusi proses lain karena jatah waktu untuk proses tersebut telah habis

(time-out).

Proses dengan status blocked → ready saat sumber daya yang

diminta/diperlukan telah tersedia atau layanan perangkat

masukan/keluaran selesai (event occurs).

Proses dengan status ready → running karena penjadwal memutuskan

penggunaan pemroses untuk proses itu karena proses yang saat itu

running berubah state (menjadi ready atau blocked) atau telah

menyelesaikan sehingga disingkirkan dari sistem Proses menjadi

mendapatkan jatah pemroses.

2.2.2. Process Control Block (PCB)

Setiap proses digambarkan dalam sistem operasi oleh sebuah Process Control

Block (PCB) yang juga disebut sebuah control block. Control Block berisikan

banyak bagian dari informasi yang berhubungan dengan sebuah proses yang

spesifik, termasuk hal-hal di bawah ini :

9

Page 10: Deskripsi Dan Kontrol Proses Kelompok 2

A Status Proses.

Status new, ready, running, waiting, terminated, dan juga banyak lagi.

B Program Counter.

Suatu stack yang berisi alamat dari instruksi selanjutnya untuk dieksekusi

untuk proses ini.

C CPU register.

Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan

komputer. Register tersebut termasuk accumulator, register indeks, stack

pointer, general-purposes register, ditambah code information pada

kondisi apa pun. Beserta dengan program counter, keadaan/status

informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan

proses tersebut berjalan/bekerja dengan benar setelahnya.

D Informasi manajemen memori.

Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan

batas register, tabel halaman, atau tabel segmen tergantung pada sistem

memori yang digunakan oleh sistem operasi.

E Informasi pencatatan.

Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan,

batas waktu, jumlah akun, jumlah job atau proses, dan banyak lagi.

F Informasi status I / O.

Informasi termasuk daftar dari perangkat I/O yang di gunakan pada

proses ini, daftar berkas-berkas yang sedang diakses dan banyak lagi.

10

Page 11: Deskripsi Dan Kontrol Proses Kelompok 2

Gambar 3. Process Control Block

2.3 OPERASI-OPERASI PADA PROSES

Sistem operasi dalam mengelola proses dapat melakukan operasi-operasi

terhadap proses. Operasi tersebut adalah :

Penciptaan proses

Penghancuran/terminasi proses

Penundaan proses dan Pelanjutan kembali proses

Pengubahan prioritas proses

Menjadwalkan proses

Memungkinkan proses berkomunikasi dengan proses lain.

1. PENCIPTAAN PROSES

Melibatkan banyak aktivitas, yaitu :

Memberi identitas proses

Menyisipkan proses pada senarai atau tabel proses

Menentukan prioritas awal proses

Menciptakan PCB

Mengalokasikan sumber daya awal bagi proses Ketika proses baru

ditambahkan, sistem operasi membangun struktur data untuk mengelola

dan mengalokasikan ruang alamat proses.

Kejadian yang dapat menyebabkan penciptaan proses :

Pada lingkungan batch, sebagai tanggapan atas pemberian satu kerja

(job) Sistem operasi dengan kendali batch job, setelah menciptakan

proses baru, kemudian melanjutkan membaca job berikutnya.

Pada lingkungan interaktif, ketika pemakai baru berusaha logon.

Sebagai tanggapan suatu aplikasi, seperti permintaan pencetakan file,

sistem operasi dapat menciptakan proses yang akan mengelola

pencetakan itu. Sistem operasi menciptakan proses untuk memenuhi

satu fungsi pada program pemakai, tanpa mengharuskan pemakai

menunggu.

Proses penciptaan proses lain (proses anak). Untuk mencapai

modularitas atau mengeksploitasi kongkurensi, program pemakai

11

Page 12: Deskripsi Dan Kontrol Proses Kelompok 2

memerintahkan pembuatan sejumlah proses. Proses dapat menciptakan

proses baru yaitu anak proses (child process), sedangkan proses yang

menciptakannya disebut proses induk (parent process). Proses

anakpun kembali dapat menciptakan proses-proses anak lainnya.

Proses-proses dapat membentuk pohon hirarki proses.

TAHAP-TAHAP PENCIPTAAN PROSES

Penciptaan proses dapat disebabkan beragam sebab Penciptaan proses

meliputi beberapa tahap :

Beri satu identifier unik ke proses baru. Isian baru ditambahkan ke tabel

proses utama yang berisi satu isian perproses.

Alokasikan ruang untuk proses.

PCB harus diinisialisasi.

Kaitan-kaitan antar tabel dan senarai yang cocok dibuat.

Bila diperlukan struktur data lain maka segera dibuat struktur data itu.

2. PENGHANCURAN PROSES

Penghancuran proses melibatkan pembebasan proses dari sistem, yaitu :

Sumber daya-sumber daya yang dipakai dikembalikan.

Proses dihancurkan dari senarai atau tabel sistem.

PCB dihapus (ruang memori PCB dikembalikan ke pool memori bebas).

Penghancuran lebih rumit bila proses telah menciptakan proses-proses lain.

Terdapat dua pendekatan, yaitu :

1. Pada beberapa sistem, proses-proses turunan dihancurkan saat proses

induk dihancurkan secara otomatis.

2. Beberapa sistem lain menganggap proses anak independen terhadap

proses induk, sehingga proses anak tidak secara otomatis dihancurkan

saat proses induk dihancurkan.

Alasan-alasan penghancuran proses, sebagai berikut :

Selesainya proses secara manual, Proses mengeksekusi panggilan

layanan sistem operasi untuk menandakan bahwa proses telah berjalan

secara lengkap.

12

Page 13: Deskripsi Dan Kontrol Proses Kelompok 2

Batas waktu telah terlewati, proses telah berjalan melebihi batas waktu

total yang dispesifikasikan. Terdapat banyak kemungkinan untuk tipe

waktu yang diukur,termasuk waktu total yang dijalani (wait clock

time),jumlah waktu yang dipakai untuk eksekusi, dan jumlah waktu sejak

pemakai terakhir kali memberi masukan (pada proses interaktif

Memori tidak tersedia, proses memerlukan memori lebih banyak daripada

yang dapat disediakan sistem.

Pelanggaran terhadap batas memori, Proses mencoba mengakses lokasi

memori yang tidak diijinkan diakses.

Terjadi kesalahan karena pelanggaran proteksi, Proses berusaha

menggunakan sumber data atau file yang tidak diijinkan dipakainya, atau

proses mencoba menggunakannya tidak untuk peruntukannya, seperti

menulis file read only.

Terjadi kesalahan aritmatika Proses mencoba perhitungan terlarang,

seperti pembagian dengan nol,atau mencoba menyimpan angka yang

lebih besar daripada yang dapat diakomodasi oleh perangkat keras

Waktu telah kedaluwarsa, Proses telah menunggu lebih lama dari pada

maksimum yang ditentukan untuk terjadinya suatu kejadian spesifik.

Terjadi kegagalan, Kesalahan muncul pada masukan/keluaran,

seperti masukan/keluaran ketidakmampuan menemukan file,

kegagalan membaca atau menulis setelah sejumlah maksimum

percobaan yang ditentukan (area rusak didapatkan pada tape atau

operasi tak valid seperti membaca dari line printer).

Instruksi yang tidak benar, Proses berusaha mengeksekusi intruksi yang

ada (akibat percabangan ke daerah data dan dan berusaha

mengeksekusi data itu)

Terjadi usaha memakai instruksi yang tidak dijinkan, Proses berusaha

menggunakan instruksi yang disimpan untuk sistem operasi.

Kesalahan penggunaan data, Bagian data adalah tipe yang salah atau

tidak diinisialisasi.

Diintervensi oleh sistem operasi atau operator, Untuk suatu alasan,

operator atau sistem operasi mengakhiri proses (terjadi deadlock)

13

Page 14: Deskripsi Dan Kontrol Proses Kelompok 2

Berakhirnya proses induk, Ketika parent berakhir, sistem operasi

mungkin dirancang secara otomatis mengakhiri semua anak proses dari

parent itu.

Atas permintaan dari proses induk Parent process biasanya mempunyai

otoritas mengakhiri suatu anak proses.

3. PENUNDAAN PROSES dan PELANJUTAN KEMBALI PROSES

Penundaan (suspend) adalah operasi penting dan telah diterapkan dengan

beragam cara. Penundaan biasanya berlangsung singkat. Penundaan sering

dilakukan sistem untuk memindahkan proses-proses tertentu guna mereduksi

beban sistem selama beban puncak.

Proses yang ditunda (suspended blocked) tidak berlanjut sampai proses lain

meresume. Untuk jangka panjang, sumber daya-sumber daya proses

dibebaskan. Keputusan membebaskan sumber daya-sumber daya bergantung

sifat masing-masing sumber daya. Memori utama seharusnya segera

dibebaskan begitu proses tertunda agar dapat dimanfaatkan proses lain.

Resuming (pengaktifan kembali) proses, yaitu menjalankan proses dari titik

(instruksi) dimana proses ditunda.

Operasi suspend dan resume penting, sebab :

Jika sistem berfungsi secara buruk dan mungkin gagal maka proses-

proses

dapat disuspend agar diresume setelah masalah diselesaikan. Contoh :

Pada proses pencetakan, bila tiba-tiba kerta habis maka proses disuspend.

Setelah kertas dimasukkan kembali, proses pun dapat diresume.

Pemakai yang ragu/khawatir mengenai hasil proses dapat mensuspend

proses (bukan membuang / abort proses). Saat pemakai yakin proses akan

berfungsi secara benar maka dapat me-resume (melanjutkan kembali di

instruksi saat disuspend) proses yang disuspend.

Sebagai tanggapan terhadap fluktuasi jangka pendek beban sistem,

beberapa proses dapat disuspend dan diresume saat beban kembali ke

tingkat normal. Gambar berikut menunjukkan modifikasi diagram state

dengan memasukkan kejadian suspend dan resume.

14

Page 15: Deskripsi Dan Kontrol Proses Kelompok 2

Gambar 4 . Diagram lima state pro s es

Dua state baru dimasukkan sehingga membentuk diagram 5 state, yaitu :

Suspended ready

Suspended blocked

Penundaan dapat diinisialisasi oleh proses itu sendiri atau proses lain.

Pada sistem monoprocessor, proses running dapat mensuspend dirinya

sendiri karena tak ada proses lain yang juga running yang dapat

memerintahkan suspend.

Pada sistem multiprocessor, proses running dapat disuspend proses

running lain pada pemroses berbeda. Proses ready hanya dapat di

suspend oleh proses lain.

Pada proses blocked terdapat transisi menjadi suspended blocked. Pilihan ini

dirasa aneh. Apakah tidak cukup menunggu selesainya operasi

masukan/keluaran atau kejadian yang membuat proses ready atau suspended

ready?. Bukankah state blocked, ready blocked, suspended blocked sama-sama

tidak mendapat jatah waktu pemroses ?. Kenapa dibedakan ?.

Alasannya, karena penyelesaian operasi masukan/keluaran bagi proses blocked

mungkin tak pernah terjadi atau dalam waktu tak terdefinisikan sehingga lebih

baik disuspend agar sumber daya-sumber daya yang dialokasikan untuk proses

tersebut dapat digunakan proses-proses lain. Untuk kondisi ini, lebih baik

sumber daya-sumber daya yang dipegang proses yang berkondisi seperti ini

15

Page 16: Deskripsi Dan Kontrol Proses Kelompok 2

dipakai proses-proses lain. Proses blocked disuspend sistem atau secara

manual menjadi suspended blocked. Bila akhirnya operasi masukan/keluaran -

berakhir maka segera proses suspended blocked mengalami transisi.

Karena resume dan suspend mempunyai prioritas tinggi maka transisi segera

dilakukan. Suspend dan resume dapat digunakan untuk menyeimbangkan

beban sistem saat mengalami lonjakan di atas normal.

4. Pengubahan Prioritas Proses

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 dapat

memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada

proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi

menaikkan nilai prioritasnya).

5. Menjadwalkan Proses

Merupakan kumpulan kebijaksanaan didalam sitem operasi yang berkaitan

dengan urutan kerja yang dilakukan sistem computer, penjadwalan juga

bertugas untuk memutuskan :

- Proses yang harus berjalan

- Kapan dan berapa lama proses berjalan.

Multiprogramming bertujuan untuk memaksimalkan penggunaan CPU dengan

cara mengatur alokasi waktu yang digunakan oleh CPU, sehingga proses

berjalan sepanjang waktu dan memperkecil waktu idle.

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

16

Page 17: Deskripsi Dan Kontrol Proses Kelompok 2

• Ready Queue. Sedangkan proses-proses yang ada di memori utama dan

menunggu untuk dieksekusi diletakkan pada suatu list yang disebut dengan

ready queue. Pada antrian ini berisi

• 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. Gambar 5.1

menunjukkan contoh ready queue dan device queue. Representasi dari

penjadwalan proses dapat dilihat pada Gambar 5.2.

Gambar 5.1: Ready queue dan device queue

17

Page 18: Deskripsi Dan Kontrol Proses Kelompok 2

Gambar 5.2: representasi penjadwalan proses

A. Penjadwal (Scheduler)

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.

6. MEMUNGKINKAN PROSES BERKOMUNIKASI DENGAN PROSES LAIN

Sebelumnya kita telah ketahui seluk beluk dari suatu proses mulai dari

pengertiannya, cara kerjanya, sampai operasi-operasinya seperti proses

pembentukannya dan proses pemberhentiannya setelah selesai melakukan

eksekusi. Kali ini kita akan mengulas bagaimana hubungan antar proses dapat

berlangsung, misal bagaimana beberapa proses dapat saling berkomunikasi dan

bekerja-sama.

A Proses yang Kooperatif

Proses yang bersifat simultan (concurrent) dijalankan pada sistem operasi

dapat dibedakaan menjadi yaitu proses independent dan proses kooperatif.

Suatu proses dikatakan independen apabila proses tersebut tidak dapat

terpengaruh atau dipengaruhi oleh proses lain yang sedang dijalankan pada

sistem.

18

Page 19: Deskripsi Dan Kontrol Proses Kelompok 2

Berarti, semua proses yang tidak membagi data apa pun (baik sementara/

tetap) dengan proses lain adalah independent. Sedangkan proses kooperatif

adalah proses yang dapat dipengaruhi atau pun terpengaruhi oleh proses

lain yang sedang dijalankan dalam sistem. Dengan kata lain, proses

dikatakan kooperatif bila proses dapat membagi datanya dengan proses lain.

Ada empat alasan untuk penyediaan sebuah lingkungan yang

memperbolehkan terjadinya proses kooperatif:

1.Pembagian informasi: apabila beberapa pengguna dapat tertarik pada

bagian informasi yang sama (sebagai contoh, sebuah berkas bersama), kita

harus menyediakan sebuah lingkungan yang mengizinkan akses secara

terus menerus ke tipe dari sumber-sumber tersebut.

2.Kecepatan penghitungan/ komputasi: jika kita menginginkan sebuah tugas

khusus untuk menjalankan lebih cepat, kita harus membagi hal tersebut ke

dalam subtask, setiap bagian dari subtask akan dijalankan secara parallel

dengan yang lainnya.

Peningkatan kecepatan dapat dilakukan hanya jika komputer tersebut

memiliki elemen-elemen pemrosesan ganda (seperti CPU atau jalur I/O).

3.Modularitas: kita mungkin ingin untuk membangun sebuah sistem pada

sebuah model modular-modular, membagi fungsi sistem menjadi beberapa

proses atau threads.

4.Kenyamanan: bahkan seorang pengguna individu mungkin memiliki

banyak tugas untuk dikerjakan secara bersamaan pada satu waktu. Sebagai

contoh, seorang pengguna dapat mengedit, memcetak, dan meng-compile

secara paralel.

B Komunikasi Proses Dalam Sistem

Cara lain untuk meningkatkan efek yang sama untuk sistem operasi yaitu

untuk menyediakan alat-alat proses kooperatif untuk berkomunikasi dengan

yang lain lewat sebuah komunikasi dalam proses (IPC = Inter-Process

Communication). IPC menyediakan sebuah mekanisme untuk mengizinkan

proses- proses untuk berkomunikasi dan menyelaraskan aksi-aksi mereka

tanpa berbagi ruang alamat yang sama. IPC adalah khusus digunakan

19

Page 20: Deskripsi Dan Kontrol Proses Kelompok 2

dalam sebuah lingkungan yang terdistribusi dimana proses komunikasi

tersebut mungkin saja tetap ada dalam komputer-komputer yang berbeda

yang tersambung dalam sebuah jaringan. IPC adalah penyedia layanan

terbaik dengan menggnakan sebuah sistem penyampaian pesan, dan

sistem- sistem pesan dapat diberikan dalam banyak cara.

C Sinkronisasi

Komunikasi antara proses membutuhkan place by calls untuk mengirim dan

menerima data primitive. Terdapat rancangan yang berbeda-beda dalam

implementasi setiap primitive. Pengiriman pesan mungkin dapat diblok

(blocking) atau tidak dapat dibloking (nonblocking) - juga dikenal dengan

nama sinkron atau asinkron.

Pengiriman yang diblok: Proses pengiriman di blok sampai pesan

diterima oleh proses penerima (receiving process) atau oleh mailbox.

Pengiriman yang tidak diblok: Proses pengiriman pesan dan

mengkalkulasi operasi.

Penerimaan yang diblok: Penerima mem blok samapai pesan

tersedia.

Penerimaan yang tidak diblok: Penerima mengembalikan pesan valid

atau null.

D Buffering

Baik komunikasi itu langsung atau tak langsung, penukaran pesan oleh

proses memerlukan antrian sementara. Pada dasarnya, terdapat tiga jalan

dimana antrian tersebut diimplementasikan:

Kapasitas nol (zero capacity): antrian mempunyai panjang maksimum

0, maka link tidak dapat mempunyai penungguan pesan (message

waiting). Dalam kasus ini, pengirim harus memblok sampai penerima

menerima pesan.

Kapasitas terbatas (Bounded capacity): antrian mempunyai panjang

yang telah ditentukan, paling banyak n pesan dapat dimasukkan. Jika

antrian tidak penuh ketika pesan dikirimkan, pesan yang baru akan

menimpa, dan pengirim pengirim dapat melanjutkan eksekusi tanpa

20

Page 21: Deskripsi Dan Kontrol Proses Kelompok 2

menunggu. Link mempunyai kapasitas terbatas. Jika link penuh,

pengirim harus memblok sampai terdapat ruang pada antrian.

Kapasitas tak terbatas(Unbounded capacity): antrian mempunyai

panjang yang tak terhingga, maka, semua pesan dapat menunggu

disini. Pengirim tidak akan pernah di blok

TABEL-TABEL PROSES

Tiap proses mempunyai state yang perlu diperhatikan sistem operasi yang dicatat

dalam beragam tabel atau senarai yang saling berhubungan, yaitu :

A Tabel informasi manajemen memori, Untuk menjaga keutuhan memori

utama dan memori sekunder yang menyimpan informasi tentang :

Alokasi memori utama yang dipakai proses.

Alokasi memori sekunder yang dipakai proses (menggunakan

manajemen memori dengan swapping).

Atribut segmen memori utama dan sekunder.

Informasi-informasi lain yang digunakan untuk pengelolaan memori.

B Tabel informasi manajemen masukan/keluaran, Untuk mengelola perangkat

masukan/keluaran, dimana perangkat tersebut digunakan proses tertentu,

sehingga perlu dijaga agar proses lain tidak memakainya. Sistem operasi

perlu mengetahui status operasi masukan/keluaran dan lokasi memori

utama yang digunakan untuk transfer data.

C Tabel informasi sistem file, Berisi informasi mengenai ekstensi file, lokasi

pada memori sekunder, status saat itu dan menyimpan atribut-atribut file

lainnya.

D Tabel proses, Untuk mengelola informasi proses di sistem operasi, lokasinya

di memori, status dan atribut proses lainnya.

Proses ditempatkan di memori utama di lokasi tertentu, proses mempunyai satu

ruang alamat tersendiri. Ruang alamat yang digunakan proses disebut citra proses

(process image), karena selain seluruh kode biner program, proses ditambahi

21

Page 22: Deskripsi Dan Kontrol Proses Kelompok 2

atribut-atribut lain yang berkaitan penempatannya pada suatu lokasi memori dan

status eksekusi pada saat itu.

Elemen-elemen citra proses, sebagai berikut

ELEMEN CITRAPROSES KETERANGAN

Data pemakai Bagian yang dapat memodifikasi berupa data

program, daerah stack pemakai.

Program pemakai Program biner yang dieksekusi.

Stack system Digunakan untuk menyimpan parameter dan alamat pemanggilan untuk prosedur dan system calls

PCB (Program Control Block) Berisi informasi yang diperlukan oleh sistem operasi dalam mengendalikan proses

Struktur umum tabel-tabel kendali ditunjukkan pada gambar berikut :

Gambar 6 : Struktur tabel-tabel kendali pada sistem operasi

22

Page 23: Deskripsi Dan Kontrol Proses Kelompok 2

BAB III PENUTUP

3.1 Kesimpulan

Dengan membaca makalah ini, maka dapat disimpulkan :

1) Proses adalah program dalam eksekusi. Proses lebih dari sekedar kode

program yang kadang-kadang dikenal sebagai bagian teks. Seperti nilai dari

program counter dan isi dari register prosesor.

2) Mengetahui penjelasan tentang proses state.

3) Mengetahui model dari eksekusi proses.

23