- Sebutkan lima aktivitas sistem operasi yang merupakan contoh dari suatu managemen proses!
Jawab:
> Membuat dan menghapus proses pengguna dan sistem proses. Sistem operasi mengalokasikan sumber daya untuk di gunakan oleh sebuah proses.
> Menunda atau next proses, sistem operasi mengatur prioritas dari proses-proses dan akan mendahulukan proses yang memiliki prioritas paling besar.
> Menyediakan mekanisme untuk proses sinkronisasi. Untuk memperlancar jalannya proses.
> Menyediakan mekanisme untuk proses komunikasi. Komunikasi antar proses untuk berinteraksi agar tidak menyebabkan terganggunya proses yang lainnya.
> Menyediakan mekanisme untuk penanganan deadlock. Sistem operasi harus dapat menghindari dari deadlock, (deadlock yaitu suatu keadaan dimana sistem seperti terhenti) dan memulihkan kondisi sistemnya.
- Definisikan perbedaan antara penjadwalan short term, medium term dan long term!
Jawab:
> Penjadwalan Short Term bertugas menjadwalkan alokasi pemroses di antara proses-proses ready yang berada di memori utama. Sasaran utamanya adalah memaksimumkan kinerja sistem untuk memenuhi satu kumpulan kriteria yang di harapkan.
> Penjadwalan medium term bertugas menangani proses-proses swapping. (swapping sendiri adalah aktivitas pemindahan proses yang tertunda dari memori utama ke memori sekunder) Proses-proses yang mempunyai kepentingan kecil saat itu adalah proses yang tertunda. Penjadwalan jangka menengah mengendalikan transmisi dari suspended ke ready (dari state suspend ke ready) dari proses-proses yang mengawali swapping.
> Penjadwalan long term bekerja terhadap antrian batch dan memilih batch berikutnya yang harus di eksekusi sistem. Sasaran utamanya adalah memberi keseimbangan proses-proses campuran.
- Jelaskan tindakan yang diambil oleh sebuah kernel ketika alih konteks antar proses!
Jawab:
> Simpan konteks pemroses, termasuk register PC dan register-register lainnya.
> Perbarui PCB proses yang running, termasuk mengubah state proses menjadi salah satu state (ready, blocked, suspendedready dsb) juga memperbaharui field-field yang relevan.
> Pindahkan PCB proses ke senarai yang cocok.
> Pilih satu proses lain untuk di eksekusi sesuai dengan teknik penjadwalan.
> Perbarui PCB proses yang di pilih termasuk perubahan state menjadi running.
> Perbaruistruktur-struktur data manajemen memori.
> Kembalikan konteks pemroses dengan konteks simpanan yang memberitahu konteks proses terakhir saat di alihkan dari proses running. Langkah ini di lakukan dengan memuatkan nilai-nilai register PC dan register-register lain dengan nilai konteks yang tersimpan.
- Informasi apa saja yang disimpan pada tabel proses saat alih konteks dari satu proses ke proses lain?
Jawab:
> Tabel informasi manajemen memori
> Tabel informasi manajemen masukan / keluaran
> Tabel informasi sistem file
> Tabel proses
- Di sistem UNIX terdapat banyak status proses yang dapat timbul (transisi) akibat event (eksternal) OS dan proses tersebut itu sendiri. Transisi state apa sajakah yang dapat ditimbulkan oleh proses itu sendiri. Sebutkan!
Jawab:
Pada UNIX, proses baru di ciptakan dengan memanggil system call bernama fork. System call fork menciptakan copyan proses pemanggil (induk) yang identik. Setelah pemanggilan fork, proses induk dapat melanjutkan berjalan bersama proses anak secara paralel. Proses induk dapat kembali melakukan fork untuk menciptakan proses-proses anak yang baru yang lain. Proses-proses anak ini pun dapat mengeksekusi fork. Dengan cara ini UNIX dapat terbentuk pohon hierarki proses.
Pada Linux/UNIX, sistem operasi menciptakan proses pertama init. Proses init memperoleh id berangka 0. Proses init merupakan moyang pertama dari semua proses yang terdapat di sistem Linux / UNIX.
- Apa keuntungan dan kekurangan dari: Komunikasi Simetrik dan asimetrik, Automatic dan explicit buffering, Send by copy dan send by reference, Fixed-size dan variable sized messages?
Jawab:
> Komunikasi simetrik dan asimetrik : Keuntungan utama pada tingkat programer adalah bahwa proses tidak harus memblock pelaksanaannya yang dapat menghasilkan kinerja lebih baik. Kelemahannya adalah komunikasi asimetris lebih sulit untuk program karena programer harus menjamin bahwa pesan tiba di penerima ketika di butuhkan. Pada sistem asimetris lebih rumit karena memerlukan kernel tingkat.
> Automatic dan Explicit Buffering : kelebihannya automatic buffering membuat programer lebih mudah. Kelemahannya sistem akan sulit untuk di bangun.
> Send by Copy dan Send b y Reference : Kelebihannya jaringan lebih baik dari generalisasi dan masalah sinkronisasi untuk Send by Copy. Dan untuk Send by Reference lebih efisien untuk struktur data yang besar. Kelemahannya sulit kode karena memori implikasi bersamaan.
> Fixed size message dan Variable sized message : kelebihannya fixed sized message lebih mudah untuk di terapkan di kernel tingkat. Variable size message lebih mudah untuk programer. Kelemahannya fixed size message membutuhkan usaha sedikit lebih pada bagian dari programer. Variable sized message agak lebih kompleks untuk kenel.
- Jelaskan perbedaan short-term, medium-term dan long-term?
Jawab: > Short term : memilih proses-proses yang siap di eksekusi dan mengalokasikan CPU ke salah satu dari proses-proses tersebut.
>
Medium term: memindahkan proses dari memori (dan dari pengisian aktif
dari CPU) dan untuk mengurangi derajat dari multiprogramming.
>
Long term: digunakan untuk memilih proses dari pool dan menyimpannya ke
memori, digunakan hanya jika proses meninggalkan sistem.
- Jelaskan apa yang akan dilakukan oleh kernel kepada alih konteks ketika proses sedang berlangsung?
Jawab:
> Pemroses menyiapkan konteks program saat itu yang sedang di eksekusi ke stack.
> Pemroses meng-set register PC dengan alamat awal program untuk interrupt handler.
> Selanjutnya pemroses menjalankan instruksi-instruksi berikutnya di interrupt handler yang melayani interupsi. Pelaksanaan interupsi ini belum tentu mengakibatkan pengalihan ke pross lain (yaitu pengalihan PCB proses dari senarai running ke senarai lain (blocked, ready, dsb) dan sebaliknya). kita menyebut pengalihan konteks adalah untuk pengalihan sementar ayang di lakukan dengan singkat misalnya untuk mengeksekusi interrupt handler.
- Beberapa single-user mikrokomputer sistem operasi seperti MS-DOS menyediakan sedikit atau tidak sama sekali arti dari pemrosesan yang konkuren. Diskusikan dampak yang paling mungkin ketika pemrosesan yang konkuren dimasukkan ke dalam suatu sistem operasi?
Jawab:
Dampaknya sistem akan sering terganggu atau terjadi error atau sistem hank.
- Perlihatkan semua kemungkinan keadaan dimana suatu proses dapat sedang berjalan, dan gambarkan diagram transisi keadaan yang menjelaskan bagaimana proses bergerak diantara state.
Jawab:
> Running : Pemroses sedang mengeksekusi instruksi proses itu.
> Ready : Proses ready (siap) di eksekusi tapi pemroses tidak mengeksekusi proses ini.
> Blocked : Proses menunggu kejadian tertentu selesai, seperti selesainya operasi perangkat masukan / keluaran, tersedianya memori, tibanya pesan jawaban, dsb.
> Suspended Ready : proses yang siap di eksekusi namun mengalami penundaan.
> Suspended Blocked
- Apakah suatu proses memberikan ’issue’ ke suatu disk I/O ketika, proses tersebut dalam ’ready’ state, jelaskan?
Jawab:
Iya, karena akan mempengaruhi proses itu sendiri sebab jika tidak ada issue pada perangkat input/output maka proses akan menunggu kejadian alokasi sumber daya atau selesainya layanan perangkat input/output (mulainya state ready lalu berubah dari state running menjadi blocked). Dan saat sumber daya yang diperlukan telah tersedia maka proses akan berubah kembali menjadi state ready.
- Kernel menjaga suatu rekaman untuk setiap proses, disebut Proses Control Blocks (PCB). Ketika suatu proses sedang tidak berjalan, PCB berisi informasi tentang perlunya melakukan restart suatu proses dalam CPU. Jelaskan dua informasi yang harus dipunyai PCB!
Jawab:
> Informasi identifikasi proses : informasi-informasi yang berkaitan dengan identitas proses yang unik.
> Informasi status pemroses : berisi informasi-informasi yang esensinya merupakan nilai/isi dari register-register pemroses.
> Informasi kendali proses : informasi-informasi lain yang diperlukan sistem operasi untuk mengendalikan dan koordinasi beragam proses aktif.