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

dokumen-dokumen yang mirip
Dimana thread digunakan?

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

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

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

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

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

Proses dan Threads Dalam SISTEM OPERAS

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

TUGAS SISTEM OPERASI THREAD

TUGAS SISTEM OPERASI

Perbedaan Kernell Linux dan Windows

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

PERBEDAAN PROSES DAN THREAD PADA SISTEM INFORMASI

Sistem Operasi Pertemuan 3 Deskripsi & Kendali Proses. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

SISTEM OPERASI THREAD DAN MULTITHREADING

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

Sistem Operasi Pertemuan 2 Sistem Operasi. (Pengenalan) H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

THREAD Ulir utas thread

TUGAS SISTEM OPERASI

PROSES DAN THREADS DALAM SISTEM OPERASI

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

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

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

TUGAS Mata Kuliah : Sistem Terdistribusi

Pertemuan #2: Proses dan Thread

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

Soal-jawab Quiz 2. Oleh: Endro Ariyanto (END) Oktober 2008

Sistem Operasi Mobile

PROSES. Sistem Terdistribusi

Perbedaan Anatara Thread dan Proses

Sistem Operasi. Proses dan Thread

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

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

ARTIKEL TENTANG THREAD Definisi Thread

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

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

Secara tidak langsung, proses merupakan program yang sedang dieksekusi.

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

Recap. Proses. Proses. Multiprogramming. Multiprocessing 9/16/2016. Ricky Maulana Fajri

Dukungan Sistem Operasi :

TUGAS MATA KULIAH SISTEM OPERASI ARTIKEL TENTANG PERBEDAAN PROSES DAN THREAD

4 Implementasi Proses

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

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

Struktur Sistem Komputer

THREADS PADA WINDOWS Julius Bata /

Bab 2: Struktur Sistem Operasi. Komponen Sistem Secara Umum

Process Control Block (PCB) Masing-masing proses Direpresentasikan oleh Sistem Operasi dengan menggunakan Process Control Block (PCB),

Soal-jawab Quiz 1. Oleh: Endro Ariyanto (END) Oktober 2008

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

PAPER MULTIPROCESSOR

4. SISTEM OPERASI TERDISTRIBUSI

Pertemuan Ke-11 MULTIPROSESOR

SISTEM OPERASI. Belajar SO?

SISTEM OPERASI (MANAJEMEN PROSES)

Struktur Sistem Komputer

Bab 3: Proses-Proses. Konsep Proses

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

Rahmady Liyantanto liyantanto.wordpress.com

Struktur Sistem Operasi

Nama : Tsani Agustin Aghnia Toibin.S Nim : Prodi : Teknik Informatika Kelas : 21

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

Sistem Operasi Pertemuan 1 Arsitektur Komputer. (Penyegaran) H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

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

Proses. - yaitu program yang sedang dieksekusi Proses merupakan satuan kerja terkecil yang secara individual dijadwalkan oleh sistem operasi

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

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

Soal terdiri dari 50 Pilihan Ganda Setiap soal pilihan ganda hanya satu jawaban yang benar

Operating System: An Overview. Ch. 3: Process Management. Ch. 3: Process Management

Sistem Operasi Komputer

Sistem Terdistribusi Penanganan Proses

SISTEM OPERASI TERDISTRIBUSI

1.Proses control block dalam istilah lain Taks controlling block, Taks struct, atau Switchframe. Jelaskan dan berikan gambaran proses control block?

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

Text Berisi kode programnya

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

Sistem Operasi PENGATURAN PROSES

Operating System: An O verview. Ch. 3: Process Management

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

Sistem Operasi Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization

Bab 3: Proses-Proses. Konsep Proses

KONSEP PROSES (CONT.)

KONSEP PROSES STATUS PROSES

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

Sistem Operasi AGUS PAMUJI. Teknik Informatika

Sistem Operasi. Nama : Bram Dermawan NIM : Kelas : 21 PROGRAM STUDI SISTEM INFORMASI FAKULTAS TEKNOLOGI INFORMASI

Tipe Sistem Operasi. Stand alone Network Embedded

Soal terdiri dari 50 Pilihan Ganda Setiap soal pilihan ganda hanya satu jawaban yang benar

1 Tinjau Ulang Sistem Komputer

Manajemen Proses. Ptputraastawa.wordpress.com. Sistem Operasi Putu Putra Astawa

2. STRUKTUR SISTEM OPERASI

MANAJEMEN MEMORI SISTEM OPERASI

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

BAB II LANDASAN TEORI. informasi menjadi sebuah teks yang tidak dapat dibaca (Ferguson dkk, 2010).

Sistem Operasi. Struktur Sistem Komputer. Adhitya Nugraha. Fasilkom 10/6/2014

Sistem operasi menjalankan banyak dan beragam program :

Hendy Kusumo Nugroho ( kelas A)

Pokok Bahasan: Overview Sistem Operasi Sub Pokok Bahasan: Lima Hal Utama Dalam Pengembangan Sistem Operasi Jenis sistem operasi modern TIU:

Struktur Sistem Komputer. Abdullah Sistem Informasi Universitas Binadarma

BAB II DASAR TEORI. bersifat umum/non-spesifik (general purpose), dan secara khusus dirancang untuk

Transkripsi:

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

Ikhtisar Thread: Kepemilikan sumber daya dan Eksekusi Symmetric Multiprocessing (SMP). Microkernel Studi kasus thread & SMP: Windows Solaris Linux 2

Proses & Thread (1) Proses memiliki dua karakteristik: Resource ownership (kepemilikan sumber daya) proses mempunyai ruang alamat virtual untuk menangani image proses yang didefinisikan dalam PCB Scheduling-execution (penjadwalaneksekusi) Mengikuti suatu path eksekusi (trace), ada pergatian dari satu proses ke lainnya Dua karakteristik ini diperlakukan secara independen oleh sistem operasi. 3

Proses & Thread (2) Unit dari dispatching diacu sebagai thread atau lightweight process Unit dari kepemilikan sumber daya diacu sebagai proses atau task 4

Multithreading Kemampuan dari SO untuk mendukung banyak (multiple), concurrent path eksekusi di dalam suatu proses tunggal. 5

Pendekatan Thread Tunggal MS-DOS mendukung proses pengguna tunggal & thread tunggal. Beberapa UNIX, mendukung banyak proses pengguna (user process) tetapi hanya mendukung satu thread per-proses. 6

Pendekatan Multithreading Java run-time environment (JRE) merupakan proses tunggal dengan banyak thread Banyak proses & thread dijumpai di Windows, Solaris, & versi modern dari UNIX (termasuk Linux) 7

Proses Suatu ruang alamat virtual yang memegang process image Akses terproteksi ke Processor, Proses lain, File, Sumber daya I/O 8

Thread dalam Proses Setiap thread mempunyai Status eksekusi (running, ready, dll.) Konteks thread tersimpan saat tidak berjalan (not running) Stack eksekusi Beberapa storage statis per-thread bagi variabel lokal Akses terhadap memory & sumber daya dari prosesnya (semua thread dari proses saling berbagi pakai) 9

Satu Pandangan Salah satu cara memandang thread adalah sebagai suatu program counter independen yang beroperasi di dalam proses. 10

Thread vs. Proses 11

Keuntungan dari Thread Pembuatan thread baru lebih cepat dari pada proses baru Penghentian thread lebih singkat daripada penghentian proses Switching antara dua thread lebih singkat daripada switching antar proses Thread dapat berkomunikasi satu sama lain Tanpa memanggil kernel 12

Thread di Sistem Single-User Kerja foreground & background Pemrosesan asynchronous Kecepatan eksekusi Struktur program modular 13

Penanganan Thread Tindakan yang mempengaruhi semua thread di dalam proses SO harus mengelola ini pada level proses. Contoh: Mensuspend suatu proses berarti mensuspend semua thread dari proses tersebut Menghentikan suatu proses akan menghentikan semua thread di dalam proses tersebut 14

Aktifitas Menyerupai Proses Thread mempunyai status eksekusi dan dapat sinkron satu dengan lainnya. Menyerupai proses Ada dua aspek penting dalam fungsionalitas thread: Status Sinkronisasi 15

Status Eksekusi Thread Status berasosiasi dengan perubahan dalam status thread Spawn (thread yang lain) Block Isu: akan memblock thread lain atau semua thread Unblock Finish (thread) Mendealokasikan konteks register dan stack 16

Contoh: Remote Procedure Call Anggap: Suatu program yang mengerjakan dua remote procedure call (RPC) Terhadap dua host berbeda Untuk mendapatkan hasil gabungan 17

RPC dengan Thread Tunggal 18

RPC - Satu Thread per Server 19

Multithreading pada Uniprocessor 20

Adobe PageMaker 21

Kategori Implementasi Thread User Level Thread (ULT) Kernel level Thread (KLT) juga disebut: kernel-supported threads lightweight processes. 22

User-Level Thread Semua manajemen thread dikerjakan oleh aplikasi Kernel is not aware of keberadaan thread. 23

Hubungan antara ULT Status Thread & Proses 24

Kernel-Level Thread Kernel memelihara informasi konteks bagi proses & thread Manajemen thread dilakukan oleh kernel, bukan aplikasi Scheduling dilakukan pada basis thread Windows menggunakan pendekatan ini 25

Keuntungan dari KLT Kernel dapat secara simultan menjadwal banyak thread dari proses yang sama pada banyak processor. Jika satu thread dalam suatu proses diblock, kernel dapat menjadwal thread yang lain dari proses yang sama. Rutin kernel sendiri dapat dibuat multithread. 26

Kerugian dari KLT Transfer kontrol dari satu thread ke lainnya di dalam proses yang sama mengharuskan switch modus ke kernel 27

Pendekatan Gabungan Pembuatan thread dikerjakan dalam ruang pengguna (user space) Bagian terbesar dari scheduling & sinkronisasi thread dalam aplikasi Contoh: Solaris 28

Hubungan antara Thread & Proses 29

Symmetric Multiprocessing Secara tradisional, komputer ditampilkan sebagai mesin sequential. Processor mengeksekusi satu demi satu instruksi (satu pada satu waktu) secara urut (sequence) Setiap instruksi adalah suatu urutan operasi Dua pendekatan popular untuk penyediaan parallelism Symmetric MultiProcessors (SMP) Clustering (tidak dibahas di kuliah ini) 30

Kategori Sistem Komputer (1) Single Instruction Single Data (SISD) stream Processor tunggal mengeksekusi stream intruksi tunggal untuk beroperasi pada data yang disimpan dalam memory tunggal Single Instruction Multiple Data (SIMD) stream Setiap instruksi dieksekusi pada himpunan data berbeda oleh processor berbeda 31

Kategori Sistem Komputer (2) Multiple Instruction Single Data (MISD) stream (Tidak pernah diimplementasikan) Serangkaian data ditransmisikan ke suatu himpunan processor, masing-masing mengeksekusi rangkaian instruksi berbeda Multiple Instruction Multiple Data (MIMD) Sekumpulan processor secara simultan mengeksekusi rangkaian instruksi berbeda pada kumpulan data berbeda 32

Arsitektur Processor Parallel 33

Symmetric Multiprocessing Kernel dapat berjalan pada processor manapun Memungkinkan bagian-bagian kernel berjalan secara paralel Biasanya setiap processor melakukan self-scheduling dari pool proses atau thread yang tersedia 34

Organisasi SMP (Typical) 35

Rancangan SO Multiprocessor Isu rancangan utama mencakup Proses atau thread concurrent simultan Scheduling (penjadwalan) Synchronization (sinkronisasi) Manajemen Memory Reliability dan Fault Tolerance 36

Microkernel Microkernel merupakan suatu inti SO kecil yang menyediakan fondasi bagi ekstensiekstensi modular. Pertanyaan besar: seberapa kecil harusnya suatu kernel agar dapat disebut sebagai microkernel Haruskah driver ada dalam user space? Dalam teori, pendekatan ini memberikan fleksibilitas & modularitas derajat tinggi. 37

Arsitektur Kernel 38

Rancangan Microkernel: Manajemen Memory Manajemen memory level bawah (lowlevel): Memetakan setiap page virtual ke frame fisik Sebagian besar tugas manajemen memory terjadi dalam user space 39

Rancangan Microkernel: Komunikasi Antar Proses (IPC) Komunikasi antar proses (Interprocess Communication) atau thread dalam suatu SO mikrokernel adalah melalui message. Suatu message menyertakan: Header yang mengidetifikasi proses pengiriman dan penerimaan, dan Body yang mengandung data langsung, pointer ke suatu block data, atau beberapa informasi kontrol mengenai proses. 40

Rancangan Microkernal: Manajemen I/O & interrupt Di dalam mikrokernel, adalah mungkin menangani interupsi hardware sebagai message dan menyertakan port I/O dalam ruang alamat. Proses user-level tertentu dilewatkan ke interrupt & kernel memelihara pemetaan tersebut. 41

Keuntungan dari Organisasi Microkernel Interface seragam pada request dibuat oleh suatu proses. Extensibility Flexibility Portability Reliability Dukungan sistem terdistribusi Sistem operasi berorientasi obyek 42

Studi Kasus: Pendekatan thd Proses Terhadap proses, beda OS beda bentuk dukungannya. Bagaimana proses dinamakan Apakah thread disediakan Bagaimana proses direpresentasikan Bagaimana sumber daya proses diproteksi Mekanisme apa yang digunakan bagi komunikasi & sinkronisasi antar proses Bagaimana proses dihubungkan satu dengan lainnya 43

Proses Windows Proses & service disediakan oleh kernel Windows relatif sederhana dan bertujuan umum (simple & general purpose) Diimplementasikan sebagai obyek Proses executable dapat mengandung satu atau lebih thread Obyek proses & thread punya kemampuan sinkronisasi built-in. 44

Hubungan Proses & Resource 45

Obyek Proses Windows 46

Obyek Thread Windows 47

Status Thread 48

Dukungan SMP Windows Thread dapat berjalan pada processor apapun Tetapi aplikasi dapat membatasi persamaan Pertalian soft Dispatcher mencoba untuk melewatkan suatu thread ready ke processor yang sama saat berjalan terakhir. Ini membantu reuse data masih dalam yang cache memory processor dari eksekusi thread sebelumnya. Pertalian hard Suatu aplikasi membatasi thread untuk processor tertentu 49

Solaris Solaris mengimplementasikan dukungan thread multilevel yang dirancang untuk menyediakan fleksibilitas dalam mengeksploitasi sumber daya processor. Proses menyertakan ruang alamat pengguna, stack, & PCB 50

Proses Solaris Solaris memanfaatkan empat konsep thread-related: Process: memasukkan ruang alamat pengguna, stack dan PCB. Thread user-level: unit eksekusi user-created di dalam suatu proses. Lightweight process: suatu pemetaan antara thread ULT & kernel. Thread kernel 51

Hubungan Proses & Thread 52

Unix vs Solaris Tradisional Solaris replaces the processor state block with a list of LWPs 53

Struktur Data LWP Suatu pengenal LWP Prioritas dari LWP ini Suatu signal mask Nilai-nilai tersimpan dari register user-level Kernel stack bagi LWP ini Penggunaan resource & profiling data Pointer ke thread kernel yang bersesuaian Pointer ke struktur proses 54

Status Thread Solaris 55

Tugas (task) Linux Proses atau task direpresentasikan oleh suatu struktur data task_struct Ini mengandung sejumlah kategori, termasuk: Status Informasi penjadwalan (scheduling) Pengenal (identifier) Komunikasi antar-proses (IPC) Dan lain-lain 56

Model Proses/Thread Linux 57

Tugas Pertemuan 4 Uraikan jawaban Problems 3.1 & 3.2, 4.1 & 4.2 Baca tutorial Thread Programming di Java & C/C++, buat rangkumannya, sebutkan sumber bacaan anda secara jelas! Jelaskan tentang Mikrokernel, mencakup kelebihannya, kinerja, rancangan, manajemen memory, komunikasi antar proses, manajemen I/O & Interupsi! 58