Rabu, 14 Desember 2011

RAM ( Random Acces Memory)

Memori akses acak (bahasa Inggris: Random access memory, RAM) adalah sebuah tipe penyimpanan komputer yang isinya dapat diakses dalam waktu yang tetap tidak memperdulikan letak data tersebut dalam memori. Ini berlawanan dengan alat memori urut, seperti tape magnetik, disk dan drum, di mana gerakan mekanikal dari media penyimpanan memaksa komputer untuk mengakses data secara berurutan.
Pertama kali dikenal pada tahun 60′an. Hanya saja saat itu memori semikonduktor belumlah populer karena harganya yang sangat mahal. Saat itu lebih lazim untuk menggunakan memori utama magnetic.
Perusahaan semikonduktor seperti Intel memulai debutnya dengan memproduksi RAM , lebih tepatnya jenis DRAM.
Biasanya RAM dapat ditulis dan dibaca, berlawanan dengan memori-baca-saja (read-only-memory, ROM), RAM biasanya digunakan untuk penyimpanan primer (memori utama) dalam komputer untuk digunakan dan mengubah informasi secara aktif, meskipun beberapa alat menggunakan beberapa jenis RAM untuk menyediakan penyimpanan sekunder jangka-panjang.
Tetapi ada juga yang berpendapat bahwa ROM merupakan jenis lain dari RAM, karena sifatnya yang sebenarnya juga Random Access seperti halnya SRAM ataupun DRAM. Hanya saja memang proses penulisan pada ROM membutuhkan proses khusus yang tidak semudah dan fleksibel seperti halnya pada SRAM atau DRAM. Selain itu beberapa bagian dari space addres RAM ( memori utama ) dari sebuah sistem yang dipetakan kedalam satu atau dua chip ROM.
Namun perkembangan RAM ini sangat cepat sehingga beberapa ahli komputer juga turut melakukan pengelompokan dari evolusi ram ini.
evolusi ram
1. R A M
RAM, merupakan memroy pertama di dunia yang di kembangkan oleh perusahaan INTEL pada tahun 1968,
2. D R A M
Dua tahun setelah itu IBM meluncurkan RAM juga pada tahun 1970 dan di beru label Dynamic Random Access Memory.
3. FP RAM
Fast Page Mode DRAM atau disingkat dengan FPM DRAM ditemukan sekitar tahun 1987 ato yg lebih sering di kenal dengan nama FPM. FPM ini memungkinkan transfer data yang lebih cepat pada baris (row) yang sama dari jenis memori sebelumnya. FPM bekerja pada rentang frekuensi 16MHz hingga 66MHz dengan access time sekitar 50ns. Selain itu FPM mampu mengolah transfer data (bandwidth) sebesar 188,71 Mega Bytes (MB) per detiknya.
4. EDO RAM
Tahun 1995, di buatlah Extended Data Output Dynamic Random Access Memory (EDO DRAM) yang merupakan penyempurnaan dari FPM, dia mempunyai kecepatan akses 50ns.
5. SDRAM PC66
Pada awal tahun 1996 hingga akhir 1997 Synchronous Dynamic Random Access Memory (SDRAM). SDRAM ini kemudian lebih dikenal sebagai PC66 karena bekerja pada frekuensi bus 66MHz, ini biasanya terdapat pada komputer pentium 2 – 3, dan dia memiliki sifat membutuhkan tenaga cukup besar.
6. SDRAM PC100
Sama seperti SDRAM, SDRAM PC100 bekerja untuk komputer pentium II pada bus 100MHz. Karena bus sistem bekerja pada frekuensi 100MHz sementara Intel tetap menginginkan untuk menggunakan sistem memori SDRAM, maka dikembangkanlah memori SDRAM yang dapat bekerja pada frekuensi bus 100MHz
7. DR DRAM
Tahun 1999, Rambus ngebuat sistem memory yang di beri nama Direct Rambus Dynamic Random Access Memory, mampu mengalirkan data sebesar 1,6GB per detiknya! (1GB = 1000MHz)
8. RDRAM PC800
Pada tahun yang sama om Rambus juga mengembangkan memorynya menjadi RDRAM PC800, dengan tegangan 2,5volt.
9. SDRAM PC133
Memory ini di kembangkan pada tahun 1999, emori SDRAM belumlah ditinggalkan begitu saja, bahkan oleh Viking, malah semakin ditingkatkan kemampuannya. Sesuai dengan namanya, memori SDRAM PC133 ini bekerja pada bus berfrekuensi 133MHz dengan access time sebesar 7,5ns
10. SDRAM PC150
Pada tahun 2000, SDRAM mulai di kembangkan dimana memory pada saat ini bisa di pergunakan pada ferkuensi 150MHz.
11. DDR SDRAM
Di tahun yang sama th 2000, SDRAM di kuatkan hingga dua kali lipat. Jika pada SDRAM biasa hanya mampu menjalankan baris printah atau instruksi sekali setiap satu satuan waktu frekuensi bus, maka DDR SDRAM mampu menjalankan dua instruksi sekalian dalam satuan waktu yang sama. Teknik yang digunakan adalah dengan menggunakan secara penuh satu gelombang frekuensi.
12. DDR RAM
Pada tahun yang sama INTEL dan AMD, bersaing dengan kuat dan ketat dalam meningkatkan performa kecepatan CPU, Namun menemui hambatan, karena ketika meningkatkan memory bus ke 133 Mhz kebutuhan Memory (RAM) akan lebih besar.
13. DDR2 RAM
DDR2 adalah memory yang paling banyak berredar saat ini di pasaran, terbukti komputer ber pentium 4 ke atas banyak menggunakan jenis memory ini. Penggunaan ini banyak di pergunakan karena memory jenis ini hanya membutuhkan daya listrik sebear 1,8Volt sehingga dapat menghemat performa listrik/ tegangan yang masuk ke komputer, Ram jenis ini di kempangkan pada tahun 2005
14. DDR3 RAM
Pada tahun 2007 akhir Intel mengembangkan memory dengan label DDR3, dengan pengunaan daya listrik 1,5Volt membuat memory jenis ini lebih memukau karena kecepatan membacanya sangat cepat dibanding beberapa memory hasil evolusi ram sebelumnya.
KESIMPULAN
Jika dicermati, perkembangan memori mengarah pada peningkatan kemampuan memori dalam mengalirkan data baik dari dan ke prosessor maupun perangkat lain. Baik itu peningkatan access time maupun lebar bandwidth memori.
Selain itu, peningkatan kapasitas memori juga berkembang. Jika dulu, dengan sistem 8088, memori 1MB dalam satu keping memori sudah sangat mencukupi, kini bahkan beberapa perusahaan membuat kapasitas memori sebesar 2GB dalam satu kepingnya.
Kegunaan RAM kini sangat di butuhkan sekali oleh komputer dengan spesifikais tinggi, untuk server website, seperti penggunakan RAM pada server situs website pondokiklan.com dimana menggunakan memory sebanyak 4 keping dengan ukuran 1GB, perkepingnya, jumlah ini akan terus bertambah sering waktu, dimana kebutuhkan akan akses ke server website tersebut makin di butuhkan ketika jumlah pengunjung meningkat.

Perintah Dasar CLI (Command Line Interface) Pada Linux Ubuntu

Ubuntu sangat terkenal dengan CLI-nya (Command Line Interface). CLI sendiri adalah antar muka yang tidak menyediakan grafik, baik berupa gambar-gambar, jendela-jendela ataupun animasi-animasi yang bisa memanjakan pengguna, melainkan hanya berupa teks yang harus diketikkan oleh pengguna. Jadi, apabila user ingin melakukan operasi dalam sistem operasi tersebut, misalnya melakukan copy, rename, cut, delete, dan sebagainya, maka pengguna harus megetikkan perintah berupa teks dengan cara manual dan bukan dengan klik-klik seperti pada interface GUI (Graphic User Interface).

Pada Ubuntu versi Desktop sudah menggunakan interface grafik, namun juga disediakan sebuah aplikasi yang diperuntukkan bagi pengguna yang ingin menggunakan tampilan/interface CLI, baik hanya untuk belajar atau memang keahliannya menggunakan CLI, karena memang cukup banyak hal yang bisa dilakukan dengan interface CLI ini yang tidak bisa dilakukan pada interface GUI, terlebih pada Ubuntu versi Server yang semuanya harus dilakukan dengan mode teks, walaupun sebenarnya bisa diinstalkan mode grafiknya. Aplikasi pada Ubuntu Desktop yang bisa digunakan untuk menggunakan mode teks adalah Terminal, yang bisa diakses dengan mengklik Aplication –> Accessories –> Terminal.

Ini adalah tampilan dari Terminal di Ubuntu Desktop 10.10

Berikut ini adalah beberapa perintah yang bisa digunakan di sistem operasi Ubuntu pada mode CLI, baik Desktop maupun Server, yang juga banyak untuk bisa digunakan pada distro yang lain. Pada contoh ini saya menggunakan Ubuntu Desktop 10.10.

1. sudo su

Digunakan untuk login sebagai root/pengguna tertinggi

Sintaks sudo su

2. login

Digunakan untuk login sebagai user lain, namun harus menjadi root dulu untuk bisa menjalankan peirntah ini.

Sintaks : login namauser

Contoh : login adam

3. cd

Digunakan untuk berpindah direktori

Sintaks : cd alamat_direktori

Contoh : cd /var/www

4. pwd

Digunakan untuk memperlihatkan di direktori mana posisi kita berada sekarang.

Sintaks : pwd

5. ls

Digunakan untuk melihat isi sebuah direktori.

Sintaks : ls

6. cp

Digunakan untuk melakukan copy file.

Sintaks : cp /direktori/file_yang_ingin_dicopy /direktori tujuan

Contoh : cp /etc/file1.txt /var/www

7. mv

Digunakan untuk melakukan cut atau rename.

Sintaks :

mv /direktori/file_yang_ingin_dicut /direktori tujuan (cut)

mv /direktori/file_yang_ingin_direname /nama_baru_file (rename)

Contoh:

mv /etc/file1.txt /var/www

mv /etc/file1.txt file2.txt

8. mkdir

Digunakan untuk membuat folder baru.

Sintaks : mkdir nama_folder

Contoh : mkdir folder1

9. rmdir

Digunakan untuk menghapus folder.

Sintaks : rmdir nama_folder

Contoh : rmdir folder1

10. touch

Digunakan untuk membuat file baru.

Sintaks : touch nama_file

Contoh : touch file1.txt

11. rm

Digunakan untuk menghapus file.

Sintaks : rm nama_file

Contoh : rm file1.txt

12. more

Digunakan untuk menampilkan isi sebuah file

Sintaks : more nama_fie

Contoh : more file1.txt

13. echo

Digunakan untuk menuliskan sesuatu kata atau kalimat ke sebuah file.

Sintaks : echo “isi pesan” nama_file

Contoh : echo “Hai ini adalah contoh pesan” >> file1.txt

14. adduser

Digunakan untuk menambah user baru.

Sintaks : adduser nama_user

Contoh : adduser adamkurniawan

15. addgroup

Digunakan untuk menambah group baru

Sintaks : addgroup nama_group

Contoh : addgroup grup1

16. lsusb

Digunakan untuk melihat perangkat usb yang sedang terkoneksi ke komputer

Sintaks : lsusb

17. lspci

Digunakan untuk melihat perangkat pci yang sedang terkoneksi ke komputer

Sintaks : lspci

18. lshw

Digunakan untuk melihat hardware komputer.

Sintaks : lshw

19. dmesg

Digunakan untuk melihat hardware yang sedang beraktifitas

Sintaks : dmseg

20. top

Digunakan untuk melihat proses yang sedang berjalan, seperti Task Manager pada Windows.

Sintaks : top

21. cpuinfo

Digunakan untuk melihat spesifikasi komputer.

Sintaks : more /proc/cpuinfo

22. meminfo

Digunakan untuk melihat status RAM

Sintaks : more /proc/meminfo

23. clear

Digunakan untuk membersihkan layar

Sintaks : clear

24. halt

Digunakan untuk mematikan komputer, namun harus sebagai root.

Sintaks : halt

25. reboot

Digunakan untuk merestart komputer, namun harus sebagai root.

Sintaks : reboot

26. exit

Digunakan untuk keluar dari terminal.

Sintaks : exit

27. wget

Digunakan untuk mendownload via terminal

Sintaks : wget link_download

Contoh : wget www.insightcalendar.com/Insight_Calendar_1-1_Setup.exe

28. ifconfig

Digunakan untuk melihat konfigurasi ethernet/kartu jaringan.

Sintaks : ifconfig

29. apt-get

Digunakan untuk memperoleh paket/software dari repository ubuntu secara online.

Sintax : apt-get nama_paket

Contoh :

apt-get update (untuk melakukan update repository)

apt-get update wine (untuk mendapatkan paket wine)

30. tar

Digunakan untuk melakukan extract file.

Sintaks : tar [parameter] nama_file

Contoh : tar -xzvf komodo-edit-5.2.4-4343-linux-libcpp6-x86.tar.gz

31. nautilus

Digunakan untuk membuka tampilan GUI secara langsung.

Sintaks : nautilus

Contoh : sudo nautilus (menggunakan mode GUI dengan status root)

Itu beberapa command yang saya ingat saat ini yang bisa digunakan dibanyak distro Linux, walaupun ada beberapa yang hanya khusus di Ubuntu saja. Jika ada yang saya ingat lagi, akan saya tambah. Semoga membantu, dan selamat belajar…

Menagement Proses pada Komputer (System Operasi)

Manajemen Proses dalam sistem operasi

Secara umum proses adalah program dalam eksekusi. Suatu proses adalah lebih dari kode program, dimana kadang kala dikenal sebagai bagian tulisan. Proses juga termasuk aktivitas yang sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor’s register. Suatu proses umumnya juga termasuk process stack, yang berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan sebuah data section, yang berisikan variabel global. suatu program adalah satu entitas pasif, seperti isi dari sebuah berkas yang disimpan didalam disket, sebagaimana sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang mengkhususkan pada instruksi selanjutnya untuk dijalankan dan seperangkat sumber daya/ resource yang berkenaan dengannya.

Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen proses seperti:

* Membuat dan menghapus proses pengguna dan sistem proses. Sistem operasi bertugas mengalokasikan sumber daya yang dibutuhkan oleh sebuah proses dan kemudian mengambil sumber daya itu kembali setelah proses tersebut selesai agar dapat digunakan untuk proses lainnya.
* Menunda atau melanjutkan proses. Sistem operasi akan mengatur proses apa yang harus dijalankan terlebih dahulu berdasarkan berdasarkan prioritas dari proses-proses yang ada. Apa bila terjadi 2 atau lebih proses yang mengantri untuk dijalankan, sistem operasi akan mendahulukan proses yang memiliki prioritas paling besar.
* Menyediakan mekanisme untuk proses sinkronisasi. Sistem operasi akan mengatur jalannya beberapa proses yang dieksekusi bersamaan. Tujuannya adalah menghindarkan terjadinya inkonsistensi data karena pengaksesan data yang sama, juga untuk mengatur urutan jalannya proses agar setiap proses berjalan dengan lancar
* Menyediakan mekanisme untuk proses komunikasi. Sistem operasi menyediakan mekanisme agar beberapa proses dapat saling berinteraksi dan berkomunikasi (contohnya berbagi sumber daya antar proses) satu sama lain tanpa menyebabkan terganggunya proses lainnya.
* Menyediakan mekanisme untuk penanganan deadlock. Deadlock adalah suatu keadaan dimana sistem seperti terhenti karena setiap proses memiliki sumber daya yang tidak bisa dibagi dan menunggu untuk mendapatkan sumber daya yang sedang dimiliki oleh proses lain. Saling menunggu inilah yang disebut deadlock(kebuntuan). Sistem operasi harus bisa mencegah, menghindari, dan mendeteksi adanya deadlock. Jika deadlock terjadi, sistem operasi juga harus dapat memulihkan kondisi sistemnya.

Beberapa hal yang berhubungan dengan manajemen konsep dalam sistem operasi :

1. Komunikasi antar proses

(Inter Process Communinication / IPC) :

* Beberapa proses biasanya berkomunikasi dengan proses lain.

* Contohnya pada shell pipe line : output dari proses pertama harus diberikan kepada proses ke dua dan seterusnya.
* Pada beberapa sistem operasi, proses-proses yang bekerja bersama sering sharing (berbagi) media penyimpanan, dimana suatu proses dapat membaca dan menulis pada shared storage (main memory atau files).

2. Mekanisme proses untuk komunikasi dan sinkronisasi aksi

* Sistem Pesan – komunikasi proses satu dengan yang lain dapat dilakukan tanpa perlu pembagian data.
* IPC menyediakan dua operasi :
o send(message) – pesan berukuran pasti atau variabel
o receive(message)
o Jika P dan Q melakukan komunikasi, maka keduanya memerlukan :
+ Membangun jalur komunikasi diantara keduanya
+ Melakukan pertukaran pesan melaui send/receive
o Implementasi jalur komunikasi
+ physical (shared memory, hardware bus)
+ logical (logical properties)

3. Pembuatan dan Penghancuran Proses

Ø Pembuatan Proses (Create)

Penciptaan proses terjadi karena terdapat batch baru. SO dengan kendali batch job, setelah menciptakan proses baru, kemudian melanjutkan membaca job selanjutnya.

Penciptaan proses melibatkan banyak aktivitas, yaitu :

* Menamai (memberi identitas) proses.
* Menyisipkan proses pada senarai proses atau tabel proses.
* Menentukan prioritas awal proses.
* Menciptakan PCB.
* Mengalokasikan sumber daya awal bagi proses.

Ø Penghancuran Proses (Destroyed)

Penghancuran proses terjadi karena :

* Selesainya proses secara normal.
* Proses mengeksekusi panggilan layanan So untuk menandakan bahwa proses telah berjalan secara lengkap.
* Batas waktu telah terlewati.
* Proses telah berjalan melebihi batas waktu total yang dispesifikasikan. Terdapat banyak kemungkinan untuk tipe waktu yang diukur, termasuk waktu total yang dijalani (“walk clock time”) jumlah waktu yang dipakai untuk eksekusi, dan jumlah waktu sejak pemakai terakhir kali memberi masukan (pada proses interaktif) .
* Memori tidak tersedia.
* Proses memerlukan memori lebih banyak daripada yang dapat disediakan oleh sistem.
* Pelanggaran terhadap batas memori.
* Proses memcoba mengakses lokasi memori yang tidak diijinkan untuk diakses.
* Terjadi kesalahan karena pelanggaran proteksi.
* Proses berusaha menggunakan sumber daya atau file yang tidak diijinkan dipakainya, atau proses mencoba menggunakannya tidak untuk peruntukannya, seperti menulis file read only.
* Terjadi kesalahan aritmatika.
* Proses mencoba perhitungan terlarang, seperti pembagian dengan nol, atau mencoba menyimpan angka yang lebih besar daripada yang ddapat diakomodasi oleh H/W.
* Waktu telah kadaluwarsa.
* Proses telah menunggu lebih lama daripada maksimum yang telah ditentukan untuk terjadinya suatu kejadian spesfiik.
* Terjadi kegagalan masukan/keluaran.
* Kesalahan muncul pada masukan atau keluaran, seprti ketidakmampuan menemukan file, kegagalan membaca atau mennulis setelah sejumlah maksimum percobaan yang ditentukan (misalnya area rusak didapatkan pada tape,atau operasi tidak valid seperti membaca dari line printer).
* Intruksi yang tidak benar.
* Proses berusaha mengeksekusi instruksi yang tidak ada (sering sebagi akibat pencabangan ke daerah data dan berusaha mengeksekusi data tersebut).
* Terjadi usaha memakai instruksi yang tidak diijinkan.
* Proses berusaha mengeksekusi instruksi yang disimpan untuk SO.
* Kesalahan penggunaan data.
* Bagian data adalah tipe yang salah atau tidak diinisialisasi.
* Diintervensi oleh SO atau operator.
* Untuk suatu alasan, operator atau sistem operasi mengakhiri proses (misalnya terjadi deadlock).
* Berakhirnya proses induk.
* Ketika parent berakhir. So mungkin dirancannng secara otomatis mengakhiri semua anak proses dari parent itu.
* Atas permintaan proses induk.
* Parent process biasanya mempunyai otoritas mengakhiri suatu anak proses.

Penghancuran lebih rumit bila proses telah menciptakan proses-proses lain. Terdapat dua pendekatan, yaitu :

* Pada beberapa sistem, proses-proses turunan dihancurkan saat proses induk dihancurkan secara otomatis.
* Beberapa sistem lain menganggap proses anak independen terhadap proses induk Proses anak tidak secara otomatis dihancurkan saat proses induk dihancurkan.

Penghancuran proses melibatkan pembebasan proses dari sistem, yaitu :

* Sumber daya-sumber daya yang dipakai dikembalikan.
* Proses dihancurkan dari senarai atau tabel sistem.
* PCB dihapus (ruang memori PCB dikembalikan ke pool memori bebas).

4. Keadaan Proses

Keadaan proses terdiri dari :

1) Running, yaitu suatu kondisi pemroses sedang mengeksekusi instruksi. Benar-benar menggunakan CPU pada saat itu (sedang mengeksekusi instruksi proses itu).

2) Ready, yaitu suatu kondisi proses siap dieksekusi, akan tetapi pemroses belum siap atau sibuk.

3) Blocked, yaitu suatu proses menunggu kejadian untuk melengkapi tugasnya. Bentuk kegiatan menunggu proses yaitu : selesainya kerja dari perangkat I/Otersedianya memori yang cukup.

5. Penjadwalan Proses

Kriteria untuk mengukur dan optimasi kinerja penjadwalan :

a) Adil (fairness)

Adalah proses-proses yang diperlakukan sama, yaitu mendapat jatah waktu pemroses yang sama dan tak ada proses yang tak kebagian layanan pemroses sehingga mengalami kekurangan waktu.

b) Efisiensi (eficiency)

c) Waktu tanggap (response time)

Waktu tanggap berbeda untuk :

1) Sistem interaktif

Didefinisikan sebagai waktu yang dihabiskan dari saat karakter terakhir dari . perintah dimasukkan atau transaksi sampai hasil pertama muncul di layar. Waktu tanggap ini disebut terminal response time.

2) Sistem waktu nyata

Didefinisikan sebagai waktu dari saat kejadian (internal atau eksternal) sampai instruksi pertama rutin layanan yang dimaksud dieksekusi, disebut event response time.

d) Turn around time

Adalah waktu yang dihabiskan dari saat program atau job mulai masuk ke sistem sampai proses diselesaikan sistem.

Ø Algoritma Penjadwalan

Berikut jenis-jenis algoritma berdasarkan penjadwalan :

1. Nonpre-emptive, menggunakan konsep :
1. FIFO (First In First Out) atau FCFS (First Come First Serve)
2. SJF (Shortest Job First)
3. HRN (Highest Ratio Next)
4. MFQ (Multiple Feedback Q)

2. Pre-emptive, menggunakan konsep :

1. RR (Round Robin)

2. SRF (Shortest Remaining First)

3. PS (Priority Schedulling)

4. GS (Guaranteed Schedulling)

v Algoritma Pre-emptive

A. Round Robin (RR)

Semua proses dianggap penting sehingga diberi sejumlah waktu oleh pemroses yang disebut kwanta (quantum) atau time slice dimana proses itu berjalan. Jika proses masih running sampai akhir quantum, maka CPU akan mempreempt proses itu dan memberikannya ke proses lain.

Penjadwalan ini :

* Baik untuk sistem interactive-time sharing dimana kebanyakan waktu dipergunakan menunggu kejadian eksternal.

Contoh : text editor, kebanyakan waktu program adalah untuk menunggu keyboard, sehingga dapat dijalankan proses-proses lain.

B. Priority Schedulling (PS)

Adalah tiap proses diberi prioritas dan proses yang berprioritas tertinggi mendapat jatah waktu lebih dulu (running). Berasumsi bahwa masing-masing proses memiliki prioritas tertentu, sehingga akan dilaksanakan berdasar prioritas yang dimilikinya. Ilustrasi yang dapat memperjelas prioritas tersebut adalah dalam komputer militer, dimana proses dari jendral berprioritas 100, proses dari kolonel 90, mayor berprioritas 80, kapten berprioritas 70, letnan berprioritas 60 dan seterusnya. Dalam UNIX perintah untuk mengubah prioritas menggunakan perintah nice.

Pemberian prioritas diberikan secara :

1. Statis (static priorities)

Keunggulan :

* Mudah diimplementasikan.
* Mempunyai overhead relatif kecil.

Kelemahan :

* Tidak tanggap terhadap perubahan lingkungan yang mungkin menghendaki penyesuaian prioritas.

2. Dinamis (dynamic priorities)

Merupakan mekanisme untuk menanggapi perubahan lingkungan sistem beroperasi. Prioritas awal yang diberikan ke proses mungkin hanya berumur pendek setelah disesuaikan ke nilai yang lebih tepat sesuai lingkungan.

Kelemahan :

* Implementasi mekanisme prioritas dinamis lebih kompleks dan mempunyai overhead lebih besar. Overhead in diimbangi dengan peningkatan daya tanggap sistem.

C. Multiple Feedback Queues (MFQ)

Merupakan :

* Penjadwalan berprioritas dinamis.

Penjadwalan ini untuk mencegah (mengurangi) banyaknya swapping dengan proses-proses yang sangat banyak menggunakan pemroses (karena menyelesaikan tugasnya memakan waktu lama) diberi jatah waktu (jumlah kwanta) lebih banyak dalam satu waktu. Penjadwalan ini juga menghendaki kelas-kelas prioritas bagi proses-proses yang ada. Kelas tertinggi berjalan selama satu kwanta, kelas berikutnya berjalan selama dua kwanta, kelas berikutnya berjalan empat kwanta, dan seterusnya.

Ketentuan yang berlaku adalah sebagai berikut :

* Jalankan proses pada kelas tertinggi.
* Jika proses menggunakan seluruh kwanta yang dialokasikan, maka diturunkan kelas prioritasnya.
* Proses yang masuk untuk pertama kali ke sistem langsung diberi kelas tertinggi.

Mekanisme ini mencegah proses yang perlu berjalan lama swapping berkali-kali dan mencegah proses-proses interaktif yang singkat harus menunggu lama.

D. Shortest Remaining First (SRF)

Merupakan :

* Penjadwalan berprioritas dinamis.
* Adalah preemptive untuk timesharing.
* Melengkapi SJF.

Pada SRF, proses dengan sisa waktu jalan diestimasi terendah dijalankan, termasuk proses-proses yang baru tiba.

* Pada SJF, begitu proses dieksekusi, proses dijalankan sampai selesai.
* Pada SRF, proses yang sedang berjalan (running) dapat diambil alih proses baru dengan sisa waktu jalan yang diestimasi lebih rendah.

Kelemahan :

* Mempunyai overhead lebih besar dibanding SJF. SRF perlu penyimpanan waktu layanan yang telah dihabiskan job dan kadang-kadang harus menangani peralihan.
* Tibanya proses-proses kecil akan segera dijalankan.
* Job-job lebih lama berarti dengan lama dan variasi waktu tunggu lebih lama dibanding pada SJF.

SRF perlu menyimpan waktu layanan yang telah dihabiskan , menambah overhead. Secara teoritis, SRF memberi waktu tunggu minimum tetapi karena overhead peralihan, maka pada situasi tertentu SFJ bisa memberi kinerja lebih baik dibanding SRF.

E. Guaranteed Scheduloing (GS)

Penjadwalan ini memberikan janji yang realistis (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.

v Algoritma Non Pre-emptive

A. First In First Out (FIFO)

FIFO adalah penjadwalan paling sederhana, yaitu :

* Proses-proses diberi jatah waktu pemroses berdasarkan waktu kedatangan.
* Pada saat proses mendapat jatah waktu pemroses, proses dijalankan sampai selesai.

Penjadwalan ini baik untuk sistem batch yang sangat jarang berinteraksi dengan pemakai.

Contoh : aplikasi analisis numerik, maupun pembuatan tabel.

* Sangat tidak baik (tidak berguna) untuk sistem interaktif, karena tidak memberi waktu tanggap yang baik.
* Tidak dapat digunakan untuk sistem waktu nyata (real-time applications).

B. Shortest Job First (SJF)

Penjadwalan ini mengasumsikan waktu jalan proses sampai selesai diketahui sebelumnya. Mekanismenya adalah menjadwalkan proses dengan waktu jalan terpendek lebih dulu sampai selesai, sehingga memberikan efisiensi yang tinggi dan turn around time rendah dan penjadwalannya tak berprioritas.

C. Highest Ratio Next (HRN)

Merupakan :

* Penjadwalan berprioritas dinamis.
* Penjadwalan untuk mengoreksi kelemahan SJF.
* Adalah strategi penjadwalan dengan prioritas proses tidak hanya merupakan fungsi waktu layanan tetapi juga jumlah waktu tunggu proses. Begitu proses mendapat jatah pemroses, proses berjalan sampai selesai.