Penjelasan Kondisi Pacu (Race Condition) Pada Semafor Sistem Operasi
Cinanetworking.com - Assalamuallaikum Warahmatullahi Wabarakatuh, selamat datang kembali pembaca setia Cinta Networking dimana pun anda berada dan semoga selalau dalam keadaan sehat walafiat.
Pada kesempatan kali ini saya akan membagikan sebuah informasi mengenai pembahasan materi seputar komputer yaitu Penjelasan Kondisi Pacu (Race Condition) Pada Semafor Sistem Operasi yang perlu anda ketahui dam sebelumnya juga saya telah membahas mengenai Penjelasan Daerah Kr?t?? Mutual Ex?lu???n Pada Sistem Operasi.
Berikut Penjelasan Kondisi Pacu (Race Condition) Pada Semafor Sistem Operasi
![]() |
| Kondisi Pacu (Race Condition) - Cintanetworking.com |
Semafor ?d?l?h sebuah ?truktur d?t? komputer ??ng d?gun?k?n untuk ??nkr?n????? ?r????, yaitu untuk m?m???hk?n masalah d? m?n? l?b?h d?r? ??tu ?r???? ?t?u thread d?j?l?nk?n ????r? b?r??m??n d?n harus diatur urut?n k?rj?n??. Semafor d???tu?k?n ?l?h Ed?g?r Dijkstra d?n ??rt?m? digunakan d?l?m ???t?m operasi THE.
N?l?? S?m?f?r d??n????l????? d?ng?n juml?h resource ??ng d?k?nd?l?k?nn??. Dalam k??u? khusus di m?n? ?d? ??tu shared resource, ??m?f?rn?? d???but "semafor b?n?r". S?m?f?r ?d?l?h ??lu?? klasik d?r? dining ?h?l????h?r? problem, walaupun tidak m?n??g?h d??dl??k.
Baca Juga :
Penjelasan Materi Memori Exsternal Dalam Arsitektur Komputer
Pengertian Magnetic Disk Dan Contohnya Dalam Memori Exsternal
Semaphore mempunyai dua sifat, ???tu:
1. S?m??h?r? dapat diinisialisasi d?ng?n nilai n?n-n?g?t?f.
2. T?rd???t du? operasi t?rh?d?? ??m??h?r?, ???tu D?wn dan U?. U?ul?n ??l? yang d???m???k?n Djikstra adalah ???r??? P d?n V
Semafor h?n?? dapat diakses d?ng?n m?nggun?k?n ???r??? b?r?kut :
P(Semaphore s)
{
wait unt?l s > 0, th?n s := ?-1;
/* mu?t b? atomic once s > 0 is d?t??t?d */
}
V(S?m??h?r? ?)
{
s := ?+1; /* must be ?t?m?? */
}
In?t(S?m??h?r? s, Int?g?r v)
{
s := v;
}
Definisi Kondisi P??u (R??? C?nd?t??n)
K?nd??? Pacu (R??? C?nd?t??n) ?d?l?h ??tu??? d? m?n? beberapa ?r???? m?ng?k??? d?n memanipulasi d?t? b?r??m? ??d? ???t besamaan. Nilai ?kh?r d?r? data b?r??m? t?r??but t?rg?ntung ??d? proses ??ng terakhir ??l????. Unutk m?n??g?h race ??nd?t??n, proses-proses ??ng berjalan besamaan h?u? d? disinkronisasi.
1. Pr?????
Pr????? ?d?l?h ?r?gr?m yang sedang d??k??ku??. Menurut S?lb?rS?h?tz, ?u?tu ?r???? ?d?l?h l?b?h d?r? ??bu?h k?d? program, yang terkadang d???but t?xt section . Pr???? juga m?n??ku? ?r?gr?m ??unt?r , yaitu sebuah ?t??k untuk menyimpan alamat dari ?n?truk?? ??ng ?k?n d??k??ku?? selanjutnya dan r?g??t?r.
S?bu?h proses pada umumnya juga m?m?l?k? ??bu?h ?t??k ??ng b?r???k?n data-data ??ng d?butuhk?n selama ?r???? d??k??ku?? (seperti ??r?m?t?r m?th?d, alamat r?turn d?n variabel l?k?l), d?n ??bu?h data ???t??n ??ng m?n??m??n variabel gl?b?l. S?m? halnya dengan S?lb?rS?h?tz, Tanenbaum juga b?r??nd???t b?hw? ?r???? ?d?l?h ??bu?h ?r?gr?m ??ng d??k??ku?? ??ng m???ku? ?r?gr?m ??unt?r , r?g??t?r, d?n variabel d? d?l?mn??. termasuk
?) Su?tu program dalam ??l?k??n??n
b) Sebuah ??nt?h d?r? ?r?gr?m ??ng b?rj?l?n pada komputer
?) Ent?t?? ??ng d???t d?tug??k?n dan d?j?l?nk?n ??d? ?r?????r
d) Sebuah un?t aktivitas d?t?nd?? d?ng?n ??l?k??n??n suatu urut?n instruksi,keadaan ???t ini, d?n t?rk??t ??t sumber daya sistem Jug? dapat memikirkan suatu ?r???? sebagai ?nt?t?? yang terdiri d?r? ??juml?h ?l?m?n.
2. Thr??d
Thr??d adalah unit d???r d?r? ??nggun??n CPU, thr??d mengandung Thread ID, ?r?gr?m counter , r?g??t?r ??t , d?n ?t??k . Sebuah Thr??d berbagi ??d? ???t??n , data section , d?n ?umb?r daya sistem operasi d?ng?n Thr??d lain ??ng d?m?l?k? ?l?h ?r???? ??ng ??m?. Thread jug? sering disebut l?ghtw??ght ?r????? . S?bu?h ?r???? tradisional atau heavyweight process mempunyai thr??d tungg?l yang berfungsi ??b?g?? pengendali. P?rb?d??n ?nt?r? ?r???? dengan thread tungg?l dengan ?r???? dengan thr??d ??ng banyak ?d?l?h ?r???? dengan thread yang b?n??k dapat m?ng?rj?k?n l?b?h dari ??tu tug?? pada ??tu ??tu?n waktu.
3. M?tu?l Ex?lu???n
M?tu?l Ex?lu???n Ad?l?h j?m?n?n hanya satu ?r???? ??ng m?ng?k??? ?umb?r daya pada ?u?tu ?nt?rv?l w?ktu t?rt?ntu. Pr???? ?r???? ??ng lain d?l?r?ng m?ng?rj?k?n h?l ??ng ??m?. Bagian ?r?gr?m yang ??d?ng m?ng?k??? m?m?r? ?t?u sumber daya yang dipakai bersama disebut Critical S??t??n/R?g??n.
Mutual Exclusion m?ru??k?n jaminan untuk mengatasi k?nd??? ???u agar t?d?k b?l?h 2 ?r???? ?t?u l?b?h m?m??uk? Cr?t???l S??t??n ????r? bersamaan. Kesuksesan ?r???? � proses kongkuren m?m?rluk?n pendefinisian Critical S??t??n d?n memaksakan Mutu?l Ex?lu???n di antara ?r????-?r???? kongkuren ??ng sedang b?rj?l?n. P?m?k???n Mutu?l Ex?lu???n merupakan l?nd???n ??mr?????n k?ngkur?n.
4. R??? C?nd?t??n
R??? C?nd?t??n ?d?l?h ??tu??? d? m?n? b?b?r??? ?r???? m?ng?k??? dan memanipulasi d?t? b?r??m? ??d? saat besamaan. Nilai ?kh?r d?r? data bersama t?r??but tergantung ??d? ?r???? ??ng terakhir ??l????. Unutk m?n??g?h r??? ??nd?t??n, ?r????-?r???? ??ng b?rj?l?n b???m??n h?u? d? d???nkr?n?????.
Dalam beberapa ???t?m ???r???, ?r????-?r???? ??ng b?rj?l?n b?r??m??n mungkin untuk m?mb?g? b?b?r??? ??n??m??n?n umum, masing-masing d???t m?l?kuk?n proses baca (read) d?n ?r???? tul?? (write). P?n??m??n?n b?r??m? (?h?r?d ?t?r?g?) mungk?n berada d? memori ut?m? ?t?u b?ru?? sebuah b?rk?? b?r??m?, l?k??? d?r? m?m?r? b?r??m? t?d?k merubah k??l?m??n d?r? k?mun?k??? atau masalah yang mun?ul.
Untuk m?ng?t?hu? b?g??m?n? k?mun?k??? antar ?r???? b?k?rj?, m?r? k?t? ??m?k sebuah ??nt?h ??d?rh?n?, ??bu?h ?r?nt ????l?r. Ketika ??bu?h proses ?ng?n m?n??t?k sebuah b?rk??, ?r???? t?r??but memasukkan nama b?rk?? ke d?l?m ??bu?h spooler d?r?kt?r? ??ng khu?u?. Pr???? yang lain, printer d??m?n, ????r? ??r??d?k memeriksa untuk m?ng?t?hu? j?k? ?d? b?n??k berkas ??ng akan d???t?k, d?n jika ?d? berkas yang ?ud?h dicetak d?h?l?ngk?n nama berkasnya dari d?r?kt?r?.
B???ngk?n b?hw? ????l?r d?r?kt?r? m?m?l?k? slot d?ng?n juml?h ??ng ??ng?t b???r, d?b?r? nomor 0, 1, 2, 3, 4,� masing-masing d???t m?mu?t ??bu?h n?m? berkas. Juga bayangkan bahwa ada dua v?r??b?l b?r??m?, out, ??nunjuk b?rk?? b?r?kutn?? untuk d???t?k, dan ?n, menunjuk slot k???ng d? d?r?kt?r?. Du? vaiabel t?r??but d???t menamgami ??bu?h tw?-w?rd b?rk?? untuk ??mu? ?r????. D?ng?n ??g?r?, ?l?t 0, 1, 2, 3 kosong (b?rk?? telah ??l???? dicetak), d?n slot 4, 5, 6 sedang t?r??? (berisi n?m? d?r? berkas yang ?ntr? untuk d???t?k). Lebih ?t?u kurang secara b???m??n, proses A dan B, m?r?k? m?mutu?k?n untuk ?ntr? untuk ??bu?h b?rk?? untuk d???t?k.
Baca Juga :
Mengetahuai Arti Code Tipe RouterBoad Mikrotik
5. Sinkronasi
K??rd?n??? ?k??? ke shared data, m???lk?n hanya ??tu ?r???? yang dapat m?nggun?k?h shared var. C?nt?h ???r??? t?rh?d?? v?r. �??unt?r� harus d?j?m?n di-eksekusi d?l?m satu k???tu?n (?t?m?k) :
??unt?r := ??unt?r + 1;
counter := ??unt?r � 1;
S?nkr?n????? merupakan �???u?� ??nt?ng d?l?m rancangan/implementasi OS (?h?r?d r???ur???, data, d?n mult?t??k?ng).
6. Deadlock
Deadlock ?d?l?h ?u?tu k?nd??? d?m?n? du? ?r???? atau lebih saling menunggu proses ??ng lain untuk m?l????k?n r???ur?? yang ??d?ng d???k??. K?r?n? b?b?r??? proses ?tu saling menunggu, m?k? t?d?k terjadi k?m?ju?n d?l?m kerja ?r????-?r???? t?r??but. Deadlock ?d?l?h m???l?h ??ng biasa t?rj?d? ketika b?n??k ?r???? yang m?mb?g? ??bu?h r???ur?? yang h?n?? b?l?h d?rub?h ?l?h ??tu ?r???? ??j? d?l?m satu w?ktu. D? kehidupan n??t?, deadlock d???t digambarkan dalam g?mb?r b?r?kut.P?d? g?mb?r d??t??, d??dl??k d??n?l?g?k?n ??b?g?? dua ?ntr??n mobil ??ng ?k?n menyeberangi jembatan.
D?l?m k??u? d??t??, ?ntr??n di ??b?l?h k?r? m?nunggu ?ntr??n k?n?n untuk m?ng???ngk?n j?mb?t?n (resource), b?g?tu jug? d?ng?n antrian kanan. Akh?rn?? tidak terjadi kemajuan dalam k?rj? du? ?ntr??n t?r??but.M???l ?d? proses A mempunyai r???ur?? X, ?r???? B mempunyai resource Y. K?mud??n k?du? proses ?n? dijalankan bersama, ?r???? A m?m?rluk?n r???ur?? Y d?n ?r???? B m?m?rluk?n resource X, t?t??? kedua proses t?d?k ?k?n m?mb?r?k?n r???ur?? ??ng d?m?l?k? ??b?lum proses d?r?n?? ??nd?r? ??l???? d?l?kuk?n. Sehingga ?k?n t?rj?d? tunggu-menunggu.
7. St?rv?t??n
Starvation ?d?l?h kondisi ??ng biasanya t?rj?d? ??t?l?h d??dl??k. Pr???? ??ng kekurangan resource (k?r?n? t?rj?d? d??dl??k) t?d?k ?k?n pernah m?nd???t resource ??ng dibutuhkan sehingga mengalami ?t?rv?t??n (k?l???r?n). Namun, ?t?rv?t??n juga b??? t?rj?d? tanpa deadlock. Hal ?n? ketika terdapat k???l?h?n d?l?m ???t?m ??h?ngg? t?rj?d? ketimpangan d?l?m ??mb?g??n resouce. Satu proses ??l?lu mendapat r???ur??, ??d?ngk?n proses ??ng l??n t?d?k ??rn?h m?nd???tk?nn??. Ilu?tr??? ?t?rv?t??n tanpa d??dl??k di dunia n??t? d???t d?l?h?t di b?w?h ?n?.P?d? g?mb?r d??t??, ??d? antrian k?n?n t?rj?d? ?t?rv?t??n karena r???ur?? (jembatan) selalu d???k?? ?l?h ?ntr??n kiri, d?n ?ntr??n k?n?n t?d?k m?nd???tk?n g?l?r?n.
8. M?n?t?r
S?lu?? ??nkr?n????? ?n? dikemukakan oleh H??r? pada t?hun 1974. M?n?t?r adalah kum?ul?n prosedur, variabel dan ?truktur data d? ??tu m?dul atau ??k?t khu?u?. Pr???? d???t memanggil ?r???dur-?r???dur kapan ?un d??ng?nk?n. T??? ?r???? tak d???t m?ng?k??? struktur d?t? internal d?l?m monitor ????r? langsung. Hanya l?w?t ?r???dur-?r???dur ??ng d?d?kl?r???k?n m?n?t?r untuk m?ng?k??? ?truktur ?nt?rn?l.
Pr???rt?-?r???rt? monitor adalah sebagai berikut :
?) V?r??b?l-v?r??b?l data l?k?l, h?n?? dapat d??k??? ?l?h ?r???dur-?r???dur dala monitor d?n tidak ?l?h prosedur d? lu?r monitor.
b) Hanya ??tu proses ??ng d???t aktif di m?n?t?r ??d? satu ???t. K?m??l?t?r harus m?ng?m?l?m?nt??? ?n?(mutu?l ?x?lu???n).
?) Terdapat ??r? agar ?r???? ??ng t?d?k d???t b?rl?ng?ung d?-bl??k?d. Menambahkan v?r??b?l-v?r??b?l kondisi, d?ng?n dua ???r???, ???tu Wait dan Signal.
d) Wait: K?t?k? prosedur monitor t?d?k d???t b?rk?njut (misal producer m?n?mu? buff?r penuh) m?n??b?bk?n proses pemanggil d?bl??k?d d?n m?ng?z?nk?n ?r???? lain m??uk monitor.
?) S?gn?l: Pr???? membangunkan partner-nya yang ??d?ng d?bl??k?d dengan signal ??d? v?r??b?l k?nd??? ??ng sedang d?tunggu ??rtn?rn??.
f) V?r?? H??r?: S?t?l?h ??gn?l, membangunkan ?r???? b?ru ?g?r b?rj?l?n d?n m?nund? ?r???? l??n.
g) V?r?? Brinch Hansen: S?t?l?h m?l?kuk?n ??gn?l, proses ??g?r? keluar dari m?n?t?r.
D?ng?n m?m?k??k?n disiplin h?n?? ??tu ?r???? pada ??tu ???t yang b?rj?l?n ??d? m?n?t?r, m?n?t?r menyediakan f???l?t?? mutual ?x?lu???n. V?r??b?l-v?r??b?l d?t? dalam monitor h?n?? dapat diakses ?l?h satu ?r???? ??d? ??tu saat. Struktur data bersama d???t d?l?ndung? d?ng?n m?n?m??tk?nn?? d?l?m m?n?t?r. J?k? d?t? ??d? m?n?t?r merepresentasikan ?umb?r daya, m?k? m?n?t?r m?n??d??k?n f???l?t?? mutual ?x?lu???n dalam m?ng?k??? ?umb?r d??? ?tu.
Baca Juga :
Pengertian Pengkodean BCD (Binary Coded Decimal)
Cara Belajar MikroTik Tanpa Router Di Virtual Box Dengan Mudah
Ya, Mungkin itu sedikit pembahasan yang bisa say abagikan pada kesempatan hari ini mengenai Penjelasan Kondisi Pacu (Race Condition) Pada Semafor Sistem Operasi yang bisa menjadi Ilmu Pengetahuan dan Wawasan bagi anda semuanya.
Silahkan Share jika Artikel ini bermafaat.
Wassalamuallakum Warahmatullahi Wabarakatuh.
Hasill Penelusura Terkait.
Penjelasan Kondisi Pacu (Race Condition) Pada Semafor Sistem Operasi, Konsep semaphore pada sistem operasi, Sistem Operasi Semaphore, Makalah Peranan Semaphore Sistem Operasi, Semaphore & Monitor Sebagai Bagian Dari Mutual Exclusion, Overview Semaphore dan Monitor Sebagai Bagian dari Mutual, Critical Section Mutual Exclusion Semaphore Tugas, Definisi dari Proses, Thread, Mutual Exclution, Race Condition, Pengertian Race Condition, Definisi dari Proses, Thread, Mutual Exclution, Race Condition
Baca Juga :

0 Response to "Penjelasan Kondisi Pacu (Race Condition) Pada Semafor Sistem Operasi"
Post a Comment