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