Minggu, 17 Januari 2021

Mandiri 5 -- Sistem Operasi 1 kampus milenial ITBI Semester 1 (SATU)

Nama       : IRNA MARLIANA SIREGAR 

Kelas        : Pagi

Jurusan   : Informatika

 

SOAL !

A. Jelaskan perbedaan alokasi memori multiprogramming secara berurut (contigous) dan tidak berurut (non contigous) ?

B. Jelaskan konsep pengalokasian berurut dengan :

  1. Partisi statis 
  2. Partisi dinamis  
  3. sistem buddy

C. Jelaskan perbedaan, kelebihan dan kekurangan dari penentuan hole alokasi suatu proses secara :

  1. Algoritma first fit
  2. Algoritma best fit
  3. algoritma worst fit

 

JAWABAN 


A. Alokasi Berurut (Contiguous)
Memori harus mengakomodasi kebutuhan SO dan proses user. Memori utama biasanya terbagi dalam dua bagian:
Ø  Resident operating system, biasanya tersimpan di alamat memori rendah.
Ø  User proces menggunakan memori beralamat tinggi/besar.
Alokasi berurut terbagi menjadi tiga yakni:
1.    Partisi statis
Ciri-ciri dari partisi statis sebagai berikut:
1.     Memori dibagi menjadi partisi-partisi dengan ukuran yang tetap.
2.     Satu proses hanya memakai satu partisi. Jika proses sudah selesai, partisi tersebut dapat digunakan proses yang lain.
3.     Dibagi menjadi 2 bagian:
a)     Berukuran sama
Banyak kelemahan, antara lain:
*       Proses yang ukurannya lebih besar dari ukuran partisi tidak dapat dialokasikan.
*       Sebaliknya bila ukuran proses lebih kecil daripada ukuran partisi, maka akan terjadi pemborosan ruang memori (Fragmentasi internal).
b)    Berukuran tidak sama
Untuk mengatasi kelemahan dari Pengalokasian berurut dengan partisi statis dengan ukuran sama, yaitu proses ukuran kecil diletakkan ke partisi yang kecil dan sebaliknya.
 Ada 2 jenis strategi:
1)     Satu antrian untuk setiap partisi
Tiap proses diletakkan pada partisi dengan ukuran terkecil yang dapat dimuatnya.
Kelemahan: ada partisi yang memiliki antrian panjang dan ada yang kosong.
2)     Satu antrian untuk seluruh partisi
Semua proses dimasukkan pada satu antrian yang sama, Algoritma penjadwalan melakukan pemilihan partisi
Kelemahan: jika proses yang berukuran kecil terpaksa masuk ke partisi sisa yang besar, sehingga terjadi pemborosan ruang.

2.   Partisi Dinamis
Ciri-ciri:
1.     Pada kondisi awal, memori tidak dibagi menjadi partisi-partisi
2.     Pemartisian dilakukan pada saat image proses akan disalin ke memori utama.
3.     Ukuran partisi yang dialokasikan akan disesuaikan dengan ukuran image proses.
4.     Partisi akan dibebaskan jika program sudah selesai.
5.     Keuntungan : tidak terjadi fragmentasi internal alokasi memori disesuaikan dengan besarnya image proses.
Cara kerja:
1.      Pengalokasian dilakukan dengan mencari hole à suatu ruang memori utama yang kosong, yang cukup besar untuk menampung image proses.
2.     Hole sisa kadang kala terlalu kecil untuk dapat dialokasikan ke proses lainnya sehingga tidak bisa digunakan lagi à fragmentasi eksternal.
3.     Salah satu cara untuk mengatasi masalah ini adalah melakukan memory compaction.
Yaitu: menggeser image proses-proses yang ada  di memori sehingga hole terkumpul di satu tempat saja
Kelemahan:
Ø  proses alokasi dan dealokasi menjadi lebih rumit
Ø  Perlu pengelolaan informasi area memori yang masih kosong.

Ada 2 metode pengelolaan memori kosong:
1.     Peta bit (bitmap)
Ø  Menggunakan area memori khusus untuk mencatat seluruh area kosong pada memori utama.
Ø  Memakai nilai 0 dan 1
ü  Nilai 0 à alamat memori tersebut masih kosong
ü  Nilai 1 à alamat memori tersebut sudah terisi


2.     Linked list
Ø  Informasi mengenai hole kosong berikutnya dicatat pada hole kosong sebelumnya.
Ø  Tidak diperlukan area memori khusus. Karena seluruh informasi tercatat di area memori kosong itu sendiri sehingga menghemat kapasitas memori utama.

Diperlukan algoritma untuk menentukan hole mana yang akan dialokasikan ke suatu proses.
1.     Algoritma Best-fit
Ø  Mencari memori blok yang paling kecil yang dapat menampung image proses
Ø  Memerlukan waktu lama karena harus searching seluruh blok memori utama
Ø  Fragmentasi eksternal dapat ditekan sekecil mungkin

2.     Algoritma First-fit
Ø  Mencari memori kosong dari alamat awal sampai menemukan blok yang dapat menampung image proses
Ø  Sederhana dan cepat.

3.     Algoritma Next-fit
Ø  Hampir sama dengan First-fit.
Ø  Bedanya: proses searching dimulai dari alamat alokasi terakhir

4.     Algoritma Worst-fit
Ø  Mencari hole yang paling besar di seluruh area memori utama.
Ø  Tujuannya: hole sisa yang tercipta setelah alokasi masih cukup besar untuk dialokasikan ke proses lainnya.


3.    Sistem Buddy
Ø  Berupa pemartisian secara dinamis
Ø  Ciri khusus adalah partisi yang terbentuk senantiasa berukuran besar sebesar bilangan  2n    2,4,8,16…..256,512,1024(1Mb)
Alokasi memori pada sistem buddy:
1)     Menentukan ukuran partisi
v  Ditentukan ukuran partisi untuk menampung image proses yaitu ukuran bilangan pangkat 2 terkecil
v  Misal : ukuran image proses = 12kb, maka ukuran partisi yang bisa digunakan adalah 16kb.

2)     Pengalokasian
v  Selanjutnya adalah mencari hole yang ukurannya sebesar perhitungan.
v  Jika tidak ada maka dicarikan hole yang berukuran sedikit lebih besar. Kemudian dipecah secara bertahap sesuai dengan aturan bilangan pangkat 2.
v  Misal : ukuran image proses = 12kb dan hole yang paling kecil adalah 64kb.
ü  maka dipecah menjadi 2 partisi 32kb, selanjutnya dipecah lagi menjadi 2 partisi 16kb.
ü  dan partisi 16kb pertama yang bisa dipakai untuk image proses 12kb.

    B.     Alokasi Tidak Berurut (Non Contiguous)
1.     Dengan Sistem Paging
Ø  Pada model pengalokasian tak berurut, bagian-bagian dari image proses dapat diletakkan secara terpisah di memori utama.\
Ø  Pada sistem paging memerlukan pengalamatan logika khusus yang membagi menjadi blok-blok dengan ukuran sama yang disebut page
Ø  Pada sistem paging , perlua adanya translasi alamat ke memori fisik yang dipartisi secara statis yang disebut frame, yang ukurannya sama dengan page pada ruang alamat logika

Konsep dasar alokasi memori :
Ø  Memori utama dibagi menjadi frame-frame kecil berukuran sama dan diberi nomor frame sebagai referensi.
Ø  Ruang alamat logika proses dibagi menjadi page-page seukuran frame
Ø  Loading time: page-page image proses diletakkan pada frame-frame kosong dan dicatat pada page table

Proteksi Memori pada sistem paging
Ø  Berfungsi menghindari pengaksesan memori secara ilegal.
misal: pengaksesan bagian memori yang sudah ditempati proses lain.
Ø  Proteksi frame dilakukan dengan cara menambahkan bit proteksi untuk tiap entry page table  misal:  
ü  cek apakah frame tersebut bersifat read atau read-write.
ü   cek apakah alamat logika yang dituju suatu proses valid atau invalid.

Memory Sharing pada sistem pagin
Ø  Untuk menghemat penggunaan kapasitas memori.
Ø  Jika ada 2 atau lebih proses yang memiliki bagian kode instruksi, atau data yang sama maka dapat digunakan bersama dan cukup diletakkan sekali di frame memori.
Ø  Masing-masing proses mengacu ke frame yang sama pada page table nya.

2.     Dengan Sistem Segmentasi
Ø  Memakai sistem partisi dinamis.
Ø  Pada pengalamatan logika, image proses dibagi menjadi bagian-bagian yang disebut segmen.
Ø  Pembagian segmen biasanya mengikuti struktur program oleh kompiler, yang biasanya tiap segmen berupa main program, stack, routine, symbol table
Ø  Partisi memori utama terjadi pada saat alokasi yang besarnya sesuai dengan besar segmen program yang dialokasikan

Konsep alokasi memori:
Ø  Image proses dibagi menjadi beberapa segmen yang ukurannya tidak harus sama.
Ø  Segmen-segmen image proses dialokasikan ke tempat-tempat kosong di memori utama, dan informasi alokasi dicatat pada segmen table.
Ø  Segmen table berisi nilai limit (panjang segmen) dan nilai base (alamat awal bagian memori yang dialokasikan)

Proteksi memori pada segmentasi
Ø  Membandingkan nilai segmen yang ada di pengalamatan logika dengan nilai limit yang ada di segmen table.
Ø  Apabila nilai segmen yang ada di pengalamatan logika lebih besar (>) daripada  nilai limit yang ada di segmen table, berarti terjadi usaha pengaksesan lokasi diluar area segmen program itu, sehingga memicu terjadinya trap (addresing error)

Memori sharing pada  sistem segmentation
Sharing segmen antara 2 atau lebih proses dapat dilakukan dengan mencatat lokasi alokasi segmen tersebut ke tabel segmen masing-masing proses.


3.     Dengan Sistem  Kombinasi
Gabungan antara pengalokasian tak berurut secara paging dan segmentasi





Jumat, 18 Desember 2020

Mandiri 4 - Sistem Operasi 1 kampus milenial ITBI Semester 1 (SATU)

Nama       : IRNA MARLIANA SIREGAR 

Kelas        : Pagi

Jurusan   : Informatika

 

SOAL

A. Jelaskan hal-hal apa saja yang bisa dilakukan dengan Windows Task Manager dalam                    Manajemen Proses.!
B. Jelaskan fungsi-fungsi menu pada Windows Task Manager.!
C. Jelaskan konsep dari:
    1) Algoritma First In First Out !
    2) Algoritma Shortest Job First !

 

JAWAB  

A. Windows Task Manager adalah sebuah aplikasi yang ada sistem operasi keluarga Microsoft Windows N. Aplikasi ini menyediakan informasi rinci tentang kinerja komputer, menjalankan aplikasi, proses, penggunaan CPU, informasi muatan dan memori, aktivitas jaringan dan statistik, log-in pengguna, dan sistem pelayanan. Task Manager juga dapat digunakan untuk menetapkan prioritas proses, afinitas prosesor, menghentikan proses, dan mematikan, mengaktifkan Ulang, hibernasi atau log off. Windows Task Manager diperkenalkan pertama kali pada Windows NT 4. Versi sebelumnya dari Windows N termasuk aplikasi Task List, yang memiliki fitur jauh lebih sedikit     Daftar tugas mampu mencatat proses yang berjalan saat ini dan mematikannya atau membuat proses baru. Pada Windows X menu Shutdown juga hadir yang memungkinkan akses ke Siaga, Hibernasi (Hibernation), Menonaktifkan (Shut Down), mengatifkan ulang (Restart), Log Off dan Beralih Pengguna (Switch User). Versi sebelumnya Windows 3., Windows 9, Windows 9 memiliki program yang dikenal sebagai tugas untuk menampilkan program yang sedang berjalan. File ini dilaksanakan dengan menjalankan file taskman.exe dari direktori C:\Windows.

B.  fungsi-fungsi menu pada Windows Task Manager :

  1. Fungsi utama dari Windows Task Manager adalah untuk melakukan monitoring terhadap semua kegiatan dan proses pada sebuah komputer, selain itu juga memantau bagaimana kinerja seperti RAM, Processor dan Networking.
  2. Untuk menghentikan program yang Not Responding, aplikasi yang tidak merespon menghentikan dari Task Manager adalah opsi kedua, bisa dilakukan dengan klik End Processes atau End Task.
  3. Untuk mengatur prioritas pada sebuah program yang sedang berjalan, bisa dilakukan MasukTab Processes > Klik Kanan pada program yang dipilih > Set Prioity > High (pilih sesuai kebutuhan) > Ok/Apply.
  4. Untuk mengetahui seberapa banyak aplikasi menggunakan kinerja RAM dan CPU.

C. 1) Konsep Algoritma First In First Out.   

    FIFO adalah akronim untuk First In, First Out (Pertama Masuk, Pertama Keluar), sebuah abstraksi yang berhubungan dengan cara mengatur dan memanipulasi data relatif terhadap waktu dan prioritas, atau lebih sederhananya FIFO salah satu teknik pengelolaan queue atau penanganan tugas yang bertumpuk, yaitu item yang pertama akan dikerjakan lebih dahulu. Ungkapan ini menggambarkan prinsip teknik pengolahan antrean atau melayani permintaan yang saling bertentangan dengan proses pemesanan berdasarkan perilaku : di mana orang-orang meninggalkan antrean dalam urutan mereka tiba, atau menunggu giliran satu di sebuah sinyal kontrol lalu lintas.FCFS juga merupakan Jargon istilah untuk sistem operasi penjadwalan algoritma FIFO, yang memberikan setiap proses CPU waktu sesuai dengan urutan mereka datang. Dalam arti yang lebih luas, abstraksi LIFO, atau Last-In-First-Out adalah kebalikan dari abstraksi organisasi FIFO. Bedanya mungkin adalah yang paling jelas dengan mempertimbangkan sinonim yang kurang umum digunakan dari LIFO, FILO (berarti First-In-Last-Out). Pada intinya, keduanya adalah kasus khusus dari daftar yang lebih umum (yang dapat diakses di mana saja). Perbedaannya adalah tidak ada dalam daftar (data), tetapi dalam aturan untuk mengakses konten. Satu sub-tipe menambah satu ujung, dan melepaskan dari yang lain, sebaliknya mengambil dan menempatkan sesuatu hanya pada salah satu ujungnya. Variasi bahasa populer pada pendekatan ad-hoc untuk menghapus item dari antrean telah diciptakan dengan nama OFFO, yang merupakan singkatan On-Fire-First-Out. Antrean Prioritas adalah variasi pada antrean yang tidak memenuhi syarat untuk nama FIFO, karena tidak secara akurat menggambarkan perilaku Struktur Data. Teori antrean mencakup konsep yang lebih umum dari antrean, serta interaksi antara ketat-antrean FIFO.Penjadwalan FIFO ini merupakan penjadwalan tidak berprioritas, dan penjadwalan dengan ketentuan-ketentuan paling sederhana, yaitu: Proses-proses diberi jatah waktu pemroses diurutkan berdasarkan waktu kedatangan proses-proses itu ke system. Pada saat proses mendapat  jatah  waktu  pemroses,  proses dijalankan sampai selesai. Penjadwalan ini dikatakan adil dalam arti resmi (dalam semantic/arti antrian, yaitu proses yang pertama datang, akan dilayani pertama juga), tapi dinyatakan tidak adil karena proses-proses yang perlu waktu lama membuat proses-proses pendek menunggu. Proses-proses tidak penting dapat membuat proses-proses penting menunggu.


Kelebihan FIFO : Dalam kriteria efisiensi, penjadwalan FIFO sangat efisien dalam penggunaan proses dan algoritmanya cukup sederhana

Kelemahan FIFO :
* Dalam kriteria adil, penjadwalan FIFO adil dalam arti resmi (dalam semantic/arti antrian) yaitu proses yang pertama datang, akan dilayani pertama juga), tapi dinyatakan tidak adil karena proses-proses yang perlu waktu lama membuat proses-proses pendek menunggu. Proses-proses tidak penting dapat membuat proses-proses penting menunggu.
* Penjadwalan sangat tidak memuaskan karena proses menunggu lama, aktu tanggapnya sangat jelek. 
* Tidak cocok untuk sistem interaktif.
* Turn around time tidak bagus.
* Throughtput tidak bagus.
* Tidak dapat digunakan untuk sistem waktu nyata

Penjadwalan ini : 
a. Baik untuk sistem batch yang sangat jarang berinteraksi dengan pemakai. Contoh : aplikasi analisis numerik, maupun pembuatan tabel. 
b. Sangat tidak baik (tidak berguna) untuk sistem interaktif, karena tidak memberi waktu tanggap yang baik. 
c. Tidak dapat digunakan untuk sistem waktu nyata (real-time applications).

Contoh Aplikasi Penerapan Teknik Penjadwalan FIFO 
 a. Ketika mencetak (dokumen,foto dll) yang di tekan/diperintahkan mencetak pertama maka itulah yang akan dikerjakan atau dilaksanakan duluan yang lain mengantri didalam list.  
b.    Ketika membuka suatu jendela aplikasi, yang pertama dibuka maka aplikasi itu akan muncul duluan.
 
CONTOH KASUS :
 TABEL

Nama proses
Saat Tiba
Burst Time
P1
0
14
P2
0
10
P3
2
13
P4
3
8
P5
5
3

Dengan menggunakan algoritma First come, first served (fcfs) atau First In, First Out (FIFO) dan Shorted Job First Scheduller (SJF), carilah :
a. Rata-rata waktu tunggu 
b. Rata-rata waktu tanggap 
c. Turn arround time
Jawaban 1
Nama Proses
Saat Tiba
Burst Time
Saat Mulai
Saat selesai
Waktu Tunggu
Waktu Tanggap
P1
0
14
34
48


P2
0
10
0
10


P3
0
13
21
34


P4
0
8
13
21


P5
0
3
10
13






2) Algoritma Shortest Job First 
  
    Pada algoritma ini setiap proses yang ada di ready queue akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena hal tersebut maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwa algoritma ini adalah algoritma yang optimal.


Tabel Contoh Shortest Job First

Process
Arrival Time
Burst Time
P1
0.0
7
P2
2.0
4
P3
4.0
1
P4
5.0
4

CONTOH KASUS

1.   Ada 4 buah proses yang datang berurutan yaitu P1 dengan arrival time pada 0.0 ms dan burst time 7 ms, P2 dengan arrival time pada 2.0 ms dan burst time 4 ms, P3 dengan arrival time pada 4.0 ms dan burst time 1 ms, P4 dengan arrival time pada 5.0 ms dan burst time 4 ms. Hitunglah waiting time rata-rata dan turnaround time dari keempat proses tersebut dengan mengunakan algoritma SJF.

Average waiting time rata-rata untuk ketiga proses tersebut adalah sebesar (0 +6+3+7)/4=4 ms.
Gambar 14.3. Shortest Job First (Non-Preemptive)

Average waiting time rata-rata untuk ketiga prses tersebut adalah sebesar (9+1+0+2)/4=3 ms.

2.      Misalnya ada 2 buah proses yang datang berurutan yaitu P1 dengan arrival time pada 0.0 ms dan burst time 10 ms, P2 dengan arrival time pada 2.0 ms dan burst time 2 ms.
Process
Arrival Time
Burst Time
P1
0.0
10
P2
2.0
2
3.      Capture
waiting time PSJF nya :
P1 = 0 + ( 4 ms – 2 ms ) = 2 ms
P2 = 0
Average waiting time : (2 ms + 0 ms ) / 2 = 2 ms
Average turn around : (12 ms + 0 ) / 2 = 12 ms

Tabel Solusi
Process
Arrival Time
Burst Time
Waktu Mulai
Waktu selesai
Waiting Time
Turn Around
P1
0
10
0
12
2
12
P2
2
2
0
4
0
0

Average
2
12









Ada beberapa kekurangan dari algoritma ini yaitu:
  1. Susahnya untuk memprediksi burst time proses yang akan dieksekusi selanjutnya.
  2. Proses yang mempunyai burst time yang besar akan memiliki waiting time yang besar pula karena yang dieksekusi terlebih dahulu adalah proses dengan burst time yang lebih kecil.
Algoritma ini dapat dibagi menjadi dua bagian yaitu :
  1. Preemptive .Jika ada proses yang sedang dieksekusi oleh CPU dan terdapat proses di ready queue dengan burst time yang lebih kecil daripada proses yang sedang dieksekusi tersebut, maka proses yang sedang dieksekusi oleh CPU akan digantikan oleh proses yang berada di ready queue tersebut. Preemptive SJF sering disebut juga Shortest-Remaining- Time-First scheduling.
  2. Non-preemptive .CPU tidak memperbolehkan proses yang ada di ready queue untuk menggeser proses yang sedang dieksekusi oleh CPU meskipun proses yang baru tersebut mempunyai burst time yang lebih kecil.



 

UTS - Sistem Operasi 2 kampus milenial ITBI Semester 2 (DUA)

Nama       : IRNA MARLIANA SIREGAR   Kelas        : Pagi Jurusan   : Informatika