Anda di halaman 1dari 8

Tugas Personal ke-1

Week 2

1. Apa yang dimaksud dengan interrupt?


 Interrupt merupakan sinyal dari luar yang meminta sistem operasi untuk menjalankan
tugas khusus, yang menyebabkan prosesor berhenti dan harus menangani interupsi
tersebut

2. Bagaimana cara menangani multiple interrupt?


 -Matikan interupsi saat interupsi yang lain sedang di proses
-Menggunakan skema prioritas

3. Jelaskan 3 objective dari Sistem Operasi!


 a.Convenience, sistem operasi bertindak sebagai jembatan komunikasi (antarmuka)
antara user dan komputer. Tujuan dari sistem operasi adalah untuk menyediakan
platform dimana pengguna dapat menjalankan program dengan cara yang nyaman dan
efisien.
b.Efficiency, suatu sistem dapat dikatakan efisien jika sistem operasi dapat memenuhi
kebutuhan user dengan sumber daya yang minimal.
c. Kemampuan untuk berkembang, Sebuah OS harus dibangun sedemikian rupa untuk
memungkinkan pengembangan, pengujian, dan pengenalan fungsi sistem baru yang
efektif tanpa pada saat yang sama mengganggu layanan

4. Apa yang dimaksud dengan cache? Jelaskan cara kerjanya.


 Cache merupakan  memori penyimpanan sementara yang mengambil sebagian ruang
dari RAM yaitu penyimpanan sementara pada perangkat komputer untuk membantu
kita mengakses halaman website atau aplikasi secara lebih cepat
Cara kerja:

Operating System
5. Jelaskan cara kerja multiprogramming pada computer yang memiliki 1 CPU
 Pada sistem prosesor tunggal, tidak pernah ada proses yang berjalan lebih dari satu. Bila
ada proses yang lebih dari satu maka proses yang lain harus mengantri
sampai CPU bebas proses. Cara ini dilakukan dengan membagi main memory menjadi
beberapa partisi. Foreground partitions akan berisi program dengan prioritas yang lebih
tinggi sedang background partitions akan berisi program dengan prioritas yang lebih
rendah.  sistem operasi harus menyediakan mekanisme untuk manajemen memori,
penjadwalan CPU dan manajemen disk. Sistem operasi multiprogram menyediakan
supply untuk I/O routine

6. Jelaskan yang dimaksud dengan kernel dari sebuah sistem operasi.


 Merupakan modul utama dari operating system sebuah hardware. Tugas utamanya
adalah memberi layanan kepada aplikasi dan bagian lain dari OS, lalu memuatnya di
dalam memori utama

7. Pada unix/linus system sebuah proses bisa menjadi “orphan” dan “zombie”. Jelaskan.
 Orphan proses: merupakan proses yang terjadi karena parent proses dari suatu child
proses telah di exit atau diterminate tapi child prosesnya tetap berjalan lalu diadopsi
oleh proses init.

 Zombie proses: merupakan sebuah proses yang terjadi karena adanya child proses yang
di exit namun parent prosesnya tidak tahu bahwa child proses tersebut telah
diterminate misalnya disebabkan karena putusnya network. Sehingga parent proses
tersebut tidak merelease proses yang masih digunakan oleh child proses tersebut
walaupun sudah mati.

8. Jelaskan perbedaan antara process dan program


 Perbedaan utama antara program dan proses adalah bahwa suatu program adalah
sekumpulan instruksi yang memungkinkan CPU untuk melakukan tugas tertentu
sementara suatu proses adalah program yang sedang dieksekusi.

9. Dalam menjalankan proses pada system operasi terdapat 2 mode, yaitu kernel (supervisor)dan?
 Dan ada juga user mode

10. mode dan user mode. Jelaskan mengapa harus dibedakan.


 Saat menggunakan user mode, windows membuat proses untuk aplikasi. Proses ini
menyediakan aplikasi dengan ruang alamat virtual privat dan tabel handel privat.
Karena ruang alamat virtual aplikasi bersifat privat, satu aplikasi tidak dapat mengubah
data milik aplikasi lain. Setiap aplikasi berjalan dalam isolasi, dan jika aplikasi mengalami
crash, crash terbatas pada satu aplikasi tersebut. Aplikasi lain dan sistem operasi tidak
terpengaruh oleh crash.

Operating System
 Sedangkan dalam mode kernel semua kode yang berjalan dalam mode kernel berbagi
satu ruang alamat virtual. Oleh karena itu, driver mode kernel tidak terisolasi dari driver
lain dan sistem operasi itu sendiri. Jika driver mode kernel secara tidak sengaja menulis
ke alamat virtual yang salah, data milik sistem operasi atau driver lain dapat disusupi.
Jika driver mode kernel mengalami crash, seluruh sistem operasi mengalami crash.

11. Jelaskan perbedaan antara trap dan interrupt


 Perbedaan utama dari trap dan interrupt:
-Trap dipicu oleh program pengguna untuk menjalankan fungsi OS, disebabkan
beberapa jenis peristiwa yang berada di luar dan tidak bergantung pada proses yang
sedang berjalan

-Interupsi dipicu oleh perangkat keras untuk memungkinkan prosesor menjalankan


rutinitas interrupt handler yang sesuai, kesalahan atau kondisi pengecualian yang
dihasilkan dalam proses yang sedang berjalan

12. Jelaskan yang dimaksud dengan “context switch”.


 adalah proses penyimpanan status proses dan mengambil status proses yang baru pada
saat terjadi switching. Pada saat terjadi perpindahan proses, sistem tidak bekerja.
Waktu context switch tergantung pada perangkat keras yang digunakan.

13. Jelaskan 5-state process state. Jelaskan juga transisi antar state.
• New adalah Proses sedang dikerjakan/dibuat.
• Running adalah Instruksi sednag dikerjakan.
• Waiting adalah Proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah
penyelesaian I/O atau penerimaan sebuah tanda/signal).
• Ready adalah Proses sedang menunggu untuk ditugaskan pada sebuah prosesor.
• Terminated/Exit adalah Proses telah selsesai melaksanakan tugasnya/mengeksekusi.

14. Berikan contoh 3 jenis interrupt.


a. Internal HW interruptions:
Ditimbulkan oleh peristiwa tertentu yang terjadi pada waktu eksekusi program dan diatur
oleh HW dan tidak dapat dirubah
b. External HW interruptions:
Ditimbulkan oleh fevais peripheral seperti, keyboard, printer, mouse dan sebagainya
c. Software interruptions:
Diaktifkan langsung oleh assembler melalui sejumlah interupsi yang diharapkan dengan
intruksi INT. Terdapat dua jenis: DOS dan BIOS

Operating System
15. Apa yang dimaksud dengan “suspended” process? Jelaskan mengapa sebuah proses menjadi
suspended
 Suspend adalah operasi penting dan telah diterapkan dengan beragam cara. Penundaan
biasanya berlangsung singkat. Suspend sering dilakukan sistem untuk memindahkan
proses-proses tertentu guna mereduksi beban sistem selama beban puncak.

16. Jelaskan perbedaan antara proses dan thread.


 Proses adalah program dalam eksekusi sedangkan thread adalah unit terkecil dalam
suatu proses yang bisa dijadwalkan oleh sistem operasi.

17. Thread switch lebih cepat dari pada proses switch. Jelaskan sebabnya.
Beberapa factor yang mempengaruhi:
a. Responsi : Membuat aplikasi yang interaktif menjadi multithreading dapat membuat sebuah
program terus berjalan meskipun sebagian dari program tersebut diblok atau melakukan
operasi yang panjang, karena itu dapat meningkatkan respons kepada pengguna. Sebagai
contohnya dalam web browser yang multithreading, sebuah thread dapat melayani
permintaan pengguna sementara thread lain berusaha menampilkan image.
b. Berbagi sumber daya : thread berbagi memori dan sumber daya dengan thread lain yang
dimiliki oleh proses yang sama. Keuntungannya adalah mengizinkan sebuah aplikasi untuk
mempunyai beberapa thread yang berbeda dalam lokasi memori yang sama.

18. Jelaskan 3 cara untuk implementasi thread


a) Membuat subclass dari thread,
Untuk menjalankan thread, dapat dilakukan dengan start(). Saat start() dijalankan, maka
sebenarnya method dijalankan. Jadi untuk membuat thread harus mendefinisikan pada
definisiclass, konstruktor dari cara ini adalah :ClassThread namavar = new
ClassThread();Namavar.start();
b) Mengimplementasikan interface Runnable,
Cara ini merupakan cara yang paling sederhana dalam membuat thread. Runnable
merupakanunit abstrak, yaitu kelas yang mengimplementasikan interface ini hanya cukup
mengimplementasikan fungsi run(). contoh:New Thread(new ObjekRunnable());
c) Single-threading,
Sebuah proses tradisional atau heavyweight process mempunyai thread tunggal yang
berfungsi sebagai pengendali.

19. Jelaskan konsep thread pada cloud operating system


 Dalam thread proses akan menjalankan satu tugas (job) pada satu waktu. Thread pada
cloud adalah unit dasar dari penggunaan CPU, thread mengandung Thread ID, program
counter, register set, dan stack. Sebuah Thread berbagi code section, data section, dan
sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama.

Operating System
20. Jelaskan dalam situasi apa single-thread akan memberikan performa lebih baik dari multi-
thread?
a. Foreground and background work
b. Asynchronous processing
c. Speed of execution
d. Modular program structure
Pada saat Execution time (waktu proses) dari sebuah single-thread tidak dapat diimprove
(ditambah), tapi malah bisa diturunkan. Ini terjadi karena penurunan frequensi yang dibutuhkan
ketika terjadi pergantian thread yang berjalan

21. Mengapa butuh concurrency pada sebuah system operasi?

1. Banyak aplikasi (multiple application).


Multiprogramming memungkinkan banyak proses sekaligus dijalankan. Proses-proses dapat berasal
dari aplikasi-aplikasi berbeda. Pada sistem multiprogramming bisa terdapat banyak aplikasi sekaligus
yang dijalankan di sistem komputer.

2. Aplikasi terstruktur.
Perluasan prinsip perancangan modular dan pemrograman terstruktur adalah suatu aplikasi dapat
secara efektif diimplementasikan sebagai sekumpulan proses. Dengan sekumpulan proses, maka
tiap proses menyediakan satu layanan spesifik tertentu.

3. Struktur sistem operasi.


Keunggulan strukturisasi dapat juga diterapkan ke pemrograman sistem. Beberapa sistem operasi
aktual yang dipasarkan dan yang sedang dalam riset telah diimplementasikan sebagai sekumpulan
proses. Sistem operasi bermodelkan client/server menggunakan pendekatan ini.

4. Untuk Strukturisasi Satu Proses.


Saat ini untuk peningkatan kinerja maka satu proses dapat memiliki banyak thread yang
independen. Thread-thread tersebut harus dapat bekerjasama untuk mencapai tujuan proses.

22. Jelaskan yang dimaksud dengan race condition


 Race Condition adalah situasi di mana beberapa proses mengakses dan memanipulasi
data bersama pada saat besamaan. Nilai akhir dari data bersama tersebut tergantung
pada proses yang terakhir selesai.

Operating System
23. Jelaskan yang dimaksud dengan critical section dan apa hubungannya dengan mutual exclusion?
 Critical section merupakan bagian kode dalam proses yang memerlukan akses ke
sumber daya bersama dan tidak boleh dijalankan saat proses lain berada di bagian kode
yang sesuai

 Hubungannya dengan mutual exclusion, mutual exclusion memiliki persyaratan yang


sama yaitu persyaratan bahwa ketika satu proses berada di bagian kritis yang
mengakses sumber daya bersama, tidak ada proses lain yang boleh berada di bagian
kritis yang mengakses salah satu sumber daya bersama tersebut

24. Berikan 2 contoh untuk reusable resource dan 2 contoh untuk consumable resource
Contoh reusable resource:
- Processor
- I/O channel
- Main memory dan secondary memory
- Device
- File
- Database
- Semaphore
Contoh deadlock akibat reusable resource:
a. Misal terdapat dua proses yang berkompetisi untuk mengakses disk file (D) dan tape drive
(T). Deadlock terjadi jika masing-masing proses memegang (hold) sumber daya dan meminta
(request) sumber daya yang lain yang dipegang oleh proses yang lain. Cara mengatasinya
dengan memberi batasan pada disain sistem untuk perintah request (Constraint on design
system).
b. Dua buah proses membutuhkan memori masing 80kb dan 90kb dengan ruang yang tersisa
yaitu 180kb. Deadlock akan terjadi bila salah satu dari proses tersebut membutuhkan
memori untuk kedua kalinya\

Contoh consumable resource:


- interrupt
- sinyal
- message
- informasi dalam I/O buffer

Contoh deadlock akibat consumable resource:

Operating System
a. Misalkan ada dua user sedang saling mengirim dan menerima pesan, deadlock terjadi jika
pesan Recive terblock di salah satu proses
b. Deadlock terjadi bila user 1 dapat melanjutkan eksekusi setelah menerima pesan dari user 2,
atau sebaliknya

25. Jelaskan 4 kondisi yang menyebabkan deadlock.


a. Mutual Exclusion, kondisi yang disebabkan ketika hanya ada satu proses yang boleh
memakai sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus
menunggu hingga sumber daya tadi dilepaskan.
b. Hold and Wait, kondisi ketika satu program yang sedang memakai sumber daya boleh
meminta sumber daya lain lagi dan diminta menunggu sumber daya tersebut hingga benar-
benar tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya
sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama.
c. No Preemption, kondisi dimana sumber daya yang ada pada sebuah proses tidak boleh
diambil begitu saja oleh proses lainnya. Untuk mendapatkan sumber daya tersebut, maka
harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses
menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh
berjalan.
d. Circular Wait, kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya yang
dipegang proses berikutnya.

26. Circular wait dapat menyebabkan deadlock. Bagaimana cara menghindar dari circular wait?
Ada 4 cara untuk menghindarinya:

a. Mengabaikan masalah deadlock.


Usaha dalam memastikan sistem tidak memasuki deadlock, sistem dapat menggunakan
pencegahan deadlock atau penghindaran deadlock.

b. Mendeteksi dan memperbaiki


Yaitu memeriksa bagian mana yang menjadi sumber deadlock, lalu mencari cara untuk
memperbaikinya

c. Penghindaran yang terus menerus dan pengalokasian yang baik dengan menggunakan
protocol untuk memastikan sistem tidak pernah memasuki keadaan deadlock. Yaitu dengan
deadlock avoidance sistem untuk mendata informasi tambahan tentang proses mana yang akan
meminta dan menggunakan sumber daya.

d. Pencegahan yang secara struktur bertentangan dengan empat kondisi terjadinya deadlock
dengan deadlock prevention sistem untuk memastikan bahwa salah satu kondisi yang
pentingtidak dapat menunggu

27. Jelaskan bagaimana resource allocation graph dapat mendeteksi deadlock.

Operating System
 Resource allocation graph digunakan untuk mendeteksi deadlock dimana ada satu
peristiwa yang menandakan terjadinya deadlock yaitu saat grafik resource membentuk
satu putaran(cycle).

28. Jika anda akan membuat sebuah sistem operasi, dalam situasi apa anda dapat mengabaikan
deadlock? (dalam arti tidak perlu melakukan penanganan deadlock)
 Dengan memastikan bahwa program memiliki maksimum permintaan. Dengan kata lain
cara sistem ini memastikan terlebih dahulu bahwa sistem akan selalu dalam kondisi
aman. Baik mengadakan permintaan awal atau pun saat meminta permintaan sumber
daya tambahan, sistem harus selalu berada dalam kondisi aman.

29. Jelaskan penggunaan semaphore pada Producer-Consumer problem.


 Digunakan untuk pensinyalan di antara proses. Terdapat 3 operasi yang dapat dilakukan
pada semaphore yaitu inisialisasi, pengurangan dan penambahan. Operasi pengurangan
dapat mengakibatkan pemblokiran suatu proses dan operasi penambahan dapat
mengakibatkan pemblokiran suatu proses, juga dikenal sebagai counting semaphore

30. Jika deadlock tetap terjadi, maka harus melakukan recover dari deadlock. Jelaskan teknik-teknik
melakukan recovery.
1. Lewat Preemption,
Dengan cara untuk sementara waktu menjauhkan sumber daya dari pemakainya, dan
memberikannya pada proses yang lain.
2. Lewat Melacak Kembali,
Setelah melakukan beberapa langkah preemption, maka proses utama yang diambil sumber
dayanya akan berhenti dan tidak dapat melanjutkan kegiatannya, oleh karena itu
dibutuhkan langkah untuk kembali pada keadaan aman dimana proses masih berjalan dan
memulai proses lagi dari situ.
3. Lewat mematikan proses yang menyebabkan Deadlock,
Cara yang paling umum ialah mematikan semua proses yang mengalami deadlock.

Operating System

Anda mungkin juga menyukai