Saturday, October 20, 2012

konsep concurrency dan sinkronisasi

latihan soal yoook sambil gw belajar..

1. mengapa konkurensi diperlukan di dalam komputer ?
diperlukan agar proses proses dapat terjadi pada saat bersamaan dan merupakan landasan umum dalam perancangan sistem operasi.
masalah yg dapat ditangani : mutual exclusion, sinkronisasi, deadlock dan starvation

2.apa yang dimaksud dengan critical section ?
resource yang dalam satu waktu hanya boleh diakses oleh satu proses saja

3. tuliskan 4 contoh critical section ?
printer,  baris baris program , file dan

4. apa yang dimaksud dengan race condition ?
keadaan dimana terdapat banyak thread atau proses mengakses data bersama (shared data) yang menyebabkan hasil akhir sulit dipastikan (bergantung pada lama waktu eksekusi setiap proses )

5. Jelaskan dengan singkat pengertian starvation dengan contohnya ?
keadaan dimana suatu proses yang siap dieksekusi terus menerus tidak diberi kesempatan untuk melakukan aksinya

6. apa yang dimaksud dengan mutual exclusion ?
syarat atau kondisi yang harus dipenuhi untuk mencegah terjadinya pengaksesan critical section oleh lebih dari satu proses pada saat itu

7. tuliskan syarat syarat untuk membentuk mutex !
- tidak boleh terjadi deadlock atau starvation
- dalam pengaksesan critical section tidak boleh ada tunda waktu (delay) bila sedang tidak ada yang mengakses critical section tersebut
- kecepatan relatif proses dan julah proses tidak boleh mempengaruhi mutual exclusin (race condition)
- sebuah proses berada pada critical section dalam waktu terbatas

8. tuliskan kekurangan penggunaan intruksi atomik !
- dapat terjadi busy-waiting -> masih tetap menggunakan waktu prosesor
- dapat terjadi starvation bila terdapat banyak proses yang mengantri critical section
- dapat terjadi deadlock

Monday, October 1, 2012

Overview Sistem Operasi

Apa yg dimaksud dengan proses dalam sistem operasi?
sebuah aktifitas yang sangat dipengaruhi oleh eksekusi sebelumnya, status ini, dan sejumlah resource sistem

Model sistem operasi yang mana saja yang mempersyaratkan adanya timing dan sinkronisasi?
  • Siste multiprogramming
  • Sistem time sharing
  • Sistem transaksi real time
Apa perbedaan antara sistem time sharing dengan sistem transaksi real time ?
sistem time sharing dapat melayani berbagai macam program aplikasi sesuai dengan kebutuhan user, sedangkan sistem transaksi real time hanya dapat melayani beberapa jenis aplikasi saja.

Permasalahan apa saja yang dapat terjadi pada proses ?
  • Sinkronisasi tidak tepat
  • Kegagalan mutual exclusion
  • Eksekusi program tidak terkendali
  • Deadlock
Apa saja komponen proses ?
  • Executable program (.exe)
  • Hal hal yang berhubungan dengan data yang dibutuhkan proses
  • Execution context atau process state
 Contoh pengaturan proses
  • proses list
  • entry process
  • proses
  • proses index
Apa penjelasan Memori Virtual ?
 Memori virtual adalah fasilitas yang disediakan oleh OS aga suatu program dapat memanfaatkan sebagian area memori sekunder (harddisk) sebagai memori utama secara lojik
bertujuan agar beberapa program dapat tersimpan di dalam memori secara bersamaan, sehingga tidak terjadi kekosongan aktifitas pada saat terjadi pergantian eksekusi proses
Pengisolasian data antar proses dilakukan dengan cara memberi kode unik untuk setiap proses
Memory sharing dilakukan dengan cara meng overlap kan bagian virtual memori yang akan di sharing.

Apa yang dimaksud dengan Paging ?
Paging adalah salah astu teknik mapping memori dengan cara membagi proses menjadi blok blok kecil berukuran tetap yang disebut page
program mengakses data menggunakan alamat virtual yang terdiri dari nomor page dan offset
setiap page dapaat ditempatkan di memori secara bebas di sebut mapping dinamis.

Apa kelebihan paging ?
  • Mapping antara alamat virtual pada program dengan alamat fisik pada memori dapat dilakukan secara dinamis
  • Menghilangkan keharusan untuk menempatkan semua page suatu proses ditaruh di memori secara bersamaan
Jenis sistem operasi modern
  •  Monolitic kernel adalah sistem operasi diimplementasikan sebagai sebuah proses besar dimana seluruh koponen penyusunnya (penjadualan, sistem file, jaringan , device driver, manajemen memori, dll) mengakses ruang alamat yang sama.
  • Arsitektur Microkernel adalah sistem operasi model microkernel teriri dari 2 bagian yaitu kernel dan server.
  • Multithreading adalah proses yang sedang dieksekusi dipecah pecah menjadi bagian bagian kecil yang berjalan secara concurrent
  • Symmetric Multiprocessing adalah sistem operasi yang dijalankan ada komputer yang menggunakan lebih dari satu prosesor yang simetris.
  • Sistem operasi terdistribusi adalah sejumlah komputer terhubung melalui jaringan membetuk sebuah cluster
  • Sistem operasi model object oriented adalah modul yang ditambahkan ke kernel dirancang dengan metode object oriented.

Sistem Operasi ?

Apakah Sistem Operasi itu? Sistem Operasi adalah program yang mengatur eksekusi program aplikasi yang merupakan penghubung (interface) antara aplikasi dengan perangkat keras dan juga jembatan penghubung antara user dengan perangkat keras komputer.

Kemampuan apa yang harus dimiliki Sistem operasi ?

  1. Dapat memberi kenyamanan bagi user dalam memanfaatkan resource komputer
  2. Dapat mengatur resource komputer
  3. Dapat berkembang
Layer/Tingkatan Sistem Komputer










Layanan yang disediakan oleh sistem operasi antara lain :
  1. Mendukung pengembangan program aplikasi
  2. mengeksekusi program
  3. menyediakan akses ke I/O device
  4. mengontrol pengaksesan file
  5. mengontrol pengaksesan sistem
  6. menyediakan data-data accounting (log)
  7. mendeteksi kesalahan/error
apa yang dimaksud sistem operasi sebagai Resource Manager ?
komputer sebagai kumpulan resource yang berfungsi untuk memindahkan , memproses dan menyimpan data dan os bertanggung jawab terhadap aktifitas tersebut
model kontrol os pun dikatakan model kontrol tidak lazim, karena os tidak selamanya menjadi pengontrol.

Apa yang di maksud dengan Kernel/Nucleus ?
Kernel merupakan bagian OS yang terdapat di memori, ataupun fungsi yang sering digunakan dan bagian os lain yang sedang digunakan.

Apa ciri OS yang baik ?
  1. tersusun secara modular
  2. interface antar modul terdefinisi dengan baik
  3. interface antar modul sesederhana mungkin
  4. terdokumentasi secara baik
Pengertian dari berbagai evolusi Sistem Operasi
  • Serial Processing (1940 -1950) : user harus mengakses mesin (komputer) secara langsung dan eksekusi job dilakukan satu per satu secara urut dan bergantian
  • Simple Batch System (1950) : beberapa job (program) yang akan diproses dikumpulkan menjadi satu ( menjadi sebuah batch) oleh operator komputer sebelum diproses oleh komputer
  • Multiprogrammed Batch System : Job (program) yang diproses berjumlah lebih dari satu dan diproses secara "bersamaan"
  • Time-Sharing System (1961) :Sebuah komputer (suppoert) multiprogramming) digunakan oleh lebih dari satu user secara bersamaan untuk mengerjakan untuk mengerjakan interaktif job
Bagaimana Penjelasan lebih dari Simple Batch System ?
Simple Batch system atau yg sering disebut uniprogramming bertujuan untuk meningkatkan utlisasi mesin (komputer).

Fitur dari Simple Batch System ?
Intruksi ekslusif (privileged instruction)
  • Intruksi tertentu dilindungi dari pengaksesan oleh program user dan hanya boleh diakses oleh monitor, misal perintah ke I/O
  • Tujuan : untuk mencegah jangan sampai suatu program mengakses I/O device yang sedang diakses oleh program lain.
Interrupts
Fasilitas ini digunakan untuk memperbaiki perpindahan kontrol antara program monitor dan program user secara fleksibel

Mode pada Simple Batch System ?
  • User mode : adalah kondisi pada saat program user (job) sedang dieksekusi oleh prosesor
  • Kernel mode : adalah kondisi pada saat program monitor (OS) sedang dieksekusi oleh prosesor
Apa perbedaan user mode dan kernel mode dalam Simple batch system ?
pada saat protected memory dan privileged instructuon user mode tidak boleh diakses tetapi kernel mode boleh diakses.

Apa kekurangan Simple Batch System ?
Terjadi overhead :
  • Sebagian lokasi memori ditempati oleh monitor
  • Sebagian waktu prosesor digunakan untuk mengeksekusi monitor
Penjelasan lebih mengenai Multiprogrammed Batch System ?
Multiprogrammed batch system atau dikenal dengan multiprogramming bertujuan untuk meningkatkan utilisasi prosesor contoh eksekusi multiprogram dengan 2 buah program.

Penjelasan lebih mengenai Time Sharing System ?
Time sharing system yang dikenal interactive mode atau multi user adalah sistem yang membagi waktu prosesor kepada sejumlah user, sehingga semua user dapat mengakses resource komputer secara bersamaan melalui terminal (keyboard dan display) masing masing
merupakan sistem multiprogramming yang dimanfaatkan untuk menangain bebera[a job interaktif