Rabu, 09 September 2009

TUGAS SISTEM OPERASI 3

1. State pada proses terdiri dari :
> New : proses sedang dibuat
> Running : proses sedang di eksekusi
> Waiting : prose sedang menunggu beberapa event yang akan terjadi (seperti menunggu untuk menyelesaikan I/O atau menerima sinyal.
> Ready : proses menunggu jalan waktu dari CPU untuk diproses
> Terminated : proses telah selesai.


Skema pemrosesannya seperti dinawanh ini :



Keterangannya : sebuah proses yang baru saja dibuat dan ada sebuah proses yang sedang di eksekusi sedang menunggu beberapa event yang akan terjadi ( seperti menunggu untuk menyelesaikan I/O atau menerima sinyal ) dan proses tersubut akan melakukan pemrosesan secara menunggu jataah waktunya datri CPU untuk diproses dan setelah proses selesai baru dieksekusi ke komputer.

2. Pengertian dari :
> Short term scheduler adalah pemilihan proses-proses yang siap intuk di eksekusi, dan mengalokasikan CPU kesalah satu dari proses-proses tersebut.
> Long term schudeler adalah menyeleksi proses-proses mana yang harus dibawa ke ready queue, dan terjadi sangat jarang (dalam detik atau menit)dan digunakan untuk mengotrol tingka multi programming.
3. 4 alasan mengapa proses harus bekerja sama yaitu :
> Pada lingkungan batch sebagai tambahan atas pemberian job. Setelah menciptakan proses baru, sistem operasi melanjutkan untuk membaca job selanjunya.
> Pada lingkungan interaktif, pada saat user baru saja login.
> Sebagai tanggapan atas satu aplikasi (seperti: mencetak file, sitem operasi, dapat menciptakan proses yang akan mengelola pencetakan itu).
> Proses menciptakan proses lain(child).
4. Kode program dalam penyelasaian permasalahan producer consumer dengan menggunakan shared memory:
# defaine BUFFER_SIZE 10
Typedef struct {
. . .
} item;
Item buffer [BUFFER_SIZE];
int in = 0;
int out = 0;

Proses prodecer
item next Produced;
while (1) {
while (((in + 1) % BUFFER_SIZE ) == out)
; /* do nothink */
buffer [in] = next produced;
in = (in + 1) % BUFFER_SIZE;
}
Proses comsumer :
Item mext Consumed ;
While (1) {
While (in == out )
; /* do nothink */
nextConsumed = buffer [out];
out = (out + ) % BUFFER_SIZE;
}
5. Diketahui skema komukasi antar proses menggunakan mailbox.
a. Proses P ingin menunggu 2 pesan, satu dari mailbox A dan satu mailbox B. Tunjukan urutan send dan recaive yang dieksekusi.
Jawab :
Send (A pesan ); mengirim pesan ke mailbox B,
Receive(B pesan ); menerima pesan dari mailbox A.
b. Bagaimana urutan send dan recieve yang dieksekusi p jika p ingin menunggu satu pesan dari mailbox A atau mailbox B (salah satu atau keduanya)
Hanya bisa mengunakan satu:
Caranya :
Send (P pesan ); mengirim pesan ke mailbox A,
Receive ( P pesan); menerima peasan darri A.
6. Thread adalah suatu unit dari (CPU) utilazation yang berisi program counter, kumpulan register, dan ruang stack.
Strukurny dibagi menjadi dua :
> Singgle thread seperti (code, data, files, register, stack )
> Miltithread seperti (code, data, files, registers, registers, registers, stack, stack,stack,).
7. 4 keuntungan menggunakan threads pada multiple proces:
> Respon lebih cepat
> Menggunakan resource bersama-sama
> Lebih ekonomis
> Eningkatkan utilitas arsitektur mikroprosesor.
8. Perbedaan user-level threads dan kernel-supported threads.
> Pada user threads diatur dengan menggunakan pustaka use level thread.
> Pada kernel thread didukung oleh kernel
9. 3 model multithreading dan penjelasannya:
> Model many-to-one yaitu beberapa user level thread dipisahkan ke satu kernel thread dan digukan pada sistem yang tidak mendukung kernel thread .
> Model one-to-one yaitu etiap use level thread dipetakan ke karnel thread .
> Model many-to-many yaitu user level thread dipetakan ke beberapa kernel thread pada sistem operasi ini akan dibuat sejumlah kernel thread.
10. State pada java thread yaitu :
Bahasa pemrograman java menggunakan java thread yang dibuat dengan menggukan class thread dan engimplementasikan antar muka yang bersifat runnable (dapat dijalankan ). Java thread di atur oleh java virtual machine (JVM). Java thread terdiri dari state new, runnable, bloced, dan dead .
Ket: pada suatu program akan dibikin baru dengan memulai tombol start sehingga program tersebut dapat dijalankan seperti yang di inginkan kemudian progran tersebut dapat dialihkan ke ke program yang lainnya dengan cara menyortir semunya dan akan berhenti jika semuanya sudah berhenti dan program tersebut akan mati dengan sendirinya.