Sistem Operasi Prio Handoko, S.Kom., M.T.I. Program Studi Teknik Informatika Universitas Pembangunan Jaya Jl. Boulevard - Bintaro Jaya Sektor VII Tangerang Selatan Banten 15224 Esensi Konsep Proses Multithreading Fungsionalitas Thread Level Thread Kernel Level Thread Symmetric Multiprocessing (SMP) Mikrokernel 1
Karakterstik Proses 1. Unit Kepemilikan Resources Alokasi ruang alamat virtual untuk menampung proses image 2. Unit Pengiriman (Dispacthing) Proses merupakan sebuah lintasan eksekusi (trace) melalui sebuah program atau lebih Definisi: Kemampuan sistem operasi untuk mendukung sejumlah thread di dalam proses tunggal. Satu Proses Satu Thread Satu Proses Multi-Thread 2
Multi-Proses Satu Thread Per Proses Multi-Proses Multi-Thread Per Proses Pada multithreading, proses didefinisikan sebagai unit proteksi dan unit alokasi sumber daya Thread Content: 1. State proses (running, ready, blocked,dll) 2. Konteks thread (register PC independen) yang tersimpan pada saat tidak berjalan 3. eksekusi 4. Beberapa penyimpanan statis per thread variabel-variabel lokal 5. Akses ke memory dan resources proses yang dipakai bersama thread-thread lainnya di dalam proses tersebut 3
Perbedaan proses dan thread berdasarkan sudut pandang manajemen proses: menyimpan informasi proses OS PCB data dan instruksi yang sedang digunakan proses pemakai Address Space Kernel menyimpan register image, prioritas, dan informasi thread thread thread thread Thread Control Block Thread Control Block Thread Control Block PCB Address Space Kernel Kernel Kernel 4
Definisi: Membagi job menjadi beberapa bagian yang secara simultan diproses secara bersamaan pada sistem uniprocess. Komponen Pipelining: 1. Pipe 2. Latches (Thread Register Independent) Contoh penggunaan thread: 1. Foreground dan Background Work 2. Asynchronous Processing 3. Speed Execution 4. Organizing Program 5
Keadaan thread 4 operasi dasar thread: 1. Spawn 2. Block 3. Unblock 4. Finish Singkronisasi thread Penyelarasan antar setiap thread, baik waktu maupun sumber daya yang digunakan baik thread job yang sama maupun job yang berbeda. JOB1 JOB2 JOB3 6
Threads Library Space Kernel Space P Latihan: Diketahui sistem komputer menerima 3 buah job dalam waktu yang bersamaan. Job1 melakukan proses perhitungan logika (A >= B) OR (A>= C), job2 dan job3 sama-sama melakukan pengolahan aritmatika masing-masing (5+7) / (6-4) dan 12 5 * 4. Jika setiap proses pada masing-masing job merupakan sebuah thread proses, maka: 1. Gambarkan antrian thread job-job tersebut pada state ready 2. Gambarkan proses pengerjaan ketiga job tersebut berdasarkan gambar proses pipelining. 7
Jawab: 1. Gambarkan antrian thread job-job tersebut pada state ready 2. Gambarkan proses pengerjaan ketiga job tersebut berdasarkan gambar proses pipelining. Latihan: Batch1: JOB1 2+3 * ((5-1 )/2) JOB2 (A <= B) AND (A>=C) JOB3 12 mod 2 Batch2: JOB1 3 * (7 4) Batch3: JOB2 1o + 4 / 2 JOB1 (A<>B) JOB2 1o / 2 JOB3 X mod 3 = 1 JOB4 (15 4) *(2 + 6 / 3) Pertanyaan: Gambarkan antrian thread job-job tersebut pada state ready 8
Jawab: 1. Gambarkan antrian thread job-job tersebut pada state ready! A J O S D M Q G B H E K C N F I P L R T U Latihan: Blocked Thread: Batch1: JOB1 2+3 * ((5-1 )/2) 1 dan 2 JOB2 (A <= B) AND (A>=C) 2 JOB3 12 mod 2 - Batch2: JOB1 3 * (7 4) 1 JOB2 1o + 4 / 2 - Batch3: JOB1 (A<>B) 1 JOB2 10/ 2 - JOB3 X mod 3 == 1 2 JOB4 (15 4) *(2 + 6 / 3) 3 dan 4 Pertanyaan: Gambarkan antrian thread job-job tersebut pada state ready 9
Latihan: Blocked Thread: Batch1: JOB1 2+3 * ((5-1 )/2) 1 dan 2 JOB2 12 mod 2 - Batch2: JOB1 3 * (7 4) - Batch3: JOB1 (A<>B) 1 JOB2 (15 4) *(2 + 6 / 3) 3 Pertanyaan: Jika diketahui setiap thread diproses selama 2 detik dan setiap blocked memakan waktu 3 detik, maka gambarkan antrian thread job-job tersebut pada state ready Threads Library Space Kernel Space P 10
2 pendekatan paralelisme prosesor: 1. SMP (Symmetric Multiprocessing), melibatkan hardware arsitektur komputer multiprosesor dimana dua atau lebih prosesor yang identik terhubung ke memori utama tunggal bersama dan dikendalikan oleh scontoh OS tunggal. 2. Cluster Arsitektur SMP [Flynn72]- Kategori Sistem Komputer: 1. SISD 2. SIMD 3. MISD 4. MIMD (cluster) Paralel Processor SIMD MIMD Loosly Coupled Cluster sebuah sistem dimana tiap komponen memiliki atau memanfaatkan komponen lain yang hanya memiliki sedikit informasi Master/Slave Tightly Coupled Symmetric Multiprocessing sebuah sistem di mana cpu terhubung bersama sedemikian rupa dan berbagi beberapa atau semua memori sistem dan I/O 11
Sistem Operasi Prio Handoko, S.Kom., M.T.I. Program Studi Teknik Informatika Universitas Pembangunan Jaya Jl. Boulevard - Bintaro Jaya Sektor VII Tangerang Selatan Banten 15224 12