MANAJEMEN PROSES SISTEM OPERASI


1  Defenisi Proses Dalam Sistem Operasi
Proses adalah keadaan ketika sebuah program sedang dieksekusi. Sebuah proses dibuat melalui system call create-prosessyang membentuk proses turunan atau child process yang dilakukan oleh  proses induk atau parent process. Proses turunan tersebut mampu membuat proses baru sehingga semua proses ini akhirnya membentuk
pohon prosess.
Saat suatu prosess dibuat maka proses tersebut dapat memperoleh sumber daya seperti waktu CPU, berkas, perangkat input/output, dan memory. Sumber daya ini dapat langsung diperoleh dari sistem operasi, dari proses induk yang membagikan sumber daya ke setiap proses turunannya. atau proses turunan  dan proses induk berbagi sumber daya yang diberikan o1leh sistem operasi.

Hal – hal yang berkaitan dengan proses yaitu :
1.                  MULTIPROGAMMING ( MULTITASKING )
Multiprogramming adalah manajemen banyak proses pada satu pemroses. Istilah yang digunakan multiprogramming (multitasking) bukan multiprocessing. Mulitprocessing telah digunakan untuk konsep lain, yaitu komputer dengan banyak pemroses di satu sistem komputer dengan masing-masing pemroses melakukan pemrosesan secara independen. Saat ini, kebanyakan komputer pribadi, workstation adalah sistem pemroses tunggal yang menjalankan sistem operasi multiprogramming (multitasking) seperti MS-Windows 3.0, MS-Windows NT, OS/2 dan Macintosh System 7.
Banyak proses dijalankan bersamaan, masing-masing proses mendapat bagian memori dan kendali tersendiri. Program yang dijalankan bersifat :
-          Tidak bergantung (Independent)
-          Proses terpisah satu dari lainnya & tidak berpengaruh
Satu program pada satu saat (one program atanyinstant) Pada satu waktu hanya satu proses yang dilayani pemroses, menggunakan interleave bukan overlapdiantara program-program. Oleh karena perpindahan dari satu proses ke proses dilakukan secara cepat bagi bagi pemakai seolah-olah bekerja secara paralel. Hal ini dikenal dengan paralel semu (pseudoparallelism).

2.                  MULTIPROCESSING
Multiprocessing adalah manajemen banyak proses di komputer multiprocessor (banyak pemroses di dalamnya). Dengan kata lain komputer dengan banyak pemroses di satu sistem komputer dengan masing-masing pemroses melakukan pemrosesan secara independen. Dulunya sistem ini hanya terdapat di sistem besar, mainframe dan minikomputer. Saat ini komputer workstation telah dapat dilengkapi multiprocessor. Menggunakan komputer semaksimal mungkin dengan beberapa CPU sehingga beberapa program bisa dijalankan secara bersama-sama, masing-masing dengan menggunakan prosesornya sendiri-sendiri. Sistem operasi yang mendukung multiprocessing yaitu : Microsoft Windows NT, UNIX, Linux.

3.                  DISTRIBUTED PROCESSING / COMPUTING
DistributedProcessing adalah manajemen banyak proses yang dieksekusi di banyak sistem komputer yang tersebar (terdistribusi). Trend masa datang adalah menuju komputasi tersebar (distributedcomputing). Banyak riset dan pengembangan sistem operasi tersebar di antaranya AMOEBA, MACH, dan sebagainya.
Perkembangan sistem komputer seperti multi-processing, multi-programing, terdistribusi dan paralel yang menghapuskan adanya proses-proses  yang berjalaan secara bersamaan dalam waktu yang sama. Sehingga menyebabkan masalah yang perlu diperhatikan dari perancang sistem operasi. Kondisi dimana pada saat yang bersamaan terdapat lebih dari satu proses yang disebut kongkurensi atau proses-proses kongkuren. Proses-proses yang mengalami kongkuren dapat berdiri sendiri yang disebut independen atau dapat saling berinteraksi sehingga membutuhkan sinkronisasi atau koordinasi proses dengan baik.

Penjelasan proses menggunakan diagram batang :

Pengertian dan penjelasan sebagai berikut :
1.                  New                 : proses sedang dibuat.
2.                  Running           : proses sedang di eksekusi.
3.                  Waiting            : proses sedang menunggu beberapa event yang akan terjadi contohnya :                                 menunggu untuk menyelesaikan input/output atau menerima sinyal.
4.                  Ready              : proses menuggu jatah waktu dari CPU untuk diproses.
5.                  Terminated      : proses telah selesai di eksekusi.
Operasi-operasi terhadap proses antara lain :
1.                  Penciptaan proses (createprocess)
2.                  Penghancuran/terminasi proses (destroy a process)
3.                  Penundaan proses (suspend a process)
4.                  Pelanjutan kembali proses (resume process)
5.                  Pengubahan prioritas proses
6.                  Memblok proses
7.                  Membangunkan proses
8.                  Menjadwalkan proses
9.                  Memungkinkan proses berkomunikasi dengan proses lain
   
Pengelolaan proses, proses dikelola karena dalam sebuah proses membutuhkan sumber daya untuk menyelesaikan tugas. Sistem operasi bertanggung jawab atas aktifitas yang berkaitan dengan management proses seperti :
1.                  Menunda atau melanjutkan proses.
2.                  Menyediakan mekanisme untuk proses komunikasi.
3.                  Menyediakan mekanisme untuk proses sinkronisasi.
4.                  Menyediakan mekanisme untuk penangan deadlock.
5.                  Pembuatan dan penghapusan proses pengguna dan sistem proses.

2.2      Konsep Dasar Proses Dalam Sistem Operasi
Proses dalam sistem operasi adalah suatu bagian dari program yang berada pada status tertentu dalam rangkaian eksekusinya. Di dalam bahasan Sistem Operasi, kita lebih sering membahas prosesdibandingkan dengan program. Pada Sistem Operasi modern, pada satu saat tidak seluruh program dimuat dalam memori, tetapi hanya satu bagian saja dari program tersebut, Sedangkan bagian lain dari program tersebut tetap beristirahat di media penyimpan disk. Hanya pada saat dibutuhkan saja, bagian dari program tersebut dimuat di memory dan dieksekusi oleh prosesor. Hal ini akan sangat menghemat pemakaian memori.
Secara informal :  Proses adalah program dalam eksekusi. Suatu proses adalah lebih dari kode program, dimana kadang kala dikenal sebagai bagian tulisan. Proses juga termasuk aktivitas yang sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor's register. Suatu proses umumnya juga termasuk process stack, yang berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan sebuah data section, yang berisikan variabel global. 
Kami tekankan bahwa program itu sendiri bukanlah sebuah proses : Suatu program adalah satu entitas pasif seperti isi dari sebuah berkas yang disimpan didalam disket, sebagaimana sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang mengkhususkan pada instruksi selanjutnya untuk dijalankan dan seperangkat sumber daya/ resource yang berkenaan dengannya.
Walau dua proses dapat dihubungkan dengan program yang sama, program tersebut dianggap dua urutan eksekusi yang berbeda. Sebagai contoh, beberapa pengguna dapat menjalankan copy yang berbeda pada mail program, atau pengguna yang sama dapat meminta banyak copy dari program editor.
Tiap-tiap proses ini adalah proses yang berbeda dan walau bagian tulisan-text adalah sama, data section bervariasi juga adalah umum untuk memiliki proses yang menghasilkan banyak proses begitu ia bekerja.

a)      Process State
Status proses selalu berubah-ubah selama suatu program dieksekusi atau dijalankan. Beberapa status tersebut ialah :
a. New
                         : proses baru diciptakan
b. Running
                   : proses sedang dijalankan
c. Waiting
                    : proses sedang menunggu suatu kondisi tertentu untuk bisa berjalan (misalkan menunggu respon dari perangkat I/O)
d. Ready
                      : proses menunggu untuk dilayani processor
e. Terminated
               : proses telah menyelesaikan eksekusi.

b)  Proses control blok (PCB)
Sistem operasi membutuhkan banyak informasi mengenai proses guna pengelolaan proses. Semua informasi ini ada pada PCB. PCB mengandung beberapa informasi seperti berikut :
1.    Process State :  berisi informasi statuproses(new,running,waiting,ready,terminated)
2.    Program counter : berisi informasi mengenai alamat instruksi yang akan digunakaselanjutnya.
3.    CPU register : berisi register2 CPU apa saja yang digunakan
4.    CPU scheduling information : berisi penjadwalan proses beserta algoritmanya
5.     Memory management information : berisi informasi tentang berapa jumlah memory  yang digunakan, limit register, tabel segment, dll berkenaan dengan penggunaan memory.
6.     I/O status information : berisi informasi tentang perangkat apa saja yang digunakan dalam proses.
7.  Accounting : berisi informasi tentang statistik eksekusi proses seperti waktu yang diperlukan, jumlah proses, dll.




2.3      Implementasi Proses
Implementasi proses diartikan sebagai pelaksanaan atau penerapanArtinya yg dilaksanakan dan diterapkan adalah kurikulum yang telah di rancang/di desain untuk  kemudian di jalankan sepenuhnya
Tabel-tabel proses masing-masing proses yang ada dalam sistem mempunyai state yang harus diperhatikan oleh sistem operasi mencatat state-state proses ke dalam tabel atau senerai yang meliputi:
A.     Tabel informasi manajemen memory
B.     Tabel informasi manajemen I/O
C.     Tabel informasi sistem file
D.     Tabel-tabel proses

 A. Tabel informasi manajemen memory
Tabel ini fungsinya menjaga keutuhan memory utama atau sekunder. Tabel ini memeuat informasi sebagai berikut :
1.      Alokasi memory utama yang diijinkan proses
2.      ALokasi momory sekunder yang diisikan proses
3.      Atribut segmen momory utama atau sekunder.

B. Tabel informasi manajemen I/O
Tabel ini digunakan untuk mengelolah penggunaan perangkat I/O agar dapat digunakan secara bergantian oleh proses yang dibutuhkannya.

C. Tabel informasi sistem file
File ini menyimpan informasi tentang ekstensi file. lokasi pada memory sekuder status dan atribut-atribut file.

D. Tabel Proses
 Tabel proses fungsinya mengelolah proses, menyimpan atribut proses dan sebagainya.

Comments