Proses pada Sistem Operasi
Nama : I Nyoman Krisna Pranata
NIM : 1605551114
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T.,M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA
- Konsep dasar dan defisini dari proses
- Keadaan/status Proses
- Process Control Block
- Manajemen Proses
Konsep dasar dan defisini dari proses
Proses adalah unit kerja
terkecil yang secara individu memiliki sumber daya dan dijadwalkan oleh sistem operasi. Proses juga merupakan
program yang sedang dalam kondisi dijalankan (eksekusi). Proses bukanlah suatu
kode program. Proses
menggambarkan aktifitas yang sedang terjadi pada sistem operasi (oleh
aplikasi), disertai dengan nilai dari program counter dan isi dari daftar
prosesor (processor’s register). Suatu proses umumnya
termasuk process stack, berisi data temporer (parameter metoda, address yang
kembali, variabel lokal) dan sebuah data section, yang berisikan variabel
global.
Proses bukanlah Kode Program
Proses
dan program itu berbeda, program merupakan sebuah entitas pasif. Program memerlukan
Program Counter untuk menjalankan instruksi selanjutnya yang akan dijalankan,
didukung dengan seperangkat sumber daya (resource). .Dua proses dapat
dihubungkan dengan program yang sama, di mana program tersebut dianggap dua
urutan eksekusi yang berbeda. Contoh
: proses x dan proses y dapat muncul dari dijalankan program 1, baik oleh 1
pengguna maupun n pengguna.
Keadaan/Status Proses
Proses
– proses yang dikelola oleh sistem operasi akan melalui serangkaian keadaan
yang merupakan bagian dari aktivitasnya. Keadaan proses ini disebut sebagai
status proses yang terdiri dari:
1 1. New
Sebelum kita menjalankan suatu program, sistem operasi akan menyiapkan beberapa sumber daya yang akan dibutuhkan untuk menjalankan program tersebut, jadi status new ini merupakan status yang dimana sedang dikerjakan atau dibuat.
2. Ready
Sebelum kita menjalankan suatu program, sistem operasi akan menyiapkan beberapa sumber daya yang akan dibutuhkan untuk menjalankan program tersebut, jadi status new ini merupakan status yang dimana sedang dikerjakan atau dibuat.
2. Ready
Setelah
kita menjalankan suatu program, maka status new berubah menjadi status ready
dimana proses siap dijalankan atau dieksekusi, tetapi dalam hal ini CPU belum
tersedia karena sedang mengerjakan proses lain
3 3. Waiting
Status Waiting yaitu status dimana proses sedang menunggu suatu kejadian tertentu. Misalnya sedang menunggu operasi I/O selesai, menunggu signal dari proses lain, tersedianya memori, dan sebagainya.
Status Waiting yaitu status dimana proses sedang menunggu suatu kejadian tertentu. Misalnya sedang menunggu operasi I/O selesai, menunggu signal dari proses lain, tersedianya memori, dan sebagainya.
4 4. Running
Status Running yaitu status dimana proses dieksekusi. Pada status ini CPU sedang mengeksekusi instruksi – instruksi pada proses.
Status Running yaitu status dimana proses dieksekusi. Pada status ini CPU sedang mengeksekusi instruksi – instruksi pada proses.
5 5. Terminated
Status Terminated yaitu status dimana proses diakhiri, banyak hal yang menyebabkan suatu proses berhenti, status berhenti bisa juga dikarenakan waktu yang sudah diberikan sudah berakhir, terjadi kesalahan dalam perhitungan, terjadi kegagalan dalam input / output, atau proses induknya berakhir.
Status Terminated yaitu status dimana proses diakhiri, banyak hal yang menyebabkan suatu proses berhenti, status berhenti bisa juga dikarenakan waktu yang sudah diberikan sudah berakhir, terjadi kesalahan dalam perhitungan, terjadi kegagalan dalam input / output, atau proses induknya berakhir.
Gambar
diatas merupakan diagaram dari keadaan/state suatu proses. Sebuah proses
menjadi Waiting karena proses tersebut menunggu suatu kejadian tertentu seperti
selesainya operasi I/O, misalnya perekaman data ke disk karena pada saat
perekaman dilakukan proses sedang tidak menggunakan CPU maka scheduler segera
mengalokasikan CPU ke proses lain yang telah Ready. Apabila kejadian yang ditunggu telah selesai
maka proses dipindahkan kembali ke antrian Ready dan siap dijadwalkan.
Sebuah proses dari keadaan Running dapat
menjadi Ready kembali karena diinterupsi oleh proses lain. Interupsi dapat
disebabkan karena jatah waktu yang diberikan CPU ke proses tersebut telah habis
sementara proses masih memerlukan sejumlah waktu untuk selesai. Jatah waktu
yang diberikan sering disebut sebagai quantum time (time slice) yang dapat
berkisar antara 1 hingga 100 milidetik. Interupsi suatu proses terkait erat
dengan strategi penjadwalan proses yang digunakan sistem operasi yaitu strategi
preemptive dimana suatu proses dapat saja disela oleh proses lain pada saat
Running.
Process Control Block
Setiap
Proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control
Block). PCB ( Process Control Block) ini sendiri adalah informasi – informasi
lain yang diperlukan sebuah sistem operasi untuk mengendalikan dan
mengkoordinasikan beragam proses yang aktif. Informasi – informasi tersebut
merupakan sebuah tanda pengenal proses yang unik dan menjadi nomer identitas,
status proses, prioritas eksekusi proses dan informasi lokasi proses dalam
memori. Process Control Block ini hanya berfungsi sebagai tempat penyimpanan
informasi yang dapat bervariasi dari proses
yang satu dengan yang lain. Tiap
proses digambarkan dalam sistem operasi oleh sebuah Process Control Block PCB -
juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi
yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal dibawah
ini:
- Status proses: status mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.
- Program counter: suatu stack yang berisi alamat dari instruksi selanjutnya untuk dieksekusi untuk proses ini.
- CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register tersebut termasuk accumulator , indeks register, stack pointer , general-purposes register , ditambah code information pada kondisi apa pun. Besertaan dengan program counter, keadaaan/status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
- Informasi managemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel page/halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi (lihat Bab Managemen memori).
- Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun jumlah job atau proses, dan banyak lagi.
- Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini, suatu daftar berkas-berkas yang sedang diakses dan banyak lagi.
Manajemen
Proses
Sistem
operasi di dalam menangani proses, dapat melakukan manajemen proses, yang
meliputi 9 hal :
1. Penciptaan
proses
2. Penghancuran/terminasi
proses
3. Penundaan
proses.
4. Melanjutkan
kembali proses.
5. Mengubah
prioritas proses.
6. Memblok
proses.
7. Membangunkan
proses.
8. Menjadwalkan
proses.
9. Memungkinkan
proses berkomunikasi dengan proses lain
Kali ini saya akan menampilkan manajemen proses pada linux
dengan menggunakan command top dan htop pada linux. perintah top pada
Linux ini fungsinya untuk monitoring proses di linux, atau mengecek
proses-proses yang sedang berjalan pada linux. Contohnya yaitu, pada saat kita membuka
firefox, dan membuka aplikasi lain di
linux. untuk mengecek di urutan mana aplikasi yang tadi kita buka sedang
berjalan dan proses apa yang sedang dijalankan kita bisa mengeceknya dengan
menggunakan perintah top.
Gambar diatas menunjukan tampilan dari top
pada terminal, terdapat 6 baris pada gambar tersebut, yang pertama yaitu Row –
Top, pada baris kedua yaitu task, pada baris ketiga yaitu CPU, pada baris ke
empat dan lima yaitu Memory dan Swap, dan pada baris ke enam Process List.
- Row – Top (baris paling pertama) disini kita bisa melihat informasi berupa waktu saat ini, mesin berjalan, sesi user login, dan rata – rata beban sistem.
- Task, informasi pada task ini yaitu total proses yang sedang berjalan, proses yang sedang berjalan proses yang sleeping , dan proses yang berhenti.
- CPU dimana informasi yang kita dapat berupa, persentase pemakaian CPU untuk proses pengguna, persentase pemakaian CPU yang digunakan sistem, persentase proses CPU yang mendapat prioritas update, persentase CPU yang tidak terpakai, persentase CPU yang menunggu I/O, persentase CPU untuk service hardware, persentase CPU untuk service software, dan jumlah CPU yang menjalankan virtual lain.
- Memory dan Swap informasi disini mengenai penggunaan memory dan swap. misalnya jumlah memory yang digunakan, memory bebas, cache dan lain – lain.
- Process List, Ini yang merupakan baris proses, disini kita bisa lihat proses apa saja yang berjalan
Htop adalah aplikasi yang interaktif untuk
monitoring system secara real time di system berbasis Linux/Unix dan juga menghandel sebagai altrenatif command, htop
disini biasanya bukan terinstall secara default pada linux jadi kita harus menginstallnya
secara manual terlebih dahulu. Untuk menginstall pertama – tama kita harus
membuka terminal dan mengetik kode seperti dibawah ini
Sudo apt-get install
htop
|
Htop adalah salah satu tools dengan fitur dan UI yang bersahabat,
yang mana tidak menampilkan command di atasnya, dan sekilas tentang htop
adalah:
- Ketika menjalankan htop Anda dapat menscroll secara vertical untuk melihat semua list proses, dan scroll secara horizontal untuk melihat command lengkap.
- Htop dijalankan dengan sangat mudah dan cepat dari pada top, karena dia tidak menunggu untuk meload data ketika startup.
- Di htop Anda bisa menghentikan 'kill' lebih dari satu proses yang sedang berjalan tanpa harus memasukan PIDs.
- Di htop Anda tidak perlu memasukan nomor proses dan value prioritas untuk membetulkan proses.
- Menggunakan Mouse untuk memilih daftar item
Gambar diatas merupakan tampilan dari htop,
dimana pada htop ini terdapat 3 pilihan disetiap bagian yaitu, header, dimana pada
header ini kita bisa melihat CPU,
Memory, Swap dan juga menampilkan, load average dan Up-time, daftar dari proses yang diawali CPU utilization, dan terdapat footer, pada bagian footer menampilkan help, setup, filter tree kill, nice, quit dan lainnya,
Referensi :
1. I Putu Agus Eka Pratama,“PPT Matakuliah Network Operating System Pertemuan 2 : Proses,”2018




Sangat membantu
BalasHapusMantap gan
BalasHapus