3. Process & Context Switch in Operating System.pptx

FauziaNingrum 6 views 20 slides Jun 01, 2024
Slide 1
Slide 1 of 20
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20

About This Presentation

Process in Operating System


Slide Content

Process

1 Process Concept 5 Interprocess Communication 2 Process Schedulling 6 Shared Memory System 3 Context Switch 7 Message-Passing System 4 Operation on Process Outline

Process Concept Process – a program in execution ; sebuah proses di eksekusi secara berurutan. Thread - unit of execution within the process ; alur eksekusi yang independen yang berjalan dalam konteks proses yang sama Dalam 1 proses ada banyak thread

Back to Agenda New Ready Process State Status proses akan berubah ketika proses sedang di eksekusi. Status proses dipengaruhi oleh keadaan proses pada saat ini. Pembuatan proses. Proses menunggu untuk diteruskan ke prosesor. Running Proses sedang di eksekusi. Waiting Proses menunggu sebuah event. Terminate Proses selesai dilakukan.

Process State

Process Control Block (PCB) Tiap proses di representasikan dalam OS sebagai Process Control Block (PCB) - Task Control Block. Process state – running, waiting, etc. Program counter – location of instruction to next execute CPU registers – contents of all process-centric registers CPU scheduling information- priorities, scheduling queue pointers Memory-management information – memory allocated to the process Accounting information – CPU used, clock time elapsed since start, time limits

Process Control Block (PCB) Tiap proses di representasikan dalam OS sebagai Process Control Block (PCB) - Task Control Block. I/O status information – I/O devices allocated to process, list of open files

Process Scedulling Multiprogramming objective ==> Beberapa proses berjalan dalam satu waktu --> Memaksimalkan kinerja CPU. Time Sharing objective ==> Switch antara CPU dan beberapa proses yang berjalan secara cepat, sehingga user masih dapat berinteraksi dengan proses tersebut. Multiprogramming + Time Sharing = Process Schedulling Process Schedulling ==> Memilih proses yang tersedia untuk bisa di eksekusi ke CPU. Single processor hanya bisa mengeksekusi satu proses Jika ada banyak proses ==> menunggu sampai CPU idle.

Job Queue ==> Kumpulan proses/task yang sedang menunggu untuk di sistem untuk masuk ke Main Memory. Ready Queue ==> Kumpulan proses/task yang telah berada di Main Memory, dan sedang menunggu untuk di eksekusi di CPU. Scedulling Queue

Context Switching Context Switching ==> Switch context from one process to another process. Context berisi tentang status saat ini atau informasi saat ini tentang suatu proses.

Operation on Process Process Creation Sebuah proses yang membuat proses baru disebut sebagai child process. Parent process ==> Proses yang membawahi child process

Operation on Process Process Termination Suatu proses mengakhiri sesinya ketika selesai mengeksekusi final content. OS diminta untuk menghapus sesi menggunakan exit () system call . Proses akan mengembalikan status menjadi parent melalui wait () system call. Process resource tidak akan dikembalikan oleh OS. Parent process akan terminate eksekusi dari child process jika : Menggunakan resource terlalu banyak Task no longer available Parent exit, sehingga OS tidak mengizinkan Child process untuk melanjutkan task Back to Agenda

Interprocess Communication (IPC) Proses yang berjalan di OS dapat berjalan secara INDEPENDENT atau COOPERATE Independent Process Proses yang berjalan sendiri tanpa melibatkan sharing data dengan proses yang sedang di eksekusi dalam sistem. Cooperate Process Proses yang berjalan dengan melibatkan kerja sama antar sistem sehingga berpengaruh terhadap proses yang sedang di eksekusi dalam sistem Ada beberapa alasan untuk menyediakan lingkungan yang memungkinkan cooperate process: Sharing Data Computation Speed Convenience

Interprocess Communication (IPC) Cooperate Process butuh IPC untuk melakukan proses sharing data. Dua model dari IPC : Shared Memory & Message Passing Shared Memory Bagian memory yang digunakan untuk sharing data dibagikan oleh IPC, sehingga dapat melakukan “reading data” dan “writing data” . Message Passing Komunikasi terjadi melalui pertukaran pesan antara proses-proses yang saling bekerja sama.

Interprocess Communication (IPC)

IPC yang menggunakan shared memory membutuhkan proses yang saling berkomunikasi untuk menciptakan bagian memory yang di sharing . Umumnya, bagian memory yang di sharing terletak pada addres space dari sebuah proses. Proses lain yang ingin berkomunikasi melalui shared memory harus memberikan address spacenya juga. Normalnya, OS akan mencegah akses memori antar proses. Shared memory membutuhkan dua proses atau lebih untuk bisa mencabut larangan tersebut Shared Memory System

Producer-Consumer Problem Contoh dari Shared-Memory System Producer Menghasilkan atau mengisi data ke dalam shared buffer. Consumen Mengonsumsi atau mengambil data dari buffer. Tujuan Memastikan bahwa produsen dan konsumen dapat beroperasi secara sinkron dan saling berkoordinasi tanpa terjadi kondisi yang tidak diinginkan, seperti akses data yang tidak terkendali atau deadlock. Buffer Suatu area memori yang digunakan untuk menyimpan data sementara antara dua proses atau komponen yang berinteraksi dalam sistem komputer.

Dalam message passing, proses-proses berinteraksi dengan mengirim dan menerima pesan melalui saluran komunikasi yang disediakan oleh sistem operasi. Ada 2 model utama yang digunakan dalam message-passing : Direct/Indirect Communication dan Synchronous/Asynchronous Communication. Direct Communication : Proses-proses yang ingin berkomunikasi harus secara eksplisit menyebutkan identitas tujuan atau pengirim saat mengirim pesan. Indirect Communication : memungkinkan proses-proses berkomunikasi secara anonim tanpa mengetahui identitas satu sama lain. Synchronous Communication : Sender akan menunggu atau terblokir sampai pesan diterima oleh penerima sebelum melanjutkan eksekusi selanjutnya. Asynchronous Communication : Sender dapat melanjutkan eksekusi tanpa menunggu penerima menerima pesan. Message Passing System

Aspek Shared-Memory Message-Passing Mekanisme Komunikasi Pesan dikirim melalui saluran komunikasi yang disediakan oleh sistem operasi. Data dibagikan melalui area memori bersama. Keamanan dan Isolasi Isolasi yang lebih baik karena setiap proses memiliki area memori terpisah dan tidak dapat langsung mengakses data proses lain. Memerlukan pengelolaan data yang lebih hati-hati untuk menghindari konflik atau kondisi perlombaan (race condition). Shared-Memory vs Message-Passing

Aspek Shared-Memory Message-Passing Kegunaan Cocok untuk komunikasi terstruktur, asinkron, atau antarproses yang tidak memerlukan akses langsung ke memori proses lain. Cocok untuk pertukaran data yang intensif dan sinkronisasi yang cepat antara proses-proses yang berbagi data secara langsung. Overhead Lebih tinggi karena melibatkan aktivitas seringan memindahkan data dan intervensi sistem operasi dalam pengiriman dan penerimaan pesan. Lebih rendah karena proses-proses dapat langsung membaca dan menulis data di area memori bersama tanpa melibatkan intervensi sistem operasi. Shared-Memory vs Message-Passing