TUGAS MANAJEMEN PROSES SISTEM OPERASI


SISTEM OPERASI
MANAJEMEN PROSES
Disusun oleh:
Anindah Martianingrum (10116893)
Bayu Andreansyah (11116350)
Hendrawan L (13116266)
Izzat Zulia R (13116657)
Nurasyah (15116570)
Reiza Fauzi R (16116162)

JURUSAN SISTEM INFORMASI
UNIVERSITAS GUNADARMA
2018



DAFTAR ISI


MANAJEMEN PROSES
1.     KONSEP DASAR............................................................................. 1
2.     KONSEP PENJADUALAN.............................................................. 3
3.     OPERASI PADA PROSES................................................................ 7
4.     PROSES YANG SALING BEKERJASAMA................................... 10
5.     THREADS...................................................................................... 11
6.     KOMUNIKASI ANTAR PROSES.................................................. 12
7.     BUFFERING.................................................................................. 14
8.     KONDISI-KONDISI PERKECUALIAN......................................... 14












MANAJEMEN PROSES


1. KONSEP DASAR
1.1 Definisi Proses
Terdapat beberapa definisi mengenai proses, antara lain :
a. Merupakan konsep pokok dalam sistem operasi, sehingga masalah manajemen proses adalah masalahutama dalam perancangan sistem operasi.
b. Proses adalah program yang sedang dieksekusi.
c. Proses adalah unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan olehsistem operasi.

1.2 Status Proses
Sebagaimana proses bekerja, maka proses tersebut merubah state (keadaan statis/ asal). Status dari
sebuah proses didefinisikan dalam bagian oleh aktivitas yang ada dari proses tersebut. Tiap proses mungkinadalah satu dari keadaan berikut ini:
·         New: Proses sedang dikerjakan/ dibuat.
·         Running: Instruksi sedang dikerjakan.
·         Waiting: Proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/Oatau penerimaan sebuah tanda/ signal).
·         Ready: Proses sedang menunggu untuk ditugaskan pada sebuah prosesor.
·         Terminated: Proses telah selsesai melaksanakan tugasnya/ mengeksekusi.
Nama-nama tersebut adalah arbitrer/ berdasar opini, istilah tersebut bervariasi disepanjang sistemoperasi. Keadaan yang mereka gambarkan ditemukan pada seluruh sistem. Namun, sistem operasi tertentujuga lebih baik menggambarkan keadaan/ status proses. Adalah penting untuk menyadari bahwa hanya satuproses dapat berjalan pada prosesor mana pun pada waktu kapan pun. Namun, banyak proses yang dapatready atau waiting.

1.3 Proses Control Block (PCB)
Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block (PCB) - juga
disebut sebuah control block. Sebuah PCB ditunjukkan dalam Gambar 2. PCB berisikan banyak bagian dariinformasi yang berhubungan dengan sebuah proses yang spesifik, termasuk ini:
·         Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyaklagi.
·         Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankanuntuk proses ini.
·         CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan
komputer.
·         Register tersebut termasuk accumulator, index register, stack pointer, general-purposes
register, ditambah code information pada kondisi apa pun. Besertaan dengan program counter,keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkanproses tersebut berjalan/bekerja dengan benar setelahnya (lihat Gambar 3).
·         Informasi managemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai daridasar dan batas register, tabel page/ halaman, atau tabel segmen tergantung pada sistemmemori yang digunakan oleh sistem operasi.
·         Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan,batas waktu, jumlah akun, jumlah job atau proses, dan banyak lagi.
·         Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang digunakan padaproses ini, suatu daftar open berkas dan banyak lagi.
·         PCB hanya berfungsi sebagai tempat menyimpan/ gudang untuk informasi apapun yang dapatbervariasi dari prose ke proses.

2. KONSEP PENJADUALAN
2.1 Scheduling Queue
Ketika proses memasuki sistem, mereka diletakkan dalam antrian job. Antrian ini terdiri dari seluruhproses dalam sistem. Proses yang hidup pada memori utama dan siap dan menunggu/ wait untukmengeksekusi disimpan pada sebuah daftar bernama ready queue. Antrian ini biasanya disimpan sebagaidaftar penghubung. Sebuah header ready queue berisikan penunjuk kepada PCB-PCB awal dan akhir. SetiapPCB memiliki pointer field yang menunjukkan proses selanjutnya dalam ready queue.Juga ada antrian lain dalam sistem. Ketika sebuah proses mengalokasikan CPU, proses tersebutberjalan/bekerja sebentar lalu berhenti, di interupsi, atau menunggu suatu kejadian tertentu, sepertipenyelesaian suatu permintaan I/O. Pada kasus ini sebuah permintaan I/O, permintaan seperti itu mungkinuntuk sebuah tape drive yang telah diperuntukkan, atau alat yang berbagi, seperti disket. Karena ada banyakproses dalam sistem, disket bisa jadi sibuk dengan permintaan I/O untuk proses lainnya. Maka prosestersebut mungkin harus menunggu untuk disket tersebut. Daftar dari proses yang menunggu untuk peralatanI/O tertentu disebut sebuah device queue. Tiap peralatan memiliki device queuenya sendiri.

Reprensentasi umum untuk suatu diskusi mengenai penjadualan proses adalah diagram antrian,seperti pada gambar. Setiap kotak segi empat menunjukkan sebuah antrian. Dua tipe antrianmenunjukan antrian yang siap dan suatu perangkat device queues. Lingkaran menunjukkansumber-sumber yang melayani sistem. Sebuah proses baru pertama-tama ditaruh dalam ready queue. Lalu menunggu dalamready queue sampai proses tersebut dipilih untukdikerjakan/lakukan atau di dispatched. Begitu prosestersebut mengalokasikan CPU dan menjalankan/ mengeksekusi, satu dari beberapa kejadian dapatterjadi.
·         Proses tersebut dapat mengeluarkan sebuah permintaan I/O, lalu di tempatkan dalam sebuahantrian I/O.
·         Proses tersebut dapat membuat subproses yang baru dan menunggu terminasinya sendiri.
·         Proses tersebut dapat digantikan secara paksa dari CPU, sebagai hasil dari suatu interupsi, dandiletakkan kembali dalam ready queue.
2.2 Penjadual / Scheduler
Sebuah proses berpindah antara berbagai penjadualan antrian selama umur hidupnya. Sistemoperasi harus memilih, untuk keperluan penjadualan, memproses antrian-antrian ini dalam cara tertentu.Pemilihan proses dilaksanakan oleh penjadual yang tepat/ cocok. Dalam sistem batch, sering ada lebihbanyak proses yang diserahkan daripada yang dapat dilaksanakan segera. Proses ini dipitakan/ disimpan padasuatu alat penyimpan masal (biasanya disket), dimana prosestersebut disimpan untuk eksekusi dilain waktu.Penjadualan long term, atau penjadual job, memilih proses dari pool ini dan mengisinya kedalam memorieksekusi.Sebuah proses dapatmengeksekusi untuk hanya beberapa milidetik sebelum menunggupermintaan I/O. Seringkali, penjadualan shorterm mengeksekusi paling sedikit sekali setiap 100 milidetik.Karena durasi waktu yang pendek antara eksekusi, penjadualan shorterm haruslah cepat. Jikamemerlukan 10 mili detik untuk menentukan suatu proses eksekusi selama 100 mili detik, maka 10/(100 +10) = 9 persen CPU sedang digunakan (terbuang) hanya untuk pekerjaan penjadualan.Penjadualan longterm pada sisi lain, mengeksekusi jauh lebih sedikit. Mungkin ada beberapa menitantara pembuatan proses baru dalam sistem. Penjadualan longterm mengkontrol derajat multiprogramming(jumlah proses dalam memori). Jika derajat multiprogramming stabil, lalu tingkat rata-rata dari penciptaanproses harus sama dengan tingkat kepergian rata rata dari proses yang meninggalkan sistem. Makapenjadualan longterm mungkin diperlukan untuk dipanggil hanya ketika suatu proses meninggalkan sistem.Karena interval yang lebih panjang antara eksekusi, penjadualan longterm dapat memakai waktu yang lebihlama untuk menentukan proses mana yang harus dipilih untuk dieksekusi.



                
2.3 Alih Konteks / Switch Context
Mengganti CPU ke proses lain memerlukan penyimpanan suatu keadaan proses lama (state of oldprocess) dan kemudian beralih ke proses yang baru. Tugas tersebut diketahui sebagai alih konteks (contextswitch). Alih konteks sebuah proses digambarkan dalam PCB suatu proses: termasuk nilai dari CPU register,status prosesdan informasi managemen memori. Ketika alih konteks terjadi, kernelmenyimpan konteks dari proses lama kedalam PCB nya dan mengisi konteks yang telah disimpan dariprocess baru yang telah terjadual untuk berjalan. Pergantian waktu konteks adalah murni overhead, karenasistem melakukan pekerjaan yang tidak perlu. Kecepatannya bervariasi dari mesin ke mesin, bergantung padakecepatan memori, jumlah register yang harus di copy, dan keberadaan instruksi khusus (seperti instruksitunggal untuk mengisi atau menyimpan seluruh register). Tingkat kecepatan umumnya berkisar antara 1
sampai 1000 mikro detik.


Waktu alih konteks sangat begantung pada dukungan perangkat keras. Sebagai contoh, prosesor
seperti UltraSPARC menyediakan dua rangkap register.
Sistem operasi dalam mengelola proses dapat melakukan operasi-operasi terhadap proses.Operasi tersebutadalah :
a. Penciptaan proses
b. Penghancuran/terminasi proses
c. Penundaan proses
d. Pelanjutan kembali proses
e. Pengubahan prioritas proses
f. Memblok proses
g. Membangunkan proses
h. Menjadwalkan proses
i. Memungkinkan proses berkomunikasi dengan proses lain

3. OPERASI PADA PROSES
3.1 Pembuatan Proses
Melibatkan banyak aktivitas, yaitu :
a. Memberi identitas proses
b. Menyisipkan proses pada senarai atau tabel proses
c. Menentukan prioritas awal proses
d. Menciptakan PCB
e. Mengalokasikan sumber daya awal bagi proses

Kejadian yang dapat menyebabkan penciptaan proses :
·         Pada lingkungan batch, sebagai tanggapan atas pemberian satu kerja (job). Sistem operasidengan 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 menciptakanproses yang akan mengelola pencetakan itu. Sistem operasi menciptakan proses untuk memenuhi satu fungsipada program pemakai, tanpa mengharuskan pemakai menunggu.
·         Proses penciptaan proses lain (proses anak). Untuk mencapai modularitas ataumengeksploitasikongkurensi, program pemakai memerintahkan pembuatan sejumlah proses.

3.2 Penghentian Proses
Yaitu tindakan yang dilakukan sistem operasi pada saat sebuah proses telah selesai dilakukan atau dihentikan, sistem operasi menghapus struktur data yang digunakan untuk mengelola proses dan mengalokasikan ruang alamat ke proses itu.Suatu proses diterminasi ketika proses tersebut telah selesai mengeksekusi perintah terakhir atau diterminasi dengan sengaja oleh proses lain, biasanya proses induk yang melakukan hal ini. Pada saat terminasi. Semua sumber-daya yang digunakan oleh proses akan dialokasikan kembali oleh sistem operasi agar dapat dimanfaatkan oleh proses lain. Suatu proses yang diterminasi karena selesai melakukan tugasnya, sistem operasi akan memanggil system call exit() sedangkan proses yang diterminasi dengan sengaja oleh proses lain melalui system call abort. Biasanya proses induk melakukan terminasi sengaja pada turunannya. Alasan terminasi yang dilakukan proses induk tersebut seperti:
  • Turunan melampaui penggunaan sumber-daya yang telah dialokasikan. Dalam keadaan ini, proses induk perlu mempunyai mekanisme untuk memeriksa status turunannya-nya.
  • Task yang ditugaskan kepada turunan tidak lagi diperlukan.
  • · Proses induk selesai, dan sistem operasi tidak mengizinkan proses turunan untuk tetap berjalan. Jadi, semua proses turunan akan berakhir pula. Hal ini yang disebut cascading termination.
Alur Penghentian Proses adalah sebagai berikut:
  • Suatu proses berhenti jika telah menyelesaikan pernyataan terakhir, dan meminta pada sistem operasi untuk menghapusnya dengan menggunakan system call exit.
  • Proses mengembalikan semua data (output) ke parent proses melalui system call wait.
  • Kemudian proses dihapus dari list atau tabel sistem, dilanjutkan dengan menghapus PCB.
Secara umum, Destroyed Process dilakukan karena alasan-alasan sebagai berikut.
  • Selesai secara normal. Proses mengeksekusi suatu panggilan layanan OS untuk mengindikasikan bahwa proses tersebut telah selesai beroperasi
  • Batas waktu telah dilampaui. Proses telah berjalan lebih lama dari jumlah batas waktu yang telah ditentukan. Terdapat beberapa kemungkinan jenis waktu yang diukur. Jenis-jenis tersebut meliputi jumlah waktu yang berjalan (waktu jam dinding), jumlah waktu yang dibutuhkan untuk melakukan eksekusi, dan pada proses yang interaktif, jumlah waktu sejak pengguna terakhir diberi input
  • Memori tidak tersedia. Proses memerlukan memori lebih banyak dari yang dapat disediakan oleh sistem
  • Pelanggaran batas. Proses mencoba menakses lokasi memori yang tidak diijinkan untuk diases
  • Error proteksi. Proses mencoba menggunakan sumber daya atau file yang tidak diizinkan untuk digunakan, atau mencoba menggunakannya dengan cara yang salah, seperti melakukan penulisan ke file yang hanya dapat dibaca (read-only file)
  • Error aritmetik. Proses mencoba untuk melakukan komputasi yang tidak diizinkan, seperti pembagian dengan nol, atau mencoba menyimpan bilangan yang besarnya diluar kemampuan perangkat keras. Kelebihan waktu proses telah menunggu event tertentu lebih lama dari waktu maksimum
  • Kegagalan I/O. Error yang terjadi pada saat input atau output, seperti ketidakmampuan untuk menemukan file, kegagalan membaca atau menulis setelah beberapa kali mencoba (pada saat misalnya menemukan daerah yang telah rusak pada pita magnetik) atau operasi yang invalid (misalnya melakukan pembacaan dari printer)
  • Intruksi yang invalid. Proses mencoba mengeksekusi intruksi yang tidak ada (seringkali akan mengakibatkan pencabangan ke suatu daerah data dan berusaha mengeksekusi data)
  • Intruksi ber-privilage. Proses berusaha untuk menggunakan suatu intruksi yang dicadangkan bagi sistem operasi
  • Pemakaian data yang salah. Potongan datanya memiliki jenis yang salah, atau tidak diinisilaisasi terlebih dahulu
  • Intervensi Operator atau OS. Dengan sesuatu alasan, operator atau sistem operasi telah menghentikan proses (misalnya, telah terjadi deadlock)
  • Penghentian Induk. Apabila induk berhenti, sistem operasi secara otomatis dapat menghentikan seluruh turunan proses induk itu
  • Permintaan induk. Proses induk umumnya memiliki otoritas untuk menghentikan semua turunannya
4. PROSES YANG SALING BEKERJASAMA
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. 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 dikatakankooperatif 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.
5. THREADS
Thread merupakan suatu proses didefinisikan oleh resource yang digunakan dan lokasi yangakan dieksekusi. Namun adakalanya proses-proses akan menggunakan resource secara bersama-sama. Suatu unit dasar dari CPU utilization yang berisi program counter, kumpulan register, dan ruang stack disebut dengan thread atau lighweight process (LWP). Thread akan bekerjasama dengan thread yang lainnya dalam hal penggunaan bagian kode, bagian data, dan resource sistem operasi, seperti open file dan sinyal secara kolektif yang sering disebut dengan task.Pada multi proses, setiap proses secara terpisah melakukan operasi tidak bekerja sama dengan proses lain, setiap proses mempunyai program counter, stack register dan ruang alamat sendiri. Organisasi jenis ini berguna jika job dibentuk oleh proses-proses yang tidak saling berhubungan. Multi proses membentuk task yang sama. Sebagai contoh, multi proses dapat menyediakan data untuk mesin secara remote pada implementasi system file jaringan. Hal ini lebih efisien apabila satu proses terdiri dari multi thread melayani tugas yang sama. Pada implementasi multi proses, setiap proses mengeksekusi kode yang sama tetapi mempunyai memori dan resource file sendiri. Satu proses multi thread menggunakan resource lebih sedikit daripada multi proses, termasuk memory, open file dan penjadwalan CPU.
Ada 3 model process pada server :
1. thread di ciptakan untuk dapat melakukan paralelisme yang dikombinasikan dengan eksekusi sekuensial dan blocking system calls.
2. single treads server, menggunakan blocking system calls, tetapi kinerja sistem tidak baik.
3. finite-state machine, kinerja baik dengan melakukan parallelisme, tetapi menggunakan nonblocking calls, sehingga sulit dalam memprogram.
6. KOMUNIKASI ANTAR PROSES
·         Sistem Berbagi Memori
Sistem Berbagi Memori atau yang disebut juga sebagai Shared Memory System merupakan salah satu cara komunikasi antar proses dengan cara mengalokasikan suatu alamat memori untuk dipakai berkomunikasi antar proses. Alamat dan besar alokasi memori yang digunakan biasanya ditentukan oleh pembuat program. Pada metode ini, sistem akan mengatur proses mana yang akan memakai memori pada waktu tertentu sehingga pekerjaan dapat dilakukan secara efektif.
·         Sistem Berkirim Pesan
Sistem berkirim pesan adalah proses komunikasi antar bagian sistem untuk membagi variabel yang dibutuhkan. Proses ini menyediakan dua operasi yaitu mengirim pesan dan menerima pesan. Ketika dua bagian sistem ingin berkomunikasi satu sama lain, yang harus dilakukan pertama kali adalah membuat sebuah link komunikasi antara keduanya. Setelah itu, kedua bagian itu dapat saling bertukar pesan melalui link komunikasi tersebut.Sistem berkirim pesan sangat penting dalam sistem operasi. Karena dapat diimplementasikan dalam banyak hal seperti pembagian memori, pembagian bus, dan melaksanakan proses yang membutuhkan pengerjaan bersama antara beberapa bagian sistem operasi.
Terdapat dua macam cara berkomunikasi, yaitu:
1. Komunikasi Langsung, dalam komunikasi langsung, setiap proses yang ingin berkirim pesan harus mengetahui secara jelas dengan siapa mereka berkirim pesan. Hal ini dapat mencegah pesan salah terkirim ke proses yang lain. Karakteristiknya antara lain:
a. Link dapat otomatis dibuat
b. Sebuah link berhubungan dengan tepat satu proses komunikasi berpasangan
c. Diantara pasangan itu terdapat tepat satu link
d. Link tersebut biasanya merupakan link komunikasi dua arah

2. Komunikasi tidak langsung, berbeda dengan komunikasi langsung, jenis komunikasi ini menggunakan sejenis kotak surat atau port yang mempunyai ID unik untuk menerima pesan. Proses dapat berhubungan satu sama lain jika mereka membagi port mereka. Karakteristik komunikasi ini antara lain:
a. Link hanya terbentuk jika beberapa proses membagi kotak surat mereka
b. Sebuah link dapat terhubung dengan banyak proses
c. Setiap pasang proses dapat membagi beberapa link komunikasi
d. Link yang ada dapat merupakan link terarah ataupun link yang tidak terarah
7. BUFFERING
Baik komunikasi itu langsung atau tak langsung, penukaran pesan oleh proses memerlukan antrian sementara. Pada dasarnya, terdapat tiga jalan dimana antrian tersebut diimplementasikan:
oKapasitas nol: antrian mempunyai panjang maksimum 0, maka link tidak dapat mempunyai penungguan pesan (message waiting). Dalam kasus ini, pengirim harus memblok sampai penerima menerima pesan.
o Kapasitas terbatas: 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 menunggu. Link mempunyai kapasitas terbatas. Jika link penuh, pengirim harus memblok sampai terdapat ruang pada antrian.
o Kapasitas tak terbatas: antrian mempunyai panjang yang tak terhingga, maka, semua pesan dapat menunggu disini. Pengirim tidak akan pernah di blok.
8. KONDISI-KONDISI PERKECUALIAN
8.1 Proses Dihentikan
Pengirim atau penerima menghentikan komunikasi setelah pesan diproses. Hal in mengakibatkan pesan tidak pernah diterima atau proses yang menunggu pesan tersebut tidak pernah dikirim. Dalam hal ini ada 2 kasus:
§Penerima proses P menunggu suatu pesan dari proses Q yang dihentikan, jika ada aksi, maka P di block. Pada kasus ini system juga akan mengehntikan P atau memberitahu pada P bahwa Q dihentikan.
§ Proses P mengirim pesan ke proses Q yang dihentikan. Pada system buffer otomatis, tidak akan terjadi apa-apa. P melanjutkan eskkusi. Jika P ingin mengetahui apakah pesannya telah di proses oleh Q, maka P harus memprogram secara eksplisit suatu pengetahuan. Jika tidak ada buffer, Pakan diblock seperti halnya kasus 1. Sistem juga akan menghentikan P atau memberitahukan pada P bahwa Q dihentikan.
8.2 Kehilangan Pesan
Pesan pada proses P ke proses Q bisa jadi hilang entah kemana dalam suatu jaringan komunikasi. Hal in mengakibatkan kegagalan pada hardware, Untuk mengatasi hal itu ada 3 metode, yaitu:
§ Sistem operasi mendeteksi adanya kejadian tersebut, kemudia mengrim ulang pesan yang hilang
§ Proses yang mengirim pesan mendeteksi kejadian tersebut dan kemudian mentransmisikan kembali pesan tersebut jika diminta
§ Sistem oprasi mendeteksi adanya kejadian tersebut dan kemudian memberitahukan kepada proses yang mengirim bahwa pesan yang disampaikan hilang di tengah jalan. Proses pengiriman dapat melakukan sesuatu sesuai yang dipilihnya
Untuk mendeteksi adanya pesan yang hilang makan digunakan Timeout. Pada saat satu pesan dikirim maka akan diberikan pesan jawaban bahwa oesab tekah dikirim. Sistem oprasi / suatu proses akan menghitung interval waktu antara jawaban dengan pesan yang diterima jika melebihi batas waktu yang telah ditentukan, maka pesan tersebut dianggap hilang dan akan dikirim kembali.
Kelemahan dari system ini adalah terkadang pesan dating sedikit terlambat dari yang diperkirakan sehingga system oprasi mungkin menggangapnya hilang dan mengakibatkan copiannya dikirim dan penerima akan mendapatkan 2 pesan yang sama.
8.3 Proses Terganggu
Pesan yang dikirim sebelum sampai ditujuan kadang bisa mengalami gangguan di tengah jalan, sama seperti pesan yang hilang. Jika hal in terjadi maka pesan akan dikirim kembali.








Daftar Pustaka:



Komentar

Posting Komentar

Postingan Populer