Anda di halaman 1dari 21

MAKALAH SISTEM OPERASI

“KONKURENSI”

Di Susun Kelompok 4 :

Wawan Wijanarko ( G.131.17.0030 )

Elsa Sofiyatun N. ( G.131.17.0029 )

Anastasia Desi Adelia P. ( G.131.17.0005 )

Fahrul Fuad Zain ( G.131.17.0036 )

FAKULTAS TEKNOLOGI INFORMASI DAN KOMUNIKASI


USM (UNIVERSITAS SEMARANG)
SEMARANG
2018

Sistem Operasi - USM (Universitas Semarang) 1


KATA PENGANTAR

Puji syukur kepada Allah SWT atas segala limpahan rahmat-Nya yang telah
memberikan pengetahuan, kesehatan, dan kesempatan bagi kami untuk dapat
menyelesaikan makalah ini.

Makalah ini di susun untuk di ajukan sebagai tugas kuliah berjudul


“Konkurensi”. Kami sangat berharap makalah ini dapat berguna dalam rangka
menambah wawasan serta pengetahuan kita. Kami juga menyadari sepenuhnya bahwa
di dalam makalah ini terdapat kekurangan dan jauh dari kata sempurna. Oleh sebab
itu, kami berharap adanya kritik, saran dan usulan demi perbaikan makalah yang telah
kami buat di masa yang akan datang, mengingat tidak ada sesuatu yang sempurna
tanpa saran yang membangun.

Semoga makalah sederhana ini dapat dipahami bagi siapapun yang


membacanya. Sekiranya laporan yang telah disusun ini dapat berguna bagi kami
sendiri maupun orang yang membacanya. Sebelumnya kami mohon maaf apabila
terdapat kesalahan kata-kata yang kurang berkenan dan kami memohon kritik dan
saran yang membangun demi perbaikan di masa depan.

Semarang, Maret 2018

Sistem Operasi - USM (Universitas Semarang) 2


DAFTAR ISI

Hal

Kata Pengantar .............................................................................................2

Daftar Isi ......................................................................................................3

BAB I PENDAHULUAN

A. Latar Belakang .................................................................................4


B. Rumusan Masalah ............................................................................4
C. Tujuan Penulisan ..............................................................................5

BAB II PEMBAHASAN

A. Pengertian Konkurensi .....................................................................6


B. Prinsip-prinsip Konkurensi ..............................................................6
C. Kesulitan-kesulitan yang ditimbulkan konkurensi ...........................7
D. Masalah Yang Muncul Pada Konkurensi .........................................9
E. Interaksi Antarproses Di Dalam Konkurensi .................................17
F. Kerjasama Diantara Proses-Proses Dengan Pemakaian Bersama
& Dengan Komunikasi ...................................................................18
G. Pokok Penyelesaian Masalah Dengan Kongkurensi ......................19

BAB III PENUTUP

A. Kesimpulan.....................................................................................20

DAFTAR PUSTAKA ...............................................................................21

Sistem Operasi - USM (Universitas Semarang) 3


BAB 1

PENDAHULUAN

A. Latar Belakang

Sistem operasi merupakan sebuah penghubung antara pengguna dari


komputer dengan perangkat keras komputer. Sebelum ada sistem operasi, orang
hanya mengunakan komputer dengan menggunakan sinyal analog dan sinyal
digital. Seiring dengan berkembangnya pengetahuan dan teknologi, pada saat ini
terdapat berbagai sistem operasi dengan keunggulan masing-masing. Untuk lebih
memahami sistem operasi maka sebaiknya perlu diketahui terlebih dahulu
beberapa konsep dasar mengenai sistem operasi itu sendiri.
Pengertian sistem operasi secara umum ialah pengelola seluruh sumber-
daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan
(system calls) ke pemakai sehingga memudahkan dan menyamankan penggunaan
serta pemanfaatan sumber-daya sistem komputer.

B. Rumusan Masalah

Berdasarkan latar belakang masalah diatas, masalah-masalah yang akan dibahas


dapat dirumuskan sebagai berikut :

1. Apakah yang dimaksud dengan Konkurensi ?


2. Apa sajakah masalah yang terdapat di dalam Konkurensi ?
3. Apa sajakah prinsip-prinsip yang terdapat di dalam Konkurensi ?
4. Apa sajakah kesulitan yang ditimbulkan oleh Konkurensi ?
5. Bagaimanakah interaksi antarproses di dalam Konkurensi ?
6. Bagaimanakah kerja sama di antara proses-proses dengan pemakaian
bersama dan dengan komunikasi ?
7. Bagaimanakah pokok penyelesaian masalah dengan kongkurensi ?

Sistem Operasi - USM (Universitas Semarang) 4


C. Tujuan Penulisan
1. Mengetahui yang dimaksud dengan Konkurensi.
2. Mengetahui masalah yang terdapat di dalam Konkurensi.
3. Mengetahui prinsip-prinsip yang terdapat di dalam Konkurensi.
4. Mengetahui kesulitan yang ditimbulkan oleh Konkurensi.
5. Mengetahui interaksi antarproses di dalam Konkurensi.
6. Mengetahui kerja sama di antara proses-proses dengan pemakaian bersama
dan dengan komunikasi.
7. Mengetahui pokok penyelesaian masalah dengan kongkurensi.

Sistem Operasi - USM (Universitas Semarang) 5


BAB II
PEMBAHASAN

A. Pengertian Konkurensi
Konkurensi merupakan landasan unum perancangan sistem operasi.
Proses-proses disebut konkuren jika proses-proses berada pada saat yang
sama. Pada proses-proses konkuren yang berinteraksi mempunyai beberapa
masalah yang harus diselesaikan:
1. Mutual Exclusion
2. Sinkronisasi
3. Deadlock
4. Startvation

B. Prinsip-prinsip Konkurensi
Konkurensi meliputi hal-hal sbb:
 Alokasi waktu pemroses untuk proses-proses
 Pemakaian bersama dan persaingan untuk mendapatkan sumber daya
 Komunikasi antarproses
 Sinkronisasi aktivitas banyak proses.

Konkurensi dapat muncul pada konteks berbeda, antara lain:


 Banyak aplikasi (multiple application).

Multiprogramming memungkinkan banyak proses sekaligus dijalankan.


Proses-proses dapat berasal dari aplikasi-aplikasi berbeda. Pada system
multiprogramming bisa terdapat banyak aplikasi sekaligus yang
dijalankan di system komputer.

 Aplikasi terstruktur.

Perluasan prinsip perancangan modular dan pemrograman terstruktur


adalah suatu aplikasi dapat secara efektif diimplementasikan sebagai
sekumpulan proses. Dengan sekumpulan proses, maka tiap proses
menyediakan satu layanan spesifik tertentu.

Sistem Operasi - USM (Universitas Semarang) 6


 Struktur sistem operasi.

Keunggulan strukturisasi dapat jauga diterapkan ke pemrograman sistem.


Beberapa sistem operasi aktual yang dipasarkan dan yang sedang dalam
riset telah diimplementasikan sebagai sekumpulan proses. Sistem operasi
bermodelkan client/server menggunakan pendekatan ini.

 Untuk Strukturisasi Satu Proses.

Saat ini untuk peningkatan kinerja maka satu proses dapat memiliki
banyak thread yang independen. Thread-thread tersebut harus dapat
bekerjasama untuk mencapai tujuan proses.

Interaksi Antar Proses. Pada sistem dengan banyak proses (kongkuren),


terdapat 2 katagori interaksi, yaitu:

1. Proses-proses Saling Tidak Peduli (Independen).

Proses-proses ini tidak dimaksudkan untuk bekerja untukmencapai tujuan


tertentu. Pada multiprogramming dengnaproses-proses independen, dapat
berupa batch atau sesiinteraktif, atau campuran keduanya.

2. Proses-proses Saling Mempedulikan Secara Tidak Langsung.

Proses-proses tidak perlu saling mempedulikan identitas proses-proses


lain, tapi sama-sama mengakses objek tertentu, seperti buffer
masukan/keluaran. Proses-proses itu perlu bekerja sama (cooperation)
dalam memakai bersama objek tertentu.

C. Kesulitan-kesulitan yang ditimbulkan konkurensi


Masalah yang dihadapi proses-proses kongkurensi pada
multiprogramming dan multiprocessing serupa, yaitu: kecepatan eksekusi
proses-proses di sistem tidak dapat diprediksi. Beberapa kemungkinan yang
terjadi tidak dapat diprediksi seperti:
1. Kecepatan proses pada sistem tergantung pada beberapa hal, antara lain:
 Aktivitas proses-proses lain
 Cara sistem operasi menangani interupsi
 Kebijaksanaan penjadwalan yang dilakukan oleh sistem operasi.

Sistem Operasi - USM (Universitas Semarang) 7


2. Beberapa kesulitan yang dapat muncul, di antaranya adalah:
 Pemakaian bersama sumber daya global.
Jika dua proses menggunakan variabel global yang sama, serta
keduanya membaca dan menulis variabel itu maka urutan terjadinya
pembacaan dan penulisan terhadap variabel itu menjadi kritis.

 Pengelolaan alokasi sumber daya agar optimal


Jika proses A meminta suatu kanal masukan/keluaran tertentu dan
dapat terjadi kemudian proses A di suspend sebelum menggunakan
kanal itu. Jika sistem operasi mengunci kanal tersebut dan orang lain
tidak dapat menggunakannya, maka akan terjadi inefisiensi.

 Pencarian kesalahan pemrograman.


Pencarian kesalahan pada pemrograman kongkuren lebih sulit
dibanding pencarian kesalahan pada program-program sekuen.

3. Proses-proses konkuren mengharuskan beberapa hal yang harus ditangani,


antara lain:
 Sistem operasi harus mengetahui proses-proses yang aktif
 Sistem operasi harus mengalokasikan dan mendealokasikan beragam
sumber daya untuk tiap proses aktif. Sumber daya yang harus
dikelola, antara lain:
- Waktu pemroses.
- Memori
- Berkas-berkas
- Peralatan-peralatan masukan/keluaran
- Dan sebagainya
 Sistem operasi harus memproteksi data dan sumber daya fisik
masing-masing proses dari gangguan proses-proses lain.
 Hasil-hasil proses harus independen terhadap kecepatan relatif proses-
proses lain dimana eksekusi dilakukan.

Sistem Operasi - USM (Universitas Semarang) 8


4. Pokok Penyelesaian Masalah Kongkurensi
Pada dasarnya penyelesaian masalah kongkurensi terbagi menjadi 2, yaitu:
- Mengasumsikan adanya memori yang digunakan bersama
- Tidak mengasumsikan adanya memori yang digunakan bersama.

Adanya memori bersama lebih memudahkan penyelesaian masalah


kongkurensi.
Metode memori bersama dapat dipakai untuk singleprocessor ataupun
multiprocessor yang mempunyai memori bersama.
Penyelesaian ini tidak dapat digunakan untuk multiprocessor tanpa
memori bersama atau untuk sistem tersebar.

D. Masalah Yang Muncul Pada Konkurensi

1. Mutual Exclusion
Mutual exclusion adalah jaminan hanya satu proses yang mengakses
sumber daya pada satu interval waktu tertentu. Sumber daya yang tidak
dapat dipakai bersama pada saat bersamaan.
Sering terjadi pada peralatan pencetakan (printer). Daemon printer
adalah proses yang melakukan penjadwalan dan pengendalian pencetakan
berkas-berkas di printer. Ruang disk ini disebut direktori spooler.
Direktori spooler membagi disk menjadi sejumlah slot. Slot-slot diisi
berkas yang akan dicetak. Terdapat variabel in yang menunjuk slot bebas
pada ruang disk yang akan dipakai untuk menyimpan berkas yang ingin
dijadwalkan untuk dicetak. Bagian program yang sedang mengakses
memory atau sumber daya yang dipakai bersama disebut critical section.
Jika proses pada critical section memblokir proses-proses lain dalam
antrian, maka akan terjadi startvation dan deadlock.
Kesuksesan proses-proses konkurensi memerlukan pendefinisian
critical section dan memaksakan mutual exclusion di antara proses-proses
konkuren yang sedang berjalan. Pemaksaan mutual exclusion merupakan
landasan pemrosesan konkuren. Fasilitas atau kemampuan menyediakan
dukungan mutual exclusion harus memenuhi kriteria sbb:

Sistem Operasi - USM (Universitas Semarang) 9


 Mutual exclusion harus dijamin, bahwa tidak ada proses lain, kecuali
dirinya sendiri. Di sini terjadi proses tunggal.
 Proses yang berada di noncritical section, dilarang mem-blocked
proses-proses lain yang ingin masuk critical section. Hal ini bisa
terjadi startvation.
 Harus dijamin bhwa proses yang ingin masuk critical section tidak
menunggu selama waktu yang tak terhingga. Ini bisa mengakibatkan
masalah deadlock dan antrian proses bertambah panjang.
 Ketika tidak ada proses pada critical section, maka proses yang ingin
masuk critical section harus ijinkan masuk tanpa waktu tunda.
 Tidak ada asumsi mengenai kecepatan relatif proses atau jumlah yang
ada.
 Proses hanya tinggal pada critical section selama satu waktu yang
berhingga

Beberapa metode yang diusulkan untuk menjamin Mutual Exclusion,


antara lain:
 Metode Variable Lock
Locking adalah salah satu mekanisasi pengontrol konkuren. Konsep
dasar pada saat suatu transaksi memerlukan jaminan kalau record
yang diinginkan tidak akan berubah secara mendadak, maka
diperlukan kunci untuk record tersebut. Fungsi kunci (lock) adalah
menjaga record tersebut agar tidak dimodifikasi transaksi lain.

Cara kerja dari kunci :


1. Pertama kita asumsikan terdapat 2 macam kunci :
- Kunci X : kunci yang eksklusif.
- Kunci S : kunci yang digunakan bersama-sama.
2. Jika transaksi A menggunakan kunci X pada record R, maka
permintaan dari transaksi B untuk suatu kunci pada R ditunda, dan B
harus menungggu sampai A melepaskan kunci tersebut.
3. Jika transaksi A menggunakan kunci S pada record R, maka :\

Sistem Operasi - USM (Universitas Semarang) 10


a. Bila transaksi B ingin menggunakan kunci X, maka B harus
menunggu sampai A melepaskan kunci tersebut.
b. Bila transaksi B ingin menggunakan kunci S, maka B dapat
menggunakan kunci S bersama A.
Tabel Kunci

4. Bila suatu transaksi hanya melakukan pembacaan saja, secara


otomatis ia memerlukan kunci S 􀃆 baca (S).
Bila transaksi tersebut ingin memodifikasi record maka secara
otomatis ia memerlukan kunci X 􀃆 memodifikasi (X).
Bila transaksi tersebut sudah menggunakan kunci S, setelah itu ia
akan memodifikasi record, maka kunci S akan dinaikan ke level kunci
X.
5. Kunci X dan kunci S akan dilepaskan pada saat synchpoint
(synchronization point). Synchpoint menyatakan akhir dari suatu
transaksi dimana basis data berada pada state yang konsisten. Bila
synchpoint ditetapkan maka :
- Semua modifikasi program menjalankan operasi commit atau
rollback.
- Semua kunci dari record dilepaskan.

Metode ini sederhana ketika proses masuk critical section lebih


dahulu
memeriksa variable lock.
- Jika variable lock bernilai 0, proses men-set variable locknya
menjadi 1 kemudian masuk ke dalam critical section.
- Jika variable lock bernilai 1, maka proses menunggu sampai nilai
variable lock nya menjadi 0.

Sistem Operasi - USM (Universitas Semarang) 11


Metode ini tidak menjamin proses tidak masuk critical section yang
telah dimasuki proses lain.
- Metode bergantian secara ketat
Metode ini mengasumsikan dapat mengalir masuk critical section
secara bergantian terus-menerus. Metode ini melakukan refleksi
terhadap variabel yang berfungsi untuk memenuhi critical
section.

2. Sinkronisasi

Latar Belakang :
- Akses-akses yang dilakukan secara bersama-sama ke data yang sama,
dapat menyebabkan data menjadi tidak konsisten.
- Untuk menjaga agar data tetap konsisten, dibutuhkan mekanisme-
mekanisme untuk memastikan pemintaan ekseskusi dari proses yang
bekerja.
- Race Condition: Situasi dimana beberapa proses mengakses dan
memanipulasi data secara bersamaan. Nilai terakhir dari data
bergantung dari proses mana yang selesai terakhir.
- Untuk menghindari Race Condition, proses-proses secara bersamaan
harus disinkronisasikan.

Problem Klasik pada Sinkronisasi

Ada tiga hal yang selalu memjadi masalah pada proses sinkronisasi:

1. Problem Bounded buffer.


2. Problem Reades and Writer.
3. iii.Problem Dining Philosophers.

3. Deadlock
Deadlock adalah suatu kondisi dimana dua proses atau lebih tidak
dapat meneruskan eksekusinya oleh pemroses. Pada umumnya deadlock
terjadi karena proses mengalami startvation, yaitu suatu job yang sedang
dieksekusi dan eksekusi job tersebut tidak ada hentinya, tidak diketahui
kapan berhentinya proses tersebut atau bahkan job yang antri bisa
dikatakan mempunyai status mati, padahal proses-proses lain sedang
menunggu sumber daya proses.
Deadlock merupakan kondisi terparah karena banyak proses dapat
terlibat dan semuanya tidak dapat mengakhiri prosesnya secara benar.

Sistem Operasi - USM (Universitas Semarang) 12


a. Resource
Sistem operasi di sini berperan sebagai pengatur berbagai tipe
resource yang berlainan, krena pada dasarnya proses-proses
maupun job-job tersebut ingin mengakses resource yang sama.
Shareable resource misalnya printer, tape drive.

b. Karakteristik Deadlock
Kondisi yang dapat menimbulkan terjadinya deadlock:
1. Mutual exclusion. Apabila proses telah menggunakan suatu
resource, mka tidak boleh ada proses lain yang menggunakan
resource tsb. Hanya satu proses yang dapat menggunakan sebuah
resource pada satu waktu.
2. Hold & Wait. Pada suatu proses sedang mengakses suatu
resource, proses tsb dapat meminta ijin untuk mengakses
resource lain yang dipakai oleh proses lain.
3. No Preemption. Jika suatu proses meminta ijin untuk mengakses
resource, sementara resource tersebut tidak tersedia, maka
permintaan ijin tidak dapat dibatalkan.
4. Circular Wait Condition. Jika proses P0 sedang mengakses
Resource R1 dan minta ijin untuk mengakses resource R1 dan
minta ijin untuk mengakses resource R2, dan pada saat yang
bersamaan P1 sedang mengakses resource R2 dan mint ijin untuk
mengakses R1.

c. Metode Mengendalikan Deadlock


1. Menggunakan suatu protokol untuk meyakinkan bahwa sistem
tidak akan pernah mengalami deadlock.
2. Mengijinkan sistem mengalami deadlock, namun kemudian harus
segera dapat memperbaikinya.
3. Mengabaikan semua masalah dan menganggap deadlock tidak
akan pernah terjadi lagi di dalam sistem.

Sistem Operasi - USM (Universitas Semarang) 13


d. Strategi untuk menghadapi deadlock dapat dibagi menjadi tiga
pendekatan, yaitu:
 Mengabaikan adanya deadlock.
 Memastikan bahwa deadlock tidak akan pernah ada, baik
dengan metode Pencegahan, dengan mencegah empat kondisi
deadlock agar tidak akan pernah terjadi. Metode Menghindari
deadlock, yaitu mengizinkan empat kondisi deadlock, tetapi
menghentikan setiap proses yang kemungkinan mencapai
deadlock.
 Membiarkan deadlock untuk terjadi, pendekatan ini
membutuhkan dua metode yang saling mendukung, yaitu:
- Pendeteksian deadlock, untuk mengidentifikasi ketika
deadlock terjadi.
- Pemulihan deadlock, mengembalikan kembali sumber daya
yang dibutuhkan pada proses yang memintanya.

e. Pencegahan Deadlock
1. Mutual exclusion.
Harus tetap menjaga resource-resource yang bersifat non-
shareable. Yaitu, proses menahan sebuah resource, proses lain
yang meminta resource tsb harus menunggu sampai proses
melepaskannya. Jika terjadi pada perangkat I/O dan berkas, maka
sulit untuk menghindari mutual exclusion pada sumber daya non
shareable.
2. Hold & Wait.
Apabila suatu proses minta ijin untuk mengakses suatu resource,
maka proses tersebut tidak boleh membawa resource yang
lainnya. Sebleum proses meminta resource, maka harus melepas
semua resource yang dibawa.

3. Non Preemption.

Sistem Operasi - USM (Universitas Semarang) 14


Jika suatu proses minta ijin mengakses resource, sementara
resource tersebut tidak dapat dipenuhi secepatnya, maka proses
tersebut harus membebaskan semua resourcenya terlebih dahulu.
4. Circular Wait.
Memberi nomor pada setiap resource yang ada, dan setiap
resource hanya boleh mengakses resource2 secara berurutan.
5. Untuk menghindari deadlock ikuti prinsip preemptive.

f. Mendeteksi Deadlock dan Memulihkan Deadlock


Metode ini mengunakan pendekatan dengan teknik untuk
menentukan apakah deadlock sedang terjadi serta proses-proses dan
sumber daya yang terlibat dalam deadlock tersebut. Setelah kondisi
deadlock dapat dideteksi, maka langkah pemulihan dari kondisi
deadlock dapat segera dilakukan. Langkah pemulihan tersebut adalah
dengan memperoleh sumber daya yang diperlukan oleh proses-proses
yang membutuhkannya. Beberapa cara digunakan untuk mendapatkan
sumber daya yang diperlukan, yaitu dengan terminasi proses dan pre-
emption (mundur) suatu proses. Metode ini banyak digunakan pada
komputer mainframe berukuran besar.

1. Terminasi Proses
Metode ini akan menghapus proses-proses yang terlibat pada
kondisi deadlock dengan mengacu pada beberapa syarat.
Beberapa syarat yang termasuk dalam metode ini adalah, sebagai
berikut:
- Menghapus semua proses yang terlibat dalam kondisi
deadlock (solusi ini terlalu mahal).
- Menghapus satu persatu proses yang terlibat, sampai kondisi
deadlock dapat diatasi (memakan banyak waktu).
- Menghapus proses berdasarkan prioritas, waktu eksekusi,
waktu untuk selesai, dan kedalaman dari rollback.

Sistem Operasi - USM (Universitas Semarang) 15


2. Resources Preemption
Metode ini lebih menekankan kepada bagaimana menghambat
suatu proses dan sumber daya, agar tidak terjebak pada unsafe
condition. Beberapa langkahnya, yaitu:
- Pilih salah satu - proses dan sumber daya yang akan di-
preempt.
- Rollback ke safe state yang sebelumnya telah terjadi.
- Mencegah suatu proses agar tidak terjebak pada starvation
karena metode ini

4. Startvation
Startvation adalah keadaan dimana pemberian akses bergantian terus
menerus, dan ada suatu proses yang tidak mendapatkan gilirannya. Juga
dapat dimaksudkan bahwa kondisi bila beberapa proses-proses menunggu
alokasi sumber daya sampai tak berhingga, sementara proses-proses lain
dapat memperoleh alokasi sumber daya.
Hal ini disebabkan bias pada kebijaksanaan atau strategi alokasi sumber
daya. Kondisi seperti ini harus dihindari pada sistem operasi karena tidak
adil, tapi dikehendaki penghindaran dilakukan seefisien mungkin.
Penanganan ini merupakan persoalan yang sulit untuk menemukan kriteria
yang benar, adil dan efesien dalam suatu strategi Sistem Operasi.

Perhatikan contoh berikut:


- terdapat tiga proses, P1, P2, dan P3.
- P1, P2 dam P3 memerlukan pengaksesan sumber daya R secara
periodik.

Skenario berikut terjadi:


- P1 sedang diberi sumber daya R, P2 dan P3 blocked menunggu
sumber daya R.
- Ketika P1 keluar dari critical section, P2 dan P3 diijinkan mengakses
R.

Sistem Operasi - USM (Universitas Semarang) 16


- Asumsi P3 diberi hak akses. Kemudian setelah selesai, hak akses
kembali diberikan ke P1 yang satu itu kembali membutuhkan sumber
daya R.

Jika pemberian hak akses bergantian terus menerus antara P1 dan P3,
maka P2 tidak pernah memperoleh pengaksesan sumber daya R, meski
tidak ada deadlock. Pada situasi ini, P2 mengalami situasi yang disebut
dengan startvation.

E. Interaksi Antarproses Di Dalam Konkurensi

Pada sistem dengan banyak proses (kongkuren), terdapat 3 katagori


interaksi antar proses berdasarkann derajat pengetahuan keberadaan proses
lainnya, yaitu:
1. Proses tidak saling mengetahui keberadaannya.
Proses seperti ini merupakan proses yang tidak dimaksudkan untuk
bekerjasama. Pada multiprogramming dengan proses-proses independen,
dapat berupa batch atau sesi interaktif, atau campuran keduanya.
Walaupun proses saling tidak melakukan kerjasama, sistem operasi perlu
memperhatikan kompetisi sumber daya. Misalnya dua aplikasi independen
dapat sama-sama menginginkan akses ke disk, file , atau printer yang
sama. Sistem operasi harus mengatur akses tersebut.
2. Proses mengetahui keberadaan proses lainnya secara tidak langsung.
Proses seperti ini adalah proses yang tidak harus saling mengetahui akan
keberadaan proses lainnya berdasarkan namanya namun memiliki akses
berbagi ke beberapa objek, misaslkan bufer I/O. Proses seperti itu
menunjukkan adanya kooperasi dalam melakukan berbagi pemakaian
ojek.
3. Proses mengetahui keberadaan proses lainnya secara langsung.
Proses-proses seperti ini adalah proses yang dapat berkomunikasi satu
dengan lainnya berdasarkan nama dan merupakan proses yang dirancang
untuk bekerja sama dalam melakukan aktivitas-aktivitas tertentu.
Demikian pula, proses seperti ini menunjukkan adanya kooperasi.

Sistem Operasi - USM (Universitas Semarang) 17


F. Kerjasama Diantara Proses-Proses Dengan Pemakaian Bersama &
Dengan Komunikasi

Dalam kasus kerjasama pemakaian sumber daya bersama meliputi


proses-proses yang saling berinteraksi tanpa dinyatakan secara eksplisit.
Contoh :
Banyak proses mengakses variabel atau berkas yang dipakai bersama. Proses-
proses dapat menggunakan dan memperbaharui data yang dipakai bersama
tanpa peduli proses-proses lain. Proses mengetahui bahwa proses-proses lain
dapat juga mengakses data yang sama. Proses-proses harus bekerja sama
untuk menjamin integritas data yang dipakai bersama tersebut.
Kerja sama di antara proses-proses dalam pemakaian bersama mempunyai
masalah (Mutual exclusion, Deadlock dan Starvation).
Sedangkan ketika proses-proses bekerja sama dengan komunikasi, beragam
proses berpartisipasi dalam suatu usaha dengan menghubungkan semua
proses. Komunikasi menyediakan cara untuk sinkronisasi atau koordinasi
beragam aktivitas.

Komunikasi dicirikan dengan berisi pesan-pesan dengan suatu urutan.


Primitif untuk mengirim dan menerima pesan disediakan kernel sistem
operasi. Karena tak ada sesuatu yang di pakai bersama di antara proses-proses
itu dalam melewatkan pesan-pesan, tak ada masalah mutual exclusion. Tetapi
masalah deadlock dan starvation dapat muncul.
Contoh :
Deadlock adalah dua proses menjadi Blocked dalam hal ini masing-masing
proses menjadi Blocked karena menunggu komunikasi dari proses lain. Kedua
proses saling menunggu komunikasi dari lainnya dan tidak dapat beranjak dari
kondisi ini.

Sistem Operasi - USM (Universitas Semarang) 18


G. Pokok Penyelesaian Masalah Dengan Kongkurensi

Pada dasarnya penyelesaian masalah kongkurensi terbagi menjadi 2, yaitu:


1. Mengasumsikan adanya memori yang digunakan bersama.
2. Tidak mengasumsikan adanya memori yang digunakan bersama.
Adanya memori bersama lebih memudahkan dalam penyelesaian masalah
konkurensi. Metode penyelesaian ini dapat dipakai untuk sistem
singleprocessor ataupun multiprocessor yang mempunyai memori bersama.
Penyelesaian ini tidak dapat digunakan untuk multiprocessor tanpa memori
bersama atau untuk sistem tersebar.

Sistem Operasi - USM (Universitas Semarang) 19


BAB III
PENUTUP

A. Kesimpulan

Konkurensi merupakan landasan umum perancangan sistem operasi.

Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama.

Dikatakan sebagai landasan umum perancangan sistem operasi karena dalam

menciptakan suatu sistem operasi, sistem operasi tersebut umumnya harus bisa

menjalankan beberapa proses (lebih dari satu proses) pada saat yang bersamaan.

Pada proses-proses yang konkuren atau berada pada saat yang bersamaan,

terdapat beberapa masalah yang harus diselesaikan yaitu ( Mutual exclusion,

Sinkronisasi, Deadlock dan Starvation ). Penyelesaian masalah kongkurensi

terbagi menjadi 2 yaitu Mengasumsikan adanya memori yang digunakan bersama

dan tidak mengasumsikan adanya memori yang digunakan bersama.

Adanya memori bersama lebih memudahkan dalam penyelesaian masalah

konkurensi. Metode penyelesaian ini dapat dipakai untuk sistem singleprocessor

ataupun multiprocessor yang mempunyai memori bersama.

Sistem Operasi - USM (Universitas Semarang) 20


DAFTAR PUSTAKA

Hariyanto, B.,"Sistem Operasi", Bandung: Informatika, Desember 1997

Sistem Operasi, SP Hariningsih, Penerbit Graha Ilmu 2003.

Sistem Operasi - USM (Universitas Semarang) 21

Anda mungkin juga menyukai