• Tidak ada hasil yang ditemukan

QUEUE / ANTREAN. Pertemuan 7 Yani sugiyani, M.Kom

N/A
N/A
Protected

Academic year: 2021

Membagikan "QUEUE / ANTREAN. Pertemuan 7 Yani sugiyani, M.Kom"

Copied!
35
0
0

Teks penuh

(1)

1

QUEUE / ANTREAN

Pertemuan 7

(2)

QUEQUE

Queue atau antrean adalah suatu bentuk khusus dari list linier, dengan operasi

penyisipan (insertion) hanya diperbolehkan pada salah satu sisi, yang disebut sisi

belakang (REAR) dan operasi penghapusan (deletion) hanya diperbolehkan pada sisi lainnya, yang disebut sisi depan (FRONT)

dari list

(3)

QUEQUE

Jadi untuk antrean Q = [Q1, Q2, … … , Qn] FRONT(Q) = Q1 dan REAR(Q) = Qn

(4)

QUEQUE

Istilah yang digunakan dalam Queue :

 FRONT(QUEUE)

Posisi elemen depan / teratas dari antrean

 REAR(QUEUE)

Posisi elemen Belakang / terbawah dari antrean

 NOEL(QUEUE)

Operator yang berfungsi untuk mengetahui jumlah elemen dalam antrean

 FIFO

Operasi dari antrean (pertama masuk pertama keluar)

(5)

QUEQUE

Operasi yang dapat dilakukan terhadap Queue/antrean:

 CREATE(QUEUE)

Operasi yang berfungsi untuk membuat antrean menjadi kosong

 ISEMPTY(QUEUE)

Operasi yang berfungsi untuk mengetahui kondisi elemen dalam antrean apakah kosong atau tidak. Hasilnya bertype boolean.

 INSERT(ELEMEN, QUEUE)

Operasi yang berfungsi untuk memasukkan elemen ke dalam antrean.

 REMOVE(QUEUE)

Operasi untuk mengeluarkan elemen dari antrean.

(6)

QUEQUE

(7)

QUEQUE

(8)

PENYAJIAN QUEQUE

 Antrean dapat disajikan di dalam komputer

dalam berbagai cara. Biasanya dengan

menggunakan one way list (linier list) ataupun menggunakan array.

 Bila tidak disebutkan maka antrean akan

disajikan dalam bentuk array queue, dengan

dilengkapi dua variabel penunjuk. FRONT, berisi lokasi dari elemen depan dan REAR, berisi lokasi dari elemen belakang.

 Bila nilai FRONT = NULL, menunjukan bahwa

(9)

QUEQUE

(10)

QUEQUE

Dapat kita lihat bahwa pada setiap kali

penghapusan, nilai lokasi FRONT akan bertambah 1. Untuk setiap kali pemasukan elemen, nilai REAR akan bertambah 1. Hal ini berakibat bahwa setelah pemasukkan elemen ke n (berawal dari antean

hampa), maka lokasi Queue(n) telah diduduki.

Disini mungkin saja tidak sebanyak n elemen ada dalam antrean (karena sudah dilakukan beberapa penghapusan).

(11)

ARRAY SIRKULAR

 Untuk melakukan pemasukkan berikutnya, yakni

memasukkan elemen, kita dapat menggunakan lokasi Queue(1), demikian seterusnya. Dalam hal ini, kita menggunakan array sirkular, yakni bahwa Queue(1) datang sesudah Queue(n). berdasarkan asumsi ini, maka REAR adalah 1.

 Secara yang sama, jika FRONT = n dan kita

akan melakukan penghapusan, maka sekarang FRONT adalah 1 bukan n + 1.

(12)

ARRAY SIRKULAR

 Antrean yang disimpan dalam array

dengan 5 lokasi memory sebagai array sirkular.

(13)

ARRAY SIRKULAR

(14)

DEQUE

 Deque merupakan bentuk variasi dari struktur

data antrean / queue. Struktur data tersebut

adalah deque (Deck atau Dequeue) dan antrean berprioritas (Priority Queue).

 Deque adalah suatu list linier atau linear list

yang penambahan dan penghapusan elemennya dapat dilakukan pada kedua sisi ujung list tetapi tidak dapat dilakukan ditengah – tengah list.

Dengan definisi tersebut maka deque dapat disebut sebagai Queue Ganda atau Double

(15)

DEQUE

 Penyajian deque adalah dengan array sirkular

atau array putar Deque. Disini kita

menggunakan dua pointer atau penunjuk, LEFT dan RIGHT yang berturut – turut menunjukkan pada sisi kiri dan sisi kanan dari deque.

 Kita senantiasa mengasumsikan bahwa elemen

deque berurut dari kiri ke kanan. Pengertian

sirkular timbul karena elemen deque(1) berada sesudah elemen deque(n) dari array.

 Kondisi LEFT = NULL untuk menyatakan bahwa

(16)

DEQUE

Selain deque yang kita sebutkan sebelumnya, masih ada 2 model variasi deque.

 Deque Input terbatas

Suatu deque yang membatasi pemasukkan elemen hanya pada satu ujung dari list, sementara

penghapusan elemen boleh dilakukan pada kedua ujung list.

 Deque Output terbatas

Suatu deque yang hanya memperbolehkan

penghapusan elemen pada salah satu ujung, tetapi memperbolehkan pemasukkan elemen pada kedua

(17)

DEQUE

Komplikasi yang dapat timbul dalam proses deque :

 Terjadi Overflow, yakni pada saat suatu

elemen dimasukkan ke dalam deque yang sudah terisi penuh.

 Terjadi Underflow, yakni bila suatu elemen

harus dihapus dari deque yang sudah hampa.

(18)

ANTREAN BERPRIORITAS

 Antrean berprioritas adalah himpunan

elemen yang setiap elemennya telah diberikan sebuah prioritas dan urutan proses penghapusan elemen adalah berdasarkan aturan berikut :

 Elemen yang prioritasnya lebih tinggi,

diproses lebih dahulu dibandingkan

dengan elemen yang prioritasnya lebih rendah.

(19)

ANTREAN BERPRIORITAS

 Dua elemen dengan prioritas yang sama,

diproses sesuai dengan urutan mereka sewaktu dimasukkan ke dalam priority Queue.

(20)

ANTREAN BERPRIORITAS

 Suatu prototype dari antrean berprioritas adalah

sistem time sharing. Disini program dengan prioritas yang lebih tinggi diproses terlebih

dahulu dan sejumlah program dengan prioritas yang sama akan membentuk queue yang

standar.

(21)

KERJA PROSESSOR

(22)

ANTREAN BERPRIORITAS

 PRIORITAS : Mendahului pada antrian proses  PREEMPSI : Menyerupai prioritas, proses di

bagian belakang antrian akan segera beralih ke bagian paling depan dari antrian itu.

Bahkan lebih dari itu, jika prosessor sedang bekerja, maka preempsi menghentikan kerja prosessor, mengeluarkan pekerjaan di dalam prosessor itu

(23)

PENJADWALAN PROSESSOR

(24)

 Pertama Tiba Pertama Dilayani (PTPD)

ada juga yang menyebutnya dengan First Come First Served (FCFS) atau juga First In First Out (FIFO) merupakan

penjadwalan tanpa prioritas dan tanpa preempsi, merupakan proses serentak tersusun dalam antrian murni.

(25)

 Pada PTPD proses yang tiba lebih dahulu

akan dilayani lebih dahulu. Kalau proses itu tiba pada waktu yang sama, maka

pelayanan dilaksanakan berdasarkan urutan mereka dalam antrian. Tidak

menjadi soal apakah lama proses mereka singkat atau lama, untuk dilayani oleh

prosessor. Proses di antrian belakang

harus menunggu sampai semua proses di depannya rampung dilaksanakan.

(26)

 Proses Terpendek Dipertamakan (PTD)

disebut juga Shortest Job First (SJF)

merupakan penjadwalan dengan prioritas tanpa preempsi. Dasar prioritas adalah

pendeknya proses. Makin pendek proses makin tinggi prioritasnya.

(27)

 Langkah pertama yang kita lakukan

adalah penentuan urutan prioritas

berdasarkan pendeknya proses yang

dilayani. Langkah kedua adalah penentuan saat tertentu, proses mana yang perlu

dilayani oleh prosessor.

 Sekalipun urutan prioritas sudah

ditentukan, namun proses yang tiba lebih dahulu yang akan diproses terlebih dahulu dengan prioritas proses yang terpendek.

(28)

 Proses Terpendek Dipertamakan Preempsi

(PTDP) disebut juga Preemptive Shortest Job First (PSJF) merupakan penjadwalan dengan prioritas dan dengan preempsi, Prioritas didasarkan kepada pendeknya sisa proses. Makin pendek sisa proses makin tinggi prioritasnya.

(29)

 Kita menggunakan dua langkah untuk

melihat pelaksanaan penjadwalan ini.

Pertama, kita perhatikan saat proses tiba atau saat proses rampung. Kedua kita

hitung lama sisa proses yang lebih pendek dari sisa proses pada proses yang sedang dikerjakan, maka atas dasar preempsi,

proses yang sedang dikerjakan dikeluarkan dari prosessor.

(30)

 Rasio Penalti Tertinggi Dipertamakan

(RPTD) disebut juga Highest Penalty Ratio Next (HPRN) termasuk kategori

penjadwalan dengan prioritas tanpa

Preempsi. Dasar prioritas adalah besarnya nilai rasio penalti.

(31)

 Pada RPTD proses pendek pada bagian

belakang antrian akan mengalami banyak penundaan sedangkan pada RPTD proses

panjang akan mengalami banyak penundaan. Penjadwalan RPTD tetap mendahulukan

proses pendek, namun prioritas proses panjang akan turut meningkat melalui

peningkatan rasio penaltinya. Prioritas Proses panjang yang lama tertunda itu akan dapat menyusul prioritas proses pendek.

(32)

 Rumus rasio penalti adalah T/t. Dalam hal

ini lama tanggap T adalah jumlah lama tunggu atau antri (waktu sia – sia) s

dengan lam aproses t. Sehingga rumus rasio penalti menjadi :

Rp = (s + t) / t

(33)

 Puat Gelang (PG) disebut juga Round Robin (RR) merupakan penjadwalan tanpa prioritas tetapi

dengan preempsi.

 Penjadwalan Puat Gelang dilakukan bergiliran berdasarkan antrian (tanpa prioritas), prosessor melayani sejenak setiap proses. Secara berturut – turut proses yang telah dilayani prosessor dan

belum rampung akan kembali ke akhir antrian yang ada pada saat itu, sehingga penggiliran ini berputar seperti gelang. Hanya proses yang telah rampung terlayani yang meninggalkan prosessor dan antrian itu.

(34)

 Waktu sejenak yang digunakan oleh

prosessor untuk melayani setiap proses itu dikenal sebagai kuantum waktu. Dengan mengubah - ubah nilai kuantum waktu, kita menemukan hasil layanan yang

berbeda terhadap antrian proses yang sama.

(35)

35

TERIMA KASIH

Referensi

Dokumen terkait

Secara umum, energi bermanfaat bagi kita ketika energi mengalami perubahan bentuk, misalnya energi listrik berubah menjadi energi gerak (kipas angin), atau energi kimia

Tujuan penelitian ini adalah agar guru matematika di SMA Negeri 1 Karangrayng dapat: Meningkatkan ketrampilan siswa kelas X SMA Negeri 1 Karangrayung dalam

Dalam penelitiannya, Maryam Yaghtin menggunakan metode sol-gel (metode untuk membuat suatu material solid dari partikel kecil), dengan membuat soft magnetic komposit dari

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial.

Penelitian ini menunjukan adanya hubungan yang signifikan hubungan antara lama permainan game online dengan gangguan pola tidur pada mahasiswa Poso di

Prioritas menanggulangi kemiskinan di Surade misalnya, adalah menyediakan beras murah karena daya beli yang lemah, menciptakan ketrampilan dan lapangan kerja, sedangkan prioritas

Untuk mengenkripsi data dengan menggunakan algoritma DES, dimulai dengan membagi bit dari teks tersebut ke dalam blok-blok dengan ukuran blok sebesar 64-bit, yang kemudian

Hal ini didukung oleh hasil penelitian yang menyatakan bahwa distribusi terbesar terletak pada tingkat paparan asap rokok yang tinggi dengan tingkat kejadian ISPA