Bab II. Perangkat Lunak Bebas
Hak Kekayaan
Intelektual
Hak Kekayaan
Intelektual (HKI) merupakan terjemahan atas istilah Intellectual Property
Right" (IPR). Istilah tersebut terdiri dari tiga kata kunci yaitu: Hak,
Kekayaan, dan Intelektual. Hak Kekayaan Intelektual merupakan
kekayaan atas segala hasil produksi kecerdasan daya pikir seperti teknologi,
pengetahuan, seni, sastra, gubahan lagu, karya tulis, karikatur, dan
seterusnya. Terakhir, Hak Kekayaan Intelektual (HKI) merupakan hak-hak
(wewenang/kekuasaan) untuk berbuat sesuatu atas Kekayaan Intelektual tersebut,
yang diatur oleh norma-norma atau hukum-hukum yang berlaku.
Aneka Ragam HKI
1. Hak Cipta (Copyright)
Hak cipta adalah hak ekslusif bagi pencipta atau
penerima hak untuk mengumumkan atau memperbanyak ciptaannya atau memberikan
izin untuk itu dengan tidak mengurangi pembatasan-pembatasan menurut peraturan
perundang-undangan yang berlaku.
2. Paten (Trademark)
Paten adalah hak ekselusif yang diberikan oleh Negara
kepada inventor atas hasil Invensinya dibidang teknologi, yang untuk selama
waktu tertentu melaksanakan sendiri Invensinya tersebut atau memberikan
persetujuannya kepada pihak lain untuk melaksanakannya. Pada paten, seseorang
tidak berhak untuk membuat sebuah karya yang cara bekerjanya sama dengan sebuah
ide yang dipatenkan.
3. Merek Dagang (Trademark)
Merek adalah tanda berupa gambar, nama, kata,
huruf-huruf, angka-angka, susunan warna, atau kombinasi dari unsur-unsur
tersebut yang memiliki daya pembeda dan digunakan dalam kegiatan perdagangan
barang atau jasa. Merek dagang digunakan oleh pebisnis untuk
mengidentifikasikan sebuah prodeuk atau layanan.
4. Rahasia Dagang (Trade Secret)
Rahasia Dagang adalah informasi yang tidak diketahui
oleh umum dibidang teknologi dan/atau bisnis, mempunyai nilai ekonomi karena
berguna dalam kegiatan usaha, dan dijaga kerahasiaannya oleh pemilik Rahasia
Dagang.
5. Service Mark
Service Mark adalah kata, phrase, logo, simbol, warna,
suara, bau yang digunakan oleh sebuah bisnis untuk mengidentifikasi sebuah
layanan dan membedakannya dari kompetitornya. Pada prakteknya legal protection
untuk trademark sedang service mark untuk identitasnya.
6. Desain Industri
Desain Industri adalah suatu kreasi tentang bentuk,
konfigurasi, atau komposisi garis atau warna, atau garis dan warna, atau
gabungan daripadanya yang berbentuk tiga dimensi atau dua dimensi yang
memberikan kesan estetis dan dapat diwujudkan dalam pola tiga dimensi atau dua
dimensi serta dapat dipakai untuk menghasilkan suatu produk, barang, komoditas
industri, atau kerajinan tangan.
7. Desain Tata Letak Sirkuit Terpadu
Sirkuit Terpadu adalah suatu produk dalam bentuk jadi,
yang didalamnya terdapat berbagai elemen dan sekurang-kurangnya satu dari
elemen tersebut adalah elemen aktif, yang sebagian atau seluruhnya saling
berkaitan serta dibentuk secara terpadu didalam sebuah bahan semikonduktor yang
dimaksudkan untuk menghasilkan fungsi elektronik.
8. Indikasi Geografis
Indikasi Geografis dilindungi sebagai suatu
tanda yang menunjukkan daerah asal suatu barang yang karena faktor lingkungan
geografis termasuk faktor alam, faktor manusia, atau kombinasi dari kedua
faktor tersebut, memberikan ciri dan kualitas tertentu pada barang yang
dihasilkan.
Jenis Lisensi Perangkat Lunak
1. Perangkat Lunak Berpemilik ialah perangkat lunak
yang tidak bebas atau pun semi-bebas. Seseorang dapat dilarang, atau harus
meminta izin, atau akan dikenakan pembatasan lainnya sehingga menyulitkan jika
menggunakan, mengedarkan, atau memodifikasinya.
2. Perangkat Lunak Semi-Bebas adalah Perangkat
lunak semi-bebas adalah perangkat lunak yang tidak bebas, tapi mengizinkan
setiap orang untuk menggunakan, menyalin, mendistribusikan, dan memodifikasinya
untuk tujuan tertentu.
3. Public Domain ialah perangkat lunak yang tanpa hak
cipta.
4. Freeware adalah paket-paket yang mengizinkan
redistribusi tetapi bukan pemodifikasian (dan kode programnya tidak tersedia).
5. Shareware ialah perangkat lunak yang mengizinkan
orang-orang untuk mendistribusikan salinannya, tetapi mereka yang terus
menggunakannya diminta untuk membayar lisensi.
6. Copylefted/ Non-Copylefted merupakan perangkat
lunak bebas yang ketentuan pendistribusinya tidak memperbolehkan untuk menambah
batasan-batasan tambahan jika mendistribusikan atau memodifikasikan perangkat
lunak tersebut.
7. GNU General Public License (GNU/GPL) merupakan
sebuah kumpulan ketentuan pendistribusian tertentu untuk meng-copyleft-akan
sebuah program.
8. Sistem GNU merupakan sistem serupa Unix yang
seutuhnya bebas.
9. Perangkat Lunak GNU merupakan perangkat lunak yang
dikeluarkan oleh proyek GNU. Sebagian besar perangkat lunak GNU merupakan
copyleft, tapi tidak semuanya, namun, semua perangkat lunak GNU harus merupakan
perangkat lunak bebas
.
.
Tantangan Perangkat Lunak Bebas (PLB)
- Perangkat Keras Rahasia.
- Library Tidak Bebas.
- Paten Perangkat Lunak.
- Dokumentasi Bebas.
Bab III. Perangkat Keras Komputer
3.1 Prosesor
Sistem komputer terdiri atas CPU dan sejumlah device
controller yang terhubung melalui sebuah bus yang menyediakan akses ke memori.
3.2 Memori Utama
Memori utama dapat dilihat sebagai cache terakhir
untuk secondary strorage.
Register
Tempat penyimpanan beberapa buah data volatile yang
akan diolah langsung di prosessor yang berkecepatan sangat tinggi. Berfungsi
sebagai tempat perhitungan /komputasi data.
Cache Memory
Tempat penyimpanan sementara (volatile) sejumlah kecil
data untuk meningkatkan kecepatan pengambilan atau penyimpanan data di memori
oleh prosessor yang berkecepatan tinggi.
Random Access Memory
Tempat penyimpanan sementara data volatile yang dapat
diakses langsung oleh prosesor.
Memori Ekstensi
Tambahan memori yang digunakan untuk membantu
proses-proses dalam komputer.
Direct Memory Access
Digunakan untuk I/O device yang dapat memindahkan data
dengan kecepatan tinggi (mendekati frekuensi bus memori).
3.3 Memori
Sekunder
Media penyimpanan data yang non-volatile yang dapat
berupa Flash Drive, Optical Disc, Magnetic Disk, Magnetic Tape. Media ini
biasanya daya tampungnya cukup besar dengan harga yang relatif murah.
Portability-nya juga relatif lebih tinggi.
3.4 Memori Tersier
Memori tersier menyimpan data dalam jumlah yang besar
(terabytes), tapi waktu yang dibutuhkan untuk mengakses data biasanya dalam
hitungan menit sampai jam. Ciri-ciri memori tersier: non-volatile, offline
storage, umunya dibangun pada removable media contoh ptical disk, flash memory.
3.5 Struktur Keluaran/Masukkan
Dua tindakan jika ada operasi M/K:
Setelah proses M/K dimulai, kendali akan kembali ke
user program saat proses M/K selesai (Synchronous). Instruksi wait menyebabkan
CPU idle sampai interupsi berikutnya. Akan terjadi Wait loop (untuk menunggu
akses berikutnya). Paling banyak satu proses M/K yang berjalan dalam satu
waktu.
Setelah proses M/K dimulai, kendali akan kembali ke
user program tanpa menunggu proses M/K selesai (Asynchronous). System call
permintaan pada sistem operasi untuk mengizinkan user menunggu sampai M/K
selesai.Device-status table mengandung data masukkan untuk tiap M/K device yang
menjelaskan tipe, alamat, dan keadaannya. Sistem operasi memeriksa M/K device
untuk mengetahui keadaan device dan mengubah tabel untuk memasukkan interupsi.
Jika M/K device mengirim/mengambil data ke/dari memory hal ini dikenal dengan
nama Direct Memory Access (DMA).
3.5 Interupsi
Interrupt dari
hardware biasanya dikirimkan melalui suatu signal tertentu, sedangkan software
mengirim interupsi dengan cara menjalankan system call atau ajuga dikenal
dengan istilah monitor call. System/Monitor call ini akan menyebabkan trap
yaitu interupsi khusus yang dihasilakan oleh software karena adanya masalah atau
permintaan terhadap layanan sistem operasi.
Bab IV. Proteksi Perangkat Keras
Sistem operasi
harus memastikan operasi yang benar dari sistem komputer. Untuk mencegah
pengguna program menggangu operasi yang berjalan dalam sistem, perangkat keras
mempunyai dua mode: mode pengguna dan mode monitor. Beberapa perintah (seperti
perintah M/K dan perintah halt) adalah perintah khusus, dan hanay dapat
dijalankan dalam mode monitor. Memori juga harus dilindungi dari modifikasi
oleh pengguna. Timer mencegah terjadinya pengulangan secara terus menerus
(infinite loop). Hal-hal tersebut (dual mode, perintah khusus, pengaman memori,
timer interrupt) adalah blok bangunan dasar yang digunakan oleh sistem operasi
untuk mencapai operasi yang sesuai.
Bab V. Komponen Sistem Operasi
Tidak semua sistem operasi mempunyai struktur yang
sama. Namun menurut Avi Silberschatz, Peter Galvin, dan Greg Gagne, umumnya
sebuah sistem operasi modern mempunyai komponen sebagai berikut:
·
Manajemen Proses
·
Manajemen Memori Utama
·
Manajemen Berkas
·
Manajemen Sistem Masukkan/Keluaran
·
Manajemen Penyimpanan Sekunder
·
Sistem proteksi
·
Jaringan
·
Command Interpreter System
Sedangkan menurut A.S Tanenbaum, sistem operasi
mempunyai empat komponen utama, yaitu:
·
Manajemen proses
·
Masukkan/Keluaran
·
Manajemen Memori
·
Sistem Berkas
5.1 Manajemen Proses
Sistem operasi bertanggung jawab atas
aktifitas-aktifitas yang berkaitan dengan manajemen proses seperti:
·
Membuat dan menghapus proses pengguna dan sistem
proses
·
Menunda atau melanjutkan proses
·
Menyediakan mekanisme untuk proses sinkronisasi
·
Menyediakan mekanisme untuk proses komunikasi
·
Menyediakan mekanisme untuk penanganan deadlock
5.2 Manajemen Memori utama
Sistem operasi bertanggung jawab atas
aktifitas-aktifitas yang berkaitan dengan manajemen memori utama seperti:
·
Menjaga track dari memori yang sedang digunakan dan
siapa yang menggunakannya
·
Memilih program yang akan di-load ke memori
5.3 Manajemen Berkas
Sistem operasi bertanggung jawab dalam aktifitas yang
berhubungan dengan manajemen berkas:
·
Pembuatan dan penghapusan berkas
·
Pembuatan dan penghapusan direktori
·
Mendukung manipulasi berkas dan direktori
·
Memetakan berkas ke secondary-storage
·
Mem-back-up berkas ke media penyimpanan yang permanen
(non-volatile)
5.4 Manajemen Sistem Masukkan/Keluaran
Komponen Sistem Operasi untuk sistem
Masukkan/Keluaran:
·
Penyangga: menampung sementara data dari/ke perangkat
Masukkan/Keluaran
·
Spooling: melakukan penjadualan pemakaian
Masukkan/Keluaran sistem supaya lebih efisien
·
Menyediakan driver: untuk dapat melakukan operasi
rinci untuk perangkat keras Masukkan/Keluaran tertentu.
5.5 Manajemen Penyimpanan Sekunder
Sistem operasi bertanggung jawab atas
aktifitas-aktifitas yang berkaitan dengan manajemen disk seperti:
·
free-space management
·
alokasi penyimpanan
·
penjadualan disk
5.6 Sistem Proteksi
Sistem proteksi mengacu pada mekanisme untuk
mengontrol akses yang harus dilakukan oleh program, prosesor, atau pengguna ke
sistem sumber daya. Mekanisme proteksi harus:
·
Membedakan antara pengguna yang sudah diberi izin dan
yang belum
·
Menspesifikasikan kontrol untuk dibebankan/diberi
tugas
·
Menyediakan alat untuk pemberlakuan sistem
5.7 Jaringan
Sistem
terdistribusi adalah sekumpulan prosesor yang tidak berbagi memori, atau clock.
Setiap prosesor mempunyai memori dan clock tersendiri. Prosesor-prosesor
tersebut terhubung melalui jaringan komunikasi. Sistem terdistribusi
menyediakan akses pengguna ke bermacam sumber daya sistem. Akses tersebut
menyebabkan peningkatan kecepatan komputasi dan meningkatkan kemampuan
penyediaan data.
5.8 Command Interpreter System
Sistem operasi
menunggu instruksi dari pengguna (command driven). Program yang membaca
instruksi dan mengartikan control statements umumnya disebut control-card
interpreter. Command-Line interpreter dan terkadang dikenal sebagai
shell. Command-Interpreter System sangat bervariasi dari satu sistem operasi ke
sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi perangkat
Masukkan/Keluaran yang ada. Contohnya: CLI, Windows, Pen-based (touch), dan
lain-lain.
Bab VI. Sudut Pandang Alternatif
6.1 Layanan Sistem Operasi
Layanan sistem operasi dirancang untuk membuat
pemrograman menjadi lebih mudah.
·
Pembuatan program
·
Ekseskusi program
·
Operasi Masukkan/Keluaran
·
Manipulasi Sistem Berkas
·
Komunikasi
·
Deteksi error
6.2 System Program
System program
menyediakan lingkungan yang memungkinkan pengembangan program dan eksekusi
berjalan dengan baik.
Dapat dikategorikan:
·
Manajemen/manipulasi berkas
·
Informasi status
·
Modifikasi berkas
·
Pendukung bahasa pemrograman
·
Loading dan ekseskusi program
·
Komunikasi
Bab X. Konsep Proses
Menurut
Silberschatz, suatu proses adalah lebih dari sebuah kode program, yang
terkadang disebut text section. Proses juga mencakup program counter, yaitu
sebuah stack untuk mnyimpan alamat dari instruksi yang akan dieksekusi
selanjutnya dan register. Sebuah proses pada umumnya juga memiliki sebuah stack
yang berisikan data-data yang dibutuhkan selama proses dieksekusi seperti
parameter metoda, alamat return dan variabel lokal, dan sebuah data section
yang menyimpan variabel global.
Tak jauh beda dengan Silberschatz, Tanenbaum juga
berpendapat bahwa proses adalah sebuah program yang dieksekusi yang mencakup
program counter, register, dan variabel didalamnya. Suatu program adalah satu
entitas pasif, seperti isi dari sebuah berkas yang disimpan didalam disket.
Sedangkan sebuah proses dalam suatu entitas aktif, dengan sebuah program
counter yang menyimpan alamat instruksi selanjutnya yang akan dieksekusi dan
seperangkat sumber daya (resource) yang dibuthkan agar sebuah proses dapat
dieksekusi.
10.1 Pembuatan
Proses
Sebuah proses
dibuat melalui system call create-process yang dilakukan oleh parent process.
Setiap proses anakan (child process) dapat juga membuat proses baru. Ketika
sebuah proses dibuat maka proses tersebut dapat memperoleh resource (waktu CPU,
memory, berkas atau perangkat I/O) secara langsung dari sistem operasi atau
proses tersebut berbagi resource dengan resource orang tuanya. Orang tua proses
tersebut dapat membagi-bagi resource yang dimilikinya atau menggunakan secara
bersama- sama resource yang dimilikinya dengan proses anakannya. Ketika sebuah
proses membuat proses baru maka terdapat dua kemungkinan dalam pelaksanaannya:
1. orang tua proses tersebut berjalan secara konkuren
dengan proses anaknya.
2. orang tua proses tersebut menunggu hingga beberapa atau seluruh proses anakannya selesai.
2. orang tua proses tersebut menunggu hingga beberapa atau seluruh proses anakannya selesai.
Juga terdapat dua kemungkinan dalam pemberian ruang
alamat (address space) proses yang baru:
1. proses tersebut merupakan duplikasi orang tuanya.
2. proses tersebut memiliki program yang diload ke
ruang alamatnya.
10.2 Terminasi Proses
Suatu proses
diterminasi ketika proses tersebut telah selesai mengeksekusi statement
terakhir dan meminta sistem operasi untuk menghapus statement tersebut dengan
menggunakan system call exit.
Suatu parent dapat mengakhiri eksekusi salah satu
childre-nya untuk alasan-alasan seperti:
·
Child melampui penggunaan resource yang telah
dialokasikan. Dalam keadaan ini, paren perlu mempunyai mekanisme untuk
memeriksa status children-nya.
·
Task yang ditugaskan kepada child tidak lagi
diperlukan.
·
Parent berakhir dan sistem operasi tidak
memperbolehkan suatu child untuk tetap menjalankan proses jika parent-nya sudah
tidak ada. Jadi, jika suatu proses berakhir, maka semua children-nya juga harus
diterminasi. Fenomena yang disebut cascading termination ini biasanya dimulai
oleh sistem operasi.
10.3 Status Proses
Status dari
sebuah proses mencerminkan aktifitas atau keadaan dari proses itu sendiri. Berikut
ini adalah status-status yang mungkin dimiliki sebuah proses menurut Tanenbaum:
·
Running: pada saat menggunakan CPU pada suatu waktu.
·
Ready: proses diberhentikan sementara karen menunggu
proses lain untuk dieksekusi
·
Blocked: tidak dijalankan sampai event dari luar, yang
berhubungan dengan proses tersebut terjadi.
Sedangkan menurut Silberschatz, terdapat lima macam
jenis status yang mungkin dimiliki oleh suatu proses:
·
New: status yang dimiliki pada saat proses baru saja
dibuat.
·
Running: status yang dimiliki pada saat
instruksi-instruksi dari sebuah proses dieksekusi.
·
Waiting: status yang dimiliki pada saat proses
menunggu suatu event (contohnya: proses M/K).
·
Ready: status yang dimiliki pada saat proses siap
untuk dieksekusi oleh prosesor.
·
Terminated: status yang dimiliki pada saat proses
telah selesai dieksekusi.
10.4 Process Control Block
Process Control
Block berisikan banyak bagian dari informasi yang berhubungan dengan sebuah
proses yang spesifik, termasuk hal-hal di bawah ini:
·
Status proses: status mungkin, new, ready, running,
waiting, halted, dan juga banyak lagi.
·
Program counter: suatu stack yang berisi alamat dari
instruksi selanjutnya untuk dieksekusi untuk proses ini.
·
CPU register: Register bervariasi dalam jumlah dan
jenis, tergantung pada rancangan komputer. Register tersebut termasuk
accumulator, register indeks, stack pointer, general-purposes register,
ditambah code information pada kondisi apa pun. Beserta dengan program counter,
keadaan/status informasi harus disimpan ketika gangguan terjadi, untuk
memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
·
Informasi managemen memori: Informasi ini dapat
termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel
page/halaman, atau tabel segmen tergantung pada sistem memori yang digunakan
oleh sistem operasi.
·
Informasi pencatatan: Informasi ini termasuk jumlah
dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun jumlah job
atau proses, dan banyak lagi.
·
Informasi status M/K: Informasi termasuk daftar dari
perangkat M/K yang di gunakan pada proses ini, suatu daftar berkas-berkas yang
sedang diakses dan banyak lagi.
·
Process Control Block hanya berfungsi sebagai tempat
penyimpanan informasi yang dapat bervariasi dari proses yang satu dengan yang
lain.
Bab IVX. Penjadual CPU
Penjadualan CPU
adalah basis dari multi-programming sistem operasi. Dengan men-switch CPU
diantara proses. Akibatnya sistem operasi dapat membuat komputer produktif.
14.1 Siklus Burst CPU-M/K
Keberhasilan dari penjadualan CPU tergantung dari
beberapa properti prosesor. Pengeksekusian dari proses tersebut terdiri atas
siklus CPU ekskusi dan M/K Wait. Proses hanya akan bolak-balik dari dua state
ini. Pengeksekusian proses dimulai dengan CPU Burst, setelah itu diikuti oleh
M/K burst, kemudian CPU Burst lagi lalu M/K Burst lagi begitu seterusnya dan
dilakukan secara bergiliran. Dan, CPU Burst terakhir, akan berakhir dengan
permintaan sistem untuk mengakhiri pengeksekusian daripada melalui M/K Burst
lagi. Durasi dari CPU bust ini telah diukur secara ekstensif, walau pun mereka
sangat berbeda dari proses ke prose.
14.2 Penjadualan CPU
Kapan pun CPU
menjadi idle, sistem operasi harus memilih salah satu proses untuk masuk
kedalam antrian ready (siap) untuk dieksekusi. Pemilihan tersebut dilakukan
oleh penjadual short term. Penjadualan memilih dari sekian proses yang ada di
memori yang sudah siap dieksekusi, dengan mengalokasikan CPU untuk
mengeksekusinya.
14.3 Penjadualan Preemptive
Penjadualan
CPU mungkin akan dijalankan ketika proses:
·
Berubah dari running ke waiting state
·
Berubah dari running ke ready state
·
Berubah dari waiting ke ready
·
Terminates
14.4 Penjadualan Non-Preemtive
Penjadualan
non-preemptive terjadi ketika proses hanya:
·
berjalan dari running state sampai waiting state
·
dihentikan
Ini berarti cpu menjaga proses sampai proses itu
pindah ke waiting state ataupun dihentikan (proses tidak diinterupt). Metode
ini digunakan oleh Microsoft Windows 3.1 dan Macintosh. Ini adalah metode yang
dapat digunakan untuk platforms hardware tertentu, karena tidak memerlukan
perangkat keras khusus (misalnya timer yang digunakan untuk menginterupt pada
metode penjadwalan preemptive).
14.5 Dispatcher
Komponen yang lain yang terlibat dalam penjadualan CPU
adalan dispatcher. Dispatcher adalah modul yang memberikan kontrol CPU kepada
proses yang fungsinya adalah:
·
Switching context
·
Switching to user mode
·
Lompat dari suatu bagian di progam user untuk
mengulang progam.
Bab XV. Algoritma Penjadualan I
Proses yang
belum mendapat jatah alokasi dari CPU akan mengantri di ready queue. Di sini algoritma
diperlukan untuk mengatur giliran proses-proses tersebut. Berikut ini adalah algoritmanya.
15.1 First-Come, First-Served
Algoritma ini
merupakan algoritma yang paling sederhana. Dari namanya, kita dapat menebak
kalau algoritma ini akan mendahulukan proses yang lebih dulu datang. Jadi
proses akan mengantri sesuai waktu kedatangannya.Kelemahan algoritma ini adalah
waiting time rata-rata yang cukup lama.
15.2 Shortest-Job First
Algoritma ini
mempunyai cara yang berbeda untuk mengatur antrian di ready queue. Proses
diatur menurut panjang CPU burst berikutnya (lebih tepatnya shortest next CPU
burst) .Waiting time rata-rata dari algoritma ini sangat kecil, sehingga layak
disebut optimal. Perbandingan algoritma
ini dengan algoritma pertama telah kita lihat di bagian sebelumnya (shortest
job first), di mana proses yang memiliki CPU burst terkecil jika didahulukan
akan mengurangi waiting time rata-ratanya. Kelemahan algoritma ini yaitu kita
tak pernah tahu secara pasti panjang CPU burst proses berikutnya. Kita hanya
dapat mengira-ngira nilainya.
Algoritma ini dapat merupakan preemptive atau
nonpreemptive. Jika preemptive, jika ada proses datang dengan sisa CPU burst
yang lebih kecil daripada yang sedang dieksekusi, maka proses tersebut akan
menggantikan proses yang sedang dieksekusi.
15.3 Priority
Algoritma ini
memberikan skala prioritas kepada tiap proses. Proses yang mendapat prioritas terbesar
akan didahulukan. Skala diberikan dalam bentuk integer. Beberapa sistem menggunakan
integer kecil untuk prioritas tertinggi, beberapa sistem menggunakan integer
besar. Kelemahan dari algoritma ini adalah proses dengan prioritas kecil tidak akan
mendapat jatah CPU. Hal ini dapat diatasi dengan aging, yaitu semakin lama
menunggu, prioritas semakin tinggi.
15.4 Round-Robin
Algoritma ini
menggilir proses yang ada di antrian. Proses akan mendapat jatah sebesar time quantum.
Jika time quantum-nya habis atau proses sudah selesai CPU akan dialokasikan ke
proses berikutnya. Algoritma ini sepenuhnya bergantung besarnya time quantum.
Jika terlalu besar, algoritma ini akan sama saja dengan algoritma first-come
first-served. Jika terlalu kecil, akan semakin banyak peralihan proses sehingga
banyak waktu terbuang.
15.5 Multilevel Queue
Algoritma ini
mengelompokkan antrian dalam beberapa buah antrian. Antrian-antrian tersebut
diberi prioritas.Antrian yang lebih rendah tak boleh mendapat alokasi selama
ada antrian tinggi yang belum kebagian. Tiap antrian boleh memiliki algoritma
yang berbeda. Kita juga dapat menjatah waktu CPU untuk tiap antrian. Semakin
tinggi tingkatannya, semakin besar jatah waktu CPU-nya.
15.6 Multilevel Feedback Queue
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.
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.
Algoritma ini didefinisikan melalui beberapa
parameter, antara lain:
·
Jumlah antrian
·
Algoritma penjadualan tiap antrian
·
Kapan menaikkan proses ke antrian yang lebih tinggi
·
Kapan menurunkan proses ke antrian yang lebih rendah
·
Antrian mana yang akan dimasuki proses yang
membutuhkan
Tidak ada komentar:
Posting Komentar