Nama : Diani Widyaningrum
NPM : 21382004P
Kelas : IF 21 Dx
Mata Kuliah : Organisasi dan Arsitektur Komputer
Proses dan Thread memberikan layanan terbaik bagi
komputer untuk melakukan banyak aktivitas sekaligus, tetapi perilakunya
berbeda. Setiap program yang berjalan di komputer menggunakan setidaknya satu
proses atau Thread. Proses dan Thread memungkinkan prosesor untuk beralih
dengan lancar di antara banyak tugas sambil berbagi sumber daya komputer. Oleh karena itu, tugas programmer adalah
membangun prosesor berkinerja tinggi menggunakan Thread dan proses secara
efisien. Eksekusi Thread dan proses tergantung pada sistem operasi yang
tersedia.
PROSES
Sebuah
proses biasanya merupakan serangkaian
tindakan untuk mencapai hasil tertentu. Namun, di dunia komputer, proses
adalah contoh menjalankan program
komputer. Dengan kata lain, ini adalah konsep
kejadian tunggal dari program komputer yang sedang berjalan. Proses yang
berjalan dalam biner berisi satu atau lebih Thread. Ada dua jenis proses,
tergantung pada jumlah Thread yang terdapat dalam proses. Mereka adalah proses
single-threaded dan proses multi-threaded. Sesuai dengan namanya, proses
single-threaded adalah proses dengan hanya
satu thread. Oleh karena itu, utas ini adalah proses dan hanya satu aktivitas yang dieksekusi. Proses
multithreaded memiliki banyak utas dan beberapa aktivitas berjalan.
Dua atau lebih proses dapat berkomunikasi satu
sama lain melalui komunikasi antarproses. Namun, ini sangat sulit dan
membutuhkan lebih banyak sumber daya. Saat membuat proses baru, programmer
harus melakukan dua hal. Ini adalah replikasi dari proses induk dan alokasi
memori dan sumber daya ke proses baru. Jadi itu benar-benar mahal.
THREAD
Dalam
dunia IT, thread adalah eksekusi minimum dari instruksi dalam program komputer
yang dapat dikelola secara mandiri sesuai
jadwal. Thread adalah jalur sederhana yang berjalan dalam suatu proses. Thread
adalah
proses yang kuat karena mereka dapat melakukan semua yang dapat
dilakukan oleh suatu proses. Utas adalah proses yang sederhana dan membutuhkan
lebih sedikit sumber daya. Utas dapat mulai
membaca dan menulis variabel yang
sama dan struktur data variabel yang sama. Utas dapat dengan mudah
berkomunikasi antar utas.
Hari ini, multithreading telah menjadi
pendekatan alami untuk banyak masalah. Pekerjaan besar dibagi menjadi beberapa
bagian, masing-masing terkait dengan unit eksekusi yang disebut utas. Ini hanya
multithreading. Ini memerlukan perhatian pemrograman karena utas berbagi
struktur data yang dimodifikasi oleh utas lain pada saat yang sama, dan utas
berbagi ruang alamat yang sama. Satu keuntungan dibandingkan utas adalah menyediakan cara yang efisien dan efektif
untuk mencapai paralelisme. Utas adalah entitas yang tidak bergantung pada
penjadwal, sehingga memungkinkan beberapa utas untuk berjalan pada beberapa
prosesor dapat meningkatkan throughput
sistem.
PERBEDAAN PROSES DAN THREAD
- ·
Proses sulit
untuk membuat karena membutuhkan duplikasi proses induk dan alokasi memori
sedangkan thread lebih mudah untuk membuat karena mereka tidak memerlukan ruang
alamat yang terpisah.
- ·
Thread digunakan
untuk tugas-tugas sederhana, sementara proses yang digunakan untuk tugas-tugas
yang berat-berat seperti pelaksanaan aplikasi.
- ·
Proses tidak
berbagi ruang alamat yang sama, namun thread dalam berbagi proses yang sama
ruang alamat yang sama.
- ·
Proses yang
independen satu sama lain, tetapi thread saling bergantung karena mereka
berbagi ruang alamat yang sama.
- ·
Sebuah proses
dapat terdiri dari beberapa thread.
- ·
Karena thread
berbagi ruang alamat yang sama, virtual memori hanya terkait dengan proses tapi
tidak dengan thread. Tapi prosesor virtual yang berbeda dikaitkan dengan setiap
thread.
- ·
Setiap proses
memiliki kode dan data sendiri sedangkan proses thread berbagi kode yang sama
dan data.
- ·
Setiap proses
dimulai dengan thread utama, tapi dapat membuat thread tambahan jika
diperlukan.
- ·
Konteks beralih
antara proses jauh lebih lambat dibandingkan konteks beralih antara thread dari
proses yang sama.
- ·
Thread dapat
memiliki akses langsung ke segmen data, tetapi proses memiliki salinan sendiri
segmen data mereka.
- ·
roses memiliki
overhead tapi tidak thread.
0 komentar:
Posting Komentar