3. Process & Context Switch in Operating System.pptx
FauziaNingrum
6 views
20 slides
Jun 01, 2024
Slide 1 of 20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
About This Presentation
Process in Operating System
Size: 5.94 MB
Language: en
Added: Jun 01, 2024
Slides: 20 pages
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