Materi Kuliah Pertemuan III

TENTANG THREAD

Definisi Thread
Thread adalah sebuah mini proses dari sebuah proses.

Perbedaan thread dengan proses, yaitu
Thread berbeda dengan proses karena thread memiliki address space yang sama yang artiya mereka berbagi variable global. Karenanya masing-masing thread dapat saling mengakses virtual address, membaca, menulis bahkan menghentikan thread lain.
Sedangkan proses bisa dimiliki oleh user dan kemungkinan proses tersebut menunggu atau ditahan proses yang lain. Proses selalu dimiliki oleh satu user sehingga mereka dapat saling bekerja sama tidak saling berbenturan.


Penggunaan Thread
Thread digunakan agar konsep parallel dapat dikombinasikan dengan konsep serial.
 
  
    


Paket Thread
Static thread dan dynamic thread
- static thread menentukan jumlah thread yang akan dibuat ketika program dicompile (fixed stack)

- dynamic thread pembuatan dan penghentian thread dilakukan secara flexible (scheduling priority)

Penghentian thread
Thread dapat dihentikan dengan 2 cara, yaitu 
1. Cara pertama adalah thread berhenti dengan sendirinya ketika tugas dari thread tersebut selesai.
2. Cara kedua adalah dengan menghentikan thread dari luar

//implementasi pakaet thread
//thread pada user space
//thread pada kernel space