Thread. Thread Proses dengan thread tunggal – proses menjalankan satu tugas pada satu waktu Proses dengan thread tunggal – proses menjalankan satu tugas.

Slides:



Advertisements
Presentasi serupa
Oleh: Muhammad Syauqil Ilmi ( ) Muzakki (09650) Fathiyyatur Rahmah ( )
Advertisements

By : Kelompok 3 Muhamad Shofri Maulidani ( ) Agung Satrio Buwono ( ) Devi Shinta Rahayu ( ) THREAD.
Sistem Terdistribusi 05 – Proses Oleh : Muh. Ary Azali.
KONSEP PROSES Minggu ke 5.
Implementasi Proses.
MANAJEMEN PROSES.
KONSEP THREAD.
Proses Ali akbar. KONSEP PROSES Proses adalah program yang sedang dieksekusi. Eksekusi proses dilakukan secara berurutan. Dalam suatu proses terdapat.
Proses dan Implementasinya
Versi 1, 2013CCS113 – SISTEM OPERASIFASILKOM PERTEMUAN 5 PROSES DAN THREAD 1.
Manajemen Proses.
Proses dan Penjadwalan
Pertemuan 03- Konsep Proses
Versi 1, 2013CCS113 – SISTEM OPERASIFASILKOM PERTEMUAN 6 PROSES DAN THREAD 2.
Pertemuan 3 Manajemen Proses.
PROCESS DAN THREADS Pengertian : Program Proses MonoProgramming
Tim Teaching Grant Mata Kuliah Sistem Operasi
Struktur Sistem Operasi PART 2.
Sinkronisasi dan Deadlock Proses
Operating System Copyright © Mufadhol 1 SISTEM OPERASI Management Process Oleh : Mufadhol, S.Kom.
Thread.
Struktur Sistem Komputer
Kelompok F 1. Arif Febriyanto (33451) 2. Galdita A Chulafak (33024) 3. Atika Fuziyah (32895) 4. Eldest Arif Pasirula (33220) 5. Udi Hartono (33317)
PROSES & THREAD -.
KONSEP THREAD.
MANAJEMEN PROSES PART 2 Dosen : Ahmad Apandi, ST
PROCESS DAN THREADS PROCESS Multiprogramming Pseudoparallelism
MUTUAL EXCLUSION.
PENJADWALAN PROSES.
Struktur Sistem Komputer
Thread.
SISTEM OPERASI Pertemuan 3 : Manajemen Proses
MATAKULIAH SISTEM OPERASI – PENDIDIKAN TEKNIK INFORMATIKA 2008
Oleh: Chalifa Chazar MANAJEMEN PROSES.
Struktur Sistem Komputer
PROSES & THREADS Disajikan Oleh :.
Proses Sistem Terdistribusi.
Konsep Proses.
Proses dan Thread Oleh : Adhitya Nugraha.
Struktur Sistem Operasi
Sistem Operasi 4 “Threads”.
IV. Proses-proses Terdapat beberapa definisi proses, diantaranya proses sebagai program yang sedang dalam keadaan eksekusi Proses membutuhkan sumber daya.
Thread.
THREAD Imam Solikin, M.Kom.
4 PROSES Mata Kuliah Sistem Operasi Mata Kuliah : Sistem Operasi
Process and Tread Saifudin Anshory Abd. Chariz Fauzan Wahyu Hartono
BAB I                       Mata Kuliah  Sistem Terdistribusi _______________________ PROSES SISTER Oleh : Laseri, S.Kom.
THREAD.
Struktur Sistem Komputer
MANAJEMEN PROSES PART 2 Dosen : Ahmad Apandi, ST
PROSES.
Oleh : Rahmat Robi Waliyansyah, M.Kom.
Tim Teaching Grant Mata Kuliah Sistem Operasi
Hierarki Memori Dan Cache Memori..
Hendy Mizuardy SISTEM OPERASI. MANAJEMEN PROSES Konsep Proses Definisi Proses Status Proses Process Control Block (PCB) Konsep Penjadwalan Queue Scheduling.
PROSES.
Manajemen Proses.
Thread Kelompok 4 NAMA : SRI YANTI MONICA ( )
Struktur Sistem Komputer
Oleh : Laseri, S.Kom BAB I                       Mata Kuliah  Sistem Terdistribusi _______________________ PROSES SISTER.
Tim Teaching Grant Mata Kuliah Sistem Operasi
5 Thread.
KONSEP PROSES Minggu ke 5.
Proses dan Thread Oleh : Adhitya Nugraha.
Struktur Sistem Komputer
Struktur Sistem Komputer
Tim Teaching Grant Mata Kuliah Sistem Operasi
PROSES. Definisi Proses Proses adalah program yang sedang dieksekusi, termasuk didalamnya nilai-nilai dalam program counter, register, dan variabel-variabel.
Tim Teaching Grant Mata Kuliah Sistem Operasi
Fathiah, S.T.,M.Eng Universitas Ubudiyah Indonesia
Transcript presentasi:

Thread

Thread Proses dengan thread tunggal – proses menjalankan satu tugas pada satu waktu Proses dengan thread tunggal – proses menjalankan satu tugas pada satu waktu Sistem operasi modern – multithread – proses menjalankan banyak tugas/thread pada satu waktu Sistem operasi modern – multithread – proses menjalankan banyak tugas/thread pada satu waktu Contoh : secara bersamaan mengetik dan menjalankan pemeriksaan ejaan di dalam proses yang sama Contoh : secara bersamaan mengetik dan menjalankan pemeriksaan ejaan di dalam proses yang sama

Thread Multithread pada satu prosesor – dijalankan bergantian dengan waktu yang sangat cepat sehingga tampak bersamaan Multithread pada satu prosesor – dijalankan bergantian dengan waktu yang sangat cepat sehingga tampak bersamaan Multithread pada multi prosesor – benar-benar dijalankan secara bersamaan Multithread pada multi prosesor – benar-benar dijalankan secara bersamaan Hyper threading (HT) – teknologi simultan multithreading oleh Intel Hyper threading (HT) – teknologi simultan multithreading oleh Intel Menjalankan banyak thread secara bersama-sama Menjalankan banyak thread secara bersama-sama Pada tiap inti prosesor, sistem operasi mengalamatkan 2 virtual prosesor Pada tiap inti prosesor, sistem operasi mengalamatkan 2 virtual prosesor OS harus mendukung pemrosesan multiprosesor OS harus mendukung pemrosesan multiprosesor

Thread Suatu thread (atau lightweight process disingkat LWP) berisi : Suatu thread (atau lightweight process disingkat LWP) berisi : Thread ID Thread ID Program counter Program counter Register set Register set Stack space Stack space Suatu thread bersama thread-thread lainnya bisa berbagi : Suatu thread bersama thread-thread lainnya bisa berbagi : Code section Code section Data section Data section Operating system resources Operating system resources

Perbedaan Thread Dengan Proses Thread adalah bagian dari suatu proses Thread adalah bagian dari suatu proses Tiap proses mempunyai informasi status dan sumber daya sendiri, thread berbagi informasi status dan sumber daya dengan thread yang lain dalam satu proses Tiap proses mempunyai informasi status dan sumber daya sendiri, thread berbagi informasi status dan sumber daya dengan thread yang lain dalam satu proses Tiap proses mempunyai alamat yang berbeda, sedangkan thread berbagi alamat yang sama Tiap proses mempunyai alamat yang berbeda, sedangkan thread berbagi alamat yang sama Pergantian antar threads lebih cepat daripada antar proses Pergantian antar threads lebih cepat daripada antar proses

Contoh Multithreading Web browser : memiliki satu thread untuk display image, dan thread yang lain untuk mengambil data dari network. Web browser : memiliki satu thread untuk display image, dan thread yang lain untuk mengambil data dari network. Web server : menerima request dari client untuk halaman web, image, sound, dll. Web server melayani client secara bersamaan (concurrent). Web server : menerima request dari client untuk halaman web, image, sound, dll. Web server melayani client secara bersamaan (concurrent).

Single & Multithreaded Processes

Keuntungan Multithreading Responsif Responsif Multithreading memungkinkan suatu program running walaupun sebagian program di-block atau menjalankan operasi yang lain. Multithreading memungkinkan suatu program running walaupun sebagian program di-block atau menjalankan operasi yang lain. Resource Sharing Resource Sharing Thread dalam suatu proses yang sama dapat men-share memori dan resource dengan thread yang lain. Mengijinkan sebuah aplikasi untuk memiliki beberapa thread yang berbeda dalam lokasi memori yang sama Thread dalam suatu proses yang sama dapat men-share memori dan resource dengan thread yang lain. Mengijinkan sebuah aplikasi untuk memiliki beberapa thread yang berbeda dalam lokasi memori yang sama Ekonomis Ekonomis Alokasi memori dan resource untuk pembuatan proses memiliki cost yang mahal. Dalam hal context-switch, lebih ekonomis bila dilakukan dengan thread context-switch. Alokasi memori dan resource untuk pembuatan proses memiliki cost yang mahal. Dalam hal context-switch, lebih ekonomis bila dilakukan dengan thread context-switch. Utilisasi CPU Utilisasi CPU Meningkatkan kinerja pada arsitektur multiprocessor, dimana thread running secara paralel pada prosesor yang berbeda. Meningkatkan kinerja pada arsitektur multiprocessor, dimana thread running secara paralel pada prosesor yang berbeda.

User Threads Implementasi thread di level pengguna (dengan menggunakan pustaka/library thread). Implementasi thread di level pengguna (dengan menggunakan pustaka/library thread). Pustaka menyediakan fasilitas untuk pembuatan thread, penjadwalan thread, dan manajemen thread tanpa dukungan dari kernel. Pustaka menyediakan fasilitas untuk pembuatan thread, penjadwalan thread, dan manajemen thread tanpa dukungan dari kernel. Keuntungan : Dapat lebih cepat dibuat dan dikendalikan karena tanpa campur tangan kernel Keuntungan : Dapat lebih cepat dibuat dan dikendalikan karena tanpa campur tangan kernel Kelemahan : salah 1 thread pengguna menjalankan blocking system call maka mengakibatkan seluruh proses diblok Kelemahan : salah 1 thread pengguna menjalankan blocking system call maka mengakibatkan seluruh proses diblok

Kernel Threads Didukung langsung oleh sistem operasi Didukung langsung oleh sistem operasi Pembuatan, penjadwalan, dan manajemen thread dilakukan oleh kernel pada kernel space Pembuatan, penjadwalan, dan manajemen thread dilakukan oleh kernel pada kernel space Keuntungan : Keuntungan : jika thread menjalankan blocking system call kernel dpt menjalankan thread lain di aplikasi untuk melakukan eksekusi. jika thread menjalankan blocking system call kernel dpt menjalankan thread lain di aplikasi untuk melakukan eksekusi. Pada lingkungan multiprosesor, kernel dapat menjadwal thread-thread pada prosesor yang berbeda Pada lingkungan multiprosesor, kernel dapat menjadwal thread-thread pada prosesor yang berbeda Kelemahan : lebih lambat daripada user kernel Kelemahan : lebih lambat daripada user kernel

Model-model Multithreading Many-to-One Many-to-One One-to-One One-to-One Many-to-Many Many-to-Many

Many-to-One (User level Threading) Memetakan beberapa user thread ke satu kernel thread Memetakan beberapa user thread ke satu kernel thread Hanya 1 thread pengguna yang dapat mengakses thread kernel pada satu saat  Multi thread tidak dapat berjalan secara paralel pada multiprosesor Hanya 1 thread pengguna yang dapat mengakses thread kernel pada satu saat  Multi thread tidak dapat berjalan secara paralel pada multiprosesor

Many-to-One Model

One-to-One Masing-masing user-level thread dipetakan ke kernel thread Masing-masing user-level thread dipetakan ke kernel thread Keuntungan = keuntungan thread kernel Keuntungan = keuntungan thread kernel Kelemahan = setiap pembuatan user thread memerlukan jg pembuatan kernel thread sehingga dapat menurunkan kinerja aplikasi  jumlah thread dibatasi oleh sistem Kelemahan = setiap pembuatan user thread memerlukan jg pembuatan kernel thread sehingga dapat menurunkan kinerja aplikasi  jumlah thread dibatasi oleh sistem

One-to-one Model

Many-to-Many Memungkinkan banyak user-level thread dipetakan ke banyak kernel thread Memungkinkan banyak user-level thread dipetakan ke banyak kernel thread Memungkinkan sistem operasi membuat jumlah kernel thread yang mencukupi Memungkinkan sistem operasi membuat jumlah kernel thread yang mencukupi Keuntungan : dapat berjalan pada multiprosesor Keuntungan : dapat berjalan pada multiprosesor

Many-to-Many Model

Cancellation Pemberhentian thread sebelum tugasnya selesai Pemberhentian thread sebelum tugasnya selesai Target thread : thread yang akan diberhentikan Target thread : thread yang akan diberhentikan Dapat terjadi melalui dua cara : Dapat terjadi melalui dua cara : Asynchronous cancellation : suatu thread seketika itu juga memberhentikan target thread Asynchronous cancellation : suatu thread seketika itu juga memberhentikan target thread Deferred cancellation : target thread memeriksa apakah dia harus berhenti, cara ini memperbolehkan target thread untuk memberhentikan dirinya sendiri secara terurut Deferred cancellation : target thread memeriksa apakah dia harus berhenti, cara ini memperbolehkan target thread untuk memberhentikan dirinya sendiri secara terurut

Penanganan Sinyal Sinyal dimunculkan oleh suatu kejadian, sinyal tersebut dikirim ke proses, kemudian ditangani. Sinyal dimunculkan oleh suatu kejadian, sinyal tersebut dikirim ke proses, kemudian ditangani. Sinyal diterima secara synchronous / asynchronous tergantung dari sumber dan alasan kenapa peristiwa itu memberi sinyal Sinyal diterima secara synchronous / asynchronous tergantung dari sumber dan alasan kenapa peristiwa itu memberi sinyal Contoh synchronous : pembagian dengan nol, sinyal dikirim ke proses yg melakukan operasi tsb Contoh synchronous : pembagian dengan nol, sinyal dikirim ke proses yg melakukan operasi tsb Contoh asynchronous : sinyal untuk mematikan proses dengan keyboard (Alt+F4) Contoh asynchronous : sinyal untuk mematikan proses dengan keyboard (Alt+F4) Dimunculkan oleh peristiwa di luar proses yang sedang berjalan Dimunculkan oleh peristiwa di luar proses yang sedang berjalan

Thread Pools Masalah multithreading : pembuatan thread terlalu banyak menurunkan performa sistem Masalah multithreading : pembuatan thread terlalu banyak menurunkan performa sistem Solusi : membuat sejumlah thread pada saat startup dan menempatkannya ke dalam pool. Solusi : membuat sejumlah thread pada saat startup dan menempatkannya ke dalam pool. Ketika server menerima request, thread dipanggil. Ketika server menerima request, thread dipanggil. Jika selesai, thread kembali ke pool Jika selesai, thread kembali ke pool Keuntungan : lebih cepat dan membatasi jumlah thread yang ada pada suatu waktu Keuntungan : lebih cepat dan membatasi jumlah thread yang ada pada suatu waktu

Thread specific data Thread yang dimiliki oleh suatu proses memang berbagi data tetapi setiap thread mungkin membutuhkan duplikat dari data tertentu untuk dirinya sendiri dalam keadaan tertentu. Data ini disebut thread-specific data. Thread yang dimiliki oleh suatu proses memang berbagi data tetapi setiap thread mungkin membutuhkan duplikat dari data tertentu untuk dirinya sendiri dalam keadaan tertentu. Data ini disebut thread-specific data.