Pebedaan Threads dan Processes
Thread
Thread merupakan unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID, program counter, register set, dan stack. Sebuah thread berbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama. Thread juga sering disebut lightweight process. Sebuah proses tradisional atau heavyweight process mempunyai thread tunggal yang berfungsi sebagai pengendali. Banyak sistem operasi modern telah memiliki konsep yang dikembangkan agar memungkinkan sebuah proses untuk memiliki eksekusi multithreads, agar dapat secara terus menerus mengetik dan menjalankan pemeriksaan ejaan didalam proses yang sama, maka sistem operasi tersebut memungkinkan proses untuk menjalankan lebih dari satu tugas pada satu waktu. 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 sehingga dengan banyaknya kontrol thread, proses dapat melakukan lebih dari satu pekerjaan pada waktu yang sama.
Proses
Perbedaan Kunci Antara Proses dan Thread
- Semua utas program secara logis terkandung dalam suatu proses.
- Suatu proses berbobot berat, tetapi utas berbobot ringan.
- Suatu program adalah unit eksekusi yang terisolasi sedangkan utas tidak terisolasi dan berbagi memori.
- Utas tidak dapat memiliki keberadaan individu; itu melekat pada suatu proses. Di sisi lain, suatu proses dapat eksis secara individual.
- Pada saat berakhirnya utas, tumpukan yang terkait dapat dipulihkan karena setiap utas memiliki tumpukan sendiri. Sebaliknya, jika suatu proses mati, semua utas mati termasuk proses.
Komentar
Posting Komentar