Kamis, 07 Januari 2021

Definisi dan Perbedaan Threads dan Processes

A.      Pengertian Thread

 

Thread adalah sebuah pengontrol aliran program pelaksanaan program dengan

menggunakan kendali tunggal. Operasi yang paling Modern saat ini adalah sistem

yang banyak sekali menyediakan berbagai cara, dan

memungkinkan suatu proses

terkendali dengan baik.

Pendekatan tradisional sebuah thread eksekusi per-proses, dimana konsep thread tidak dikenal.

 

Multithreaded Process

Benefits/manfaat

· Kemampuan reaksi

· Sumber daya berbagi

· Ekonomi

· Scalabilas

 

Thread bermanfaat untuk Multithreading yang berguna untuk Multiprocessor dan Singleprocessor.

Kegunaan untuk system Multiprocessor, adalah :

a) Sebagai unit pararel atau tingkat granularitas pararelisme.

b) Peningkatan kinerja disbanding berbasis proses.

Kegunaan Multithreading pada singleprocessor, adalah :

a) Kerja foreground dan background sekaligus di satu aplikasi.

b) Penanganan asynchronous processing menjadi lebih baik.

c) Mempercepat eksekusi program.

d) Pengorganisasian program menjadi lebih baik.

 

Multicore Programming

Multicore systems mendesak/memaksa para programmer untuk melewati tantangan yang meliputi :

a) pembagian aktivitas

b) Saldo/Timbangan

c) Data yang telah hancure) Pengujian dan debugging

 

B.      Pengertian Process

Satu selingan pada diskusi kita mengenai sistem operasi yaitu bahwa ada sebuah pertanyaan mengenai apa untuk menyebut semua aktivitas CPU. Sistem batch mengeksekusi jobs, sebagaimana suatu sistem time-shared telah menggunakan program pengguna, atau tugas-tugas/ pekerjaan-pekerjaan. Bahkan pada sistem tunggal, seperti Microsoft Windows dan Macintosh OS, seorang pengguna mampu untuk menjalankan beberapa program pada saat yang sama: sebuah Word ProcessorWeb Browser, dan paket e-mail. Bahkan jika pengguna dapat melakukan hanya satu program pada satu waktu, sistem operasi perlu untuk mendukung aktivitas program internalnya sendiri, seperti managemen memori. Dalam banyak hal, seluruh aktivitas ini adalah serupa, maka kita menyebut seluruh program itu proses-proses (processes).

Istilah job dan proses digunakan hampir dapat dipertukarkan pada tulisan ini. Walau kami pribadi lebih mneyukai istilah proses, banyak teori dan terminologi sistem-operasi dikembangkan selama suatu waktu ketika aktivitas utama sistem operasi adalah job processing. Akan menyesatkan untuk menghindari penggunaan istilah umum yang telah diterima bahwa memasukkn kata job (seperti penjadualan job) hanya karena proses memiliki job pengganti/ pendahulu.

 

C.       Perbedaan Proses dan Thread

Sebuah proses adalah sebuah peristiwa adanya sebuah program yang dapat dieksekusi. Sebagai sebuah eksekusi proses, maka hal tersebut membutuhkan perubahan keadaan. Keadaan dari sebuah proses dapat didefinisikan oleh aktivitas proses tersebut. Suatu proses adalah lebih dari kode program, dimana kadang kala dikenal sebagai bagian tulisan. Proses juga termasuk aktivitas yang sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor’s register. Suatu proses umumnya juga termasuk process stack, yang berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan sebuah data section, yang berisikan variabel global. Setiap proses mungkin menjadi satu dari beberapa state berikut, antara lain: new, ready, running, waiting, atau terminated. Setiap proses direpresentasikan ada sistem operasi berdasarkan proses-control-block (PCB)-nya.

  

Saya tekankan bahwa program itu sendiri bukanlah sebuah proses. Suatu program adalah satu entitas pasif, seperti isi dari sebuah berkas yang disimpan didalam disket, sebagaimana sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang mengkhususkan pada instruksi selanjutnya untuk dijalankan dan seperangkatsumber daya/resource yang berkenaan dengannya.

Proses memiliki dua karakteristik namun kedua karakteristik dilakukan secara independen oleh sistem operasi :

- Resource ownership (kepemilikan sumber daya)

Proses mempunyai ruang alamat virtual untuk menangani image proses yang didefinisikan dalam PCB.

- Scheduling-execution (penjadwalan-eksekusi)

Mengikuti suatu path eksekusi (trace), ada pergatian dari satu proses ke lainnya Unit dari kepemilikan sumber daya diacu sebagai proses atau taskuatu thread yang salah dapat menganggu thread yang lain didalam proses yang sama,karena thread berbagai pakai ruang memori virtual dan sumber daya lain yang sama.

 

Thread adalah unit dasar dari penggunaan CPU, thread mengandung 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. Perbedaan antara proses dengan thread tunggal dengan proses dengan thread yang banyak adalah proses dengan thread yang banyak dapat mengerjakan lebih dari satu tugas pada satu satuan waktu.

 

D.  Perbedaan proses dan thread

1.Pembentukan Thread membutuhkan waktu yang lebih sedikit daripada pembentukan process.

2.Membutuhkan waktu yang lebih sedikit untuk menhakhiri Thread daripada process.

3.Lebih mudah dan cepat untuk melakukan switch antar Thread daripada switch antar process.

4.Thread menggunakan secara bersama ruang alamat dari proses yang menciptakannya. Proses memiliki ruang alamat sendiri-sendiri.

5.Thread memiliki akses langsung ke segemen data dari prosesnya. Masing-masing proses memiliki salinan segmen data dari parent process-nya.

6.Thread dapat saling komunikasi dengan thread lain dalam satu process. Antar proses harus menggunakan komunikasi antar proses.

7.Thread hampir tidak memiliki overhead. Proses memiliki overhead.

8.Thread dapat memiliki pengaruh kontrol yang besar terhadap thread lain dalam satu proses. Proses hanya dapat mengendalikan proses anakannya.

9.Perubahan pada thread utama seperti pembatalan atau perubahan prioritas dapat mempengaruhi tingkah laku thread lain dalam satu proses. Perubahan pada parent proses tidak mempengaruhi proses anakan.



Sumber

https://iim6.tripod.com

https://docplayer.info

https://dee-x-cisadane.webs.com

 

 

Tidak ada komentar:

Posting Komentar

PENERAPAN CRM PADA PERUSAHAAN KENTUCKY FRIED CHICKEN(KFC)

  Tidak semua perusahaan atau wirausahawan dapat memberikan sebuah produk yang dijual menyedari pentingnya sebuah pelayanan terhadap konsum...