Konsep Thread Sistem Operasi


Dipostingan kali ini saya akan membahas sesuatu yang termasuk kedalam sistem operasi yaitu thread. Apa itu thread? Thread itu adalah sebuah unit terkecil dalam sebuah proses atau sebuah alat konrol yang berada dalam sebuah proses yang kerjanya bisa dijadwalkan oleh sistem operasi.Thread juga merupakan sebuah status esekusi ready,running,suspend,block,queue dan lain lain ..

Dalam kontrol thread , ada yang bernama thread tunggal yang tugasnya hanya memnugkinkan proses untuk menjalankan satu tugas pada satu waktu.Thread merupakan unit dasar dari penggunaan CPU, yang terdiri dari thread ID,program counter,register set dan stack.Sebuah thread juga berbagi code selection,data selection dan sumber daya sistem operasi dengan thread lain yang dimiliki oleh proses yang sama.

Perbedaan thread dan process : 
1.Proses adalah program yang sedang dalam keadaan esekusi.
2.Dibandingkan process threas lebih ekonomis dalam pembuatannya karena pada solaris,pembuatan proses memakan waktu 30x lebih lama dibandingkan thread. Sedangkan proses context switch 5 kali lebih lama dibandingkan thread
3.Proses IP adress masing masing .Sedangkan thread memiliki ID address yang digunakan secara bersama sama menciptaknannya.

Seperti yang sebelum saya katakan didalam thread ada yang bernama thread tunggal . Sebenarnya bukan thread tunggal saja yang ada , tetapi ada juga yang bernama Multi threading single atau thread banyak.
1.Single threading dan multi threading
Threading adalah sebuah proses sederhana yang mempunyai thread tunggal yang berfungsi memungkinkan menjalankan tugasnya pada satu waktu .Berbeda dengan Multi threading adalah proses dengan thread yang banyak dang mengerjakan tugasnya lebih dari satu tugas dalam satu waktu.

2.Keuntungan  Thread
Banyak macam maca keuntungan dari thread , diantaranya yaitu :
-Responsi
Membuat multithreading dapat mengizinkan untuk membuah sebuah program yang berjalan terus meskipun sebagian dari program yang dipakai tersebut diblok atau melakukan operasi yang panjang, karena sebagai contohnya web browser yang multi threading , sebuah thread dapat melayani permintaan pengguna sementara thread lain dapat berusahan menampilkan image.

-.Pembagian sumber daya
Thread dapat membagi memori dan sumber daya dari proses.Ketika thread berjalan pada data yang sama , thread tersebut bisa berjalan berbagai cache memory.Atau anda bisa mengatakan thread yang berbagi daya dengan thread lain yang dimilki oleh proses yang sama .Keuntungannya adalah mengizinkan sebuah aplikasi yang mempunyai thread yang berbeda dalam lokasi memori yang sama.

-Ekonomis
Dapat mengalokasikan memori dan sumber daya untuk bisa membuat proses adalah sangat mahal.Karena thread tersebut membagi sumber day dari proses yang lebih ekonomis untuk membuat threads.Tetapi akan susah untuk mengukur perbedaan waktu antara proses dan thread dalam hal pembuatan dan pengaturan proses yang lebih lama dibandingkan thread.

- Utilisasi arsitektur Multiprocessor
Keuntungan dari multi threading dapat meningkatkan dengan arsitektur yang multiprosesor ,dimana setiap thread dapat jalan secara paralalel pada prosessor yang berbeda.Pada arsitektur prosessor tunggal,cpu melakukan kerjanya berpindah pindah antara setiap thread yang cepat, sehingga dapat illusi paralisme , tetapi kenyataanya hanya satu tread yang berjalan disetiap waktu.

3.Kerugian Thread
Bukan saja mempunyai keuntungan ,tentunya juga thread mempunyai kerugian . Diantaranya yaitu :
-Kernel level threadhing, thread ini dibuat oleh pengguna yang berkorespondesi 1-1 dengan entitas entitas yang terjadwal pada kernel.
1.Jika digunakan secara berlebihan maka multi threading akan berdampak pada pemborosan resource dan CPU yang dialokasikan untuk switching threads.Misalnya jika heavy disk input atau output relibat, akan lebih cepat jika memiliki 1 atau 2 thread yang melaksanakan tugasnya secara berurutan.
2.Sitem nya memiliki kecepatan prosessor dan memeroy cenderung sama.
3.Multi menghasilkan program yang lebih kompleks.Menggunakan multiple thread sendiri tidak akan menciptakan kerunitan,tapi interaksi antar tread lah uang mengakibatkan kompleksitas tersebut;
4.Thread yang banyak salang beriterferensi ketika saling berbagi sumber daya hardware seperti cache. 

Ikaln Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel