SISTEM OPERASI ISG2B3 THREAD. Agus Setiawan Program Studi Sistem Informasi Fakultas Rekayasa Industri Telkom University

dokumen-dokumen yang mirip
Definisi (1) ready, dll.) Sering disebut dengan lightweight process. register set, dan stack. sama.

Proses dan Threads Dalam SISTEM OPERAS

TUGAS SISTEM OPERASI THREAD

Contoh (3) Solusinya adalah dengan membuat web server menjadi multi-threading. Dengan ini maka sebuah web server akan membuat thread yang akan mendeng

TUGAS SISTEM OPERASI

ARTIKEL PERBEDAAN PROSES DENGAN THREAD. Di susun Oleh: Nama : Sri Wahyuni Nim :

Artikel Perbedaan Proses Dan Thread. Disusun Oleh : Nama : Rozy Putra Pratama NIM : Prodi : Sistem Informasi

Operating System. Thread. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

PROSES DAN THREADS DALAM SISTEM OPERASI

Thread Proses merupakan sebuah program yang mengeksekusi THREAD tunggal. Kendali thread tunggal ini hanya memungkinkan proses untuk menjalankan satu t

Thread. pada satu waktu. menjalankan banyak tugas/thread. yang sama

Secara tidak langsung, proses merupakan program yang sedang dieksekusi.

SISTEM OPERASI THREAD DAN MULTITHREADING

TUGAS MATA KULIAH SISTEM OPERASI ARTIKEL TENTANG PERBEDAAN PROSES DAN THREAD

KONSEP PROSES (CONT.)

PERBEDAAN PROSES DAN THREAD PADA SISTEM INFORMASI

Definisi: unit dasar dari penggunaan CPU. Thread terdiri dari: thread ID, program counter, register, dan stack.

THREAD Ulir utas thread

Thread juga sering disebut Lightweight process. Proses tradisional ( Heavyweight process ) mempunyai thread tunggal

TUGAS Mata Kuliah : Sistem Terdistribusi

Proses. Sistem Terdistribusi Reza Aditya Firdaus, S.kom

TUGAS SISTEM OPERASI

Bab selanjutnya membahas tentang penggunaan thread pada java, thread bisa memiliki status new, runnable, block, dead.

Rahmady Liyantanto liyantanto.wordpress.com

MAKALAH SISTEM OPERASI Perbedaan Proses dan Thread. Disusun Oleh : NOVITA ANGGRAINI PUTRI

Dimana thread digunakan?

PROSES. Sistem Terdistribusi

Perbedaan Anatara Thread dan Proses

PROSES PENGANTAR DATA TERDISTRIBUSI. Materi: 1. Thread 2. Client/Server 3. Agent

Sistem Operasi Pertemuan 4 Thread, SMP & Microkernel. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

Pertemuan #2: Proses dan Thread

Sistem Operasi. Teknologi Informasi

Algoritma Penjadwalan 2

PROSES DAN THREAD. : Anggo Luthfi Yunanto. Nim : : sistem informasi

Tahun Akademik 2014/2015 Semester II. DIG1I3 - Instalasi dan Penggunaan Sistem Operasi. System Calls dan Thread

Struktur Sistem Komputer

Struktur Sistem Komputer

Konsep SISTEM OPERASI. Pengenalan Sistem Operasi

SISTEM OPERASI. Belajar SO?

Processes. Processes. SISTIM OPERASI (Operating System) IKI-20230

Sistem terdistribusi Processes, Threads and Virtualization pertemuan 3. Albertus Dwi Yoga Widiantoro, M.Kom.

ARTIKEL TENTANG THREAD Definisi Thread

Sistem Terdistribusi Proses. S1 Sistem Komputer Musayyanah, S.ST, MT

Prio Handoko, S.Kom., M.T.I.

SISTEM OPERASI ISG2B3. Agus Setiawan Program Studi Sistem Informasi Fakultas Rekayasa Industri Telkom University

Bab 3.Proses dan Penjadualan

SISTEM OPERASI. CSP 2702 Semester/SKS : 4/3 Program Studi : Sistem Komputer Kamis, Ruang : P-22

Studi Kasus Kernel Linux

Tipe Sistem Operasi. Stand alone Network Embedded

A. Deskripsi Singkat. B. Tujuan Instruksional Umum (TIU) C. Bahasan. SILABUS MATA KULIAH Kode MK: Semester: Bobot SKS: 3. Matakuliah : SISTEM OPERASI

Sistem Operasi. Proses dan Thread

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

MANAJEMEN PROSES. Pointer State proses Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

THREADS PADA WINDOWS Julius Bata /

SISTEM OPERASI. Deskripsi Proses. Multiprogramming. Istilah dalam Proses. (multitasking) MANAJEMEN PROSES. Multiprogramming.

12 Input / Output. Sistem I/O. Hardware I/O. Struktur PC Bus

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

1. New 2. Running 3. Waiting 4. Ready 5. Terminated

THREADS WINDOWS : PEMBUATAN, PENJADWALAN DAN SINKRONISASI Julius Bata Magister Ilmu Komputer Universitas Gadjah Mada

4. Apa yang dimaksud dengan user mode?(nilai 3) Jawab: Adalah kondisi pada saat program user (job) sedang dieksekusi oleh prosesor.

Sistem Operasi Mobile

Sistem Operasi Waktu Nyata (RTOS-Real time Operating System)

Bab I Pengenalan Sistem Operasi. Apa yang dimaksud Sistem Operasi?

Operating System. I/O System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Pertemuan 1# Pengantar Sistem Operasi. Dr. M. Arief Soeleman, M.Kom

Thread, SMP, dan Microkernel (P ( e P rtemuan ua ke-6) 6 Agustus 2014

Perbedaan Kernell Linux dan Windows

Sistem I/O. Hardware I/O Interface Aplikasi I/O Subsystem Kernel I/O Transformasi Permintaan (Request) I/O ke Operasi Hardware Stream Unjuk Kerja

SISTEM OPERASI TERDISTRIBUSI

Proses dan Penjadwalan

I/O (INPUT/OUTPUT) SCHEDULING PADA PERANGKAT ANDROID DENGAN FLASH MEMORY

Jawaban Soal UTS Instalasi dan Penggunaan Sistem Operasi Semester Genap 2014/2015 D3 Teknik Informatika, Fakultas Ilmu Terapan, Universitas Telkom

1. Disk Schedulling 2. Buffering

Pertemuan 2. Struktur Sistem Operasi

Sistem Waktu Nyata dan Multimedia

Pertemuan Ke-11 MULTIPROSESOR

SISTEM OPERASI ISG2B3 MANAJEMEN MEMORI. Agus Setiawan Program Studi Sistem Informasi Fakultas Rekayasa Industri Telkom University

Sistem Operasi Proses- Dini Triasanti MANAJEMEN PROSES

Struktur Sistem Komputer

Bab 3. Proses. Gambar 3.1. Thread

Sistem Operasi - PCB (process control block)

Model Pemrograman Paralel

Bab 3: Proses-Proses. Konsep Proses

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

STRUKTUR SISTEM OPERASI

Arsitektur Sistem Komputer. Operasi Sistem Komputer. Struktur Sistem Komputer. Review:

APLIKASI KOMPUTER. Sistem Operasi. Yusuf Elmande., S.Si., M.Kom. Modul ke: Fakultas Ekonomi dan Bisnis. Program Studi Akuntansi

Sistem Operasi AGUS PAMUJI. Teknik Informatika

Modul ke: APLIKASI KOMPUTER. Sistem Operasi. 02Fakultas FASILKOM. Fajriah, S.Kom, MM. Program Studi Sistem Informasi.

Pengenalan Sistem Operasi

Bab 3. Proses Proses POKOK BAHASAN: TUJUAN BELAJAR: 3.1 KONSEP PROSES

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

Modul ke: Aplikasi Komputer. Sistem Operasi. Fakultas TEKNIK. Muhammad Rifqi, S.Kom, M.Kom. Program Studi. Ilmu Komputer.

Kelas: Nilai (Diisi Dosen):... IF

4. SISTEM OPERASI TERDISTRIBUSI

DCH1B3 Konfigurasi Perangkat Keras Komputer. Input/Output

Hendy Kusumo Nugroho ( kelas A)

TASK MANAGER TUGAS SISTEM OPERASI TITIS SARI PUTRI MI/1-A/22

1. Setelah kita merakit PC, maka agar hardware dapat berfungsi dan fungsi komputer dapat dijalankan, maka kita harus menginstal... a. BIOS d.

Sebagai Kordinator, yang memberikan fasilitas sehingga segala aktivitas yang kompleks dapat dikerjakan dalam urutan yang benar.

Transkripsi:

SISTEM OPERASI ISG2B3 THREAD Agus Setiawan Program Studi Sistem Informasi Fakultas Rekayasa Industri Telkom University

KONSEP DASAR [1] Berbicara tentang process, terdapat beberapa keterkaitan dengan hal berikut : 1. Resource Ownership, process memiliki alokasi resource sendiri, misal alokasi alamat memory, I/O channel, I/O devices, dan files. 2. Scheduling/execution, process dapat memiliki state dan terdapat mekanisme panjadwalan dan prioritas.

KONSEP DASAR [2] Multithreading merujuk kepada kemampuan OS untuk mendukung multipel dan eksekusi secara concurrency di dalam suatu single process. Thead seringkali disebut sebagai lightweight process. Dengan bahasa yang lebih sederhana, Thread merupakan bagian dari process. Dimana process memiliki alokasi resource sendiri dan sedangkan Thread tidak.

THREAD DAN PROSES [1]

Di dalam process, dapat terdiri sari satu atau lebih Thread, dimana masing-masing Thread : Thread memiliki execution state. Access shared memory dan resource yang dimiliki oleh process, dan berbagi dengan Thread yang lainya. THREAD & PROCESS [2]

CONTOH MULTI-THREADING Banyak perangkat lunak yang berjalan pada PC modern dirancang secara multi-threading Contohnya sebuah web browser mempunyai thread untuk menampilkan gambar atau tulisan sedangkan thread yang lain berfungsi sebagai penerima data dari network.

CONTOH MULTI-THREADING Situasi dimana sebuah aplikasi diperlukan untuk menjalankan beberapa tugas yang serupa Contohnya adaah sebuah web server yang dapat mempunyai ratusan klien yang mengaksesnya secara concurrent

CONTOH MULTI-THREADING

PERFORMANCE DENGAN THREAD Pembentukan Thread membutuhkan waktu yang lebih sedikit daripada pembentukan process. Membutuhkan waktu yang lebih sedikit untuk mengakhiri Thread daripada process. Lebih mudah dan cepat untuk melakukan switch antar Thread daripada switch antar process.

THREAD SYNCHRONIZATION [1] Concurrent merupakan mekanisme penjadwalan terhadap beberapa process dalam kondisi hendak dieksekusi secara bersamaan maupun hendak menggunakan suatu resource bersamaan. Key Word dari Concurrent adalah penjadwalan atau scheduling. Parallel merupakan mekanisme eksekusi process yang dikerjakan secara bersama-sama. Kondisi ini sulit sekali dicapai, karena biarpun menggunakan multiprocessor jika beberapa task hendak menggunakan resource yang sama, tetap musti dijadwalkan.

THREAD SYNCHRONIZATION [2] Merupakan mekanisme digunakan untuk mengatur Concurrent Access. Bertujuan untuk menjaga Consistency. Simple Synchronization : Terdapat dua buah Thread yang menggunakan resource yang sama. Untuk menjaga konsistensi, maka diinginkan agar Thread kedua akan dieksekusi jika dan hanya jika Thread pertama selesai dieksekusi. Tanpa adanya komunikasi antara kedua Thread tersebut (Non Inter-Thread-Communication).

ULTS DAN KLTS

USER VS KERNEL THREADS User thread didukung di atas kernel dan diimplementasi oleh thread library pada user level Library menyediakan fasilitas untuk pembuatan thread, penjadualan thread, dan managemen thread tanpa dukungan dari kernel Kelemahannya yaitu apabila kernelnya merupakan thread tunggal maka apabila salah satu user-level thread menjalankan blocking system call maka akan mengakibatkan seluruh proses diblok walau pun ada thread lain yang dapat jalan dalam aplikasi tersebut

USER VS KERNEL THREADS Kernel thread didukung langsung oleh sistem operasi Pembuatan, penjadualan, dan managemen thread dilakukan oleh kernel pada kernel space. Pembuatan dan pengaturan kernel thread lebih lambat dibandingkan user thread

USER VS KERNEL THREADS Keuntungannya adalah jika sebuah thread menjalankan blocking system call maka kernel dapat menjadwalkan thread lain di aplikasi untuk melakukan eksekusi Keuntungan lainnya adalah pada lingkungan multiprocessor, kernel dapat menjadual threadthread pada processor yang berbeda. Contoh sistem operasi yang mendukung kernel thread adalah Windows NT, Solaris, Digital UNIX.

Many-to-One Model MULTITHREADING MODELS memetakan banyak user-level thread ke satu kernel thread Pengaturan thread dilakukan di user space Efisien tetapi ia mempunyai kelemahan yang sama dengan user thread tidak dapat berjalan secara pararel pada multiprocessor

MULTITHREADING MODELS

MULTITHREADING MODELS One-to-One Model memetakan setiap user thread ke kernel thread menyediakan lebih banyak concurrency dibandingkan Many-to-One model Keuntungannya sama dengan keuntungan kernel thread Kelemahannya setiap pembuatan user thread membutuhkan pembuatan kernel thread yang dapat menurunkan performa dari sebuah aplikasi Sistem operasi yang mendukung One-to-One model adalah Windows NT dan OS/2

MULTITHREADING MODELS

MULTITHREADING MODELS Many-to-Many Model multiplexes banyak user-level thread ke kernel thread yang jumlahnya lebih kecil atau sama banyaknya dengan user-level thread Jumlah kernel thread dapat spesifik untuk sebagian aplikasi atau sebagian mesin Developer dapat membuat user thread sebanyak yang diperlukan, dan kernel thread yang bersangkutan dapat bejalan secara pararel pada multiprocessor. Ketika suatu thread menjalankan blocking system call maka kernel dapat menjadualkan thread lain untuk melakukan eksekusi. Sistem operasi yang mendukung model ini adalah Solaris, IRIX, dan Digital UNIX.

MULTITHREADING MODELS

THREAD POOLS Pada web server yang multithreading ada dua masalah yang timbul: 1. Ukuran waktu yang diperlukan untuk menciptakan thread untuk melayani permintaan yang diajukan terlebih pada kenyataannya thread dibuang ketika ia seketika sesudah ia menyelesaikan tugasnya. 2. Pembuatan thread yang tidak terbatas jumlahnya dapat menurunkan performa dari sistem.

THREAD POOLS Solusinya adalah dengan penggunaan Thread Pools : Membuat beberapa thread pada proses startup dan menempatkan mereka ke pools, dimana mereka duduk diam dan menunggu untuk bekerja Ketika server menerima permintaan maka ia akan membangunkan thread dari pool dan jika thread tersedia maka permintaan tersebut akan dilayani Ketika thread sudah selesai mengerjakan tugasnya maka ia kembali ke pool dan menunggu pekerjaan lainnya

THREAD POOLS Keuntungan thread pool: 1. Biasanya lebih cepat untuk melayani permintaan dengan thread yang ada dibanding dengan menunggu thread baru dibuat. 2. Thread pool membatasi jumlah thread yang ada pada suatu waktu. Hal ini pentingpada sistem yang tidak dapat mendukung banyak thread yang berjalan secara concurrent. Jumlah thread dalam pool dapat tergantung dari jumlah CPU dalam sistem, jumlah memori fisik, dan jumlah permintaan klien yang concurrent.

CANCELLATION Thread cancellation adalah sebuah tugas untuk memberhentikan thread sebelum thread tersebut selesai. Thread yang akan diberhentikan disebut target thread. Dua skenario thread cancellationn : 1. Asynchronous cancellation : satu thread memberhentikan target thread seketika itu juga. 2. Deferred cancellation : target thread secara periodik dapat mengecek apakah ia harus berhenti, skenario ini memberi kesempatan kepada target thread untuk memberhentikan dirinya sendiri.

SIGNAL HANDLING (1) Sebuah sinyal digunakan di sistem UNIX untuk memberitahu sebuah proses kalau peristiwa tertentu sedang terjadi. Pola sinyal : - Sebuah sinyal diaktifkan oleh munculnya suatu peristiwa. - Sinyal yang diaktifkan dikirim ke proses. - Sesudah dikirim, sinyal tersebut harus ditangani.

SIGNAL HANDLING (2) Setiap sinyal bisa ditangani oleh salah satu dari 2 handler yang ada : 1. A default signal handler 2. A user defined signal handler Beberapa pilihan kemana sebuah sinyal seharusnya dikirim : 1. Mengirim sinyal ke thread yang dituju. 2. Mengirim sinyal ke semua thread dalam proses. 3. Mengirim sinyal ke thread tertentu dalam proses. 4. Menugaskan thread khusus untuk menerima semua sinyal yang ditujukan pada proses tersebut.