Pelajari sistem operasi Linux dan Windows (studi literatur)
- Deskripsikan proses pada kedua SO tersebut
- Bagaimana proses pembuatan & penghentian proses? (termasuk switching-nya)
Pembuatan Proses
Secara umum, suatu proses akan memerlukan sumber tertentu (waktu CPU, memori, berkas, perangkat I/O) untuk menyelesaikan tugasnya. Ketika suatu proses membuat sebuah subproses, sehingga subproses dapat mampu untuk memperoleh sumbernya secara langsung dari sistem operasi. Induk mungkin harus membatasi sumber diantara anaknya, atau induk dapat berbagi sebagian sumber (seperti memori berkas) diantara beberapa dari anaknya. Membatasi suatu anak proses menjadi subset sumber daya induknya mencegah proses apa pun dari pengisian sistem yang telalu banyak dengan menciptakan terlalu banyak subproses.
Sebagai tambahan pada berbagai sumber fisik dan logis bahwa suatu proses diperoleh ketika telah dibuat, data pemula (masukan) dapat turut lewat oleh induk proses sampai anak proses. Sebagai contoh, anggap suatu proses yang fungsinya untuk menunjukkan status sebuah berkas, katakan F1, pada layar terminal. Ketika dibuat, akan menjadi sebagai sebuah masukan dari proses induknya, nama dari berkas F1, dan akan mengeksekusi menggunakan kumpulan data tersebut untuk memperoleh informasi yang diinginkan. Proses tersebut juga mendapat nama dari perangkat luar. Sebagian sistem operasi melewati sumber-sumber ke anak proses. Pada sistem tersebut, proses baru bisa mendapat dua berkas terbuka yang baru, F1 dan perangkat terminal dan hanya perlu untuk mentransfer data antara kedua berkas tersebut.
Ketika suatu proses membuat proses baru, dua kemungkinan ada dalam term eksekusi:
1. Induk terus menerus untuk mengeksekusi secara bersama-sama dengan anaknya.
2. Induk menunggu sampai sebagian dari anaknya telah diakhiri/terminasi.
Juga ada dua kemungkinan dalam term dari address space pada proses baru:
1. Anak proses adalah duplikat dari induk proses.
2. Anak proses memiliki program yang terisikan didalamnya.
penghentian proses
Suatu proses akan berhenti jika telah menyelesaikan pernyataan terakhir dan meminta pada sistem operasi untuk menghapusnya dengan menggunakan system call exit. Proses mengembalikan semua data (output) ke parent proses melalui system call wait. Kemudian proses akan dihapus dari list atau tabel system dilanjutkan dengan menghapus PCB.
Penghapusan proses ini akan menjadi sangat kompleks jika ternyata proses yang akan dihentikan tersebut membuat proses-proses yang lain. Pada beberapa system proses-proses anak akan dihentikan secara otomatis jika proses induknya berhenti. Namun ada beberapa sistem yang menganggap bahwa proses anak ini terpisah dengan induknya, sehingga proses anak tidak ikut dihentikan secara otomatis pada saat proses induk dihentikan.
Alasan lain Penyebab terjadinya penghentian suatu proses:
-
Apabila Proses selesai mengerjakan tugasnya(selesai normal)
-
Apabila Proses berjalan melebihi batas waktu
-
Jika memory tidak tersedia
-
Pelanggaran terhdap batas memori
-
Terjadi kesalahan karena pelanggaran proteksi
-
Terjadi kesalahan perhitungan
-
Jika terjadi proses menunggu terlalu lama
-
Terjadi kegagalan I/O
-
Jika proses mengeksekusi instruksi yang tidak ada
-
Proses menggunakan instruksi yang disimpan untuk SO
-
Terjadi kesalahan penggunaan data
-
Terjadi intervensi dari operator atau SO (contoh : deadlock)
-
Jika proses induk berahir
-
Yang terakhir atas permintaan proses induk
Gunakan Shell Linux, jelaskan fungsi & cara menggunakan perintah (plus contoh):
-Top
Perintah top digunakan untuk menampilkan proses pada CPU.Perintah ini untuk menampilkan proses yang sedang berjalan secara realtime (kontinue) dan bisa digunakan untuk menampilkan proses dan penggunaan resource yang paling aktif. Contohnya :

- Grep
Perintah grep digunakan untuk menyaring masukanya dan menampilkan baris-baris yang hanya mengandung pola yang Anda tentukan. Pola ini disebut reguler expression dan Perintah grep digunakan untuk menampilkan string yang sesuai dengan input yang berasal dari perintah lainnya.Contoh :

- cat
Perintah cat digunakan untuk menampilkan isi berkas.cat juga dapat digunakan untuk menulis isi sebuah file teks Contoh :

3.2
1. Jelaskan alasan pembuatan & penghentian suatu proses!
|
Pembuatan |
Penghentian |
|
Kerja batch baru |
Selesai normal |
|
Login interaktif |
Memory unavailable |
|
Dibuat oleh SO untuk menyediakan layanan |
Error proteksi |
|
Ditelurkan oleh proses existing |
Intervensi operator atao SO |
2. Jelaskan tentang model proses lima status beserta kemungkinan transisinya!
Model proses lima status adalah model alur proses kerja dengan menggunakan lima pos atau lima pengaturan jalan proses sehingga alur dan penjadwalan proses dapat terkontrol.

- proses baru akan masuk lewat pos New
- kemudian masuk pada pos Ready untuk antri giliran panggilan proses oleh Dispatch
- setelah dipanggil Dispatch akan diproses pasa pos Running
- bila waktu giliran habis namun proses belum selesai maka proses akan menuju pos Blocked untuk menunggu giliran masuk pos Ready untuk menyelesaikan sisa proses
- bila proses selesai sebelum waktu giliran habis maka proses akan keluar melalui pos exit dan akan diganti proses berikutnya
3. Mengikuti soal sebelumnya, tetapi pada kehadiran dua status suspended.

Bila diamati dari diagram bloknya kita bisa menarik kepahaman bahwa denga diberlakukannya 2suspend akan mengoptimalkan kerja processor karena control dan seleksi proses yang dieksekusi dapat dilakukan dengan baik sehingga processor hanya mengeksekusi proses yang benar-benar memiliki prioritas tinggi dan juga memmbuang proses yang sekiranya bermasalah. Dengan 2suspend juga bermanfaat Proses dapat dieksekusi secara periodik (misal, sistem monitoring sistem atau accounting) & boleh di-suspend selama menunggu waktu berikutnya, Proses induk berkeinginan men-suspend eksekusdari suatu urunan untuk menguji atau mengubah proses turunan tersebut atau mengkoordinasikan aktifitas dari berbagai keturunannya.
4. Jelaskan elemen-elemen dari Process Control Block (PCB)!

Element-elemen PCB :
-
Identifikasi Proses yaitu Identifier numerik yang meliputi
- Identifier proses
- Identifier proses yang menciptakan
- Identifier pemakai
-
Informasi Status Pemroses yang meliputi
- Register-register yang terlihat pemakai yaitu Register-register yang dapat ditunjuk instruksi bahasa assembly untuk diproses pemroses
- Register-register kendali dan status yaitu Register-register yang digunakan untuk mengendalikan operasi pemroses, a.l.:
-
Program counter
-
PSW, dsb.
- Pointer stack yaitu Tiap proses mempunyai satu stack atau lebih. Stack digunakan untuk parameter atau alamat prosedur pemanggil dan system call. Pointer stack menunjuk posisi paling atas dari stack
-
Informasi Kendali Pemroses meliputi
-
Status proses. Mendefinisikan status proses (running,ready,block, dsb)
-
Prioritas. Menjelaskan prioritas proses
-
Informasi berkaitan penjadwalan. Informasi ini seperti lama menunggu, lama proses terakhir dieksekusi dsb.
-
Kejadian (Event). Identitas kejadian yang ditunggu proses
Penstrukturan data yaitu Suatu proses dapat dikaitkan dengan proses lain dalam satu antrian atau ring, atau struktur lainnya. PCB harus memiliki pointer untuk mendukung struktur ini.
Komunikasi antar proses yaitu Beragam flag, sinyal dan pesan dapat diasosiasikan dengan komunikasi antara dua proses yang terpisah. Informasi ini disimpan dalam PCB
Kewenangan proses yaitu Proses dapat mempunyai kewenangan berkaitan dengan memori dan tipe instruksi yang dapat dijalankan
Manajemen memori Bagian ini berisi pointer ke tabel segmen atau page yang menyatakan memori virtual proses
Kepemilikan dan utilisasi sumber daya yaitu Sumber daya yang dikendalikan proses harus diberi tanda, misalnya :
-
Berkas yang dibuka
-
Pemakaian pemroses
-
Pemakaian sumberdaya lainnya
Informasi ini diperlukan oleh penjadwal
