Evaluasi algoritma dalam Sistem Operasi
Evaluasi algoritma dalam Sistem Operasi
Ada sejumlah algoritma penjadwalan dan strategi dalam sistem operasi. Pilihan
algoritma tersebut sangat bergantung pada kriteria yang paling utama. Setelah ada algoritma
yang dipilih, maka harus dievaluasi. Berikut adalah beberapa cara untuk mengevaluasi
sebuah algoritma:
1. Deterministic Modeling:
Mengambil beban kerja yang telah ditentukan (set dari proses) dan menentukan
kinerja algoritma tergantung pada beban kerja tersebut. Bentuk evaluasi tersebut sederhana
dan dapat dilakukan dengan cepat. Namun, hal ini sangat tidak umum. Kami mungkin akan ft
ide yang sama sekali berbeda tentang kinerja algoritma jika kita memilih yang berbeda dari
proses.
Deterministic Modeling:
Using FCFS scheduling
Process
P1
P2
P3
P4
P5
Deterministic Modeling:
Using nonpreemptive SJF scheduling
Process
P1
P2
P3
P4
P5
Burst Time
10
29
3
7
12
Burst Time
10
29
3
7
12
Deterministic Modeling:
Using round robin scheduling (Time quantum = 10ms)
Process
P1
P2
P3
P4
P5
Burst Time
10
29
3
7
12
2. Queuing Model:
Dengan menggunakan metode queuing mode kita bisa memeriksa ledakan distribusi
dari CPU dan I / O. Kita bisa menerapkan rumus dan menghitung satu dari tiga hal.
Rata-rata panjang antrian
Waktu tunggu rata-rata antrian
Rata-rata tingkat kedatangan
Pendekatan ini memang memiliki beberapa keterbatasan. Sebagai contoh, hasilnya mungkin
sangat tidak tepat karena mereka bergantung pada perkiraan sistem yang sebenarnya.
3 Simulasi:
Banyak proses yang diperlukan untuk mensimulasikan sebuah sistem operasi.
Proses tersebut harus melihat orang-orang yang menggunakan sistem operasi itu sendiri
dengan lebih sulit. simulasi mungkin memakan waktu lama untuk diselesaikan. Untuk hasil
yang lebih akurat, mungkin perlu menggunakan informasi proses dari sistem nyata.
4: Implementasi:
Satu-satunya cara untuk menguji sistem operasi adalah dengan menulis kode dan
menjalankannya. Namun, pendekatan ini juga memiliki beberapa kendala :
Pendekatan menggunakan metode ini sangatlah mahal.
Kesulitan lain juga terdapat pada lingkungan di mana algoritma yang digunakan akan
berubah.
program baru akan ditulis daengan jenis baru dari masalah yang ditangani
lingkungan akan berubah sebagai hasil dari kinerja scheduler
Jika proses singkat yang diutamakan , maka pengguna bisa memecahkan proses
yang lebih besar ke dalam set proses yang lebih kecil
Jika proses interaktif yang diutamakan di atas proses non - interaktif , maka
pengguna dapat beralih ke penggunaan interaktif
Pendekatan yang paling fleksibel adalah mereka yang dapat mengubah manajer sistem
atau diubah/diset oleh pengguna sehingga mereka dapat menyetel aplikasi tertentu.
Sebagai contoh, sebuah tempat kerja yang menggunakan aplikasi grafis high-end
mungkin memiliki penjadwalan kebutuhan yang berbeda dari orang-orang yang
menggunakan web server atau file server.
Pendekatan lain adalah dengan menggunakan API ( POSIX , WinAPI , Java ) yang
mengubah prioritas proses suatu sistem atau aplikasi tertentu yang sering tidak
menghasilkan peningkatan kinerja dalam situasi yang lebih umum.
Ada sejumlah algoritma penjadwalan dan strategi dalam sistem operasi. Pilihan
algoritma tersebut sangat bergantung pada kriteria yang paling utama. Setelah ada algoritma
yang dipilih, maka harus dievaluasi. Berikut adalah beberapa cara untuk mengevaluasi
sebuah algoritma:
1. Deterministic Modeling:
Mengambil beban kerja yang telah ditentukan (set dari proses) dan menentukan
kinerja algoritma tergantung pada beban kerja tersebut. Bentuk evaluasi tersebut sederhana
dan dapat dilakukan dengan cepat. Namun, hal ini sangat tidak umum. Kami mungkin akan ft
ide yang sama sekali berbeda tentang kinerja algoritma jika kita memilih yang berbeda dari
proses.
Deterministic Modeling:
Using FCFS scheduling
Process
P1
P2
P3
P4
P5
Deterministic Modeling:
Using nonpreemptive SJF scheduling
Process
P1
P2
P3
P4
P5
Burst Time
10
29
3
7
12
Burst Time
10
29
3
7
12
Deterministic Modeling:
Using round robin scheduling (Time quantum = 10ms)
Process
P1
P2
P3
P4
P5
Burst Time
10
29
3
7
12
2. Queuing Model:
Dengan menggunakan metode queuing mode kita bisa memeriksa ledakan distribusi
dari CPU dan I / O. Kita bisa menerapkan rumus dan menghitung satu dari tiga hal.
Rata-rata panjang antrian
Waktu tunggu rata-rata antrian
Rata-rata tingkat kedatangan
Pendekatan ini memang memiliki beberapa keterbatasan. Sebagai contoh, hasilnya mungkin
sangat tidak tepat karena mereka bergantung pada perkiraan sistem yang sebenarnya.
3 Simulasi:
Banyak proses yang diperlukan untuk mensimulasikan sebuah sistem operasi.
Proses tersebut harus melihat orang-orang yang menggunakan sistem operasi itu sendiri
dengan lebih sulit. simulasi mungkin memakan waktu lama untuk diselesaikan. Untuk hasil
yang lebih akurat, mungkin perlu menggunakan informasi proses dari sistem nyata.
4: Implementasi:
Satu-satunya cara untuk menguji sistem operasi adalah dengan menulis kode dan
menjalankannya. Namun, pendekatan ini juga memiliki beberapa kendala :
Pendekatan menggunakan metode ini sangatlah mahal.
Kesulitan lain juga terdapat pada lingkungan di mana algoritma yang digunakan akan
berubah.
program baru akan ditulis daengan jenis baru dari masalah yang ditangani
lingkungan akan berubah sebagai hasil dari kinerja scheduler
Jika proses singkat yang diutamakan , maka pengguna bisa memecahkan proses
yang lebih besar ke dalam set proses yang lebih kecil
Jika proses interaktif yang diutamakan di atas proses non - interaktif , maka
pengguna dapat beralih ke penggunaan interaktif
Pendekatan yang paling fleksibel adalah mereka yang dapat mengubah manajer sistem
atau diubah/diset oleh pengguna sehingga mereka dapat menyetel aplikasi tertentu.
Sebagai contoh, sebuah tempat kerja yang menggunakan aplikasi grafis high-end
mungkin memiliki penjadwalan kebutuhan yang berbeda dari orang-orang yang
menggunakan web server atau file server.
Pendekatan lain adalah dengan menggunakan API ( POSIX , WinAPI , Java ) yang
mengubah prioritas proses suatu sistem atau aplikasi tertentu yang sering tidak
menghasilkan peningkatan kinerja dalam situasi yang lebih umum.