Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehKang Suryadi Telah diubah "9 tahun yang lalu
1
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 1 SISTEM OPERASI Management Process Oleh : Mufadhol, S.Kom
2
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 2 Konsep Dasar Proses Jika kita berdiskusi mengenai sistem operasi, maka akan timbul sebuah pertanyaan yaitu mengenai istilah apa yang tepat untuk menyebut semua kegiatan yang dilakukan oleh CPU, bahwa program itu sendiri bukanlah sebuah proses, suatu program adalah satu entitas pasif, seperti isi dari sebuah berkas yang disimpan didalam media penyimpanan. Sedangkan sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang menyimpan alamat instruksi selanjut yang akan dieksekusi dan seperangkat sumber daya (resource) yang dibutuhkan agar sebuah proses dapat dieksekusi.
3
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 3 Definisi Proses Secara tidak langsung, proses merupakan program yang sedang dieksekusi. Menurut Silberschatz, suatu proses adalah lebih dari sebuah kode program, yang terkadang disebut text section. Proses juga mencakup program counter, yaitu sebuah stack untuk menyimpan alamat dari instruksi yang akan dieksekusi selanjutnya dan register. Sebuah proses pada umumnya juga memiliki sebuah stack yang berisikan data-data yang dibutuhkan selama proses dieksekusi seperti parameter metoda, alamat return dan variabel lokal, dan sebuah data section yang menyimpan variabel global.
4
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 4 Perbedaan Program dengan Proses Untuk mempermudah membedakan program dengan proses, kita akan menggunakan analogi yang diberikan oleh Tanenbaum. Misalnya ada seorang tukang kue yang ingin membuat kue ulang tahun untuk anaknya. Tukang kue tersebut memiliki resep kue ulang tahun dan bahan-bahan yang dibutuhkan untuk membuat kue ulang tahun di dapurnya seperti: tepung terigu, telur, gula, bubuk vanila dan bahan- bahan lainnya. Dalam analogi ini, resep kue ulang tahun adalah sebuah program, si tukang kue tersebut adala prosesor (CPU), dan bahan-bahan untuk membuat kue tersebut adalah data input. Sedangkan proses-nya adalah kegiatan sang tukang kue untuk membaca resep, mengolah bahan, dan memanggang kue tersebut.
5
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 5 Pembuatan Proses Sebuah proses dibuat melalui system call create- process yang dilakukan oleh parent process. Sebuah proses dibuat melalui system call create- process yang dilakukan oleh parent process. Setiap proses anakan (child process) dapat juga membuat proses baru. Setiap proses anakan (child process) dapat juga membuat proses baru. Ketika sebuah proses dibuat maka proses tersebut dapat memperoleh resource (waktu CPU, memory, berkas atau perangkat I/O) secara langsung dari sistem operasi atau proses tersebut berbagi resource dengan resource orang tuanya. Orang tua proses tersebut dapat membagi-bagi resource yang dimilikinya atau menggunakan secara bersama- sama resource yang dimilikinya dengan proses anakannya. Ketika sebuah proses dibuat maka proses tersebut dapat memperoleh resource (waktu CPU, memory, berkas atau perangkat I/O) secara langsung dari sistem operasi atau proses tersebut berbagi resource dengan resource orang tuanya. Orang tua proses tersebut dapat membagi-bagi resource yang dimilikinya atau menggunakan secara bersama- sama resource yang dimilikinya dengan proses anakannya.
6
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 6 Kemungkinan Pelaksanaan Proses Baru Orang tua proses tersebut berjalan secara konkuren dengan proses anaknya. Orang tua proses tersebut berjalan secara konkuren dengan proses anaknya. Orang tua proses tersebut menunggu hingga beberapa atau seluruh proses anakannya selesai. Orang tua proses tersebut menunggu hingga beberapa atau seluruh proses anakannya selesai.
7
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 7 Kemungkinan Pemberian Ruang Alamat Proses Baru Proses tersebut merupakan duplikasi orang tuanya. Proses tersebut merupakan duplikasi orang tuanya. Proses tersebut memiliki program yang diload ke ruang alamatnya. Proses tersebut memiliki program yang diload ke ruang alamatnya.
8
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 8 Terminasi Proses Suatu proses diterminasi ketika proses tsb telah selesai mengeksekusi statement terakhir dan meminta sistem operasi untuk menghapus statement tsb dengan menggunakan system call exit. Suatu proses diterminasi ketika proses tsb telah selesai mengeksekusi statement terakhir dan meminta sistem operasi untuk menghapus statement tsb dengan menggunakan system call exit. Pada saat diterminasi, proses dapat mengembalikan data (output) kepada proses parent-nya melalui system call wait. Pada saat diterminasi, proses dapat mengembalikan data (output) kepada proses parent-nya melalui system call wait. Semua resource yang digunakan oleh proses akan dialokasikan kembali ke tempat asalnya oleh sistem operasi. Semua resource yang digunakan oleh proses akan dialokasikan kembali ke tempat asalnya oleh sistem operasi. Suatu proses dapat menyebabkan terminasi proses yang lain dalam sistem operasi melalui system call abort. Suatu proses dapat menyebabkan terminasi proses yang lain dalam sistem operasi melalui system call abort. Biasanya hanya parent dari proses yang akan diterminasi yang dapat menjalankan system call abort ini. Biasanya hanya parent dari proses yang akan diterminasi yang dapat menjalankan system call abort ini. Parent sebaiknya mengetahui identitas dari children-nya. Parent sebaiknya mengetahui identitas dari children-nya. Pada saat suatu proses menciptakan sebuah proses baru, identitas dari proses yang baru diciptakan ini diperoleh dari parent-nya. Pada saat suatu proses menciptakan sebuah proses baru, identitas dari proses yang baru diciptakan ini diperoleh dari parent-nya.
9
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 9 Alasan Parent Mengakhiri Proses Children-nya Child melampaui penggunaan resource yang telah dialokasikan. Dalam keadaan ini, parent perlu mempunyai mekanisme untuk memeriksa status children-nya. Child melampaui penggunaan resource yang telah dialokasikan. Dalam keadaan ini, parent perlu mempunyai mekanisme untuk memeriksa status children-nya. Task yang ditugaskan kepada child tidak lagi diperlukan. Task yang ditugaskan kepada child tidak lagi diperlukan. Parent berakhir dan sistem operasi tidak memperbolehkan suatu child untuk tetap menjalankan proses jika parent-nya sudah tidak ada. Parent berakhir dan sistem operasi tidak memperbolehkan suatu child untuk tetap menjalankan proses jika parent-nya sudah tidak ada.
10
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 10 Status Proses Menurut Tanenbaum : Menurut Tanenbaum : Running Running Pada saat menggunakan CPU pada suatu waktu. Ready Ready Proses diberhentikan sementara karena menunggu proses lain untuk dieksekusi. Blocked Blocked Tidak dijalankan sampai event dari luar, yang berhubungan dengan proses tersebut terjadi.
11
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 11 Status Proses Menurut Silberschatz : Menurut Silberschatz : New : status yang dimiliki pada saat proses baru saja dibuat. New : status yang dimiliki pada saat proses baru saja dibuat. Running : status yang dimiliki pada saat instruksi- instruksi dari sebuah proses dieksekusi. Running : status yang dimiliki pada saat instruksi- instruksi dari sebuah proses dieksekusi. Waiting : status yang dimiliki pada saat proses menunggu suatu event (contohnya: proses M/K). Waiting : status yang dimiliki pada saat proses menunggu suatu event (contohnya: proses M/K). Ready : status yang dimiliki pada saat proses siap untuk dieksekusi oleh prosesor. Ready : status yang dimiliki pada saat proses siap untuk dieksekusi oleh prosesor. Terminated : status yang dimiliki pada saat proses telah selesai dieksekusi. Terminated : status yang dimiliki pada saat proses telah selesai dieksekusi.
12
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 12 Tiga kemungkinan bila sebuah Proses memiliki status Running: Jika program telah selesai dieksekusi maka status dari proses tersebut akan berubah menjadi Terminated. Jika program telah selesai dieksekusi maka status dari proses tersebut akan berubah menjadi Terminated. Jika waktu yang disediakan oleh OS untuk proses tersebut sudah habis maka akan terjadi interrupt dan proses tersebut kini berstatus Ready. Jika waktu yang disediakan oleh OS untuk proses tersebut sudah habis maka akan terjadi interrupt dan proses tersebut kini berstatus Ready. Jika suatu event terjadi pada saat proses dieksekusi (seperti ada request M/K) maka proses tersebut akan menunggu event tersebut selesai dan proses berstatus Waiting. Jika suatu event terjadi pada saat proses dieksekusi (seperti ada request M/K) maka proses tersebut akan menunggu event tersebut selesai dan proses berstatus Waiting.
13
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 13 Process Control Block Sebuah proses direpresentasikan pada sistem operasi dalam bentuk Process Control Block, PCB disebut juga sebagai deskriptor proses. Setiap PCB harus memiliki identitas unik, untuk membedakannya dengan proses- proses lain yang berjalan pada sistem yang sama. Sebuah sistem operasi harus menyimpan kumpulan PCB yang melambangkan antrian proses (process queue). Implementasi untuk menyimpan kumpulan PCB ini dapat dilakukan secara statik maupun dinamik. Secara statik dilakukan dengan menggunakan tabel PCB berukuran tetap. Secara dinamik dilakukan dengan menggunakan linked list untuk PCB.
14
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 14 Informasi yang dismpan pada PCB Keadaan proses (process state) Keadaan proses (process state) Program counter Program counter Nilai register CPU Nilai register CPU Informasi penjadwalan Informasi penjadwalan Informasi manajemen memori Informasi manajemen memori Informasi akunting Informasi akunting Informasi status I/O. Informasi status I/O.
15
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 15 Konsep Thread Thread merupakan unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID adalah : program counter, register set, dan stack. Sebuah thread berbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama. Thread juga sering disebut lightweight process. Sebuah proses tradisional atau heavyweight process mempunyai thread tunggal yang berfungsi sebagai pengendali. Perbedaan antara proses dengan thread tunggal dengan proses dengan thread yang banyak adalah proses dengan thread yang banyak dapat mengerjakan lebih dari satu tugas pada satu waktu.
16
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 16 Keuntungan Multithreading Responsi (tanggap) Responsi (tanggap) Membuat aplikasi yang interaktif menjadi multithreading dapat membuat sebuah program terus berjalan meski pun sebagian dari program tersebut diblok atau melakukan operasi yang panjang, karena itu dapat meningkatkan respons kepada pengguna. Sebagai contohnya dalam web browser yang multithreading, sebuah thread dapat melayani permintaan pengguna sementara thread lain berusaha menampilkan image.
17
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 17 Keuntungan Multithreading Berbagi sumber daya Berbagi sumber daya Thread berbagi memori dan sumber daya dengan thread lain yang dimiliki oleh proses yang sama. Keuntungan dari berbagi kode adalah mengizinkan sebuah aplikasi untuk mempunyai beberapa thread yang berbeda dalam lokasi memori yang sama.
18
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 18 Keuntungan Multithreading Ekonomis Ekonomis Dalam pembuatan sebuah proses banyak dibutuhkan pengalokasian memori dan sumber daya. Alternatifnya adalah dengan penggunaan thread, akan susah untuk mengukur perbedaan waktu antara proses dan thread dalam hal pembuatan dan pengaturan, tetapi secara umum pembuatan dan pengaturan proses lebih lama dibandingkan thread. Pada Solaris, pembuatan proses lebih lama 30 kali dibandingkan pembuatan thread.
19
Operating System ma5yong@plasa.com Copyright © Mufadhol masyong2mail@yahoo.com 19 Keuntungan Multithreading Utilisasi arsitektur multiprocessor Utilisasi arsitektur multiprocessor Keuntungan dari multithreading dapat sangat meningkat pada arsitektur multiprocessor, dimana setiap thread dapat berjalan secara pararel di atas processor yang berbeda. Pada arsitektur processor tunggal, CPU menjalankan setiap thread secara bergantian tetapi hal ini berlangsung sangat cepat sehingga menciptakan ilusi pararel, tetapi pada kenyataannya hanya satu thread yang dijalankan CPU pada satu-satuan waktu (satu-satuan waktu pada CPU biasa disebut time slice atau quantum).
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.