Manajemen Proses pada Sistem Operasi
Definisi Proses dalam Sistem Operasi
Proses
pada sistem operasi adalah program yang sedang di eksekusi, merupakan unit
kerja terkecil yang secara individu memiliki sumber sumber daya yang
dijadwalkan oleh sistem operasi. Awalnya proses dijalankan secara sekuensial
atau berurut, suatu proses akan di eksekusi sampai selesai baru kemudian
berpindah ke proses selanjutnya. Sistem sekuensial memiliki kelemahan yakni
tingkat pengguna atau utilitas prosesor yang rendah.
Istilah-istilah yang berkaitan
dengan proses Sistem Operasi :
1.
Multiprocessing adalah manajemen
banyak proses di komputer multiprocessor (banyak proses di dalamnya).
2.
Multiprogramming (multitasking)
adalah manajemen proses dengan masing-masing pemroses melakukan pengolahan
secara independen.
3.
Distributed processing adalah
manajemen banyak proses yang di eksekusi di banyak komputer yang tersebar
(terdistribusi) di satu jaringan.
Analogi
Proses, Contohnya; seorang koki akan membuat masakan spesial di sebuah restoran
terkenal dengan resep sendiri. Resep tersebut terdiri dari berbagai bahan
makanan yang diperlukan. Resep adalah sebuah program, koki adalah prosesor, dan
bahan-bahan yang diperlukan adalah masukan (input). Proses sendiri adalah
kegiatan atau pekerjaan yang dilakukan koki dari awal sampai selesai yakni mulai
dari membaca resep, menyiapkan bahan, mengolah sampai menjadi masakan tersebut
siap saji.
Konsep
Dasar Sistem Operasi
Sistem operasi adalah
software yang mengontrol eksekusi program komputer dan dilengkapi dengan
penjadwalan, penelusuran kesalahan, pengendalian input-output, akunting,
kompilasi, penyimpanan, manajemen data dan layanan hubungan.
Sistem operasi
(Operating System) merupakan perangkat lunak pada komputer yang mengelola
perangkat keras dan menyediakan layanan basis untuk program aplikasi dan
bertindak sebagai perantara antara user dengan perangkat keras. Sebuah sistem
operasi dirancang untuk mengoptimalkan pemanfaatan perangkat keras dan
menyediakan lingkungan di mana user dapat dengan mudah berinteraksi dengan
komputer untuk menjalankan sebuah program sehingga sistem dapat berjalan dengan
nyaman dan efisien.
Sistem operasi
berdasarkan American National Standart Institute (ANSI) merupakan software yang
mengontrol pelaksana program-program komputer, yaitu dengan mengatur waktu proses,
pengecekan kesalahan, mengontrol input dan output, melakukan perhitungan,
komplikasi,penyimpanan, pengolahan data serta berbagai bentuk layanan yang
terkait. Dapat digambarkan secara umum bahwa sistem operasi merupakan sebuah
syarat mutlak yang diperlukan untuk mengoperasikan sebuah komputer. Sistem
operasi merupakan software yang mulai dijalankan tepat pada saat komputer
dinyalakan dan merupakan software inti darisoftware lain. Tanpa adanya sistem
operasi, komputer tidak akan dapat dioperasikan oleh pengguna.
Tugas Utama Sistem Operasi, Sistem
informasi memiliki 2 tugas utama yaitu :
1.
Sebagai pengelola seluruh sumber
daya pada sebuah sistem komputer (resource manager). Mengelola dan
mengefisiensikan jalannya seluruh sumber daya pada sebuah komputer.Sumber daya
komputer dibagi menjadi dua yaitu sumber daya fisik dan sumber daya abstrak.
2. Sebagai penyedia layanan (extended/virtual machine). Menurut Tanenbaum, sebuah sistem operasi yang baik harus memiliki layanan sebagaiberikut:
- Pembuatan programSistem operasi menyediakan fasilitas dan layanan menulis sebuah program baru.
- Eksekusi programInstruksi-instruksi dan data-data harus dimuat ke memori utama, perangkat-parangkat I/Odan file harus di-inisialisasi, serta mempersiapkan sumber-daya.
- Pengaksesan I/O DeviceSistem operasi menyederhanakan sejumlah instruksi dan sinyal kendali yang rumit agarpemrogram dapat berfikir sederhana dan perangkat pun dapat beroperasid.
- Pengaksesan terkendali terhadap berkas.Disediakannya mekanisme proteksi terhadap berkas untuk mengendalikan pengaksesanterhadap berkas.
- Pengaksesan sistemMenggunakan prinsip shared system (sistem digunakan bersamaan dalam suatu waktu).Fungsi pengaksesan harus menyediakan proteksi terhadap sejumlah sumber-daya dan datadari pemakai tak terdistorsi serta menyelesaikan konflik-konflik dalam perebutan sumber-daya
- Deteksi dan pemberian tanggapan pada kesalahan.Jika muncul permasalahan muncul pada sistem komputer maka sistem operasi harusmemberikan tanggapan yang menjelaskan kesalahan yang terjadi serta dampaknyaterhadap aplikasi yang sedang berjalan.
- Akunting.Sistem operasi yang bagus mengumpulkan data statistik penggunaan beragam sumber-dayadan memonitor parameter kinerja.
Konsep Utama Sistem Operasi :
1.
Proses,Sebuah program yang sedang
dieksekusi dan memerlukan sumber daya untuk mengeksekusiperintah.
2.
File, Merupakan kumpulan hasil
pengolahan data yang saling berkaitan/berhubungan dan padaumumnya
merepresentasikan program dan data.
3.
Sistem Call, Sistem call menyediakan
sarana bagi program pengguna untuk meminta sistem operasi untukmelakukan tugas
yang diinstruksikan oleh user.Sistem
4.
call dipanggil dengan berbagai cara
tergantung pada fungsi yang disediakan oleh prosesor yang mendasarinya.
5.
Sistem Program, Menyediakan
lingkungan yang memungkinkan pengembangan program dan eksekusi berjalandengan
baik.
Status
Proses dalam Sistem Operasi
Proses
adalah keadaan ketika sebuah program sedang di eksekusi. Saat komputer
berjalan, terdapat banyak proses yang berjalan secara bersamaan. Sebuah proses
dibuat melalui system call create-process yang membentuk
proses turunan (child process) yang dilakukan oleh proses induk (parent
process). Proses turunan tersebut juga mampu membuat proses baru sehingga
semua proses ini pada akhirnya membentuk pohon proses
Ketika
sebuah proses dibuat maka proses tersebut dapat memperoleh sumber daya seperti
waktu CPU, memori, berkas, atau perangkat Input dan Output.
Sumber daya ini dapat diperoleh langsung dari sistem operasi, dari proses induk
yang membagikan sumber daya kepada setiap proses turunannnya, atau proses
turunan dan proses induk berbagi sumber-daya yang diberikan sistem operasi.
Gambar
Diagram Status Proses
Sebuah proses dapat memiliki tiga
status utama yaitu:
1.
Running adalah dimana status yang dimiliki pada saat
instruksi-instruksi dari sebuah proses dieksekusi
2.
Waiting adalah dimana status yang dimiliki pada saat proses
menunggu suatu sebuah event seperti proses M/K.
3.
Ready adalah dimana status yang dimiliki pada saat proses
siap untuk dieksekusi oleh pemroses, dalam hal ini adalah prosesor.
Terdapat dua status tambahan, yaitu
saat pembentukan (new) dan terminasi (terminated):
1.
New adalah dimana status yang dimiliki pada saat proses
baru saja dibuat
2.
Terminated adalah dimana status yang dimiliki pada saat proses
telah selesai dieksekusi.
Hanya satu
proses yang dapat berjalan pada prosesor mana pun pada satu waktu. Namun,
banyak proses yang dapat berstatus Ready atau Waiting.
Ada tiga kemungkinan bila sebuah proses memiliki status Running:
1.
Jika program telah selesai
dieksekusi maka status dari proses tersebut akan berubah menjadi Terminated.
2.
Jika waktu yang disediakan oleh OS
untuk proses tersebut sudah habis maka akan terjadi interrupt dan
proses tersebut kini berstatus Ready.
3.
Jika suatu event terjadi pada saat
proses dieksekusi (seperti ada permintaan M/K) maka proses tersebut akan
menunggu event tersebut selesai dan proses berstatus Wait.
Membahas proses
terhadap kontrol dikenal yang namanya PCB (Process Control Block). PCB
adalah bentuk-bentuk informasi lain yang diperlukan oleh sistem operasi untuk
mengendalikan dan mengkoordinasikan proses-proses yang sedang berlangsung. Pada
sebuah PCB, proses dinamai dengan control block. Berikut proses
dari PCB :
Gambar
Proses PCB
Berikut istilah yang sering
digunakan pada Control Process :
1.
Dispatcher : Bagian dari sistem operasi yang mengatur giliran
pemanfaatan processor untuk mengatur proses-proses yang ada.
2.
Swapping : Memindahkan proses yang dalam status blocked dari
memori ke hardisk
3.
Less
privilage mode : Mode pada saat proses sedang
di eksekusi oleh processor
Proses
Control Blok pada Sistem Operasi
Process Control Block merupakan
berbagai informasi lain yang diperlukan sistem operasi untuk mengontrol dan
berkoordinasi dengan berbagai proses yang aktif. Hampir seluruh sistem operasi
modern seperti yang Anda gunakan sekarang sudah memilki Process Control Block.
Akan tetapi, strukturnya masih berbeda-beda di setiap sistem operasi tersebut.
Maka dari itu, PCB memiliki sifat unik karena antara sistem operasi yang satu dengan yang
lainnya berbeda.
Adapun prioritas proses adalah
sebuah besaran atau nilai yang memberikan informasi mengenai seberapa sering
proses tersebut dijalankan prosesor. Proses yang mempunyai prioritas tinggi
nanti dijalankan lebih sering serta dieksekusi terlebih dahulu jika
dibandingkan dengan proses yang memiliki prioritas lebih rendah.
Setiap proses yang ada di dalam
sistem operasi akan digambarkan oleh Process Control Block. Di dalam PCB
terdapat banyak informasi yang saling berhubungan dengan proses yang lebih
spesifik.
Process Control Block hanya bertugas
untuk menyimpan informasi yang mana antara proses satu dengan proses lainnya
akan bervariasi. Salah satu contoh struktur data yang mengontrol beberapa
Process Control Block misalnya process table.
Elemen-elemen di Dalam Process Control Block
Di bawah ini merupakan elemen-elemen
yang terdapat pada PCB Running:
· Identifier: elemen ini digunakan untuk mengidentifikasi dan
membedakan antara satu proses dengan proses yang lainnya
· State: status dari proses yang sedang dieksekusi,
diblok, dan lain-lain
· Priority: status dari proses yang sedang dieksekusi,
diblok, dan lain-lain priority
· Program counter: alamat berikutnya akan dieksekusi
· Memory pointers: pointer yang nantinya akan
menunjukkan alamat memori data dan kode yang saling berhubungan dengan blok dan
memori yang dibagikan dengan proses yang lainnya (jika ada)
· Context data: Data yang ada di dalam register prosesor pada
saat proses akan diseksekusi
· I/O status information: informasi yang berkaitan dengan
permintaan mengenai I/O device yang masih belum terpenuhi
(misalnya akses ke harddisk), apa saja daftar file yang digunakan oleh proses,
dan lain sebagainya
· Accounting information: informasi seputar total waktu proses
yang sudah digunakan, batas waktu proses, nomor urutan, dan lain sebagainya
Pembagian Process Control Block, Process Control Block dibagi menjadi tiga kelompok, yaitu:
·
Process identification data: proses
yang menyertakan identifier pada prosesnya
·
Process state data:
potongan-potongan informasi yang isinya menjelaskan status proses yang
ditangguhkan, memungkinkan sistem operasi melakukan restart serta masih bisa
mengeksekusinya dengan benar
·
Process control data: digunakan
sistem operasi yang akan mengelola proses itu sendiri
Penjadwalan Proses
Penjadwalan proses merupakan
kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan
urutan kerja yang dilakukan sistem komputer
Adapun penjadwalan bertugas
memutuskan:
1.
Proses yang harus berjalan
2.
Kapan dan berapa lama proses itu
berjalan
Kriteria-kriteria yang digunakan
sebagai sasaran penjadwalan, meliputi:
1.
Adil (fairness)
2.
Efisiensi (eficiency)
3.
Waktu tanggap (response time)
4.
Sistem interaktif
5.
Sistem waktu nyata
6.
Turn around time
7.
Throughput
Terdapat 3 tipe penjadwal berada
secara bersama-sama pada sistem operasi yang kompleks, yaitu:
1.
Penjadwal jangka pendek (short term
scheduller)
2.
Penjadwal jangka menengah (medium
term scheduller)
3.
Penjadwal jangka panjang (long term
scheduller)
Operasi pada proses
Operasi pada proses dalam sistem
operasi adalah tindakan yang dilakukan oleh sistem operasi untuk mengelola dan
mengendalikan proses yang sedang berjalan. Berikut beberapa operasi penting
pada proses dalam sistem operasi:
1.
Pembuatan Proses : Operasi ini
melibatkan proses pembuatan baru. Biasanya, proses baru dibuat oleh proses yang
sudah ada, yang disebut proses induk. Proses baru ini memiliki kode program,
data, dan sumber daya sendiri.
2.
Menghentikan Proses : Sistem operasi
yang memungkinkan untuk menghentikan proses secara normal atau paksa.
Menghentikan proses dengan benar adalah bagian penting dari proses manajemen
untuk memastikan sumber daya tersisa dengan benar.
3.
Menggantikan Proses : Sistem operasi
dapat menggantikan proses yang sedang berjalan dengan proses lain. Hal ini
dapat dilakukan secara preemtif (ketika sistem mengambil alih kendali dari
proses saat ini) atau kooperatif (ketika proses saat ini secara sukarela
melepaskan kendali).
4.
Berinteraksi antar Proses : Proses
dalam sistem operasi dapat berkomunikasi satu sama lain. Hal ini dapat
dilakukan melalui mekanisme seperti shared memory, message passing, atau sistem
antrean (queueing).
5.
Manajemen Sumber Daya : Sistem
operasi yang mengelola sumber daya yang digunakan oleh proses, seperti waktu
CPU, memori, I/O, dan perangkat keras lainnya. Ini melibatkan alokasi dan
dealokasi sumber daya sesuai dengan kebutuhan proses.
6.
Penjadwalan Proses : Sistem operasi
memiliki algoritma penjadwalan yang menentukan urutan proses eksekusi di CPU.
Penjadwalan ini dilakukan untuk memastikan efisiensi dan memberikan waktu CPU
yang adil untuk berbagai proses.
7.
Konteks Beralih (Context Switching)
: Ketika sistem operasi menggantikan satu proses dengan proses lain, ia perlu
melakukan konteks beralih. Ini adalah operasi yang mahal secara komputasi, di
mana status register, penghitung program, dan informasi lainnya tentang proses
harus disimpan dan diputar.
8.
Monitoring dan Pengawasan : Sistem
operasi biasanya menyediakan alat untuk memantau dan mengawasi kinerja proses.
Ini bisa mencakup pemantauan penggunaan CPU, penggunaan memori, dan statistik
lainnya.
9.
Sinkronisasi dan Semaphores : Untuk
menghindari konflik dan masalah perlombaan pada akses sumber daya bersama,
sistem operasi menyediakan mekanisme sinkronisasi seperti semafor dan mutex.
Operasi pada proses ini penting
dalam menjalankan program eksekusi dan aplikasi di sistem operasi, serta dalam
memastikan bahwa sumber daya sistem digunakan dengan efisien dan aman.



Komentar
Posting Komentar