Sistem Operasi Komputer

dokumen-dokumen yang mirip
Bab 3: Proses-Proses. Konsep Proses

Bab 3: Proses-Proses. Konsep Proses

SISTEM OPERASI (MANAJEMEN PROSES)

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

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

Sistem operasi menjalankan banyak dan beragam program :

KONSEP PROSES STATUS PROSES

4 Proses. Proses. Konsep Proses. Proses. Prosesor mengeksekusi program-program komputer Prosesor adalah sebuah chip dalam sistem

Sistem Operasi. Proses dan Penjadwalannya. Aditya Wikan Mahastama Antonius Rachmat C

Sistem operasi menjalankan banyak dan beragam program :

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

Text Berisi kode programnya

Sistem Operasi 3. Process

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

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

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

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

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

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

Rahmady Liyantanto liyantanto.wordpress.com

Operasi pada Proses. Zaid Romegar Mair, ST., M.Cs

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

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

Sistem Operasi Proses- Dini Triasanti MANAJEMEN PROSES

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

KONSEP INTERAKSI. Adrianus W. K X Aziz Yudi Prasetyo Gregorio Cybill

PROSES. Sistem Terdistribusi

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

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

TUGAS SISTEM OPERASI

Sistem Operasi. Proses dan Thread

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

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

PROSES DAN THREADS DALAM SISTEM OPERASI

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

TUGAS Mata Kuliah : Sistem Terdistribusi

Perbedaan Anatara Thread dan Proses

TUGAS SISTEM OPERASI THREAD

Proses dan Threads Dalam SISTEM OPERAS

TUGAS SISTEM OPERASI

THREAD Ulir utas thread

Pertemuan 2. Struktur Sistem Operasi

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

SISTEM OPERASI THREAD DAN MULTITHREADING

SISTEM OPERASI PROSES-PROSES. Pembahasan

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

Bab 10. Konsep Proses

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

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

Komunikasi Antar Proses Interprocess Communication (IPC)

Perbedaan Proses dan Program

Bab 3 - Manajemen Proses 3.1

Sistem Operasi PENGATURAN PROSES

Pertemuan V Penjadwalan Proses

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

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

PERBEDAAN PROSES DAN THREAD PADA SISTEM INFORMASI

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

STRUKTUR SISTEM OPERASI

STRUKTUR SISTEM OPERASI

Struktur Sistem Komputer

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

Dukungan Sistem Operasi :

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

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.

Andi Gustanto M / Kelas 22 / TI

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

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

B. Jawablah dengan ringkas dan lengkap. (Jawaban tidak lebih dari 10 kalimat) (Nilai 40) Solusi: kata kunci dalam huruf miring.

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

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

Bab 3.Proses dan Penjadualan

Sistem Operasi - PCB (process control block)

REVIEW DAN REVISI BUKU

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

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

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

4. SISTEM OPERASI TERDISTRIBUSI

Struktur Sistem Operasi

Penjadwalan CPU. Badrus Zaman

Struktur Sistem Komputer

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

Proses dan Implementasinya

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

Proses dan Penjadwalan

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

DASAR KOMPUTER. Dukungan Sistem Operasi

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

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

SISTEM OPERASI TERDISTRIBUSI

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

7. Pengaturan Proses

Deskripsi Penjadwalan Proses

SISTEM OPERASI PENJADWALAN PROSES

KONSEP PROSES (CONT.)

SISTEM OPERASI. Sri Kusumadewi

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

Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES

Tipe Sistem Operasi. Stand alone Network Embedded

Transkripsi:

Sistem Operasi Komputer Pertemuan IV Processes Kuis Kecil III Processes 1. Gambarkan daur hidup suatu proses! (15 point) 2. Jelaskan perbedaan antara short-term, medium-term dan long-term scheduling! (15 point) 3. Apa yang dimaksud dengan context switch. Apa yang harus dilakukan oleh kernel ketika context switch terjadi? (20 point) 4. Apa yang diperoleh suatu proses ketika ia dibuat? Kapan suatu proses boleh diberhentikan (diterminasi)? (15 point) 5. Jelaskan secara singkat apa yang dimaksud dengan produser-consumer problem! (20 point) 6. Apa yang dimaksud dengan threads dan sebutkan kegunaannya! (15 point) Universitas Kristen Maranatha -- IT Department 1

Konsep proses Penjadwalan proses Operasi proses Proses Cooperating proses (proses-proses yang bekerjasama) Komunikasi antar proses Buffering Kondisi pengecualian Threads Program dalam SOK dapat berupa Konsep Proses Batch system jobs Time-shared system user program atau tasks Pengertian job dan proses digunakan bersamaan Proses suatu program dalam eksekusi yang terjadi secara sekuensial Suatu proses meliputi: Stack Program counter Data section Proses memerlukan resources: CPU time Memori File I/O devices Universitas Kristen Maranatha -- IT Department 2

Status proses New: proses sedang dibuat Running: proses dapat dieksekusi, karena CPU tidak sedang mengerjakan tugas yang lain Waiting: proses sedang menunggu event yang akan terjadi (I/O atau sinyal lainnya) Ready: proses menunggu jatah waktu dari CPU Terminated: proses selesai dieksekusi (normal ataupun karena error) Diagram status proses Universitas Kristen Maranatha -- IT Department 3

Process Control Blok (PCB) (1) Status proses: new, ready, running, waiting, terminated Program counter: menunjukkan alamat berikutnya yang akan dieksekusi oleh proses yang sedang running CPU registers: accumulator, index register, stack pointer, reg. serbaguna; tergantung arsitektur komputer Process Control Blok (PCB) (2) Selama program counter berjalan, status informasi harus disimpan pada saat terjadi interrupt Informasi penjadwalan CPU: prioritas suatu proses, pointer ke antrian penjadwalan Informasi manajemen memori: nilai tabel basis dan limit register, page table atau segment table Informasi accounting: jumlah CPU dan real time yang digunakan, time limits, account numbers, jumlah proses, dll Informasi status I/O: deretan I/O devices yang dialokasikan untuk proses (tape driver, disks), deretan file yang dibuka, dll Universitas Kristen Maranatha -- IT Department 4

Context switch Proses penyimpanan status proses dan mengambil status proses yang baru pada saat terjadi switching SOK tidak mengerjakan apapun pada saat terjadi context switching (context switch time is overhead) Waktu ini bergantung pada hardware-nya Alih CPU antar proses Universitas Kristen Maranatha -- IT Department 5

Antrian penjadwalan proses Job queue: kumpulan semua proses dalam sistem Ready queue: proses-proses yang ada di memori utama dan menunggu untuk dieksekusi. Disimpan sebagai linked-list dan berisi pointer awal dan akhir PCB. Tiap PCB memiliki pointer field yang menunjuk ke proses berikutnya dalam ready queue Device queue: deretan proses yang menunggu peralatan I/O tertentu Proses berpindah-pindah antar queue dalam daur hidupnya Ready queue dan device queue Universitas Kristen Maranatha -- IT Department 6

Schedulers Longterm (job scheduler): menyeleksi proses-proses dari suatu pool dan ke membawa ke memori utama untuk eksekusi Shorterm (CPU scheduler): menyeleksi proses-proses yang siap eksekusi dan alokasi CPU ke salah satu proses yang siap Proses I/O-bound (doing I/O, short CPU burst) CPU-bound (computation, long CPU burst) Medium Term Scheduling (swapping) Memindahkan proses dari memori (dan dari antrian CPU) Pada saat lain, proses dapat dikembalikan ke memori dan eksekusinya dapat dilanjutkan Digunakan pada time-sharing (multitasking) systems Universitas Kristen Maranatha -- IT Department 7

Operasi Proses Pembuatan (1) Memberi nama (id) Menyisipkan proses pada list proses atau tabel proses Menentukan prioritas awal proses Membuat PCB Mengalokasikan resource awal bagi proses tersebut Operasi Proses Pembuatan (2) Penyebab pembuatan proses: Pada lingkungan batch, sebagai tambahan atas pemberian job Pada lingkungan interaktif, pada saat user baru saja logon Sebagai tanggapan atas suatu aplikasi, seperti: mencetak file Proses menciptakan proses lain Universitas Kristen Maranatha -- IT Department 8

Pohon proses UNIX Pohon proses Bentuk eksekusi: Parent melanjutkan eksekusi beriringan dengan children Parent menunggu hingga beberapa atau seluruh children selesai Bentuk ruang alamat: Child proses adalah duplikat dari parent proses Child proses telah memanggil program ke dirinya Pada akhir proses, child mengembalikan hasil ke parent UNIX (fork system call), dapat paralel antara parent dengan child MS DOS (binary system call), parent akan running setelah child selesai Universitas Kristen Maranatha -- IT Department 9

Operasi Proses Penghentian Proses berhenti jika telah menyelesaikan pernyataan terakhir, dan minta SOK untuk menghentikannya (exit call) Proses dihapus dari list atau tabel, dilanjutkan dengan menghapus PCB proses tersebut Menunggu output data dari children (wait call) Parent dapat menghentikan children proses (abort call) Child melampaui resource yang dialokasikan Task yang dialokasikan ke child tidak lagi dibutuhkan Parent exiting SOK tidak mengijinkan children untuk dilanjutkan, jika parent-nya dihentikan Penghentian cascading (domino efek) Kerjasama proses Proses yang independen tidak dapat dipengaruhi atau mempengaruhi proses lain Cooperating process, dapat dipengaruhi atau mempengaruhi proses lain Keuntungan cooperating process Sharing informasi Kecepatan komputasi Modularitas Keyakinan pengguna Contoh: program MS-Word memanggil paint brush. Menyebabkan waktu penyimpanan yang cukup besar. Diperlukan swapping, dari memori utama ke memori sekunder Universitas Kristen Maranatha -- IT Department 10

Cooperating: Producer-Consumer Problem Producer adalah proses yang menghasilkan informasi, yang akan dipakai consumer Consumer tidak boleh meminta sesuatu yang belum diproduksi produser Unbounded buffer: tidak menggunakan ukuran buffer. Consumer selalu dapat meminta item baru, produser selalu dapat memproduksi Bounded buffer: buffer ukuran tertentu. Consumer harus menunggu jika buffer kosong, produser harus menunggu jika buffer penuh Bounded-Buffer Shared-Memory Solution Shared data #define BUFFER_SIZE 10 Typedef struct {... } item; item buffer[buffer_size]; int in = 0; int out = 0; Hanya dapat menggunakan BUFFER_SIZE-1 elemen dalam buffer. Universitas Kristen Maranatha -- IT Department 11

Bounded-Buffer Producer Process item nextproduced; while (1) { } while (((in + 1) % BUFFER_SIZE) == out) /* penuh */; /* waiting */ buffer[in] = nextproduced; in = (in + 1) % BUFFER_SIZE; Bounded-Buffer Consumer Process item nextconsumed; while (1) { while (in == out) ; /* kosong */ /* waiting */ nextconsumed = buffer[out]; out = (out + 1) % BUFFER_SIZE; } Universitas Kristen Maranatha -- IT Department 12

Producer-Consumer Var in dan out diinisialisasikan dengan nilai nol Buffer yang digunakan bersama diimplementasikan sebagai larik sirkular dengan 2 pointer logika in dan out Variabel in menunjukkan posisi kosong berikutnya pada buffer Variabel out menunjukan posisi penuh pertama pada buffer Buffer kosong, jika in = out Buffer penuh, jika (in+1) % n = out Komunikasi antar proses Interprocess Communication (IPC) Mekanisme untuk komunikasi proses dan sinkronikasi antar proses-proses tersebut Sistem pesan (message system): proses berkomunikasi tanpa melalui shared variabel IPC: send(p, message) dan receive(p, message) Jika proses P1 dan P2 ingin berkomunikasi: Tersedia link Tukar informasi melalui send dan receive Implementasi link komunikasi Fisik (shared memori, hardware bus) Properti logikal Universitas Kristen Maranatha -- IT Department 13

Komunikasi langsung Menyebutkan nama proses secara langsung Send (P, pesan): kirim pesan ke proses P Receive (Q, pesan): terima pesan dari proses Q Link dapat disambungkan secara otomatis antar 2 proses yang ingin komunikasi Link tersebut hanya dapat menghubungkan 2 proses Antar tiap pasang proses ada tepat 1 link Link dapat bersifat unidirectional, namun biasanya bidirectional Komunikasi tak langsung (1) Pengiriman atau penerimaan pesan dilakukan melalui mailbox (port) Setiap mailbox, memiliki id yang unik Proses dapat berkomunikasi jika berbagi mailbox Send (A, pesan): mengirim pesan ke mailbox A Receive (A, pesan): menerima pesan dari mailbox A Link terbentuk jika proses berbagi mailbox Link tersebut dapat menghubungkan lebih dari 2 proses Antar tiap pasang proses yang berkomunikasi, dapat berbagi lebih dari satu link Link dapat berupa unidirectional atapun bidirectional Universitas Kristen Maranatha -- IT Department 14

Komunikasi tak langsung (2) Operasi: Create new mailbox Send dan receive pesan melalui mailbox Destroy mailbox Sharing mailbox P1, P2 dan P3 share mailbox A P1 send; P2 dan P3 receive Siapa yang menerima pesan? Solusi: Buat link yang diasosiasikan dengan paling banyak 2 proses Buat hanya satu proses pada satu saat untuk mengeksekusi operasi receive Buat sistem untuk memilih secara acak penerima pesan. Sender diberitahu siapa yang menerima pesan Buffering Pesan yang dikirim ditempatkan pada buffer. Pesan antri dalam bentuk link, dengan implementasi buffer salah satu dari: Zero capacity: antrian dengan panjang maksimum nol, sehingga tidak ada pesan yang menunggu di link. Pengirim harus menunggu penerima mengirim tanda penerimaan. Bounded capacity: panjang n pesan dalam buffer. Sender harus menunggu jika buffer penuh. Unbounded capacity: panjang pesan dalam buffer tidak tertentu. Sender tidak pernah menunggu. Message passing dapat melakukan blocking ataupun nonblocking. Blocking dikenal juga sebagai synchronous passing Non-blocking dikenal juga sebagai asynchronous passing send dan receive dapat berupa blocking atau non-blocking. Universitas Kristen Maranatha -- IT Department 15

Error pada komunikasi Kondisi pengecualian Penghentian proses: pengirim atau penerima menghentikan komunikasi sebelum pesan diproses Blok tanpa konfirmasi Blok dengan konfirmasi Kehilangan pesan: dapat mengakibatkan kegagalan pada hardware. Cara mengatasi: SOK mendeteksi, kemudian kirim ulang Pengirim mendeteksi, kemudian kirim ulang, jika diminta SOK mendeteksi, kemudian memberi tahu pengirim, pengirim memilih aksi berikutnya Penggunaan timeout untuk mendeteksi Sistem Client-ServerSocket Socket diartikan sebagai titik akhir suatu komunikasi Konkatenasi antara alamat IP dan port Socket 161.25.19.8:1625 mengacu pada port 1625 pada host 161.25.19.8 Komunikasi terjadi antar sepasang socket Universitas Kristen Maranatha -- IT Department 16

Remote Procedure Call (RPC) RPC mengabstraksikan pemanggilan prosedur di antara proses pada suatu sistem jaringan Stubs proxy client-side untuk prosedur aktual dalam server Client stub mengalokasikan server, kemudian meneruskan parameter-parameter Server stub menerima pesan, menerima parameter, dan menjalankan prosedur pada server Eksekusi RPC Universitas Kristen Maranatha -- IT Department 17

Threads A thread is a single sequence stream within in a process Unit dasar utilisasi CPU yang berisi program counter, kumpulan register dan ruang stack disebut dengan thread atau LWP (lightweight process) Thead bekerja sama dengan thread lainnya dalam hal penggunaan bagian kode, data, resource SOK lainnya, seperti: open file dan sinyal secara kolektif (task) Status: ready, blocked, running, terminated. Hanya satu thread aktif dalam satu waktu Thread dapat membuat child thread Thread tidak saling bebas dan tidak terproteksi satu dengan lainnya Suatu task dapat tersusun atas beberapa threads Manfaat threads Meningkatkan tingkat responsi pada proses Penggunaan bersama resource, spt: alamat memori Ekonomis: lebih murah untuk membuat thread dalam proses dan melakukan context switch antar threads, daripada proses Utilisasi arsitektur multiprosesor: thread dapat dijalankan secara bersamaan pada prosesor yang berbeda-beda Universitas Kristen Maranatha -- IT Department 18

User threads: User dan Kernel Thread Diimplementasikan dalam library pada user mode Library: membuat, penjadwalan dan pengelolaan thread secara independen tanpa dukungan kernel Jika suatu thread dalam proses di-blok, maka keseluruhan proses tsb akan turut di-blok Kernel threads: Didukung langsung oleh SOK Jika salah satu thread di-blok, kernel masih dapat menjadwalkan thread yang lainnya untuk eksekusi Single dan multithread Universitas Kristen Maranatha -- IT Department 19

Windows 2000 Threads Implementasi 1-to-1 mapping thread (memetakan satu thread user ke dalam satu thread kernel) Konkurensi karena mengijinkan thread yang lain untuk beroperasi ketika suatu thread membuat system call blocking Setiap thread berisi: Thread id Register set untuk statur prosesor Memisahkan antara user dan kernel stack Area penyimpanan data privat untuk run-time library dan DLL yang berbeda-beda Linux Threads Dikenal sebagai tasks dalam linux Dibuat dengan menggunakan system call Clone() Clone() mengijinkan child task untuk berbagi ruang alamat dengan parent task (proses) Universitas Kristen Maranatha -- IT Department 20

Java Threads Dibuat melalui Memperluas (extend) kelas Thread Mengimplementasikan Runnable Interface Dikelola oleh JVM (java virtual machine) JVM ditempatkan di atas suatu SOK, dapat digunakan untuk menyembunyikan detail SOK di bawahnya JVM menyediakan lingkungan abstrak yang konsisten, java dapat beroperasi dalam setiap platform yang mensupport JVM Java Thread States Universitas Kristen Maranatha -- IT Department 21

Latihan soal 1. Gambarkan dan jelaskan daur hidup proses dalam SOK! (20 point) 2. Apakah yang dimaksudkan dengan Process Control Blok, dan apakah kegunaannya? Apa hubungannya dengan Context Switch? (20 point) 3. Tunjukkan perbedaan antara long-term scheduling, shortterm scheduling dan medium-term scheduling! (15 point) 4. Sebutkan alasan sehingga suatu proses menciptakan suatu proses baru lainnya! Berikan contohnya! Sebutkan pula alasan hingga suatu proses harus dihentikan! (15 point) 5. Jelaskan tentang Consumer Producer Problem dalam konteks kerjasama antar proses! (15 point) 6. Apakah yang dimaksudkan dengan Threads? Apa bedanya dengan Process, dan apa kegunaannya? (15 point) Universitas Kristen Maranatha -- IT Department 22