You are on page 1of 20

TUGAS 1B NAMA : LOUISA K.

LAKE

NO. REGIS : 231 11 044 KELAS :B

A. LATIHAN I ( PROSES )

1. Sebutkan 5 aktivitas system operasi yang merupakan contoh dari suatu managemen proses ! JAWAB : Pembuatan dan penghapusan proses pengguna dan sistem proses Menunda atau melanjutkan proses Menyediakan mekanisme untuk proses sinkronisasi Menyediakan mekanisme untuk proses komuniaksi Menyediakan mekanisme untuk penanganan deadlock

2. Definisikan perbedaan antara penjadualan short term,medium term dan long term ! JAWAB : a) Penjadualan jangka pendek (short term scheduler) Mempunyai tugas untuk menjadwalkan alokasi pemroses di antara proses ready di memori utama. Penjadwalan dijalankan setiap terjadi di pengalihan proses untuk memilih proses berikut yang harus dijalankan.

b)

Penjadualan jangka menengah (medium term scheduler) Aktivitas pemindahan proses yang tertunda dari memori utama ke memori sekunder yang disebut swapping. Proses ini mempunyai kepentingan kecil saat itu sebagai proses yang tertunda. Tetapi, begitu kondisi yang membuatnya tertunda hilang dan proses dimasukkan kembali ke memori utama dan ready. Tugas Sistem Operasi_Louisa K. Lake_23111044

c)

Penjadualan jangka panjang (long term scheduler) Penjadwalan ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi.. batch biasanya adalah prosesproses dengan penggunaan sumber daya yang intensif, program ini berprioritas rendah, digunakan sebagai pengisi selama periode aktivitas job-job interaktif rendah.

3. Jelaskan tindakan yang diambil oleh sebuah karnel ketika context switch antar proses! JAWAB : Pada saat alih konteks terjadi, kernel akan menyimpan konteks dari proses lama kedalam PCB-nya dan mengisi konteks yang telah disimpan dari proses baru yang telah terjadual untuk berjalan. Pergantian waktu konteks adalah murni overhead, karena sistem ini 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 table proses saat context switch dari suatu proses ke proses lain ! JAWAB : Informasi yang disimpan pada saat alih konteks adalah pemroses menyimpan konteks program ke dalam stack, hal ini bertujuan agar saat selesai penanganan interupsi, konteks program dapat dipanggil kembali dari stack dan konteks program dapat kembali seperti semula tanpa terjadi pengalihan ke proses lain. Pada pengalihan konteks dapat terjadi tanpa adanya pengalihan state process yang sedang running. Siklus penanganan interupsinya sebagai berikut:

Tugas Sistem Operasi_Louisa K. Lake_23111044

Pemroses menyimpan konteks program saat itu yang sedang dieksekusi ke stack.

Kemudian Pemroses menset register PC dengan alamat awal program untuk interuppet handler.

Selanjutnya pemroses menjalankan instruksi-instruksi berikutnya pada interuppt handler yang melayani interrupt.

Setelah penanganan interupsi selesai maka konteks yang terdapat pada stack dikembalikan. Pengalihan proses terjadi jika proses yang running beralih menjadi state lain (ready, blocked), kemudian sistem operasi harus membuat perubahan-perubahan berarti terhadap lingkungannya.

5. Di system UNIX terdapat banyak status proses yang dapat timbul (transisi) akibat event (eksternal) OS dan proses tersebut itu sendiri. Transisi sta apa sajakah yang dapat di timbulkan oleh prose situ 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.

Tugas Sistem Operasi_Louisa K. Lake_23111044

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 Simetrik dan asimetrik a. Komunikasi Simetrik Keuntungan : Semua perangkat dapat mengirim data pada tingkat yang sama.

Kerugian : Kurang aman pada enkripsi , karena enkripsi simetrik pada kedua ujung komunikasi memiliki kunci yang sama.

b. Komunikasi Asimetrik Keuntungan : o Bandwidth dapat diatur lebih besar dalam suatu pengiriman data. o Enkripsi lebih aman, karena kuncu enkripsi berbeda tiap ujung komunikatornya.

Kerugian: Jika bandwidth download di buat menjadi besar maka harus merelakan upload menjadi lebih kecil.

Automatic dan explicit buffering Keuntungan otomatis buffering o Kapasitas terbatas: Antrian mempunyai panjang yang telah ditentukan, paling banyak n pesan dapat dimasukkan. Jika antrian tidak penuh ketika pesan dikirimkan, pesan Tugas Sistem Operasi_Louisa K. Lake_23111044

yang baru akan menimpa, dan pengirim dapat melanjutkan eksekusi tanpa menunggu. o Kapasitas tak terbatas : Antrian mempunyai panjang yang tak terhingga.

Kerugian otomatis buffering o Kapasitas terbatas: Link mempunyai kapasitas terbatas Jika link penuh, pengirim harus memblok sampai terdapat ruang pada antrian. o Kapasitas tak terbatas : Semua pesan dapat menunggu di sini. Pengirim tidak akan pernah di blok.

Keuntungan explicit buffering o Antrian mempunyai panjang maximum 0 o Link tidak dapat mempunyai penungguan pesan (message waiting)

Kerugian explicit buffering Pengirim harus memblok sampai penerima menerima pesan.

Send by copy dan send by reference. a. Send by copy Keuntungan : Jaringan yang lebih baik untuk generalisasi jaringan dan masalah sinkronisasi.

Kerugian : Hanya untuk pengiriman data yang kecil / sedikit.

b. Send by reference Tugas Sistem Operasi_Louisa K. Lake_23111044

Keuntungan : Lebih efisien untuk pengiriman data dengan struktur yang lebih besar.

Kerugian : Banyak menggunakan memori ketika diimplementasikan.

Fixed size dan variable sized messages. a. Fixed size Keuntungan : Pengiriman mudah dibangun mempergunakan fixed size, karena ukuran sudah ditetapkan.

Kerugian : Memory akan banyak yang terpakai jika ukuran yang ditetapkan besar.

b. Variable size Keuntungan : Membutuhkan memori yang relatif kecil karena ukuran (size ) dapat diatur.

Kerugian : Ketika pengiriman data, implementasinya menjadi lebih sulit karena harus menyesuaikan kebutuhan memori terlebih dahulu.

7. Jelaskan perbedaan short-term,medium term dan long term ! JAWAB : a. Short therm Sasaran utama short term adalah memaksimumkan kinerja sistem untuk memenuhi satu kumpulan criteria yang diharapakan. Short term dijalankan setiap tejadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan. Tugas Sistem Operasi_Louisa K. Lake_23111044

b. Medium therm Medium term bertugas menangani proses-proses swapping. Prosesproses yang mempunyai kepentingan kecil saat itu adalah proses yang tertunda, medium term mengendalikan transisi dari suspensed ke ready.

c. Long therm Long term bekerja terhadap antrian batch berikutnya yang harus dieksekusi sistem. Batch biasanya berupa proses-proses dengan penggunaan sumber daya yang intensif.

8. Jelaskan apa yang akan di lakukan oleh karnel kepada context switch ketika proses sedang berlangsung ? JAWAB : Tindakan yang diambil oleh sebuah karnel ketika context switch antar proses terjadi adalah karnel menyimpan data dari proses lama ke dalam PCBnya dan mengambil data dari proses baru yang telah terjadual untuk berjalan.

9. Beberapa single user mikrokomputer sistem operasi seperti MS-DOS menyediakan sedikit atau tidak sama sekali arti dari pemrosesan konkuren. Diskusikan dampak yang paling mungkin ketika pemrosesan yang konkuren di masukkan kedalam suatu sistem operasi? JAWAB: Dampaknya yaitu: Mutual Exclusion, yaitu terdapat dua proses yang pada saat bersamaan berada dalam critical region yang bisa menghambat proses lain Deadlock, , yaitu suatu keadaan dimana sistem seperti terhenti karena setiap proses memiliki sumber daya yang tidak bisa dibagi Tugas Sistem Operasi_Louisa K. Lake_23111044

dan menunggu untuk mendapatkan sumber daya yang sedang dimiliki oleh proses lain Starvation, Yaitu proses seolah-olah berhenti, menunggu request akses ke critical section diperbolehkan Sinkronisasi

10. Perlihatkan semua kemungkinan keadaan dimana suatu proses sedang berjalan dan gambarkan diagram transisi keadaan yang menjelaskan bagaimana proses bergerak antar state. JAWAB : Jika program telah selesai dieksekusi maka status dari proses tersebut akan berubah menjadi terminated. Jika waktu yang disediakan oleh OS untuk proses tersebut sudah habis maka akan terjadi interrupe dan proses tersebut kini telah berstatus ready. Jika suatu event terjadi pada saat proses dieksekusi (seperti ada request I/O) maka proses tersebut akan menunggu event tersebut selesai dan proses berstatus waiting.

Diagram perubahan status proses

Tugas Sistem Operasi_Louisa K. Lake_23111044

11. Apakah suatu proses memberikan issue ke suatu disk I/O ketika proses tersebut dalam ready state, jelaskan ! JAWAB : Di karenakan issue menyampaikan informasi ke dalam state, jawabannya "YA", karena kalau tidak diberikan issue maka akan terjadi deadlock karena terjadi perebutan Sumber Daya antar proses.

12. Karnel menjaga suatu rekaman untu setiap proses di sebut Proses Control Blocks (PCB). Ketika suatu proses sedang tidak berjalan,PCB berisi informasi tentang perllunya melakukan restart suatu proses dalam CPU. Jelaskan 2 informasi yang harus di punya PCB ! JAWAB : Informasi manajemen memori yaitu suatu informasi yang sebagai nilai dari dasar dan batas register,tabel halaman atau ttabel segmen tergantung pada system memori yang digunakan oleh system operasi. 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 dan perangkat I/O yang digunakan pad a proses ini,suatu daftar berkas-berkas yang sedang diakses dan banyak lagi.

Tugas Sistem Operasi_Louisa K. Lake_23111044

B. LATIHAN II ( THREAD )

1. Tunjukkan dua contoh pemrograman dari multithreading yang dapat meningkatkan sebuah solusi thread tunggal. JAWAB: a. Dalam web browser yang multithreading, sebuah thread dapat melayani permintaan pengguna sementara thread lain berusaha menampilkan image. b. Dalam pembuatan sebuah proses banyak dibutuhkan pengalokasian memori dan sumber daya. Alternatifnya adalah dengan penggunaan thread, karena thread berbagi memori dan sumber daya proses yang memilikinya maka akan lebih ekonomis untuk membuat dan context switch thread. Akan susah untuk mengukur perbedaan waktu antara proses dan thread dalam hal pembuatan dan pengaturan, tetapi secara umum pembuatan dan pengaturan proses lebih lama dibandingkan thread. Pada Solaris, pembuatan proses lebih lama 30 kali dibandingkan pembuatan thread, dan context switch proses 5 kali lebih lama dibandingkan context switch thread.

2. Tunjukkan dua contoh pemrograman dari multithreading yang tidak dapat meningkatkan sebuah solusi thread tunggal. JAWAB: Program 1 Class CobaThread implements Runnable{ public void run() { for(int i=0; i<4; i++){ System.out.println(Ini CobaThread); Test.istirahat(7); } } public class Test { Tugas Sistem Operasi_Louisa K. Lake_23111044

public static void main(String[]args){ Thread t1 = new CobaThread; Thread t2 = new Thread (new CobaThread()); t1.start(); t1.start(); for (int i = 0; i<8; i++) system.out.println(Threan utama); istirahat(5); } } public static void istirahat (int tunda){ try{ thread.sleep(tunda*100); } catch (InterruptedException e) {} } }

Program 2 class CobaThread2 implements Runnable{ public void run() while (true){ System.out.println(Saya thread CobaThread2); if (Threas.currentThreas.isInterrupted()) //cek status break; } }

Tugas Sistem Operasi_Louisa K. Lake_23111044

3. Sebutkan dua perbedaan antara user level thread dan karnel thread.Saat kondisi bagaimana salah satu dari thread tersebut lebih daik. JAWAB: User Level Thread User thread didukung di atas kernel dan diimplementasi oleh thread library pada user level. Library menyediakan fasilitas untuk pembuatan thread, penjadualan thread, dan managemen thread tanpa dukungan dari kernel. Karena kernel tidak menyadari user-level thread maka semua pembuatan dan penjadualan thread dilakukan di user space tanpa intervensi dari kernel. Oleh karena itu, user-level thread biasanya cepat untuk dibuat dan diatur. Tetapi user thread mempunyai kelemahan yaitu apabila kernelnya merupakan thread tunggal maka apabila salah satu user-level thread menjalankan blocking system call maka akan mengakibatkan seluruh proses diblok walaupun ada thread lain yang dapat jalan dalam aplikasi tersebut.

Kernel Level Thread Kernel thread didukung langsung oleh sistem operasi. Pembuatan, penjadualan, dan managemen thread dilakukan oleh kernel pada kernel space. Karena pengaturan thread dilakukan oleh sistem operasi maka pembuatan dan pengaturan kernel thread lebih lambat dibandingkan user thread. Maka Kernel Level Thread dapat dikatakan lebih baik dari User Level Thread adalah thread diatur oleh kernel, karena itu jika sebuah thread menjalankan blocking system call maka kernel dapat menjadualkan thread lain di aplikasi untuk melakukan eksekusi. Kemudian pada lingkungan multiprocessor, kernel dapat menjadual thread-thread pada processor yang berbeda.

Tugas Sistem Operasi_Louisa K. Lake_23111044

4. Jelaskan tindakan yang diambil oleh sebuah kernel saat switch context antara kernel level thread ! JAWAB : Karena pengaturan thread dilakukan oleh sistem operasi maka pembuatan dan pengaturan kernel thread lebih lambat dibandingkan user thread. Maka Kernel Level Thread dapat dikatakan lebih baik dari User Level Thread adalah thread diatur oleh kernel, karena itu jika sebuah thread menjalankan blocking system call maka kernel dapat menjadualkan thread lain di aplikasi untuk melakukan eksekusi. Kemudian pada lingkungan multiprocessor, kernel dapat menjadual thread-thread pada processor yang berbeda.

5. Sumber daya apa sajakah yang digunakan ketika sebuah thread dibuat ? Apa yang membedakan dengan pembentukkan sebuah proses. JAWAB: Thread berbagi memori dan sumber daya dengan thread lain yang dimiliki oleh proses yang sama. Keuntungan dari berbagi kode adalah mengizinkan sebuah aplikasi untuk mempunyai beberapa thread yang berbeda dalam lokasi memori yang sama. Sumber daya tersebut antara lain: Multiprocessing merupakan penggunaan dua atau lebih CPU dalam sebuah sistem komputer. Multitasking merupakan metode untuk menjalankan lebih dari satu proses dimana terjadi pembagian sumberdaya seperti CPU. Multithreading adalah cara pengeksekusian yang mengizinkan beberapa thread terjadi dalam sebuah proses, saling berbagi sumber daya tetapi dapat dijalankan secara independen.

Tugas Sistem Operasi_Louisa K. Lake_23111044

6. Tunjukkan tindakan yang diambil oleh sebuah thread library saat alih konteks antara user level thread. JAWAB: Gambar 2-17. User dan Kernel Thread

User thread didukung oleh kernel dan diimplementasikan oleh thread library ditingkat pengguna. Library mendukung untuk pembentukan thread, penjadualan dan managemen yang tidak didukung oleh kernel.

C. LATIHAN III ( PENJADUALAN CPU )

1. Definisikan perbedaan antara penjadualan secara preemptive dan nonpreemptive ! JAWAB : Penjadualan preemptive mempunyai arti kemampuan system operasi untuk memberhentikan sementara proses yang sedang berjalan untuk member ruang kepada proses yang prioritasnya lebih tinggi. Penjadualan ini bisa saja termasuk penjadualann prosses atau I/O. dengan kata lain,penjadualan preemptive melibatkan mekanisme interupsi yang menyelas proses yang sedang berjalan dan memaksa system untuk menentukan proses mana yang akan di eksekusi selanjutnya. Sedangkan penjadualan non preemptive ialah salah satu jenis penjadualan dimana system operasi tidak pernah melakukan context switch dari proses Tugas Sistem Operasi_Louisa K. Lake_23111044

yang sedang berjalan ke proses yang lain. Dengan kata lain, proses yang sedang berjalan tidak bisa di interrupt. penjadualan non preemptive terjadi ketika proses hanya berjalan dari running state sampai waiting state atau dihentikan.

2. Jelaskan mengapa penjadualan strict nonpreemptive tidak seperti yang di gunakan sebuah computer pusat ! JAWAB : Karena pada saat Proses digunakan diberi jatah waktu oleh pemroses, maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu selesai, sedangkan komputer pusat dalam pengeksekusian proses dimulai dengan CPU Burst, setelah itu diikuti oleh I/O burst, lalu CPU Burst lagi lalu I/O Burst lagi begitu seterusnya dan dilakukan secara bergiliran sampai CPU Burst terakhir, proses akan berakhir dengan permintaan sistem untuk mengakhiri pengeksekusian dari pada melalui I/O Burst lagi.

3. Apakah keuntungan menggunakan time quantum size di level yang berbeda dari sebuah antrian system multilevel ? JAWAB : Keuntungan menggunakan time quantum size di level yang berbeda adalah dapat menjalankan proses lain saat prosesnya belum selesai dieksekusi. Dengan menggunakan waktu quantum, proses mempunyai jatah waktu pemrosesan yang sama dengan proses-proses yang lain.

Pertanyaan no 4 sampai dengan 5 dibawah menggunakan soal berikut : Misal diberikan beberapa proses dibawah ini dengan panjang CPU burst (dalam milidetik). Semua proses di asumsikan dating pada saat t=0. Table 3-2.tabel untuk soal 4-5 Proses P1 Burst Time 10 Prioritas 3

Tugas Sistem Operasi_Louisa K. Lake_23111044

P2 P3 P4 P5

1 2 1 5

1 3 4 2

4. Gambarkan 4 diagram chart yang mengilustrasikan eksekusi dari proses-proses tersebut menggunakan FCFS,SJF,prioritas nonpreemptive dan round robin ! JAWAB : First Come First Served Urutan Proses : P1 > P2 > P3 > P4 > P5

SJF (non-Preemptive) Urutan: P2 > P4 > P3 > P5 > P1 (berdasar burst time terkecil)

Prioritas Non Preemptive Berdasarkan prioritas Urutan : P2 > P5 > P1 > P3 > P4

Round Robin Urutan Proses : P1 > P2 > P3 > P4 > P5 (quantum time = 4)

Tugas Sistem Operasi_Louisa K. Lake_23111044

5. Hitung waktu tunggu dari setiap proses untuk algoritma penjadualan ! JAWAB :

FCFS Waiting Time P1 = 0 P2 = 10 P3 = 11 P4 = 13 P5 = 14 Average Waiting Time AVG = 0+10+11+13+14/5 = 9,6 ms

SJF (non-preemptive) Waiting Time P1 = 9 P2 = 0 P3 = 2 P4 = 1 P5 = 4 Average Waiting Time AVG = 9+0+2+1+4 / 5 = 3.2ms

Tugas Sistem Operasi_Louisa K. Lake_23111044

Prioritas Non Preemptive Waiting Time P1 = 6 P2 = 0 P3 = 16 P4 = 18 P5 = 1 Average Waiting Time AVG = 41 / 5 = 8.2ms

Round Robin Waiting Time P1 = 9 P2 = 0 P3 = 0 P4 = 0 P5 = 4 Average Waiting Time AVG = 9 + 4 / 5 = 2,6 ms

6. Jelaskan perbedaan algoritma penjadualan berikut : FCFS Tugas Sistem Operasi_Louisa K. Lake_23111044

Round robin Antrian multilevel feedback JAWAB : FCFS : Penjadwalan ini tidak berprioritas. Penjadualan ini tidak peduli apakah burst time-nya panjang atau pendek, sebuah proses yang sedang dikerjakan diselesaikan terlebih dahulu barulah proses berikutnya dilayani. Penjadualan ini cukup adil dalam hal bahasa, karena proses yang datang lebih dulu dikerjakan. Penjadualan ini cocok digunakan untuk sistem batch yang sangat jarang melakukan interaksi dengan user secara langsung, tapi tidak cocok digunakan untuk sistem interaktif karena tidak member waktu tanggap yang bagus, begitu juga dengan sistem waktu nyata. Round Robin : Penjadwalan paling tua, sederhana, adil, banyak digunakan algoritmanya dan mudah diimplementasikan. Penjadwalan ini bukan dipreempt oleh proses lain tetapi oleh penjadual berdasarkan lama waktu berjalannya proses (preempt by time). Penjadualan tanpa prioritas.,Berasumsi bahwa semua proses memiliki kepentingan yang sama, sehingga tidak ada proiritas tertentu. Antrian Multilevel Feedback: Penjadualan berproritas dinamis Penjadualan ini untuk mencegah banyaknya swapping dengan prosesproses yang sangat banyak menggunakan pemroses. Diberi jatah waktu lebih banyak dalam satu waktu.

Tugas Sistem Operasi_Louisa K. Lake_23111044

Penjadualan ini juga menghendaki kelas-kelas prioritas bagi prosesproses yang ada.

7. Penjadualan CPU mendefinisikan suatu urutan eksekusi dari proses terjadual. Diberikan n buah proses yang akan dijadualkan dalam satu prosesor,berapa banyak kemungkinan penjadualan yang berbeda ? berikan formula n ! JAWAB : Sebagai contoh, jika kita mengetahui rata-rata 7 proses datang setiap detik, dan normalnya ada 14 proses dalam antrian, maka kita bisa menghitung waktu tunggu rata-rata proses dalam antrian (W) sebagai berikut: X = 7 proses/detik, N = 14 proses. Maka W = N/X = 14/7 = 2 detik per proses

8. Tentukan perbedaan antara penjadualan preemptive dan nonpreemptive(cooperative). Nyatakan kenapa nonpremmptive scheduling tidak dapat digunakan pada suatu computer center. Di system computer nonpreemptive,penjadualan yang lebih baik digunakan ! JAWAB: Penjadwalan Non Preemptive tidak dapat diinterupsi dengan proses lain sebelum proses yang dieksekusi selesai seluruhnya. Sedangkan preemptive, suatu proses dapat dieksekusi saat proses lain masih dieksekusi. Penjadwalan non-preemptive tidak dapat digunakan untuk komputer pusat karena komputer pusat pasti akan menangani banyak computer yang lain. Sehingga, jika memakai penjadwalan non-preemptive akan memakan banyak waktu untuk menangani proses-proses yang ada.

Tugas Sistem Operasi_Louisa K. Lake_23111044

You might also like