Suatu proses pada dasarnya adalah sebuah program dalam eksekusi. Eksekusi suatu proses harus berlanjut secara berurutan.
Suatu proses didefinisikan sebagai entitas yang mewakili unit kerja dasar yang akan diimplementasikan dalam sistem.
Singkatnya, kami menulis program komputer kami dalam file teks dan ketika kami menjalankan program ini, itu menjadi proses yang melakukan semua tugas yang disebutkan dalam program.
Ketika suatu program dimuat ke dalam memori dan itu menjadi suatu proses, itu dapat dibagi menjadi empat bagian, yaitu stack, heap, data dan text. Gambar berikut menunjukkan tata letak proses yang disederhanakan di dalam memori utama
|
Proses di Dalam Memory |
Komponen dan Deskripsi Proses di Dalam Memory
1. Stack yaitu proses berisi data sementara seperti parameter metode / fungsi, alamat pengirim dan variabel lokal.
2. Heap adalah memori yang dialokasikan secara dinamis untuk suatu proses selama waktu menjalankannya.
3. Text Ini termasuk aktivitas saat ini yang diwakili oleh nilai Program Counter dan isi register prosesor.
4. Data adalah Bagian ini berisi variabel global dan statis.
Program
Suatu program adalah bagian dari kode yang dapat berupa satu baris atau jutaan baris. Program komputer biasanya ditulis oleh seorang programmer komputer dalam bahasa pemrograman.
Sebagai contoh, berikut adalah program sederhana yang ditulis dalam bahasa pemrograman C.
#include <stdio.h>
int main () {
printf ("Halo, Dunia! \ n");
return 0;
}
Program komputer adalah kumpulan instruksi yang melakukan tugas tertentu ketika dijalankan oleh komputer. Ketika kita membandingkan suatu program dengan suatu proses, kita dapat menyimpulkan bahwa suatu proses adalah turunan dinamis dari suatu program komputer.
Bagian dari program komputer yang melakukan tugas yang didefinisikan dengan baik dikenal sebagai algoritma. Kumpulan program komputer, perpustakaan, dan data terkait disebut sebagai perangkat lunak.
Siklus Hidup Proses
Ketika suatu proses dijalankan, ia melewati berbagai kondisi. Tahap-tahap ini mungkin berbeda di sistem operasi yang berbeda, dan nama-nama negara ini juga tidak standar. Secara umum, suatu proses dapat memiliki salah satu dari lima negara berikut sekaligus.
Siklus Hidup Proses
1. Start adalah kondisi awal saat proses pertama kali dimulai / dibuat.
2. Ready adalah Proses sedang menunggu untuk ditugaskan ke prosesor. Proses siap menunggu prosesor dialokasikan untuk mereka oleh sistem operasi sehingga mereka dapat berjalan. Proses dapat masuk ke kondisi ini setelah keadaan Mulai atau saat menjalankannya tetapi terganggu oleh penjadwal untuk menetapkan CPU ke beberapa proses lainnya.
3. Running. Setelah proses ditetapkan ke prosesor oleh penjadwal OS, status proses diatur ke berjalan dan prosesor menjalankan instruksinya.
4. Waiting yaitu Proses berpindah ke status menunggu jika perlu menunggu sumber daya, seperti menunggu input pengguna, atau menunggu file tersedia.
5 Terminated or Exit. Setelah proses selesai dieksekusi, atau diakhiri oleh sistem operasi, ia dipindahkan ke status terminasi di mana ia menunggu untuk dihapus dari memori utama
|
Siklus Hidup Proses |
Blok Kontrol Proses (PCB)
Blok Kontrol Proses adalah struktur data yang dikelola oleh Sistem Operasi untuk setiap proses. PCB diidentifikasi oleh ID proses integer (PID). PCB menyimpan semua informasi yang diperlukan untuk melacak proses sebagaimana tercantum di bawah ini
Deskripsi Block Kontrol Proses
1. Process State
Keadaan proses saat ini yaitu, apakah sudah siap, berjalan, menunggu, atau apa pun.
2. Process privileges
Ini diperlukan untuk mengizinkan / melarang akses ke sumber daya sistem.
3. ID proses
Identifikasi unik untuk setiap proses dalam sistem operasi.
4. Pointer
Proses penunjuk ke induk.
5. Program Counter
Penghitung Program adalah penunjuk ke alamat instruksi berikutnya yang akan dieksekusi untuk proses ini.
6. CPU registers
Berbagai register CPU di mana proses perlu disimpan untuk eksekusi untuk menjalankan kondisi.
7. CPU Scheduling Information
Prioritas proses dan informasi penjadwalan lainnya yang diperlukan untuk menjadwalkan proses.
8. Memory management information
Ini termasuk informasi tabel halaman, batas memori, tabel Segmen tergantung pada memori yang digunakan oleh sistem operasi.
9. Accounting information
Ini termasuk informasi tabel halaman, batas memori, tabel Segmen tergantung pada memori yang digunakan oleh sistem operasi.
10. IO status information
Ini termasuk daftar perangkat I / O yang dialokasikan untuk proses tersebut.
Arsitektur PCB sepenuhnya tergantung pada Sistem Operasi dan dapat berisi informasi yang berbeda dalam sistem operasi yang berbeda. Berikut adalah diagram sederhana dari PCB
|
Alur Block Kontrol Proses |
PCB dikelola untuk suatu proses sepanjang masa pakainya, dan dihapus setelah proses berakhir.