Saturday, August 19, 2017

Proses Dalam Sistem Operasi

Proses Dalam Sistem Operasi
Proses Dalam Sistem Operasi


Hello good millennial, jumpa lagi di blogger joeshapictures tema hari ini adalah tentang "Proses Dalam Sistem Operasi" penasaran, yuk kita baca !

Proses adalah program yang sedang dieksekusi, termasuk didalamnya nilai-nilai dalam program counter, register, dan variabel-variabel yang ada. 

Perbedaan Proses dan Program

Program

Program adalah kumpulan instruksi yang digunakan untuk mengatur komputer agar melakukan suatu tindakan tertentu. Tanpa program komputer sesungguhnya tidak dapat berbuat apa-apa. Itulah sebabnya sering dikatakan bahwa komputer mencakup tiga aspek penting, yaitu berupa perangkat keras (hardware), perangkat lunak (software) yang dalam hal ini berupa program, perangkat akal (brainware) atau orang yang berperan dalam operasi komputer maupun pengembangan perangkat lunak (operator).

Dengan kata lain, program merupakan salah satu bagian penting pada komputer yang mengatur komputer agar melakukan aksi yang sesuai dengan yang dikehendaki oleh pembuatnya. Program merupakan entitas yang pasif yaitu sebuah file yang berisi kumpulan instruksi-intrukksi yang disimpan di dalam disk.

Proses

Proses adalah suatu bagian dari program yang berada pada status tertentu dalam rangkaian eksekusinya.

Proses merupakan entitas yang aktif, dengan sebuah program counter yang menyimpan alamat intruksi selanjutnya yang akan di eksekusikan seperangkat sumber daya (resource) yang dibutuhkan agar sebuah proses dapat di eksekusi.
Keadaan dalam suatu proses dapat berupa :

· New : Proses sedang dikerjakan / dibuat.
· Running : Instruksi sedang dikerjakan.
· Waiting : Proses sedang menunggu sejumlah kejadian untuk terjadi (sepertisebuah penyelesaian I/O atau penerimaan sebuah tanda/ signal).
· Ready : Proses sedang menunggu untuk ditugaskan pada sebuah prosesor.
· Terminated: Proses telah selsesai melaksanakan tugasnya/ mengeksekusi.

Hubungan Proses dan OS

  • OS menjadwal dan mengirimkan  proses untuk dieksekusi oleh prosesor.
  • OS mengalokasikan sumber daya untuk proses.
Istilah Terkait
1. Multiprogramming (multitasking)
Manajemen banyak proses pada satu prosesor
Banyak proses dijalankan bersamaan, tiap proses mendapat bagian memori dan kendali sendiri
2. Multiprocessing
Manajemen banyak proses di komputer multiprocessor. 
3. Distributed processing
Manajemen banyak proses yang dieksekusi di banyak sistem komputer yang tersebar (terdistribusi).

Pembentukan Proses

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 Process Control Block 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 I/O. 

Sumber daya ini dapat diperoleh langsung dari sistem operasi, dari proses induk yang membagi-bagikan sumber daya kepada setiap proses turunannya, atau proses turunan dan proses induk berbagi sumber-daya yang diberikan sistem operasi. 

Penghancuran Proses/Terminasi

Di-terminasi ketika proses telah selesai mengeksekusi perintah terakhir menggunakan system call exit. Suatu proses juga dapat diterminasi dengan sengaja oleh proses lain dengan system call abort, biasanya proses induk melakukan hal ini pada turunannya. Sumber daya – sumber daya yang dipakai dikembalikan 

Alasan terminasi :
  • Selesainya proses secara normal 
  • Batas waktu terlewati
  • Memori tidak tersedia
  • Pelanggaran terhadap batas memori 
  • Kesalahan aritmatika
  • Kesalahan masukan/keluaran
  • Instruksi salah
  • Kesalahan penggunaan data
  • Intervensi OS / operator
  • Proses induk selesai
  • Permintaan proses induk untuk terminasi proses anak

Status Proses

Proses Dalam Sistem Operasi

Keadaan proses

Sebagaimana proses bekerja, maka proses tersebut merubah state (keadaan statis/ asal). Status dari sebuah proses didefinisikan dalam bagian oleh aktivitas yang ada dari proses tersebut. Tiap proses bisa kita definisikan sebagai berikut:

New : Proses sedang dikerjakan/ dibuat.
Running : Instruksi sedang dikerjakan.
Waiting : Proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/O atau penerimaan sebuah tanda/ signal).
Ready : Proses sedang menunggu untuk ditugaskan pada sebuah prosesor.
Terminated : Proses telah selsesai melaksanakan tugasnya/ mengeksekusi.

Status Proses

  • 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 suatu event terjadi pada saat proses dieksekusi (seperti ada permintaan I/O) maka proses tersebut akan menunggu event tersebut selesai dan proses berstatus Waiting. 

Process Control Block (PCB)

Setiap proses digambarkan dalam sistem operasi oleh sebuah PCB, PCB hanya berfungsi sebagai tempat penyimpanan informasi yang dapat bervariasi dari proses yang satu dengan yang lain 

Isi PCB

1. Status Proses  
Status new, ready, running, waiting, terminated, dan juga banyak lagi. 
2. Program Counter  
Suatu stack yang berisi alamat berikutnya yang akan dieksekusi oleh proses tersebut 
3. CPU register  
Register tersebut termasuk accumulator, register indeks, stack pointer, general-purposes register, ditambah code information pada kondisi apa pun. Beserta dengan program counter, keadaan/status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya   

Process Control Block (PCB)

1. Informasi penjadwalan CPU 
Informasi ini berisi prioritas dari suatu proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya. 

2. Informasi manajemen memori 
Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi  

3. Informasi pencatatan  
Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun, jumlah job atau proses, dan banyak lagi. 

4. Informasi status I/O 
Informasi termasuk daftar dari perangkat I/O yang digunakan pada proses ini, daftar berkas-berkas yang sedang diakses dan banyak lagi.  

Penundaan Proses (Suspend)
Penundaan (suspend) sering dilakukan sistem untuk memindahkan proses-proses tertentu guna mereduksi beban sistem selama beban puncak. Penundaan biasanya berlangsung singkat. 

Pengaktifan Proses (Resuming)
Pengaktifan kembali (resuming) proses yaitu menjalankan proses dari titik (instruksi) dimana proses ditunda. 

Alasan Suspend dan Resume
Jika sistem berfungsi secara buruk dan mungkin gagal maka proses-proses dapat disuspend agar diresume setelah masalah diselesaikan. 

Contoh :

-Saat proses pencetakan, bila tiba-tiba kertas habis maka proses disuspend. Setelah kertas dimasukkan kembali, proses pun dapat diresume. 

-Pemakai yang ragu mengenai hasil proses  dapat mensuspend proses (bukan membuang (abort) proses). Saat pemakai yakin proses akan berfungsi secara benar maka dapat meresume proses yang di-suspend. 

-Sebagai tanggapan terhadap fluktuasi jangka  pendek beban sistem, beberapa proses dapat disuspend dan diresume saat beban kembali ke tingkat normal. 

Terima kasih sudah membaca semoga apa yang kita baca hari ini bisa bermanfaat bagi kita semua, sebelum meninggalkan blogger joeshapictures sebaiknya di share dulu, apa yang kita dapat hari ini ada baiknya jika kita membagikan pengetahuan kepada orang lain. Sampai jumpa di artikel selanjutnya . . .