Apakah konsekuensi dari proses-proses yang berjalan secara konkuren pada suatu sistem multitasking ? Berikut ini akan dijelaskan sejumlah pengaruh yang mungkin terjadi antara proses-proses yang berjalan bersama.

  1. Proses tidak saling mempengaruhi : Ini terjadi pada proses-proses yang tidak saling berhubungan dan tidak saling berkerja sama, kecuali dalam hal berbagai pakai prosesor. Sebagai contoh adalah aplikasi Microsoft Word dan Microsoft Media Player yang berjalan bersama.
  2. Proses saling mempengaruhi secata tidak langsung : Ini terjadi pada proses-proses yang tidak saling bekerja sama tetapi mengakses sumber daya yang sama sehingga proses-proses tersebut saling mempengaruhi satu sama lain. Sebagai contoh adalah aplikasi Microsoft Word dan Notepad yang sedang membuka suatu berkas yang sama.
  3. Proses saling mempengaruhi secara lansung : Ini terjadi pada proses-proses yang saling bekerja sama untuk mencapai suatu tujuan khusus. Prose-proses yang saling bekerjasamadapat berjalan pada komputer yang sama maupun yang berlainan. Sebagai contoh adalah aplikasi akuntansiyang mengakses aplikasi sever basis data lokal seperti Ms SQL Server. Dalam kasus ini kedua proses aplikasi harus saling bekerja sama agar aliran data antar aplikasi dapat berjalan dengan baik. Contoh lain adalah aplikasi browser internet, seperti Firefox yang mengakses dokumen pada suatu situs. Dalam kasus ini, antara proses browser internet dan proses web server saling bekerja sama secara langsung dan saling mempengaruhi satu sama lain.

Terjadinya perebutan sumber daya pada proses-proses yang saling mempengaruhi baik secara langsung ataupun tidak, memunculkan sejumlah masalah yang harus ditangani oleh sistem operasi, antara lain :

  1. Race ConditionJika terdapat dua proses atau lebih yang berusaha mengakses dan melakukan operasi pada suatu sumber daya yang sama maka ada kemungkinan suatu sumber daya tersebut menjadi tidak valid dan tidak konsisten pada akhir seluruh operasi tersebut. Kondisi kompetisi seperti ini disebut dengan race conditon dan sumber daya yang berada dalam kondisi ini disebut critical resource, sedangkan bagian dari kode instruksi program yang melakukan operasi tersebut disebut dengan critical section. Kondisi race condition dapat ditangani dengan menerapkan mekanisme sinkronisasi. Salah satu mekanisme sinkronisasi adalah mutual exclusive yang memastikan critical section.
  2. Deadlock. Deadlock merupakan kondisi kebutuhan dalam alokasi sumber daya yang dibutuhkan oleh proses dan akibatnya proses-proses yang terlibat tidak dapat melanjutkan eksekusinya sama sekali. Deadlock terjadi ketika proses-proses yang terlibat saling membutuhkan sumber daya yang sedang digunakan oleh proses lainnya. Karena tidak ada satupun proses yang bersedia mengalah, yaitu melepaskan sumber daya yang sedang digunakannya, terjadilah kebutuhan.
  3. Starvasion. Starvasion merupakan kondisi dimana satu proses atau lebih selalu kalah dalam kompetisi untuk mendapatkan sumber daya yang diperlukan sehingga eksekusi tertunda terus menerus. Berbeda dengan deadlock, penyebab utama starvasion berukanlah proses lainnya, melainkan lebih oleh kebijakan alokasi sumber daya yang tidak adil dari sistem operasi.