Halo semua, terimakasih apabila kalian masih follow up saya disini :v
ok langsung aja, untuk kesempatan kali ini saya akan menjelaskan tentang FIFO dan contoh programnya.
ok langsung saja ini yang akan saya lampirkan :)
*pengertian
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. Ungkapan ini menggambarkan prinsip teknik pengolahan antrean atau melayani permintaan yang saling bertentangan dengan proses pemesanan berdasarkan perilaku first-come, first-served (FCFS): 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.
sumber: id.wikipedia.org
*contoh program
Program yang ingin saya tunjukan adalah penerapan FIFO dalam hubungan antara client dan server di suatu warnet atau rental computer dalam bahasa c. ketentuanya adalah, client akan mendapatkan 5 pilihan di dalam warnet: 1.game offline -> rp 2000 2. Game online -> Rp 4000 3. internet-> Rp 3000 dan 4 game dan Internet -> Rp 5000 serta 5. tinggal saja(gak bayar). dan out putnya akan diterima hanya untuk server berupa pendapatan yang didapatkan per 10 pengunjung yang datang
ok langsung saja berikut tahap2 pembuatanya.
ok langsung saja berikut tahap2 pembuatanya.
1. bukalah Gedit atau Geany(apabila anda memilikinya)
2. Lalu kita akan memulai untuk membuat program untuk client terlebih dahulu
a. include bbrp library seperti gambar di bawah, kurang lebih kita membutuhkan library tersebut dan jangan lupa untuk menambahkan define
b. lalu langsung masuk ke fungsi main, definisikan suatu char untuk pop up message dan beberapa integer untuk menyimpan pilihan paket (pilihan[10]), dan banyak jam penyewaan(jam[10]), serta 2 variable integer untuk memasukan data yang telah diinputkan user(gt dan ht) untuk selain itu urutan[10],ft dan countert di abaikan saja, karena saya lupa menghapus :p
c. lalu berikan user leluasa untuk mengisikan pilihan paket dan lama pakainya, langsung saja ikuti kode sebagai berikut. (pengulangan terjadi 10 kali karena hanya akan memasuki 10 user saja per run). jangan lupa dengan sprintf dan system("mssg") yang digunakan untuk pop up message, namun ini sebenarnya optional
d. setelah itu masukan kode dibawah ini, kode ini berfungsi untuk memberikan perintah kepada sistem untuk membuat suatu FIFO(char * = "/tmp/ "; mkfifo( , 0666), dan memasukan isi dari variable pilihan paket dan jam ke masing-masing FIFO ( = open(inout, OWRONLY); dst). lalu jangan lupa save file tsb dengan extension .c
3. untuk client sudah selesai, maka kita sekarang fokus untuk server
a. Sama Seperti Client inilah beberapa library yang akan kita butuhkan
b. Lalu Deklarasikan beberapa variable (kecuali countert) untuk pengambilan data dari fifo(gt,ht,buf,buf1). lalu deklarasikan 2 fifo dan 2 fifo tersebut akan mengambil data dari client.
c. Lalu berikan harga dari inputan client, buf[i] digambar ini berlaku sebagai pilihan paket dan buf1[i] akan berlaku sebagai banyaknya jam, serta sum sebagai total dan subsum sebagai jumlah yang harus dibayarkan setiap usernya
d. setelah itu, lakukan pop up message apabila 10 user telah mengunjungi warnet server. dan print semua output dalam format pilihan paket i x jam= subsum sebanyak 10 user. lalu tampilkan sum yang berupa hasil penjumlahan dari smua subsum diatas. lalu save dengan extension .c
4. Baik Sudah selesai. cheers! :D
dan berikut bbrp screenshot run programnya
Baik, Sekian Disini dulu, Semoga Bermanfaat! ;)












No comments:
Post a Comment