Oleh: Muhammad Syauqil Ilmi ( ) Muzakki (09650) Fathiyyatur Rahmah ( )
sebuah alur kontrol dari sebuah proses cara dari komputer untuk menjalankan dua atau lebih task dalam waktu bersamaan
cara komputer untuk membagi-bagi pekerjaan yang dikerjakan sebagian-sebagian dengan cepat sehingga menimbulkan efek seperti menjalankan beberapa task secara bersamaan walaupun otaknya hanya satu.
Meliputi peningkatan respon dari user, pembagian sumber daya proses, ekonomis, dan kemampuan untuk mengambil keuntungan dari arsitektur multiprosesor.
Jika kita menggunakan thread secara berlebihan komputer akan crash / hang.
User threads didukung diatas kernel dan diimplementasikan oleh thread library pada level user. Library mendukung pembuatan thread, penjadwalan, dan manajemen tanpa dukungan dari kernel. Karena kernel tidak menyadari adanya user- level threads maka pembuatan semua thread dan penjadwalan dilakukan di dalam user space tanpa intervensi dari kernel. Kerugian: jika salah satu thread block, semua proses block
Kernel threads didukung secara langsung dari sistem operasi. Pembuatan thread, penjadwalan, dan manajemen dilakukan oleh sistem operasi, secara umum kernel threads lebih lambat untuk dibuat dibanding user thread. Keuntungan: SO dapat menjadwalkan thread lain jika ada salah satu thread yang di block SO dapat menjadwalkan thread-thread pada multi processor
Many to one memetakan beberapa user-level threads ke satu kernel threads. Examples: Solaris Green Threads GNU Portable Threads Kelemahan: Setiap penambahan thread pengguna Memerlukan penambahan thread kernel
One to one memetakan setiap user thread ke kernel thread. Examples Windows NT/XP/2000 Linux Solaris 9 and later Keuntungan: Konkurensi
Many to many model memetakan banyak user-level thread ke kernel thread yang lebih sedikit atau sama. Keuntungan User dapat membuat banyak thread, masing2 kernel thread dpt jalan di lingkungan multiprocessor
sebuah tugas untuk memberhentikan thread sebelum thread tersebut selesai. Contoh: JVM akan mematikan seluruh thread sblm mati Thread yang akan diberhentikan disebut target thread. Dua skenario thread cancellationn : Asynchronous cancellation : satu thread memberhentikan target thread seketika itu juga. Deferred cancellation : target thread secara periodik dapat mengecek apakah ia harus berhenti, skenario ini memberi kesempatan kepada target thread untuk memberhentikan dirinya sendiri.
SISTEM OPERASI PROSES & THREAD, Ahmad Dahlan, [Silberschatz2005] Avi Silberschatz, Peter Galvin, dan Grag Gagne Operating Systems Concepts. Seventh Edition. John Wiley & Sons.