Jumat, 18 Maret 2011

Konsep Manajemen Proses di Sistem Operasi

Tugas Kuliah
Source: danang.staff.ugm.ac.id/so/SO%20-%20manajemen%20proses%20komplit.ppt
             http://lecturer.eepis-its.edu/~arna/Diktat_SO/2.Struktur%20Sistem%20Operasi.pdf
                                           
                                  Konsep Manajemen Proses di Sistem Operasi



Manajemen Proses
            Proses adalah program yang sedang dieksekusi. Sebuah proses memerlukan
sumber daya (resource) tertentu seperti waktu CPU, memori, file dan perangkat I/O
untuk menyelesaikan tugasnya.
Untuk mengatur proses yang ada, sistem operasi bertanggung jawab pada
aktrifitas-aktifitas yang berhubungan denagn manajemen proses berikut :
a. Pembuatan dan penghapusan proses yang dibuat oleh user atau sistem.
b. Menghentikan proses sementara dan melanjutkan proses.
c. Menyediakan kelengkapan mekanisme untuk sinkronisasi proses dan komunikasi
proses.

Konsep Dasar Sistem Operasi
Status Proses
Walaupun masing-masing proses terdiri dari satu kesatuan yang terpisah, namun adakalanya proses-proses tersebut perlu saling berinteraksi, sebab ada kemungkinan satu proses bisa dibangkitkan dari output proses lainnya sebagai input. Pada saat proses dieksekusi maka akan terjadi perubahan status. Status-status ini didefinisikan sebagai keadaan atau aktivitas proses yang sedang berlangsung saat ini. Status proses terdiri dari :
 a. NEW
Status yang dimiliki pada saat proses baru saja dibuat oleh penjadwalan tingkat tinggi, tetapi belum siap melakukan eksekusi.
 b. READY
Status yang dimiliki pada saat proses siap dieksekusi oleh processor.
 c. RUNNING
Status yang dimiliki pada saat instruksi-instruksi dari sebuah proses dieksekusi. Proses bisa dieksekusi karena CPU tidak sedang mengerjakan tugas yang lain.
 d. WAITING
Status yang dimiliki pada saat proses menunggu suatu event, seperti penyelesaian I/O atau menerima signal.
 e. TERMINATED
Status yang dimiliki pada saat proses telah selesai dieksekusi.





 Status Proses:




KONSEP PENJADWALAN
• Konsep dari Multiprogramming :

  * Suatu proses akan menggunakan CPU sampai proses tersebut dalam status “wait” (misal   meminta I/O) selesai
  * Pada saat “wait”  CPU akan menganggur, untuk mengatasi hal ini à CPU dialihkan ke proses   lain yang berstatus “ready”
• Tujuan dari Multiprogramming adalah :
  * Untuk memaksimalkan penggunaan CPU dengan cara mengatur alokasi waktu yang digunakan   oleh CPU untuk memperkecil waktu idle
• Untuk Sistem yang bersifat Uniprogramming:
  * Hanya ada 1 proses yang dapat berjalan setiap waktunya
  * Jika ada proses yang lebih dari satu, maka proses yang lain harus menunggu sampai CPU   bebas dan siap untuk dijadwalkan kembali 


Konsep Penjadwalan


Konsep Dasar Sistem Operasi Konsep Dasar Sistem Operasi Pengalihan proses adalah terjadi jika proses yang running beralih menjadi state lain (ready, blocked, dan sebagainya), kemudian sistern operasi harus membuat perubahan‑perubahan berarti terhadap lingkungannya.
Konsep Dasar Sistem Operasi * Pengalihan proses terjadi jika proses yang running beralih menjadi state lain (ready, blocked, dan sebagainya) kemudian sistem. operasi membuat perubahan‑perubahan berarti terhadap lingkungan.  
*  Langkah-langkah pengalihan proses:  
1.         Simpan konteks pernroses, termasuk register PC dan register‑ register lain.

2.         Perbarui PCB proses yang running. Pelaksanaan termasuk mengubah state proses menjadi salah satu state (ready, blocked, suspendedready, dan sebagainya). Field‑field yang relevanjuga diperbarui misaInya alasan meninggalkan state runningdan informasi akunting.

3.         Pindahkan PCB proses ke senarai yang cocok (ready, blocked, dan sebagainya).

4.         Pilih satu proses lain untuk dieksekusi sesuai dengan teknik penjadwalan.

5.         Perbarui PCB proses yang dipilih termasuk perubahan state menjadi running.

6.         Perbarui struktur‑struktur data manaJemen memori. Pekerjaan ini sesuai dengan pengefolaan translasi alamat.

7.         Kembalikan konteks pernroses dengan konteks simpanan yang memberitahu konteks proses terakhir saat dialihkan dari state running, Pengembalian konteks ini dilakukan dengan memuatkan nilai‑nilai registerPC dan register‑register lain dengan nilai konteks yang tersimpan.

Pengalihan proses melibatkan pengalihan konteks dan perubahan state, memerlukan usaha lebih besar daripada pengalihan konteks

QUEUE SCHEDULING
             Queue Scheduling dapat diklasifikasikan dalam 3 kategori :
a. Job Queue
    Antrian berisi semua proses yang masuk dalam sistem
b. Ready Queue
    Proses yang berada pada memori utama, siap dan menunggu untuk dieksekusi
c. Device Queue
    Deretan proses yang sedang menunggu peralatan I/O
    Tiap peralatan I/O memiliki device queue
d. Setiap antrian disimpan sebagai linked list dan berisi pointer awal dan akhir PCB.
e. Tiap PCB memiliki suatu pointer menunjuk ke proses selanjutnya pada antrian
f. Proses baru mula-mula diletakkan di ready queue dan menunggu sampai dipilih untuk   dieksekusi (dispatched) CPU
g. Ketika proses dialokasikan CPU dan dieksekusi, terjadi satu dari event berikut :
    Proses meminta I/O dan kemudian ditempatkan pada I/O queue
    Proses membuat sub proses baru dan menunggu diterminasi
    Proses dihapus dari CPU karena diinterrupt dan dikembalikan ke ready queue 


SCHEDULER (PENJADWAL)
             Sistem operasi harus memilih dan memproses antrian-antrian berdasarkan kategorinya, dimana proses seleksinya dilakukan oleh scheduler yang tepat .
Ada 3 tipe Scheduler :
a. Long Term Scheduler (Job Scheduler)
b. Short Term Scheduler (CPU Scheduler)
c. Medium Term Scheduler
    Long Term Scheduler (Job Scheduler)
a. Menyeleksi proses-proses mana yang harus dimasukkan ke dalam ready queue dan membawanya ke memori untuk dieksekusi
b. Long Term Scheduler mengeksekusi lebih jarang, dibutuhkan beberapa menit untuk pembuatan proses baru dalam sistem
c. Long Term Scheduler à mengontrol jumlah proses dalam memori (degree of multiprogramming)
d. Jika degree of multiprogramming stabil à tingkat rata-rata penciptaan proses harus sama dengan tingkat rata-rata proses meninggalkan system
    Short Term Scheduler (CPU Scheduler)
a. Menentukan proses mana yang selanjutnya akan dieksekusi dan mengalokasikan CPU untuk proses tersebut, dimana pemilihan proses barunya dialokasikan sesering mungkin
b. Sort Term Scheduler à lebih sering dipanggil (hanya dalam waktu milisecond)
c. Karena durasi yang pendek antara eksekusi, short Term Scheduler harus sangat cepat
    Medium Term Scheduler
a. Penjadwal ini akan menguntungkan untuk memindahkan proses dari memori à jumlah proses dalam memori akan berkurang
b. Skema Medium Term Scheduler disebut swapping.
c. Swapping diperlukan untuk meningkatkan mutu penggabungan proses (karena perubahan dalam kebutuhan memori yang mengakibatkan memori harus dibebaskan) 

 
CONTEXT SWITCH
• Context Switch sebuah proses direpresentasikan dalam PCB dari suatu proses à nilai dari CPU register, status proses, informasi manajemen memori
• Waktu context switch mempunyai kecepatan bervariasi (biasanya berkisar 1 – 1000ms) tergantung:
    – Kecepatan memori
    – Jumlah register yang dicopy
    – Ada atau tidaknya instruksi khusus (misal : instruksi tunggal untuk mengisi atau menyimpan seluruh register)


OPERASI PADA PROSES
  • Sistem Operasi dalam mengelola proses dapat melakukan operasi-operasi terhadap proses
  • Pembuatan Proses
      – Beberapa aktifitas yang berkenaan dengan pembuatan proses, a.l :
  • Memberi identitas (nama) pada proses yang dibuat
  • Menyisipkan proses pada list proses atau tabel proses
  • Menentukan prioritas awal proses
  • Membuat/ menciptakan PCB
  • Mengalokasikan sumber daya (resource) awal bagi proses
      * Contoh Pembuatan Proses
  • Inisialisasi Sistem à Reboot
  • Eksekusi System Call untuk Pembuatan proses
  • Fork ()
  • User meminta untuk membuat proses baru
  • Mengetikkan perintah di command line
  • Mengklik icon 

PENGHENTIAN PROSES
    * Pada saat proses berhenti à proses akan mengembalikan semua data ke parent proses, dan proses dihapus dari sistem, dilanjutkan dengan menghapus PCB
    * Alasan yang menyebabkan proses dihentikan :
• Selesainya proses secara normal
• Proses berjalan melewati batas waktu yang telah ditentukan
• Memori tidak tersedia
• Pelanggaran terhadap batas memori
• Terjadi kesalahan perhitungan (misal :pembagian dengan 0)
• Proses menunggu terlalu lama
• Terjadi kegagalan I/O (misal : tidak menemukan file)










0 komentar:

Posting Komentar