Anda di halaman 1dari 15

TUGAS MAKALAH STRUKTUR DATA

RANGKUMAN QUEUE (ANTRIAN)

OLEH :

M. IZZUDDIN

NIM :

TI16190025

SMESTER :

II (DUA)
KATA PENGANTAR

Puji Syukur Alhamdulillah kita panjatkan kehadirat Allas Swt. yang telah memberikan
ramat dan karunianya kepada kita semua. Serta shalawat terhantur kepada nabi besar
Muhammad Saw, semoga kelak kita mendapat safaatnya, Amin.

Rasa terimakasih juga penulis hanturkan kepada dosen yang telah mempercayakan
pembuatan makalah ini kepada saya yang berjudul “SISTEM ANTRIAN”. Seperti kata
pepatah tidak ada gading yang tak retak, begitu juga dengan pembuatan makalah ini
saya akui masih banyak kekurangan karena pengalaman yang saya miliki sangatlah
kurang oleh karena itu saya harapkan kepada pembaca untuk memberikan masukkan-
masukan yang bersifat membangun dan untuk kesempurnaan makalah ini.
BAB I

PENDAHULUAN

A. Latar Belakang

Perkembangan teknologi telah semakin pesat. Dengan seiringnya waktu telah


banyak bermunculan komputer dengan berbagai spesifikasi dan kualitas yang berbeda-
beda dan operasi yang berfungsi sebagai jembatan antara user dan komputer. Namun
sangat disayangkan, jika sebagian orang yang tidak mengerti bagaimana cara kerja
Sistem Operasi, ataupun manajemen proses pada sistem operasi pada kumputer.

Dan semoga Makalah ini dapat membantu, setidaknya dapat memberikan sedikit
pengetahuan tentang “SISTEM ANTRIAN”Algorima dan Pemrograman Data.

B. Rumusan Masalah

Melihat dari latar belakang masalah , maka penulis dapat merumuskan masalah
pada manajemen algoritma yang terbagi menjadi 5, yaitu :

1. Multilevel Queue Scheduling

2. Feedback Queue Scheduling

3. Guaranteed Scheduling

4. Multiple Processor Scheduling

5. Metode Evaluasi Penjadualan


C. Tujuan

Tujuan penulisan makalah ini adalah untuk menginformasikan kepada pembaca


tentang berbagai manajemen algoritma pada Sistem Operasi,
BAB II

PEMBAHASAN

A. Pengertian Queue (Antrian)

Queue (Antrian) adalah suatu kumpulan data yang mana penambahan data / elemen
hanya dapat dilakukan pada sisi belakang sedangkan penghapusan / pengeluaran
elemen dilakukan pada sisi depan.

Jenis struktur data antrian sering digunakan untuk menstimulasikan keadaan


dunia nyata. Antrian banyak dijumpai dalam kehidupan sehari-hari. Misal : antrian
registrasi mahasiswa, tiket kereta api dan lain-lain. Berbeda dg stack, prinsip yg
digunakan dalam antrian adalah FIFO ( First In First Out ). Dengan kata lain, urutan
keluar elemen akan sama dengan urutan masuknya.

Dalam antrian tidak semuanya dilakukan secara FIFO murni, contoh yg relevan
dalam bidang komputer adalah Time-sharing Computer System, dimana ada sejumlah
penakai ( user ) yg menggunakan sistem tsb secara serempak. Karena sistem ini biasanya
menggunakan processor, dan sebuah memory utama. Jika processor sedang dipakai oleh
seorang user, maka user yang lain harus antri sampai gilirannya.

Antrian ini tidak akan dilayani secara FIFO murni tetapi biasanya didasarkan pada
suatu prioritas tertentu. Antrian yang memasukkan unsur prioritas dinamakan dengan
ANTRIAN PRIORITAS ( PRIORITY QUEUE )

Elemen yang pertama kali masuk ke antrian akan keluar pertama kalinya.
DEQUEUE adalah mengeluarkan satu elemen dari suatu antrian. Terdapat satu buah
pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya sehingga
membutuhkan variabel Head dan Tail.
1. Multilevel Queue Scheduling

Ide dasar dari algoritma ini berdasarkan pada sistem prioritas proses. Kemudian
muncul ide untuk menganggap kelompok-kelompok tersbut sebagai sebuah antrian-
antrian kecil yang merupakan bagian dari antrian keseluruhan proses, yang sering
disebut dengan algoritma multilevel queue.

Dalam hal ini, dapat dilihat bahwa seolah-olah algoritma dengan prioritas yang
dasar adalah algoritma multilevel queue dimana setiap queue akan berjalan dengan
algoritma FCFS yang memiliki banyak kelemahan. Oleh karena itu, algoritma multilevel
queue memungkinkan adanya penerapan algoritma internal dalam masing-masing sub-
antriannya yang bisa memiliki algoritma internal yang berbeda untuk meningkatkan
kinerjanya. Berawal dari priority scheduling, algoritma ini pun memiliki kelemahan yang
sama dengan priority scheduling, yaitu sangat mungkin bahwa suatu proses pada queue
dengan prioritas rendah bisa saja tidak mendapat jatah CPU. Untuk mengatasi hal
tersebut, salah satu caranya adalah dengan memodifikasi algoritma ini dengan adanya
jatah waktu maksimal untuk tiap antrian, sehingga jika suatu antrian memakan terlalu
banyak waktu, maka prosesnya akan dihentikan dan digantikan oleh antrian
dibawahnya, dan tentu saja batas waktu untuk tiap antrian bisa saja sangat berbeda
tergantung pada prioritas masing-masing antrian.Multilevel Feedback Queue Scheduling
( Part 2 ).

2. Multilevel Feedback Queue Scheduling

Algoritma ini mirip sekali dengan algoritma multilevel queue. Perbedaannya ialah
algoritma ini mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU
terlalu lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Hal ini
menguntungkan proses interaksi karena proses ini hanya memakai waktu CPU yang
sedikit. Demikian pula dengan proses yang menunggu terlalu lama. Proses ini akan
dinaikkan tingkatannya. Biasanya prioritas tertinggi diberikan kepada proses dengan CPU
burst terkecil, dengan begitu CPU akan terutilisasi penuh dan M/K dapat terus sibuk.
Semakin rendah tingkatannya, panjang CPU burst proses juga semakin besar.

Algoritma ini didefinisikan melalui beberapa parameter, antara lain:

a. Jumlah antrian.

b. Algoritma penjadualan tiap antrian.

c. Kapan menaikkan proses ke antrian yang lebih tinggi.

d. Kapan menurunkan proses ke antrian yang lebih rendah.

e. Antrian mana yang akan dimasuki proses yang membutuhkan.

Dengan pendefinisian seperti tadi membuat algoritma ini sering dipakai, karena
algoritma ini mudah dikonfigurasi ulang supaya cocok dengan sistem. Tapi untuk
mengatahui mana penjadwal terbaik, kita harus mengetahui nilai parameter tersebut.
Multilevel feedback queue adalah salah satu algoritma yang berdasar pada algoritma
multilevel queue. Perbedaan mendasar yang membedakan multilevel feedback queue
dengan multilevel queue biasa adalah terletak pada adanya kemungkinan suatu proses
berpindah dari satu antrian ke antrian lainnya, entah dengan prioritas yang lebih rendah
ataupun lebih tinggi. Pada zaman sekarang ini algoritma multilevel feedback queue
adalah salah satu yang paling banyak digunakan.

3. Guaranteed Scheduling

Penjadualan ini memberi daya pemroses yang sama untuk membuat dan
menyesuaikan performance adalah jika ada N pemakai, sehingga setiap proses
(pemakai) akan mendapatkan 1/N dari daya pemroses CPU. Untuk mewujudkannya,
sistem harus selalu menyimpan informasi tentang jumlah waktu CPU untuk semua
proses sejak login dan juga berapa lama pemakai sedang login. Kemudian jumlah waktu
CPU, yaitu waktu mulai login dibagi dengan n, sehingga lebih mudah menghitung rasio
waktu CPU. Karena jumlah waktu pemroses tiap pemakai dapat diketahui, maka dapat
dihitung rasio antara waktu pemroses yang sesungguhnya harus diperoleh, yaitu 1/N
waktu pemroses seluruhnya dan waktu pemroses yang telah diperuntukkan proses itu.
Algoritma akan menjalankan proses dengan rasio paling rendah hingga naik ke tingkat
lebih tinggi diatas pesaing terdekatnya. Ide sederhana ini dapat diimplementasikan ke
sistem real-time dan memiliki penjadualan berprioritas dinamis.

4. Multiple Processor Scheduling

Pada prosesor jamak, penjadualannya jauh lebih kompleks daripada prosesor


tunggal karena pada prosesor jamak memungkinkan adanya load sharing antar prosesor
yang menyebabkan penjadualan menjadi lebih kompleks namun kemampuan sistem
tersebut menjadi lebih baik.

Pendekatan pertama untuk penjadualan prosesor jamak adalah penjadualan asymmetric


multiprocessing atau bisa disebut juga sebagai penjadualan master/slave. Dimana pada
metode ini hanya satu prosesor(master) yang menangani semua keputusan
penjadualan, pemrosesan M/K, dan aktivitas sistem lainnya dan prosesor lainnya (slave)
hanya mengeksekusi proses. Metode ini sederhana karena hanya satu prosesor yang
mengakses struktur data sistem dan juga mengurangi data sharing. Penjadualan SMP
(Symmetric multiprocessing) adalah pendekatan kedua untuk penjadualan prosesor
jamak. Dimana setiap prosesor menjadualkan dirinya sendiri (self scheduling). Semua
proses mungkin berada pada ready queue yang biasa, atau mungkin setiap prosesor
memiliki ready queue tersendiri.

Bagaimanapun juga, penjadualan terlaksana dengan menjadualkan setiap prosesor


untuk memeriksa antrian ready dan memilih suatu proses untuk dieksekusi.

Deklarasi Queue :
#defineMAX8

Typedef struct {int data [MAX];

Int head;

Int tail;

}queue;

B. Operasi dalam Queue.

1. Create ( )

· Untuk menciptakan dan menginisialisasi Queue

· Dengan cara membuat Head dan Tail = -1 sebagai berikut:

void create()

Antrian.head=antrian.tail=-1;

2. IsEmpty ( )

· Untuk memeriksa apakah Antrian sudah penuh atau belum

· Dengan cara memeriksa nilai Tail, jika Tail = -1 maka empty

· Kita tidak memeriksa Head, karena Head adalah tanda untuk kepala antrian
(elemen pertama dalam antrian) yang tidak akan berubah-ubah

· Pergerakan pada Antrian terjadi dengan penambahan elemen Antrian kebelakang,


yaitu menggunakan nilai Tail.
Sebagai berikut:

int isempty()

{if (antrian.tail==-1)

Return1;

Else

Return 0;

3. IsFull

· Untuk mengecek apakah Antrian sudah penuh atau belum

· Dengan cara mengecek nilai Tail, jika Tail >= MAX-1 (karena MAX-1 adalah batas
elemen array pada C) berarti sudah penuh .

Sebagai berikut:

int isfull()

{ if (antrian.tail==MAX-1) return1

Else return0;

4. Enqueue (data)
· Untuk menambahkan elemen ke dalam antrian, penambahan elemen selalu
ditambahkan di elemen paling belakang.

· Penambahan elemen selalu menggerakan variabel Tail dengan cara increment


counter Tail.

Sebagai berikut:

Void Engueue (int data)

{anrtrian.head=anrtrian.tail=0;

Antrian.data [anrtrian.tail]=data;

Prinf (“% masuk”, anrtrian.data [antrian.tail]);

}else

If (isFull()==0)

{antrian.tail++;

Antrian.data [antrian.tail]=data;

Prinf (“% masuk”, antrian.data {antrian.tail}):

6. 5. Dequeue()

· Digunakan untuk menghapus elemen terdepan/pertama dari antrian

· Dengan cara mengurangi counter Tail dan menggeser semua elemen antrian
kedepan.
· Penggeseran dilakukan dengan menggunakan looping.

Sebagai berikut:

int dequeue()

Int I;

Inte = antrian.data {antrian.tail-1; 1++)

For (i=antrian.head; I <=antrian.data {i+1,]};

Antrian.tail--;

Return;

6. Clear()

· Untuk menghapus elemen-elemen Antrian dengan cara membuat Tail dan Head =
-1

· Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus arraynya,


namun hanya mengeset indeks pengaksesan-nya.

Sebagai berikut:

void Clear()

{antrian.head=antrian.tail=-1;

Prinf (“data clear”);


}

7. Tampil

· Untuk menampilkan nilai-nilai elemen antrian

· Menggunakan looping dari head s/d tail.

Sebagai berikut:

Void tampil()

{ if (isEmpty ()==0)

{for (int i=antrian.head; i<=antrian.tail;i++

{printf(“%”,antrian.data [i]);

}else printf (“data kosong\n”);

}
BAB III

PENUTUP

A. KESIMPULAN

Jadi dapat di simpulakan bahwa.sistem antrian itu tidak bisa lepas dari manusia, dari
kehidupan sehari-hari kita dapat melihat dan merasakannya. contohnya : Atm,
Spbu.Hotel. Rumahkan dan lain-lain. dan masih banyak lagi yang belum kita ketahui,,
maka tugas kita adalah belajar, mencari tau dan melakukan penelitian....
DAFTAR PUSTAKA

http://kumpulandancontohmakalah.blogspot.com

Anda mungkin juga menyukai

  • Contoh Data
    Contoh Data
    Dokumen8 halaman
    Contoh Data
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Makalah Keamanan Jaringan
    Makalah Keamanan Jaringan
    Dokumen18 halaman
    Makalah Keamanan Jaringan
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Ti 5
    Ti 5
    Dokumen1 halaman
    Ti 5
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Review
    Review
    Dokumen1 halaman
    Review
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Ti 3
    Ti 3
    Dokumen1 halaman
    Ti 3
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Tugas Akhir
    Tugas Akhir
    Dokumen1 halaman
    Tugas Akhir
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Tugas Akhir 3
    Tugas Akhir 3
    Dokumen1 halaman
    Tugas Akhir 3
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Tugas Akhir 1
    Tugas Akhir 1
    Dokumen1 halaman
    Tugas Akhir 1
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Ti 7
    Ti 7
    Dokumen1 halaman
    Ti 7
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Ti 2
    Ti 2
    Dokumen1 halaman
    Ti 2
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Ti 1
    Ti 1
    Dokumen1 halaman
    Ti 1
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Materi Algo - 4 Sub Algoritma New
    Materi Algo - 4 Sub Algoritma New
    Dokumen20 halaman
    Materi Algo - 4 Sub Algoritma New
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Ti 4
    Ti 4
    Dokumen1 halaman
    Ti 4
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Makalah Infra Struktur Jaringan
    Makalah Infra Struktur Jaringan
    Dokumen15 halaman
    Makalah Infra Struktur Jaringan
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Ti 6
    Ti 6
    Dokumen2 halaman
    Ti 6
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Materi Algo - 6 ARRAY
    Materi Algo - 6 ARRAY
    Dokumen11 halaman
    Materi Algo - 6 ARRAY
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Uas Ekonomi Tik
    Uas Ekonomi Tik
    Dokumen6 halaman
    Uas Ekonomi Tik
    Syam Sukkaaroo
    Belum ada peringkat
  • 8 Pengurutan
    8 Pengurutan
    Dokumen39 halaman
    8 Pengurutan
    Nova Siboro
    Belum ada peringkat
  • Data Siswa
    Data Siswa
    Dokumen1 halaman
    Data Siswa
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Materi Algo - 3 Iteration
    Materi Algo - 3 Iteration
    Dokumen17 halaman
    Materi Algo - 3 Iteration
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Materi Algo - 5 Rekursif
    Materi Algo - 5 Rekursif
    Dokumen8 halaman
    Materi Algo - 5 Rekursif
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Materi Algo - 2 Penyajian Algoritma
    Materi Algo - 2 Penyajian Algoritma
    Dokumen26 halaman
    Materi Algo - 2 Penyajian Algoritma
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Uas Ekonomi Tik
    Uas Ekonomi Tik
    Dokumen6 halaman
    Uas Ekonomi Tik
    Syam Sukkaaroo
    Belum ada peringkat
  • Alin
    Alin
    Dokumen4 halaman
    Alin
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Makalah Kelompok Iii
    Makalah Kelompok Iii
    Dokumen9 halaman
    Makalah Kelompok Iii
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Data Siswa 2
    Data Siswa 2
    Dokumen2 halaman
    Data Siswa 2
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Belajar - Ava
    Belajar - Ava
    Dokumen15 halaman
    Belajar - Ava
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Contoh Database
    Contoh Database
    Dokumen4 halaman
    Contoh Database
    Syamsukkaaroo Edward
    Belum ada peringkat
  • Quiz 1 Syqmsul Hqdi
    Quiz 1 Syqmsul Hqdi
    Dokumen3 halaman
    Quiz 1 Syqmsul Hqdi
    Syamsukkaaroo Edward
    Belum ada peringkat