Sistem Operasi Rita Afyenni S Kom M Kom

  • Slides: 18
Download presentation
Sistem Operasi Rita Afyenni, S. Kom, M. Kom 1

Sistem Operasi Rita Afyenni, S. Kom, M. Kom 1

2. Manajemen Proses a. Proses b. Penjadualan Proses i. iii. iv. Deskripsi Penjadualan Proses

2. Manajemen Proses a. Proses b. Penjadualan Proses i. iii. iv. Deskripsi Penjadualan Proses Tipe-tipe Penjadualan Strategi Penjadualan Algoritma-algoritma Penjadualan c. Studi Kasus Proses pada Berbagai Sistem Operasi 2

2. a. Proses i. iii. iv. v. Deskripsi proses Diagram State proses Operasi-operasi pada

2. a. Proses i. iii. iv. v. Deskripsi proses Diagram State proses Operasi-operasi pada proses Metoda proses dalam sistem komputer Pengalihan proses 3

2. a. i. Deskripsi proses • Proses = task • Proses berisi: – Program

2. a. i. Deskripsi proses • Proses = task • Proses berisi: – Program counter (menunjukkan alamat berikutnya yang akan dieksekusi oleh proses) – Register – Variabel • Untuk menyelesaikan pekerjaannya, proses membutuhkan sumber daya: – – CPU Time Memori File I/O device • Sumber daya tersebut akan dialokasikan oleh proses pada saat dibuat atau pada saat dieksekusi. • Definisi proses: – Proses adalah program yang sedang dieksekusi. – Proses adalah unit kerja terkecil yang secara individu memiliki sumber daya-sumber daya dan dijadualkan SO. 4

2. a. i. Deskripsi proses (continue. . . ) Beberapa istilah yang berkaitan dengan

2. a. i. Deskripsi proses (continue. . . ) Beberapa istilah yang berkaitan dengan proses: • Multiprogramming (multitasking)= manajemen banyak proses pada satu pemroses. – Banyak proses dijalankan bersamaan – Masing-masing proses mendapat bagian memori dan kendali tersendiri. – SO mengalih-alihkan pemroses diantara proses-proses tersebut. – Program-program yang dijalankan sebenarnya bersifat: • Independen=saling tidak tergantung; proses terpisah satu dari yang lainnya dan tidak saling berpengaruh. • One program at any instant=satu program pada satu saat; pada satu waktu sesungguhnya hanya satu proses yang dilayani pemroses, menggunakan interleave (saling melanjutkan/bersambung) bukan overlap diantara program. 5

2. a. i. Deskripsi proses (continue. . . ) • Multiprocessing=manajemen banyak proses di

2. a. i. Deskripsi proses (continue. . . ) • Multiprocessing=manajemen banyak proses di komputer multiprocessor (banyak pemroses di dalamnya). – Dulunya sistem ini hanya terdapat di sistem besar, seperti: mainframe dan minikomputer. – Sekarang komputer workstation telah dapat dilengkapi multiprocessor. – SO Windows NT, UNIX, Linux menyediakan dukungan multiprocessing. • Distributed processing/computing= manajemen banyak proses yang dieksekusi di banyak sistem komputer yang tersebar (terdistribusi) – Trend masa datang adalah menuju komputasi tersebar (distributed computing) – Banyak riset dan pengembangan SO tersebar, diantaranya: AMOEBA, MACH, dll. 6

2. a. i. Deskripsi proses (continue. . . ) Kebutuhan utama pengendalian proses (menurut

2. a. i. Deskripsi proses (continue. . . ) Kebutuhan utama pengendalian proses (menurut Stalling): • Saling melanjutkan (interleave) • Mengikuti kebijaksanaan tertentu – Mengalokasikan sumber daya ke proses-proses mengikuti kebijaksanaan yang ditentukan (berdasarkan prioritas) sambil menghindari deadlock. • Mendukung komunikasi antar proses dan penciptaan proses – Mendukung komunikasi antar proses dan penciptaan proses oleh pemakai sehingga membantu menstrukturkan aplikasi. 7

2. a. ii. Diagram State proses • Diagram State Dasar (Tiga Keadaan): – Running=pemroses

2. a. ii. Diagram State proses • Diagram State Dasar (Tiga Keadaan): – Running=pemroses sedang mengeksekusi data. – Ready=proses siap (ready) dieksekusi, tetapi pemroses tidak tersedia untuk mengeksekusi proses ini. – Blocked=proses menunggu kejadian untuk melengkapi tugasnya. 8

2. a. ii. Diagram State proses (continue…) 9

2. a. ii. Diagram State proses (continue…) 9

2. a. ii. Diagram State proses (continue…. ) • Event wait = proses berstatus

2. a. ii. Diagram State proses (continue…. ) • Event wait = proses berstatus running menjadi Blocked. – Karena sumber daya yang diminta belum tersedia (meminta layanan perangkat masukan/keluaran). – Proses menunggu terjadinya kejadian pengalokasian sumber daya atau selesainya pelayanan perangkat keras. • Event occurs = proses berstatus Blocked menjadi Ready. – Saat sumber daya yang diminta telah tersedia. • Time out = proses berstatus Running menjadi Ready. – Karena penjadual memutuskan pemroses mengeksekusi proses lain karena jatah waktu untuk proses tersebut telah habis. 10

2. a. ii. Diagram State Lanjut (continue…) 11

2. a. ii. Diagram State Lanjut (continue…) 11

2. a. ii. Diagram State Lanjut (continue…) • Suspension = penundaan: – Proses penundaan

2. a. ii. Diagram State Lanjut (continue…) • Suspension = penundaan: – Proses penundaan ini biasanya berlangsung singkat. – Dilakukan sistem untuk memindahkan proses-proses tertentu guna mereduksi beban sistem selama beban puncak. • Resume = mengaktifkan kembali. – Resume mengaktifkan kembali proses yang tertunda (suspended). • Operasi suspend dan resume penting, karena: – Jika sistem berfungsi secara buruk dan mungkin gagal, maka proses-proses dapat di-suspend agar di-resume setelah masalah diselesaikan. – Pemakai ragu/kawatir mengenai proses: • Maka dapat melakukan suspend proses, bukan membuang (abort) proses. • Bila pemakai yakin bahwa proses telah berfungsi secara benar, maka dapat me-resume kembali proses yang telah di-suspend tersebut. – Sebagai tanggapan terhadap fluktuasi jangka pendek beban sistem, maka proses dapat di-suspend dan di-resume saat beban kembali ke tingkat normal. 12

2. a. iii. Operasi-operasi pada proses • • • Penciptaan proses (create a process)

2. a. iii. Operasi-operasi pada proses • • • Penciptaan proses (create a process) Penghancuran/terminasi proses (destroy a process) Penundaan proses (suspend a process) Pelanjutan kembali proses (resume a process) Pengubahan prioritas proses. Memblok proses Membangunkan proses Menjadualkan proses Memungkinkan proses berkomunikasi dengan proses lain. 13

2. a. iii. Operasi-operasi pada proses (continue. . ) • Dua operasi terpenting dari

2. a. iii. Operasi-operasi pada proses (continue. . ) • Dua operasi terpenting dari proses adalah: 1) Penciptaan = melibatkan beberapa aktivitas: • • • Menamai proses, Menyisipkan proses, Menentukan prioritas awal proses, Menciptakan PCB (process Control Block) Mengalokasikan sumber daya awal bagi proses, 2) penghancuran proses = melibatkan pembebasan proses dari sistem. • • • Sumber daya yang dipakai dikembalikan ke sistem Proses dihancurkan dari tabel sistem PCB dihapus (ruang memori PCB dikembalikan kepada memori bebas). 14

2. a. iii. 1) Operasi-operasi pada proses - Penciptaan • Tahap-tahap penciptaan proses: –

2. a. iii. 1) Operasi-operasi pada proses - Penciptaan • Tahap-tahap penciptaan proses: – – – • Beri satu identifier yang unik ke proses baru. Alokasikan ruang untuk proses. PCB harus diinisialisasi. Kaitan-kaitan antar tabel dan senarai yang cocok dibuat. Bila diperlukan struktur data lain, maka segera buat struktur data tersebut. Kejadian-kejadian yang dapat menyebabkan penciptaan proses: – Pada lingkungan batch, sebagai tanggapan atas pemberian satu kerja job. – Pada lingkungan interaktif, ketika pemakai baru berusaha log-on. – Sebagai tanggapan suatu aplikasi, seperti permintaan pencetakan berkas, SO dapat menciptakan proses yang akan mengelola pencetakan itu. – Proses menciptakan proses lain (proses anak). • Proses dapat menciptakan proses baru, yaitu: proses anak (child process). • Proses yang menciptakan disebut: parent process. • Proses anakpun dapat kembali menciptakan proses-proses anaknya. 15

2. a. iii. 2) Operasi-operasi pada proses - Penghancuran • • Penghancuran lebih rumit

2. a. iii. 2) Operasi-operasi pada proses - Penghancuran • • Penghancuran lebih rumit bila proses telah menciptakan proses-proses lain. Pada beberapa sistem, proses-proses turunan otomatis dihancurkan saat proses induk dihancurkan. Beberapa sistem lain menganggap proses anak independen terhadap proses induk sehingga proses anak tidak secara otomatis dihancurkan saat proses induk dihancurkan. Alasan-alasan penghancuran proses: – – – Selesainya proses secara normal Batas waktu telah terlewati Memori tidak tersedia Pelanggaran terhadap batas memori (mengakses lokasi memori yang tidak diizinkan untuk diakses) Terjadinya kesalahan karena pelanggaran proteksi (misal: menulis file read only) Terjadi kesalahan aritmatika (misal: pembagian dengan nol) Waktu telah kadaluarsa Terjadi kegagalan masukan/keluaran Instruksi yang tidak benar Terjadi usaha memakai instruksi yang tidak diizinkan. Kesalahan penggunaan data. – Diintervensi untuk sistem operasi. – Berakhirnya proses induk. – Atas permintaan dari proses induk. 16

2. a. iv. Metoda Proses dalam Sistem Komputer 1) Batch Processing – 2) Multi

2. a. iv. Metoda Proses dalam Sistem Komputer 1) Batch Processing – 2) Multi Programming – 3) Memungkinkan banyak user untuk mengeksekusi komputer. Real Time System – 5) Usaha untuk menambah pemanfaatan CPU agar CPU jangan dalam keadaan menganggur atau diam (tidak sedang melakukan eksekusi). Time Sharing – 4) Timbul akibat kesulitan dan kekurangan yang dialami pada waktu komputer dioperasikan tanpa sistem operasi yang dikumpulkan dalam satu kelompok (batch). Memproses data secepat mungkin, lalu hasilnya akan digunakan untuk mengetahui dari mana proses tadi berasal. Multiprocessing – Beberapa prosesor digunakan untuk melakukan pemrosesan secara bersamaan sehingga dapat menambah daya pemrosesan dan menghemat waktu proses. 17

2. a. v. Pengalihan proses Kejadian-kejadian penyebab pengalihan proses: 1) Interupsi sistem – –

2. a. v. Pengalihan proses Kejadian-kejadian penyebab pengalihan proses: 1) Interupsi sistem – – Disebabkan oleh kejadian eksternal dan tak bergantung pada proses yang saat itu sedang running. Tipe-tipe interupsi: • • • 2) Trap – 3) Interupsi clock = SO menentukan apakah proses yang sedang running telah mengeksekusi selama jatah waktunya, jika sudah maka proses dialihkan dan proses lain dijadualkan untuk running. Interupsi masukan/keluaran = peralatan masukan/keluaran melakukan interupsi meminta layanan SO, lalu SO segera menentukan aksi-aksi masukan/keluaran yang harus dilakukan. Page/memori fault = pemroses menemui pengacauan alamat memori maya yang tidak terdapat di memori utama, SO segera memerintahkan untuk mengambil page pada alamat tersebut untuk dipindahkan ke memori utama. Interupsi karena terjadinya kesalahan atau kondisi perkecualian yang dihasilkan proses running, seperti usaha ilegal dalam mengakses berkas, sehingga akhirnya SO dapat menentukan apakah kesalahan tsb fatal atau tidak. Supervisor call – Panggilan meminta atau mengaktifkan bagian-bagian SO, yang akan mengakibatkan proses menjadi berstatus blocked. 18