Prinsip Konkurensi : Syarat Mutual Exclusion Konsep Pemrograman

Catatan kuliah Real-Time Programming Jurusan Teknik Elektro Unsoed Acep TaryanaMay-2015 Halaman 4 II Konsep Pemrograman Real-Time Prasyarat : Sebaiknya telah memahami tentang pengertian Proses, keadaan proses new, running, blocked, exit, perpindahan keadan proses, eksekusi proses, berjalannya instruksi dalam proses atomik atau primitif, deadlock, starvation, multiprocessing. Salah satu karakteristik sistem real-time adalah adanya proses yang berjalan secara konkuren, dengan processor yang terbatas. Untuk berebut processor task-task tersebut diatur oleh scheduler. Konkurensi merupakan landasan bagi tiga tema pokok yaitu multiprogramming, multiprocessing dan distributed processing, salah satu ketiga tema pokok akan terjadi dalam sistem real-time. Sejumlah proses akan disebut konkuren jika proses-proses tersebut berada pada saat yang sama dan harus berbagi sumber daya global secara bergantian. Konkurensi dapat muncul pada tiga konteks yang berbeda, yaitu :  Banyak aplikasi multiple application.  Waktu pemrosesan komputer dibagi shared secara dinamis diantara sejumlah job atau aplikasi yang aktif.  Aplikasi terstruktur. Aplikasi diimplementasikan sebagai sekumpulan proses yang konkuren.  Struktur sistem operasi. Sistem operasi diimplementasikan sebagai kumpulan proses.

II.1 Prinsip Konkurensi :

1. Mutex Critical section. Mutual exclusion adalah suatu kondisi dimana ada sekumpulan proses yang konkuren, tetapi hanya satu dari proses-proses konkuren tersebut yang diperbolehkan untuk menggunakan sumber daya yang dibutuhkannya. Mutex terjadi karena adanya sumber daya yang tidak dapat digunakan secara bersamaan, seperti printer. Sumber daya ini disebut sumber daya kritis. Bagian proses yang menggunakan sumber daya kritis disebut memasuki seksi kritis critical section. 2. Sinkronisasi 3. Inter-Proses dan Komunikasi IPC Ketika terjadi konkurensi, maka proses – proses akan saling bersaing atau berkompetisi untuk mendapatkan sumber daya

II.2 Syarat Mutual Exclusion

 Algoritma harus menjamin bahwa hanya ada satu proses yang ada di seksi kritis.  Proses yang ada di luar seksi kritis dilarang menghambat blocked proses lain yang akan masuk seksi kritis.  Proses yang ingin masuk seksi kritis harus dijamin tidak menunggu selama waktu yang tidak terhingga proses tidak mengalami deadlock atau starvation.  Ketika tidak ada proses di seksi kritis, proses yang akan masuk seksi kritis harus diijinkan tanpa waktu tunda  Tidak ada asumsi mengenai kecepatan relatif proses atau jumlah proses yang ada.  Proses berada di seksi kritis hanya selama waktu yang berhingga.

II.3 Konsep Pemrograman

II.3.1 Pengertian : Pembuatan program yang disusun sedemikian rupa sehingga tercipta banyak proses yang berjalan secara bersama-sama pada suatu saat yang memungkinkan terjadinya shared variabel global, shared sumber daya global, komunikasi antar proses tersebut melalui pengiriman pesan message passing dan sinkronisasi antar proses. II.3.2 Ciri Program  Adanya event-driven.  Banyak proses yang berjalan secara bersama-sama.  Ada mekanisme pengaturan blocking proses melalui pendekatan : seksi kritis mutex dan sinkronisasi. Catatan kuliah Real-Time Programming Jurusan Teknik Elektro Unsoed Acep TaryanaMay-2015 Halaman 5

II.4 Syarat Program