Rabu, 13 Januari 2021

Definisi dan Perbedaan Tentang Threads dan Processes

  •  Definisi Thread

          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.

  • Definisi Processes

       Processes atau 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.


  • Perbedaaan dari keduanya ?

        Perbedaan dari keduanya adalah sebagai berikut:

  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. 
  10. Perubahan pada parent proses tidak mempengaruhi proses anakan.

Sabtu, 09 Januari 2021

MIMD Multiple Instruction Multiple Data

MIMD  (Multiple Instruction Multiple Data)

MIMD adalah teknik yang digunakan untuk mencapai paralelisme. Mesin yang menggunakan MIMD memiliki sejumlah prosesor yang berfungsi secara sinkron dan mandiri. Kapan saja, prosesor yang berbeda dapat menjalankan instruksi yang berbeda pada bagian data yang berbeda

MIMD Memiliki karakteristik sebagai berikut :

  • Proses didistribusikan ke beberapa prosesor independent
  • Berbagi sumbar daya, termasuk memori, processor
  • Operasi tiap processor secara independent dan simultan
  • Tiap processor menjalankan programnya sendiri

Komputer MIMD: sistem tightly coupled (global memory) dan loosely coupled (local
memory). 

 

 

 

Contoh MIMD :

  • Intel iPSC Machines
    Sistem iPSC terdiri dari: 1, 2 atau 4 unit komputesi (cube) dan prosesor host (cube manager).
    Cube merupakan processing nodes yang terinterkoneksi hypercube yang mempunyai memori
    dan prosesor sendiri.
    Contoh: iPSC/1 terdiri dari 32 nodes, cube manager dan 16 Mbytes memory unshared. Tiap
    node mempunyai arsitektur seperti pada gambar berikut: 
  • Symmetry Machine
    SM dapat memperkejakan 30 processor, dimana merupakan contoh UMA MIMD (tightly
    coupled) 
  • Carnegie-Mellon Multi-Mini_Processor (C.mmp)

 

Processor dikelompokkan ke dalam cluster local dan diorganisasikan kedalam struktur tree
dan berkoneksi lewat Inter-Cluster Buses. Seperti terlihat pada gambar berikut :