Senin, 26 November 2012

Latihan Soal

1. Sebutkan lima aktivitas sistem operasi yang merupakan contoh dari suatu managemen proses. !
jawab :

Membuat dan menghapus proses pengguna dan sistem proses. tugas dari sistem operasi adalah mengalokasikan sumber daya yang dibutuhkan oleh sebuah proses. kemudian sistem operasi mengambil sumber daya itu kembali setelah proses tersebut selesai sehingga bisa digunakan untuk proses lainnya.
Menunda atau next process. sistem operasi akan mengatur prioritas dari proses-proses yang akan dijalankan. apabila terjadi dua atau lebih proses yang mengantri, sistem operasi akan mendahulukan proses yang memiliki prioritas paling besar.
Menyediakan mekanisme untuk proses sinkronisasi. sistem operasi akan mengatur jalannya proses yang dieksekusi bersamaan sehingga tidak terjadi inkonsistensi data karena pengaksesan data yang sama, selain itu untuk memperlancar jalannya proses.
Menyediakan mekanisme untuk proses komunikasi. sistem operasi menyediakan mekanisme agar beberapa proses dapat saling berinteraksi dan berkomunikasi satu sama lain. sehingga tidak menyebabkan terganggunya proses lainnya.
Menyediakan mekanisme untuk penanganan deadlock. deadlock adalah suatu keadaan dimana sistem seperti terhenti. hal ini dikarenakan setiap proses memiliki sumber daya yang tidak bisa dibagi, dan proses tersebut menunggu untuk mendapatkan sumber daya yang sedang dimiliki oleh proses lain. sistem operasi harus bisa mendeteksi dan mencegah adanya deadlock. jika hal ini terjadi, sistem operasi harus dapat memulihkan kondisi sistemnya.

2. Definisikan perbedaan antara penjadualan short term, medium term dan long term.
jawab:

Short-term, memilih proses-proses yang siap untuk dieksekusi, dan mengakolakasikan CPU ke salah satu dari proses-proses tersebut. Short term scheduler digunakan untuk memilih diantara proses-proses yang siap di eksekusi dan salah satunya dialokasikan ke CPU.
  • Short term scheduler  Sering digunakan untuk memilih proses baru untuk CPU. Proses dieksekusi hanya beberapa milidetik sebelum menunggu I/O.
  • Karena durasi yang pendek antara eksekusi, Short term scheduler harus sangat cepat
Contoh : jika Short term scheduler membutuhkan 10ms untuk memutuskan mengeksekusi proses 100ms, maka 10/110=9% CPU digunakan untuk menjadwalkan pekerjaan.
  • Pada system time sharing, setiap proses baru ditempatkan di memori. Short term scheduler digunakan untuk memilih dari proses-proses tersebut di memori untuk diekseskusi.
Long-term pada sisi lain, mengeksekusi jauh lebih sedikit. Mungkin ada beberapa menit antara pembuatan proses baru dalam sistem. Penjadualan longterm mengkontrol derajat multiprogramming (jumlah proses dalam memori). Jika derajat multiprogramming stabil, lalu tingkat rata-rata dari penciptaan proses harus sama dengan tingkat kepergian rata rata dari proses yang meninggalkan sistem. Maka penjadualan longterm mungkin diperlukan untuk dipanggil hanya ketika suatu proses meninggalkan sistem.
Medium-term adalah kadang kala akan menguntungkan untuk memindahkan proses dari memori (dan dari pengisian aktif dari CPU), dan maka untuk mengurangi derajat dari multiprogramming. Dikemudian waktu, proses dapat diperkenalkan kedalam memori dan eksekusinya dapat dilanjutkan dimana proses itu di tinggalkan/ diangkat. Skema ini disebut swapping. Proses di swapped out, dan lalu di swapped in, oleh penjadual jangka menengah.Short-term, memilih proses-proses yang siap untuk dieksekusi, dan mengakolakasikan CPU ke salah satu dari proses-proses tersebut. Beberapa OS seperi system sharing, membutuhkan penjadwalan level tambahan (intermediate), yang disebut “medium term scheduler”.
  • Memperkenalkan konsep swapping proses : proses di “swap out “ dan di “swap in” pada medium term scheduler.
  • Swapping diperlukan untuk meningkatkan “process mix” atau karena perubahan pada kebutuhan memori melebihi memori yang tersedia, memori perlu dibebaskan.
3. Jelaskan tindakan yang diambil oleh sebuah kernel ketika alih konteks antar proses.
jawab:
Ketika alih konteks terjadi, kernel menyimpan konteks dari proses lama kedalam PCB nya dan mengisi konteks yang telah disimpan dari process baru yang telah terjadual untuk berjalan. Pergantian waktu konteks adalah murni overhead, karena sistem melakukan pekerjaan yang tidak perlu. Kecepatannya bervariasi dari mesin ke mesin, bergantung pada kecepatan memori, jumlah register yang harus di copy, dan keberadaan instruksi khusus (seperti instruksi tunggal untuk mengisi atau menyimpan seluruh register). Tingkat kecepatan umumnya berkisar antara 1 sampai 1000 mikro detik.

4. Informasi apa saja yang disimpan pada tabel proses saat alih konteks dari satu proses ke proses lain.
jawab:
Waktu alih konteks sangat begantung pada dukungan perangkat keras. Sebagai contoh, prosesor seperti UltraSPARC menyediakan dua rangkap register. Sebuah alih konteks hanya memasukkan perubahan pointer ke perangkat register yang ada. Tentu saja, jika ada lebih proses-proses aktif yang ada dari pada yang ada di perangkat register, sistem menggunakan bantuan untuk meng-copy data register pada dan dari memori, sebagaimana sebelumnya. Semakin sistem operasi kompleks, makin banyak pekerjaan yang harus dilakukan selama alih konteks. teknik managemen memori tingkat lanjut dapat mensyaratkan data tambahan untuk diganti dengan tiap konteks. Sebagai contoh, ruang alamat dari proses yang ada harus dijaga sebagai ruang pada pekerjaan berikutnya untuk digunakan. Bagaimana ruang alamat di jaga, berapa banyak pekerjaan dibutuhkan untuk menjaganya, tergantung pada metoda managemen memori dari sistem operasi. alih konteks telah menjadi suatu keharusan, bahwa programmer menggunakan struktur (threads) untuk menghindarinya kapan pun memungkinkan.

5. 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:

  • Proses yang baru diciptakan akan segera mempunyai state ready.
  • Proses dengan state running menjadi blocked karena sumber daya yang diminta belum tersedia.
  • Proses dengan state running menjadi ready karena penjadwal memutuskan agar pemroses melakukan eksekusi proses yang lain karena jatah waktu untuk proses itu telah habis. ( time out ).
  • Proses dengan state blocked menjadi ready saat sumber daya yang diminta telah tersedia atau layanan perangkat I/O selesai ( event occurs ).Proses dengan state ready menjadi running karena penjadwal memutuskan penggunaan pemroses untuk proses itu karena proses yang telah running berubah state menjadi ready atau blocked.
6. 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 simetris dan asimetris: Keuntungan utama pada tingkat programmer adalah bahwa proses tidak harus memblock pelaksanaannya yang dapat menghasilkan kinerja lebih baik. Kelemahannya adalah komunikasi asimetris lebih sulit untuk program karena programmer harus menjamin bahwa pesan tiba di penerima ketika dibutuhkan. Pada tingkat sistem, asimetris lebih rumit karena memerlukan kernel-tingkat.
Send by copy dan send by reference. Send by copy jaringan lebih baik bagi generalisasi dan masalah sinkronisasi. Send by copy dan send by reference lebih efisien untuk besar struktur data tetapi sulit kode karena memori implikasi bersamaan.
Automatic dan explicit buffering, Automatic buffering membuat pemrograman lebih mudah tetapi sebuah sistem akan sulit untuk dibangun.
Fixed-size dan variable sized message.  Fixed-size message lebih mudah untuk diterapkan di kernel-tingkat tetapi membutuhkan usaha sedikit lebih pada bagian dari programmer. Variable size message agak lebih kompleks untuk kernel tetapi agak lebih mudah untuk programmer.

7. Jelaskan perbedaan short-term, medium-term dan long-term?
jawab:
  • Sasaran utama short term adalah memaksimumkan kinerjs sistem untuk memnuhi satu kumpulan kriteria yang diharapkan. Short term dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan,
  • Medium term bertugas mengangani proses – proses swapping. Proses – proses yang mempunyai kepntingan kecil saat itu adalah proses yang tertunda, medium term mengendalikan transisi dari suspended ke ready.
  • Long term bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi sistem. Batch biasanya berupa proses – proses denag penggunaan sumber daya yang intensif.

8. Jelaskan apa yang akan dilakukan oleh kernel kepada alih konteks ketika proses sedang
berlangsung?
jawab:
ketika proses sedang berlangsung yang akan dilakukan kernel kepada alih konteks adalah Pemroses menyimpan konteks program saat itu yang sedang dieksekusi ke dalam stack, selanjutnya Pemroses menge-set register PC dengan alamat awal program untuk interrupt handler. Kemudian Kernel menjaga suatu rekaman untuk setiap proses yang disebut Proses Control Blocks (PCB). Ketika suatu proses sedang tidak berjalan, PCB akan berisi informasi tentang perlunya melakukan restart suatu proses dalam CPU

9. 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:

10. Perlihatkan semua kemungkinan keadaan dimana suatu proses dapat sedang berjalan, dan
gambarkan diagram transisi keadaan yang menjelaskan bagaimana proses bergerak diantara
state.
jawab:
Penundaan (suspend) adalah operasi penting dan telah diterapkan dengan beragam cara. Penundaan biasanya berlangsung singkat. Penundaan sering dilakukan sistem untuk memindahkan proses-proses tertentu guna mereduksi beban sistem selama beban puncak. Proses yang ditunda (suspended blocked) tidak berlanjut sampai proses lain meresume. Untuk jangka panjang, sumber daya-sumber daya proses dibebaskan (dilucuti). Keputusan membebaskan sumber daya-sumber daya bergantung sifat masing-masing sumber daya. Memori utama seharusnya segera dibebaskan begitu proses tertunda agar dapat dimanfaatkan proses lain. Resuming (pengaktifan kembali) proses, yaitu menjalankan proses dari titik (instruksi) dimana proses ditunda.

11. Apakah suatu proses memberikan ’issue’ ke suatu disk I/O ketika, proses tersebut dalam
’ready’ state, jelaskan?
jawab:
YA ” karena kalau tidak diberikan “ issue “ maka akan terjadi deadlock karena terjadi perebutan Sumber Daya antar proses.

12. 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 yang harus dipunyai PCB adalah :
  • Informasi Identifikasi proses : Adalah informasi – informasi yang berkaitan dengan identitas proses yang unik. Dengan identifier ini, proses dikaitkan ke tabel – tabel yang lain. Identifier tersebut antara lain ( identifier proses, identifier proses yang menciptakan dan identifier pemakai ).
  • Informasi status Pemroses : Informasi status pemroses berisi informasi – informasi yang esensinya merupakan nilai atau isi dari register – register pemroses.. Saat proses berstatus RUNNING, informasi – informasi tersebut berada di register. Ketika proses di interupsi, semua informasi register harus disimpan agar dapat dikembalikan saat proses dieksekusi kembali.
  • Informasi Kendali Proses : Adalah informasi – informasi lain yang diperlukan sistem operasi untuk mengendalikan dan koordinasi beragam proses aktif.

PCB berisikan banyak bagian-dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk ini:
  • Keadaan proses: Keadaan mungkin, new ,ready ,running, waiting, halted, dan juga banyak lagi.
  • Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk proses ini.
  • CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register tersebut termasuk accumulator, index register, stack pointer, general-puposes register, ditambah code information pada kondisi apapun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
  • Informasi manajemen 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 (ch 9).
  • 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 open file dan banyak lagi.
  • PCB hanya berfungsi sebagai tempat menyimpan/gudang untuk informasi apapun yang dapat bervariasi dari prose ke proses.

Tidak ada komentar:

Posting Komentar