Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehLeony Tanudjaja Telah diubah "6 tahun yang lalu
1
PROSES Sources : Hariyanto, Bambang “Sistem Operasi, Revisi Kelima, Bandung: Informatika Bandung vq5hIT0kfr1sirNuees0NIbG images.google.com
2
Tujuan Pembelajaran Memahami apa itu proses
Mehamami kinerja sistem dalam pengeksekusian program Mengenali berbagai macam scheduling/penjadwalan Menelaah tentang hal-hal yang dapat mempengaruhi pemrosesan
3
Apa itu proses? Proses adalah keadaan ketika sebuah program sedang di eksekusi Merupakan unit kerja terkecil yang memiliki sumber daya dan penjadwalan
4
Executing Program When a program is being executed they posses a typical characteristics : CPU Burst (A time where the program is executed) I/O Burst (A time where the program is performing I/O operations) The CPU can only access the data and the program from the main memory. A loader is a part of the system that moves the data and the program that are meant to be executed, from the the secondary storage to the main memory
5
Diagram State Proses (Tiga Keadaan)
New job / state : User mencoba untuk menjalankan program Ready state : Program sudah dimuat di main memory Active state : Program sedang dieksekusi Halted : Program sudah keluar dari sistem Waiting : Program melakukan I/O operation
6
Priority Scheduling Priority scheduling can be either pre- emptive or nonpreemptive. When a process arrives at the ready queue, its priority is compared with the priority of the currently running process. A pre-emptive priority scheduling algorithm will preempt the CPU if the priority of the newly arrived process is higher than the priority of the currently running process. A nonpreemptive priority scheduling algorithm will simply put the new process at the head of the ready queue
7
Improved State Diagram
8
Schedulings
9
Diagram State Proses (Lima Keadaan) [Suspension]
Swapping involves moving part or all of a process from main memory to disk. When none of the processes in main memory is in the Ready state, the operating swaps one of the Blocked processes out onto disk into a Suspended Queue. This is a Queue of existing processes that have been temporarily kicked out of main memory, or suspended. The operating system then brings in another process from the Suspended queue, or it honors a new process request. Execution then continues with the newly arrived process or management.
10
Pengendalian Proses oleh Sistem Operasi
Saling melanjutkan (interleave) Sistem operasi harus saling melanjutkan eksekusi proses untuk memaksimalkan penggunaan pemroses Mengikuti kebijaksanaan tertentu Sistem operasi harus mengalokasikan sumber daya ke proses-proses mengikuti kebijaksanaan yang ditentukan (ex : priority scheduling) sambil menghindari deadlock Mendukung komunikasi antar proses dan penciptaan proses
11
Deadlock adalah keadaan dimana 2 atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya. Analoginya seperti pada kondisi jalan raya dimana terjadi kemacetan parah. Deadlock adalah efek samping dari sinkronisasi, dimana satu variabel digunakan oleh 2 proses. Deadlock bisa digambarkan sebagai berikut : Deadlock Deadlock adalah keadaan dimana 2 atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya. Analoginya seperti pada kondisi jalan raya dimana terjadi kemacetan parah.
12
Multiprogramming/Multitasking Multiprocesing Distributed Processing
Istilah Multiprogramming/Multitasking Multiprocesing Distributed Processing
13
Multiprogramming/Multitasking
Multiprogramming (multitasking) adalah manajemen banyak proses di satu pemroses. Pada multiprogramming, pemakai memandang terdapat banyak proses dijalankan bersama pada suatu saat. Masing-masing proses mendapat bagian memori dan kendali sendiri. Sistem operasi mengalih-alihkan layanan pemroses di antara proses-proses tersebut. Proses-proses yang dijalankan di sistem multiprogramming sebenarnya bersifat sebagai saling tidak bergantung dan satu program pada satu saaat.
14
Multiprocesing Multiprocessing adalah manajemen banyak proses di komputer multiprocessor, dulunya multiprocessor hanya terdapat di sistem besar yaitu sistem mainframe dan minicomputer. Saat ini komputer workstation pun telah dapat dilengkapi multiprocessor. Multiprocessor dimaksudkan untuk peningkatan kerja dan dapatmemberikan kemampuan fault tolerant.
15
Distributed Processing
Distributed processing adalah manajemen banyak process yang dieksekusi di banyak sistem komputer yang tersebar di satu jaringan. Idealnya, pemrogram tidak perlu menyadari keberadaan banyak pemroses. Kecenderungan masa yang akan datang adalah menuju komputasi tersebar (distributed computing). Banyak riset dan pengembangan sistem operasi tersebar diantaranya adalah AMOEBA, MACH, dan sebagainya.
16
IMPLEMENTASI PROSES & TAHAP PENCIPTAAN PROSES
@Sandy Sipayung
17
TABEL-TABEL PROSES Tabel Informasi Manajemen Memori
B e r a g a m T a b e l a t a u S e n a r a I : Tabel Informasi Manajemen Memori Tabel Informasi Manajemen I/O Tabel Informasi Sistem File Tabel Proses
18
1. Tabel Informasi Manajemen Memori
Alokasi memori utama yang dipakai proses Alokasi memori sekunder yang dipakai proses (lakukan swapping) Atribut segmen memori utama dan sekunder Informasi-informasi lain.
19
2. Tabel Informasi Manajemen I/O
Fungsi : mengelola perangkat I/O. Sistem Operasi perlu mengetahui status operasi I/O dan lokasi memori utama yang digunakan untuk transfer data.
20
3. Tabel Informasi Sistem File
Bagian dari OS yang melakukan write, exe, modify, copy dan read. Tabel ini berisi informasi mengenai ekstensi file. Lokasi : Memori Sekunder
21
4. Tabel Proses Mengelola informasi proses di sistem operasi.
Lokasi : Memori.
22
PCB (Program Control Block)
ELEMEN CITRA PROSES Elemen Deskripsi Data User Memodifikasi data program, daerah stack user. Program User Program Biner Stack Sistem Menyimpan parameter dan alamat panggil (system calls) PCB (Program Control Block) Informasi – informasi untuk mengendalikan proses
23
Struktur Tabel Kendali Pada Sistem OS
25
PCB & SENARAI PROSES PCB berisi informasi mengenai proses yang diperlukan sistem operasi. Kumpulan PCB mendefinisikan state sistem operasi. PCB dimodifikasi : Penjadwalan Alokasi sumber daya Pemrosesan interupsi Monitoring Analisis kinerja
27
Senarai Proses Senarai adalah link atau yang terkait.
Proses Running (PCB berada di senarai Running) dipindah sesuai state yang dialami proses, sebagai berikut : Bila proses berakhir maka jalankan operasi terminasi sehingga PCB tidak ada lagi Bila proses di-block karena menunggu alokasi sumber daya maka PCB dipindah ke senarai Blocked Bila proses dijadwalkan habis jatah waktu eksekusinya maka PCB dipindahkan ke senarai Ready.
28
PCB (Printed Circuit Board) ≠ PCB (Program Control Block)
29
PENGAKSESAN INFORMASI DI PCB
2 masalah utama proteksi terhadap PCB : Bug (kesalahan pemograman) pada rutin tunggal. Perubahan rancangan struktur dan semantics PCB Kedua masalah agar dapat melewati rutin khusus.
30
PENGAKSESAN INFORMASI …
Tugas Rutin adalah memproteksi PCB dan menjadi perantara pembacaan dan penulisan PCB. Masalah pertama dapat dicegah Masalah kedua jelas langsung teratasi. Pengaksesan langsung pada PCB lebih cepat daripada harus memanggil rutin penanganan PCB.
31
TAHAP TAHAP PENCIPTAAN PROSES
Penciptaan proses dapat disebab kan beragam sebab seperti dibawah ini :
32
TAHAP TAHAP … Penciptaan Proses melibatkan banyak aktivitas, yaitu :
Menamai atau (memberi identitas) proses yang akan diciptakan dengan process id. 2. Menyisipkan proses pada senarai proses atau tabel proses. 3. Menentukan prioritas awal proses. 4. Menciptakan PCB. 5. Mengalokasikan sumber daya – sumber daya awal bagi proses.
33
Tahap- Tahap penciptaan proses adalah sebagai berikut :
Diberikan satu identifier unik ke proses baru, isian baru ditambahkan ke table proses utama yang berisi satu isian per proses. Dialokasi ruang untuk proses PCB harus diinisialisasi Kaitan-kaitan antartabel dan senarai yang cocok dibuat. Bila diperlukan struktur data yang lain maka segera dibuat struktur data itu.
34
3.5 Pengalihan Proses
35
Masalah 1 : Apa kejadian-kejadian yang memicu alih proses.
1. Interupsi sistem 2. Trap 3. Supervisor Call
36
1. Interupsi sistem Interupsi sistem disebabkan kejadian eksternal dan tidak bergantung proses yang saat itu sedang dalam state Running. Pada kejadian interupsi, kendali lebih dulu ditranfer ke interupt handler yang melakukan penyimpanan data-data dan kemudian beralih ke rutin sistem operasi yang berkaitan dengan tipe interupsi itu.*1 Contoh : Selesainya proses masukan/ keluaran.
37
Ada beberapa tahapan dalam penanganan interupsi:[1]
Controller mengirimkan sinyal interupsi melalui interrupt-request-line Sinyal dideteksi oleh prosesor Prosesor akan terlebih dahulu menyimpan informasi tentang keadaan state-nya (informasi tentang proses yang sedang dikerjakan)
38
Prosesor mengidentifikasi penyebab interupsi dan mengakses tabel vektor interupsi untuk menentukan interrupt handler Transfer kontrol ke interrupt handler Setelah interupsi berhasil diatasi, prosesor akan kembali ke keadaan seperti sebelum terjadinya interupsi dan melanjutkan pekerjaan yang tadi sempat tertunda.
39
Tipe-tipe interupsi 1. Interupsi clock 2. Interupsi masukan/keluaran 3. Page/ memory fault
40
Trap Interupsi karena terjadinya kesalahan atau kondisi kekecualian (exception conditions) yang di hasilkan proses yang Running, seperti usaha ilegal dalam mengaskses file.
41
Supervisor Call Yaitu panggilan meminta atau mengaktifkan bagian SO. Contoh : Proses pemakai running meminta layanan masukan/ keluaran seperti membuka file. Panggilan ini menghasilka transfer rutin bagian sistem operasi. Biasanya, penggunaan sistem call membuat proses pemakain blocked karena diaktifkannya proses karnel (sistem operasi).
42
Masalah 2 : Terdapatnya perbedaan anatara alih proses dan alih konteks
Pengalihan Konteks Dapat terjadi tanpa pengalihan state proses yang sedang running, sedang pengalihan proses pasti melibatkan juga pengalihan konteks. Siklus penanganan interupsi adalah : Pemroses menyimpan konteks program saat itu yang sedang dieksekusi ke stack. Pemroses menge-set register PC dengan alamat awal program untuk interupsi handler.
43
Pengalihan Proses Dapat terjadi jika proses yang running beralih menjadi state lain(ready,blocked, dan sebagainya), kemudian sistem operasi harus membuat perubahan bararti terhadap lingkungannya.
44
3.6 Kedudukan Sistem Operasi
Sistem operasi sebagai kernel tersendiri yang berbeda dengan proses-proses lain(kernel sebagai non-proses). Fungsi-fungsi sistem operasi di eksekusi dalam proses pemakai. Sistem operasi juga sebagai kumpulan proses.
45
1. Kernel Sebagai Non-Proses
46
Ketika proses running diinterupsi atau memanggil sistem call maka konteks pemroses dari proses ini disimpan dan kendali dilewatkan ke kernel. Sistem operasi mempunyai daerah memori dan Stack sendiri untuk pemanggilan prosedur didalamnya. Sistem operasi melakukan fungsi yang diinginkan proses pemakai dan mengembalikan konteks proses yang diinterupsi. Eksekusi proses pemakai yang diinterupsi dilanjutkan kembali.
47
Dieksekusi dalam Proses Pemakai
48
Ketika interupsi , trap atau supervisor call terjadi , pemroses ditempatkan ke mode kernel dan kendali dilewatkan ke system operasi konteks. Pemroses disimpan dan alih konteks ke rutin sistem operasi. Eksekusi dilanjutkan dalam proses pemakai saat itu, tidak dilakukan proses, hanya alih di konteks yang sama.
49
Sistem Operasi Sebagai Kumpulan Proses
50
Fungsi-fungsi kernel utama di organisasi sebagai proses proses terpisah. Terdapat kode kecil pengalihan proses yang di eksekusi di luar proses. Pendekatan ini mempunyai beberapa keunggulan, yaitu : Perancangan modular dapat diterapkan ke perancangan sistem operasi. Fungsi-fungsi sistem operasi tak-kritis secara bagus dapat diimplementasikan sebagai proses-proses terpisah. Mudah diterapkan pada lingkungan multiprocessor atau multicomputer.
51
DAFTAR PUSTAKA DR. Bambang hariyanto. 2009
DAFTAR PUSTAKA DR. Bambang hariyanto ”Sistem Operasi”, Revisi keempat, penerbit : INFORMATIKA. [1]
52
TERIMA KASIH
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.