Sistem Operasi. Proses dan Thread

dokumen-dokumen yang mirip
Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES

MODUL 4 KONSEP PROSES, KONKURENSI, MANAJEMEN PROSES (1) M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - M O D U L 4

TUGAS Mata Kuliah : Sistem Terdistribusi

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan.

Perbedaan Anatara Thread dan Proses

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

KONSEP PROSES STATUS PROSES

Sistem Operasi PENGATURAN PROSES

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

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

PROSES DAN THREADS DALAM SISTEM OPERASI

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

TUGAS SISTEM OPERASI

PERBEDAAN PROSES DAN THREAD PADA SISTEM INFORMASI

Rahmady Liyantanto liyantanto.wordpress.com

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

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

PROSES. Sistem Terdistribusi

Perbedaan Proses dan Program

Andi Gustanto M / Kelas 22 / TI

SISTEM OPERASI THREAD DAN MULTITHREADING

THREAD Ulir utas thread

Bab 3 - Manajemen Proses 3.1

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

Bab 3: Proses-Proses. Konsep Proses

Bab 10. Konsep Proses

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

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

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

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

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

MANAJEMEN PROSES. Satu Empat Model program counter program counter Proses

BAB II MANAJEMEN PROSES

TUGAS SISTEM OPERASI

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

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

Model Proses : 1. Sequential Process / bergantian 2. Multiprogramming 3. CPU Switching peralihan prosedur dalam mengolah 1 proses ke proses lainnya.

Sistem Operasi - PCB (process control block)

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

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

Apa yang akan dipelajari?

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

Pertemuan #2: Proses dan Thread

PROSES & THREADS 2 AGUS PAMUJI. SISTEM OPERASI - Proses & Threads

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

Sistem operasi menjalankan banyak dan beragam program :

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

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

4 Implementasi Proses

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

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

Konsep Proses. Proses adalah suatu program yang sedang diesekusi (running) Pada saat proses berlangsung :

KONSEP PROSES (CONT.)

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

Dimana thread digunakan?

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

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

SISTEM OPERASI (MANAJEMEN PROSES)

Bab 3: Proses-Proses. Konsep Proses

Sistem Operasi. Proses (Process) 2016

1.PCB (process control block)

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

Nama : Didit Jamianto NIM : Kelas/Prodi : 22 / TI. Tugas Sistem Operasi

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

Sistem Operasi. Divais Input/Output 2016

Struktur Sistem Operasi

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

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

Dukungan Sistem Operasi :

Secara tidak langsung, proses merupakan program yang sedang dieksekusi.

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

7. Pengaturan Proses

Struktur Sistem Komputer

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Sus Pokok Bahasan dan Sasaran Belajar

Sistem Operasi Proses- Dini Triasanti MANAJEMEN PROSES

Tinjaun Umum Sistem Komputer 1

Sistem Operasi Komputer

Proses Control Block. Tugas Sistem Operasi

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

Struktur Sistem Komputer

Danang Puspito Jati A

Pertemuan 4 KONKURENSI

Sistem Operasi. Teknologi Informasi

Tipe Sistem Operasi. Stand alone Network Embedded

Dosen pengampu : Mohamad Dani Sifat : Tutup buku dan peralatan elektronik

Struktur Sistem Komputer. Abdullah Sistem Informasi Universitas Binadarma

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

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

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

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

Konsep SISTEM OPERASI. Pengenalan Sistem Operasi

4. SISTEM OPERASI TERDISTRIBUSI

Laporan Tugas Scheduling Pengantar Sistem Operasi

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

Sleep and Wake Up. Tugas Kuliah. Mata kuliah : CF 1310 Sistem Operasi. Disusun oleh : UZLINA RAHMAWATI FIA MAHANANI

Sistem operasi menjalankan banyak dan beragam program :

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

01/08/2017. Pengertian System Calls :

Sistem Operasi AGUS PAMUJI. Teknik Informatika

Transkripsi:

Sistem Operasi Proses dan Thread

Proses Abstraksi paling utama dalam sebuah sistem operasi Proses adalah abstraksi dari sebuah program yang sedang berjalan (running program): lebih detail pada model proses Abstraksi proses memungkinkan sistem komputer untuk menjalankan lebih dari satu tugas dalam waktu yang sama (secara semu/pseudo) meskipun hanya tersedia satu CPU

Proses Kemampuan untuk menjalankan banyak proses pada satu waktu dimungkinkan dengan adanya dukungan hardware pada mikroprosesor Satu CPU banyak virtual CPU Dengan abstraksi proses (dan thread) maka konkurensi dapat dicapai Teknik yang digunakan untuk mencapai konkurensi pada umumnya adalah melakukan penggiliran (switch) dari satu proses ke proses lain secara cepat

Proses Disebut dengan pseudoparallellism: paralelisme semu Lain halnya jika tersedia lebih dari satu CPU (multiprocessor): real parallelism, paralelism nyata karena betul-betul ada lebih dari satu proses yang berjalan pada satu waktu

Model proses Semua perangkat lunak yang dapat di-running (runnable software) dikelompokkan menjadi proses-proses berurutan (sequential processes) atau singkatnya proses Termasuk di dalam setiap proses adalah program counter (IP), register, dan variabel: setiap proses memiliki CPU -nya sendiri-sendiri (virtual CPU) Multiprogramming: menggilir program secara cepat

Model proses a. Multiprogramming 4 buah program b. Secara konseptual adalah 4 program yang independen c. Hanya 1 program yang aktif dalam 1 waktu

Model proses Karena cara mencapai paralelisme dilakukan dengan menggilir proses, maka dalam membuat program tidak boleh mengasumsikan mengenai pewaktuan (timing) Namun, normalnya proses tidak terpengaruh terhadap teknik multiprogramming yang diterapkan pada sistem operasi maupun kecepatan CPU

Penciptaan proses Inisialisasi sistem Eksekusi pemanggilan sistem penciptaan proses oleh proses yang sedang berjalan Permintaan pengguna untuk menjalankan sebuah proses Dimulainya sebuah batch job

Terminasi proses Normal exit Error exit Fatal error Killed by another process Suka rela/voluntary Terpaksa/ involuntary

Hirarki proses Pada beberapa sistem operasi, pencipataan proses dapat membentuk hirarki Parent process & child process Pada UNIX, parent dan seluruh child process membentuk process group: sinyal dikirimkan ke seluruh anggota process group Pada UNIX, induk dari seluruh proses adalah init Hirarki tidak berlaku pada Windows: semua proses memiliki jenjang yan g sama

Status proses Running: sedang menggunakan CPU Ready: siap untuk di-run setiap saat, sedang berhenti Blocked: tidak siap untuk di-run sampai suatu event terjadi

Implementasi proses Model proses di dalam sistem operasi dikelola dalam process table/process control block: masing-masing proses memiliki satu entri pada process table Berisi informasi: process state, program counter, stack pointer, dll

Implementasi proses Beberapa informasi yang umumnya disimpan di dalam process table

Implementasi proses Bagaimana multiprogramming sesungguhnya dilakukan?

Pemodelan multiprogramming Utilisasi CPU dibanding jumlah proses CPU utilization 1 p n ; n jumlah proses Degree of multiprogramming

Thread Proses di dalam proses: paralelisme di dalam suatu proses Alasan: Memecah menjadi proses-proses kecil mempermudah dalam model pemrogrammannya Menciptakan dan menghancurkan thread lebih cepat dan mudah Meningkatkan unjuk kerja di dalam suatu proses: jika gabungan antara CPU dan I/O bound Sangat berguna pada sistem multiprosesor

Contoh thread Word processor dengan 3 thread

Contoh thread Web server

Contoh thread Cuplikan program Web server: (a) dispatcher thread, (b) worker thread

Model thread klasik Model proses didasari atas 2 konsep yang independen: resource grouping dan execution Proses (resource grouping): cara mengelompokkan sumber daya yang saling terkait instruksi mesin, data, address space, program counter, open file, dll Thread (execution): alur eksekusi, memiliki program counter, stack, dll ( subset dari process table)

Model thread klasik Proses dan thread adalah konsep yang berbeda: proses mengelompokkan sumber daya sementara thread adalah entitas yang dijadwalkan untuk dieksekusi oleh CPU Analogi (rekursi): Proses berbagi memori/ram, disk, mouse, dll Thread berbagi address space dan sumber daya yang dimiliki proses (open file, variabel, dll)

Model thread klasik (a) Single threaded, (b) multithreaded

Model thread klasik Tidak ada proteksi pada thread karena: Impossible Tidak diperlukan Mengapa?

Model thread klasik Sama halnya dengan proses, thread bisa jadi berada di antara 4 kondisi: running, ready, blocked atau terminated Setiap thread memiliki stack tersendiri karena masing-masing memiliki sejarah eksekusi yang berbeda

Model klasik thread Beberapa perintah terkait dengan thread: thread_create, thread_exit, thread_join, thread_yield Thread tidak dapat dikontrol oleh interupsi clock seperti halnya proses, oleh karena itu thread harus menyerahkan CPU secara sukarela dengan perintah thread_yield

Model klasik thread Masalah yang timbul akibat adanya thread: Jika parent process memiliki banyak thread, apakah child process juga mewarisi thread tersebut? Bagaimana jika tidak mewarisi semua thread, padahal thread tersebut dibutuhkan agar proses dapat berjalan? Apa yang terjadi pada thread di masing-masing parent dan child process pada saat terjadi event I/O? Apakah keduanya mendapatkan event yang sama? Bagaimana jika satu thread menutup file sementara masih dibaca oleh thread lain?

Implementasi thread User space Kernel space Hybrid

Interprocess communication Interprocess communication = IPC Komunikasi dapat terjadi di antara proses Contoh: perintah pipe pada shell yang mengirimkan data dari satu proses ke proses lain Komunikasi antarproses pada dasarnya adalah: Bagaimana cara proses mengirimkan informasi ke proses lain Menjamin proses tidak saling mendahului Menjamin urutan eksekusi proses ketika ada dependensi

Contoh, print spooler Proses yang ingin mencetak memasukkan nama file ke dalam spooler directory Printer daemon memeriksa spooler directory apakah ada file yang harus dicetak Ada 2 proses, A & B, ingin mencetak Race condition

Critical region Untuk menjamin race condition tidak terjadi, maka harus ada mekanisme yang mencegah lebih dari satu proses membaca dan menulis sumber daya bersama Dengan kata lain, mutual exclusion Bagian proses yang sedang mengakses sumber daya bersama disebut sebagai critical region atau critical section

Critical region Untuk menghindari race condition: Tidak boleh ada 2 proses berada di dalam critical region Tidak boleh ada asumsi mengenai kecepatan dan jumlah CPU Proses yang tidak berada pada critical region tidak boleh mem-blok proses lain Proses tidak boleh menunggu selamanya untuk masuk ke dalam critical region

Critical region Mutual exclusion dengan critical region

Berbagai teknik mutual exclusion Busy waiting Sleep and wakeup Semaphore Mutex Monitor Message passing Barrier