28 Oktober 2012

Manajemen proses, Penjadwalan, Konkurensi pada Windows


Windows, sudah tidak asing lagi mendengar nama ini. Sistem operasi besutan Bill Gates ini memiliki berbagai versi. Salah satu versinya yang akan dibahas adalah Windows 7. Windows 7 rilis tahun 2009, setelah Windows Vista. Sebuah sistem operasi seperti Windows 7 mempunyai manajemen proses. Manajemen proses adalah sebuah pengaturan proses yang ada dalam sistem operasi. Seperti apa manajemen proses yang ada di Windows 7, berikut merupakan resume nya.

Manajemen proses
Proses itu apa sih?
Secara definisi proses adalah program yang sedang dieksekusi. Pengertian lain mengatakan, proses adalah Unit kerja terkecil yang secara individu dijadwalkan oleh sistem operasi. Oleh karena itu, SO mengelola semua proses di sistem dan mengalokasikan sumber daya ke proses-proses sesuai dengan kebijaksanaan untuk memenuhi sasaran sistem.
Hal hal yang berkaitan dengan proses. Ada 3 yakni
1.             Multiprogramming atau biasa dikenal dengan Multitasking
Merupakan manajemen banyak proses dalam 1 pemroses. Disini, banyak proses akan dikjalankan secara bersama-sama, setiap prosesnya mendapat bagian memori dan kendali sendiri.
Program yang dijalankan bersifat independen, yang artinya proses berjalan secara terpisah dan tidak saling mempengaruhi. Dan pada satu waktu, pemroses hanya melayani satu proses. Dan karena perpindahan dari satu proses ke proses yang lain membutuhkan waktu yangrelatif singkat, sehingga pemakai menganggap sedang terjadi proses yang paralel.
Contoh kasus
Pada windows 7 Anda, Anda sedang membuka 1 file Microsoft Word, 1 file powerpoint, Winamp, dan browser. Jadi tugas yang dilakukan SO adalah mengedit dokumen, membuat presentasi, memutar musik dan meload browser.
2.             Multiprocessing
Merupakan manajemen banyak proses di komputer multiprocessor. Dengan kata lain, komputer dengan banyak pemroses di satu sistem komputer dengan masing-masing pemroses melakukan pemrosesan secara independen
Contoh SO yang mendukung : Windows NT, UNIX, LINUX
3.             Distribute processing
Merupakan manajemen banyak proses yang dieksekusi di banyak sistem komputer yang tersebar (terdistribusi).
Contoh : MACH, AMOEBA

Penjadwalan
Penjadwalan Proses adalah kumpulan kebijaksanaan dan mekanisme pada sistem operasi mengenai urutan kerja yang dilakukan oleh sistem komputer. Tugasnya adalah untuk memutuskan proses mana dulu yang harus dieksekusi, berapa lama waktu eksekusi, dan kapan harus dieksekusi.
Strategi Penjadwalan
Strategi penjadwalan ada 2, non-preemtive dan preemtive. Non-preemtive adalah penjadwalan proses yang dalam berjalannya tidak dipotong-potong. Jadi proses dikerjakan dari awal sampai akhit tanpa pemotongan. Sedangkan preemtive adalah penjadwalan proses yang dalam berjalannya dapat dipotong-potong(pemroses diambil proses lain, sehingga pengeksekusian proses itu harus terhenti). Sehingga, proses yang dipotong tersebut harus menunggu untuk dieksekusi kembali.
Di Windows 7 menggunakan strategi penjadwalan preemtive, biasanya menggunakan algoritma FIFO(first in-first out) dan algoritma RR(Round robin).

Konkurensi
Merupakan dasar dari Multiprogramming, multiprocessing, dan distribute processing. Kongkurensi menyelesaikan masalah bila yang ada adalah banyak program, karena dalam algoritma sebelumnya hanya mengatasi 1 proses. Bila banyak proses berada dalam saat yang sama, maka ketika itulah disebut konkuren. Masalah masalah yang terjadi bila ada proses-proses konkuren:
·                     Mutual Exclusion
Jaminan hanya satu proses yang mengakses sumber daya pada satu interval waktu tertentu. Sumber daya yang tidak dapat dipakai bersama pada saat yang bersamaan.
Contohnya : Seringnya terjadi pada peralatan percetakan (printer).
·                     Sinkronisasi
Proses pengaturan jalannya beberapa proses pada saat yang bersamaan. Berarti secara garis besar mungkin sinkronisasi adalah menyamakan sesuatu secara bersamaan.
·                     Dead Lock  
Keadaan dimana dua program memegang kontrol terhadap sumber daya yang dibutuhkan oleh program yang lain. Tidak ada yang dapat melanjutkan proses masing-masing sampai program yang lain memberikan sumber dayanya, tetapi tidak ada yang mengalah. Deadlock yang mungkin dapat terjadi pada suatu proses disebabkan proses itu menunggu suatu kejadian tertentu yang tidak akan pernah terjadi. Dua atau lebih proses dikatakan berada dalam kondisi deadlock bila setiap proses yang ada menunggu suatu kejadian yang hanya dapat dilakukan oleh proses lain dalam himpunan tersebut.
·                     Starvation
kondisi yang biasanya terjadi setelah deadlock. Proses yang kekurangan resource karena terjadi deadlock tidak akan pernah mendapat resource yang dibutuhkan sehingga mengalami kelaparan
Untuk itulah dibutuhkan sceduller agar tidak terjadi masalah-masalah tersebut. Win 7 menggunakan UMS(User-mode Scheduling). UMS adalah mekanisme yang dapat digunakan aplikasi agar dapatdigunakan untuk menjadwalkan threadnya sendiri. Threads dapat didefenisikan sebagai suatu entitas dari process, yang mana waktu eksekusinya dijadwalkan oleh sistem operasi.

2 komentar:

  1. makasih atas infonya ... (y)
    lanjutkan... :)

    BalasHapus
  2. Thanks atas infonya .. (y)
    jgn lupa mampir ya http://dhamtkj.wordpress.com

    BalasHapus