THREAD
Thread merupakan bagian dari proses, dimana proses
sendirir adalah program yang sedang dieksekusi, ada dua jenis proses, pertama heavyweight dan ada lightweight
atau dikenal juga sebagai thread.
Thread adalah unit dasar dari utilisasi CPU. Di dalamnya
terdapat ID thread, program counter, register, dan stack. Dan saling berbagi
dengan thread lain dalam proses yang sama. Dengan banyak kontrol thread proses
dapat melakukan lebih dari satu pekerjaan pada waktu yang sama.
THREAD MODEL
Kolom pertama berisi beberapa item bersama oleh semua thread dalam proses . Yang kedua berisi beberapa item pribadi ke setiap thread .
Setiap thread
memiliki stack masing masing
KEUNTUNGAN THREAD
2.
Pembagian
sumber daya: Secara default, thread membagi memori dan sumber daya dari
proses. Keuntungan dari pembagian kode adalah aplikasi mempunyai perbedaan
aktifitas thread dengan alokasi memori yang sama.
3.
Ekonomis:
Mengalokasikan memori dan sumber daya untuk membuat proses adalah sangat mahal.
Alternatifnya, karena thread membagi sumber daya dari proses, ini lebih
ekonomis untuk membuat threads.
4.
Pemberdayaan
arsitektur multiprosesor: Keuntungann dari multithreading dapat ditingkatkan
dengan arsitektur multiprosesor, dimana setiap thread dapat jalan secara
parallel pada prosesor yang berbeda. Pada arsitektur prosesor tunggal, CPU
biasanya berpindah-pindah antara setiap thread dengan cepat, sehingga terdapat
ilusi paralelisme, tetapi pada kenyataannya hanya satu thread yang berjalan di
setiap waktu.
Implementasi thread terdiri dari 3 jenis:
1.
User
1.
Pelaksanaan manajemen thread yang dilakukan oleh user-level thread library.
Terdapat dua kelompok besar implementasi thread, yaitu user-level thread dan
kernel-level thread. Didalam fasilitas user-level thread yang murni, semua
tugas manajemen thread dilakukan oleh aplikasi dan kernel tidak mengetahui
keberadaan thread.
2.
Tiga kunci thread libraries :
·
POSIX
Pthread
·
Win32
thread
·
Java
thread
2.
Kernel
1.
Suatu proses thread Yyang didukung oleh kernel. Untuk memberitahu kejadian
kernel, kernel menciptakan scheduler activatioan baru, memberikan ke pemroses
dan melakukan upcall ke ruang pemakai.
2.
Contoh :
·
Windows
XP/2000
·
Solaris
·
Linux
·
Tru64 UNIX
·
Mac
OS X
3.
Hybrid
Merupakan
gabungan user dan kernel
Multiplexing
user-level threads onto kernel- level threads
HUBUNGAN THREAD DAN PROSES
Thread saling berbagi bagian program, bagian data dan
sumber daya sistem operasi dengan thread lain yang mengacu pada proses yang
sama. Thread terdiri atas ID thread, program counter, himpunan register, dan
stack. Dengan banyak kontrol thread proses dapat melakukan lebih dari satu
pekerjaan pada waktu yang sama.