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

dokumen-dokumen yang mirip
Sistem operasi menjalankan banyak dan beragam program :

Sistem operasi menjalankan banyak dan beragam program :

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

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

Bab 3: Proses-Proses. Konsep Proses

Bab 3: Proses-Proses. Konsep Proses

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

TUGAS SISTEM OPERASI

PROSES DAN THREADS DALAM SISTEM OPERASI

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

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

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

Text Berisi kode programnya

Rahmady Liyantanto liyantanto.wordpress.com

THREAD Ulir utas thread

Sistem Operasi PENGATURAN PROSES

TUGAS SISTEM OPERASI

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

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

KONSEP PROSES STATUS PROSES

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

Perbedaan Anatara Thread dan Proses

SISTEM OPERASI (MANAJEMEN PROSES)

Dimana thread digunakan?

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

Pertemuan #2: Proses dan Thread

Andi Gustanto M / Kelas 22 / TI

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

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

Dukungan Sistem Operasi :

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

PROSES. Sistem Terdistribusi

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN 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

Sistem Operasi. Proses dan Thread

Bab 10. Konsep Proses

PERBEDAAN PROSES DAN THREAD PADA SISTEM INFORMASI

Sistem Operasi. Proses (Process) 2016

Sistem Operasi Komputer

SISTEM OPERASI THREAD DAN MULTITHREADING

TUGAS Mata Kuliah : Sistem Terdistribusi

Perbedaan Proses dan Program

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

Penjadualan CPU. Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm

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

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

TUGAS SISTEM OPERASI THREAD

Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm

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

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

Bab 3 - Manajemen Proses 3.1

Sistem Operasi 3. Process

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

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

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

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

Studi Kasus Kernel Linux

Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES

Sistem Operasi - PCB (process control block)

DASAR KOMPUTER. Dukungan Sistem Operasi

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

Penjadualan CPU. Konsep Dasar. Penjadualan CPU. Penggantian Rangkaian Urutan CPU dan I/O Burst

Forking Proses Pada Sistem Operasi Linux Agustina Budiarti 2) Abstrak

SISTEM OPERASI PENJADWALAN PROSES

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

Sistem Operasi. Teknologi Informasi

Struktur Sistem Operasi

Proses dan Threads Dalam SISTEM OPERAS

SISTEM OPERASI ( DITINJAU DARI SEGI PROSES) Seperti diketahui bahwa sistem operasi, terdiri dari sekumpulan

Pertemuan 2. Struktur Sistem Operasi

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

Pertemuan V Penjadwalan Proses

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

THREADS PADA WINDOWS Julius Bata /

Bab 13. Konsep Penjadwalan

Struktur Sistem Komputer

Proses Control Block. Tugas Sistem Operasi

KONSEP PROSES (CONT.)

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

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

Konsep SISTEM OPERASI. Pengenalan Sistem Operasi

Computer System Structures

Operating-System Structures (Ch. 3)

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

Secara tidak langsung, proses merupakan program yang sedang dieksekusi.

STRUKTUR SISTEM OPERASI

1.PCB (process control block)

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

Struktur Sistem Operasi

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

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

Manajemen Proses. Komponen Sistem Umum. Struktur Sistem Operasi

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

MANAJEMEN MEMORI. Manajemen Memori 1

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

Struktur Sistem Komputer

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

Memory Management. Memory Ch. 8. Latar Belakang. Main-Memory Management

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

Ch t ap 7 er Operating System (OS)

Transkripsi:

Processes SISTIM OPERASI (Operating System) IKI-20230 Fakultas Ilmu Komputer Universitas Indonesia Semester 2000/2001 Processes Konsep Proses Penjadwalan Eksekusi Proses Operasi terhadap Proses Lightweight process: Threads OS Processes JM-2000/v1.1/2 1

Process Concept OS menjalankan banyak dan beragam program Batch system jobs Time-shared systems user programs or tasks Istilah pada buku teks: job, task dan process (dapat diartikan sama) Process a program in execution; Aktif (proses=>memori) vs pasif (program => file) Instruksi pada program (code) akan dieksekusi secara berurut (sekwensial) sesuai dengan line code (stored program concept). Proses lebih dari program code yang aktif : Melacak posisi instruksi (sequential execution): program counter Menyimpan data sementara var., parameter, return value: stack Menyimpan data (initial, global variable dll): data section Menyimpan status proses (contoh, aktif, wait I/O request dll.) OS Processes JM-2000/v1.1/3 Process Information Dimanakah informasi proses disimpan? Data struktur dari OS dalam bentuk table Satu entry table/linked list => struktur data untuk menampung informasi satu proses (array of structure). Setiap entry pada tabel proses menyimpan satu proses Contoh: MINIX (src/kernel/proc.h) => struct proc { }; Informasi yang disimpan: Informasi internal CPU: isi register-register, program counter, status CPU dll (umumnya dalam bentuk stack frame). Identifikasi proses: nama proses, proses number/index, proses id. Status (flags): runnable, blocked (wait: message atau I/O request) dll. Accounting dan timer: user time, system time, alarm etc. Resources: memory & file management. OS Processes JM-2000/v1.1/4 2

Process Control Block (PCB) OS Processes JM-2000/v1.1/5 Process State Saat-saat proses dijalankan (executed) maka status dari proses akan berubah Status proses tidak selamanya aktif (menggunakan CPU). Sering proses menunggu I/O complete => status wait, sebaiknya CPU diberikan kepada proses yang lain. Mendukung multi-tasking utilisasi CPU dan I/O Status proses (antara lain): new: The process is being created. running: Instructions are being executed. waiting: The process is waiting for some event to occur. ready: The process is waiting to be assigned to a process. terminated: The process has finished execution. OS Processes JM-2000/v1.1/6 3

Diagram of Process State Perhatikan: Tidak semua state mempunyai transisi. Q: manakah transisi yang disebabkan oleh event eksternal? OS Processes JM-2000/v1.1/7 Process Scheduling Apakah objektif dari multiprogramming? Maximize pemakaian CPU secara efisien (jadwal dan giliran pemakaian CPU). => CPU digunakan oleh proses-proses terus menerus Apakah objektif dari time-sharing? Pemakaian CPU dapat di switch dari satu proses ke proses lain (concurrent process execution) => sesering mungkin, user dapat berinteraksi dengan sistim Bagaimana jika sistim prosesor tunggal? Hanya ada satu proses yang dapat dijalankan Proses lain menunggu sampai CPU dapat dijadwalkan (schedule) ke proses tsb OS Processes JM-2000/v1.1/8 4

Queue & I/O Device OS Processes JM-2000/v1.1/9 Process Scheduling Proses dapat berubah status dan berpindah dari satu antrian ke antrian yang lain Proses dengan status ready berada di ReadyQueue Menunggu giliran/dipilih oleh scheduler => menggunakan CPU Selama eksekusi (status run ) events yang dapat terjadi: I/O request => I/O wait berada pada DeviceQueue Create child proses => Jalankan proses child, tunggu sampai proses selesai (wait) Time slice expired => Waktu pemakaian CPU habis, interrupt oleh scheduler, proses akan berpindah ke ReadyQueue OS Processes JM-2000/v1.1/10 5

Process Scheduling OS Processes JM-2000/v1.1/11 Schedulers Q: Bagaimana schedulers memilih proses atau program (decision)? Lebih dari satu proses atau program yang akan dijalankan? Long-term scheduler (or job scheduler) memilih proses/program yang mana yang akan di load dan berada di ready queue. Kemungkinan terdapat proses atau job baru. Kemungkinan proses dipindahkan dari memori ke disk (swap out). Short-term scheduler (or CPU scheduler) memilih proses yang mana yang berada di ready queue akan run (mendapatkan jatah CPU). OS Processes JM-2000/v1.1/12 6

Schedulers (Cont.) Long-term scheduler tidak sering (proses baru) (seconds, minutes) (may be slow). The long-term scheduler controls the degree of multiprogramming => berapa banyak proses yang dapat aktif (berada di memori) Short-term scheduler dijalankan sangat sering (milliseconds) => giliran pemakaian CPU dari prosesproses yang siap Pada saat terjadi penggantian alokasi CPU dari satu proses ke proses lain: Menyimpan informasi internal CPU dari proses yang akan digantikan (SAVE). Meload kembali informasi internal CPU dari proses yang akan menggantikan. Dikenal dengan istilah: context switch proses. OS Processes JM-2000/v1.1/13 Context Switch Jika Scheduler switch ke proses lain, maka sistim harus menyimpan informasi proses sekarang (supaya dapat dijalankan kembali) Load informasi dari proses baru yang berada di PCB Context-switch time is overhead; the system does no useful work while switching. Time dependent on hardware support. OS modern mencari solusi untuk mengurangi overhead waktu switch proses OS Processes JM-2000/v1.1/14 7

CPU Context Switch OS Processes JM-2000/v1.1/15 Process Creation Umumnya proses dapat membuat proses baru (child process). Child process dapat membuat proses baru. Terbentuk tree dari proses. Pilihan hubungan antara parent dan child proses: Resource sharing Parent and children share all resources. Children share subset of parent s resources. Parent and child share no resources. Execution Parent and children execute concurrently. Parent waits until children terminate. OS Processes JM-2000/v1.1/16 8

Process Creation (Cont.) UNIX dan MINIX: fork system call creates new process, execve (EXEC) : menjalankan program spesifik yang lain nama program tersebut menjadi parameter dari system call EXEC (sering di load sesudah menjalankan fork). Tahapan pembuatan proses baru: Periksa apakah masih terdapat ruang pada PCB. Mencoba mengalokasikan memori untuk proses baru. Mengisi informasi untuk proses baru: nama proses, id, copy data dari parent dll. Mencantumkan informasi proses ke kernel OS. OS Processes JM-2000/v1.1/17 UNIX: tree process OS Processes JM-2000/v1.1/18 9

Process Termination Proses dapat berakhir: Eksekusi instruksi terakhir (atau keluar: exit system call). OS yang akan melakukan dealokasi (memory, file resources). UNIX (MINIX): Output signal dari child ke parent Jika parent tidak menunggu (via wait system call), proses akan terminate tapi belum di release dari PCB (status: ZOMBIE). Proses dengan status ZOMBIE (parent telah terminate), akan menjadi child dari proses init. Parent dapat menghentikan eksekusi proses child secara paksa. Parent dapat mengirim signal (abort, kill system call). OS Processes JM-2000/v1.1/19 Threads Suatu thread (or lightweight process) adalah unit dasar untuk menggunakan resources CPU: program counter register set stack space Umumnya thread dapat melakukan sharing dengan thread lain informasi/data lain yang diperlukan: code section data section operating-system resources: memory dan file Kumpulan thread-thread membentuk satu task. A traditional or heavyweight process is equal to a task with one thread OS Processes JM-2000/v1.1/20 10

Thread (2) Multiple processes Proses beroperasi secara independent satu sama lain => melindungi proses Setiap proses mempunyai sendiri address space Berguna jika job dari proses tsb tidak saling berhubungan Multiple threads Berada pada lingkup dari satu task (misalkan satu program). Beroperasi seperti proses (status, antrian untuk mendapatkan jatah CPU). Hanya ada satu thread yang dapat aktif pada satu saat. Setiap thread mempunyai sendiri informasi internal CPU untuk thread tersebut. Memori dan file dari task dapat diakses (share) oleh sekumpulan thread. OS Processes JM-2000/v1.1/21 Threads (3) Multi-threading: Jika satu thread sedang block/wait, thread lain dari task tsb dapat dijalankan, Overhead sangat kecil: tidak ada perubahan context memory management (shared address space) Representasi aplikasi => kerja sama thread untuk meningkatkan kinerja dan response sistim. Fasilitas: Pengolahan sekwensial => blok pada system call Pengolahan dapat dialihkan ke alur yang lain (parallel) Contoh: Server dapat menjalankan beberapa thread sekaligus supaya dapat melayani lebih dari satu client. OS Processes JM-2000/v1.1/22 11

Multiple Threads within a Task OS Processes JM-2000/v1.1/23 Solaris 2: example Solaris 2 : versi UNIX mendukung threads di kernel, user levels dan LWP (light weight process). LWP light weight process: interface antara user-level threads and kernel-level threads. LWP melakukan penggabungan user level-thread menjadi kernel level threads Resource needs of thread types: Kernel thread: Thread sebenarnya yang mendapat jatah CPU, jika kernel thread block, maka LWP dan user level thread akan block juga relatively fast. User-level thread: hanya memerlukan stack & program counter; no kernel involvement means fast switching. User level akan didukung oleh LWP untuk menggunakan kernel LWP: PCB with register data, accounting dan informasi alokasi memory; switching between LWPs is relatively slow. Kernel hanya melihat LWPs OS Processes JM-2000/v1.1/24 12

Solaris 2: Threads OS Processes JM-2000/v1.1/25 13