Threads
Threads
Threads
Definisi: unit dasar dari penggunaan CPU,thread terdiri dari thread ID, program counter, setregister, dan stack.Thread juga sering disebut Lightweight process.Thread berbagi code section, data section, dan
sumber daya sistem operasi dengan thread lain yang termasuk dalam proses yang sama.Proses tradisional ( Heavyweight process )mempunyai thread tunggal yang berfungsisebagai pengontrol.
Keuntungan Threads
1.Responsiveness
2.Resource Sharing
3.Economy
4.Utilization of multiprocessor architectures
Keuntungan Thread (1)
Responsiveness : Melakukan multithreading pada aplikasi yang interaktif dapat membuat program terus berjalan meskipun bagian dari program tersebut diblok atau sedang menjalankan operasi yang panjang, karena itu dapat meningkatkan respon kepada user.
Keuntungan Thread (2)
Resource sharing : sebuah aplikasi dapat mempunyai beberapa thread yang berbeda
dalam sebuah alamat memori yang sama karena Thread berbagi memori dan sumber daya dari proses yang memilikinya.
Keuntungan Thread (3)
Economy: karena mahal untuk mengalokasikan memori dan sumber daya untuk pembuatan
proses. Alternatifnya adalah dengan pengunaan thread sebab thread berbagi sumber daya dari proses yang memilikinya oleh sebab itu akan lebih ekonomis untuk embuat
sebuah thread
Keuntungan Thread (4)
Utilization of multiprocessor architectures: keuntungan dari multithreading dapat
meningkat secara drastis dalam arsitektur multiprosesor, dimana setiap thread dapat berjalan secara pararel pada prosesor yang berbeda.
User dan Kernel Threads (1)
User ThreadsUser threads didukung di atas 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.
User dan Kernel Threads (2)
Kernel ThreadsKernel threads didukung secara langsung dari sistem operasi. Pembuatan thread,
penjadwalan, dan manajemen dilakukan oleh sistem operasi, secara umum kernel threads lebih lambat untuk dibuat dan diatur dibanding user thread.
Multithreading Models
( Many to One Model )
Many to One Model memetakan beberapa user-level threads ke satu kernel threads.
Multithreading Models
( One to One Model )
Multi-threading Models
( Many to Many Model )
Fork
Bila sebuah thread di program memanggil fork maka ada dua skenario yang bisa terjadi :
- Semua thread akan diduplikasi.
- Hanya thread yang memanggil fork yang akan didupliakasi.
Cancellation
* Thread cancellation adalah sebuah tugas untuk memberhentikan thread sebelum thread tersebut selesai.
* Thread yang akan diberhentikan disebut target thread.
* Dua skenario thread cancellation :
- 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.
Label: it
0 Komentar:
Posting Komentar
Berlangganan Posting Komentar [Atom]
<< Beranda