Dalam sistem operasi moden, biasanya terdapat lebih banyak proses yang berjalan daripada ada CPU yang tersedia untuk menjalankannya.
Penjadualan merujuk kepada cara proses diberikan untuk menjalankan CPU yang tersedia.
Tugasan ini dijalankan oleh perisian yang dikenali sebagai penjadual atau kadangkala disebut sebagai penghantar.
Aktiviti penjadualan boleh dipecah menjadi fungsi yang berasingan
Penjadualan jangka panjang, sederhana dan jangka pendek
Nama itu mencerminkan masa relatif yang mana fungsi-fungsi ini dilakukan
Penjadualan menjejaskan prestasi sistem
Kerana ia menentukan proses mana yang akan menunggu dan yang akan berkembang
Penjadual berkenaan terutamanya dengan:
- Penggunaan CPU - untuk menjaga CPU serendah mungkin.
Lagi tinggi lagi bagus.
- CPU kena buat kerja secara maksimum - Pemprosesan - bilangan proses yang melengkapkan pelaksanaannya setiap unit masa.
Tinggi lagi bagus. - Pemulihan - jumlah masa antara penyerahan proses dan penyempurnaannya.
Lagi cepat lagi bagus. - Masa menunggu - jumlah masa proses telah menunggu dalam barisan siap.
Rendah lagi bagus. - Masa tindak balas - jumlah masa yang diambil dari apabila permintaan dihantar sehingga respon pertama dihasilkan.
Rendah lagi bagus. - Keadilan - Masa CPU yang sama untuk setiap benang
Fungsi penjadualan sepatutnya
Berkongsi masa secara adil di kalangan proses
Cegah kelaparan proses
Gunakan pemproses dengan cekap
Mempunyai overhead yang rendah - kurangkan kerja 2 tambahan
Mengutamakan proses apabila perlu (contohnya tarikh akhir real time)
- patut ada priority.
Penjadualan Kerja (Penjadualan jangka panjang) - LTS
Keputusan untuk menambah kepada kumpulan proses ke
dilaksanakan (proses aktif)
Dilakukan apabila proses baru dibuat
Penjadualan jangka sederhana - MTS
Keputusan untuk menambah bilangan proses yang ada
sebahagian atau sepenuhnya dalam memori utama (kini aktif)
sebahagian daripada fungsi swap
Penjadualan CPU (Penjadualan jangka pendek) - STS
Keputusan mengenai proses yang sedia ada (proses siap) akan dilaksanakan oleh pemproses
Penjadualan I / O - (akan dibincangkan di bab I / O)
Keputusan mengenai permintaan I / O yang menunggu proses itu akan ditangani oleh peranti I / O yang tersedia
Penjadual kerja menentukan program mana yang dimasukkan ke dalam sistem untuk diproses.
Mengawal tahap penggambaran multiprogramming.
yakni: sama ada jumlah proses yang tinggi atau rendah akan dilaksanakan secara serentak
Tentukan bagaimana untuk memecah dan mengendalikan proses intensif CPU IO dan intensif
Setelah dimasukkan, pekerjaan atau program menjadi proses
biasanya ditambahkan ke barisan READY untuk STS
Dalam sesetengah sistem, tambah kepada giliran Sedia / Suspend untuk MTS
Dalam OS moden, LTS memastikan bahawa proses masa sebenar mendapatkan masa CPU yang cukup untuk menyelesaikan tugas mereka
Jika tidak, GUI lambat
LTS penting dalam sistem berskala besar seperti sistem pemprosesan batch, kluster komputer, superkomputer dan ladang
Malah gunakan penjadual kerja tujuan khas selain yang ada dalam OS
Pekerjaan yang baru diserahkan diset ke cakera dan diadakan dalam giliran / kerja giliran.
LTS kemudian membuat proses dari giliran ini. Dua keputusan yang perlu dilakukan oleh LTS:
Untuk menambah satu atau lebih proses
Didorong oleh tahap multiprogramming yang dikehendaki untuk memberikan perkhidmatan yang memuaskan kepada set proses semasa.
Untuk meningkatkan tahap multiprogramming, mengakui lebih banyak proses, tetapi mengakibatkan masa yang kurang untuk setiap proses kerana proses lebih bersaing untuk jumlah masa yang sama cpu
Boleh menghadkan darjah multiprogramming untuk menyediakan perkhidmatan yang lebih baik kepada set proses semasa
Kerja yang mana untuk beralih kepada proses
Mula-mula Pertama Melayani Pertama atau bergantung pada kriteria tertentu seperti keutamaan, masa pelaksanaan yang diharapkan dan keperluan I / O.
Contohnya. Simpan gabungan CPU yang terikat (terutamanya melakukan kerja pengkomputeran) dan proses terikat I / O (menghabiskan lebih banyak masa menggunakan peranti I / O).
Permintaan proses dijana apabila pengguna cuba menyambung ke sistem
OS akan menerima semua pengguna yang dibenarkan sehingga sistem tepu.
Apabila tepu, maklumkan pengguna yang berpotensi untuk mencuba lagi kemudian
Sebahagian daripada fungsi swap
Penjadual jangka sederhana buat sementara waktu
mengalihkan proses dari ingatan utama dan menempatkannya pada ingatan menengah (seperti pemacu cakera) - bertukar-tukar keluar
atau sebaliknya - bertukar-masuk
Swap-in berdasarkan keperluan untuk menguruskan darjah multiprogramming
MTS digunakan untuk menambah bahagian proses yang sudah ada di dalam memori supaya ia dapat terus berjalan.
memutuskan mana yang sedia ada, dalam proses memori (dalam giliran siap) akan dilaksanakan (diperuntukkan CPU) seterusnya
Buat keputusan (melaksanakan) paling kerap dibandingkan dengan LTS dan MTS
Penjadual ini boleh
preemptive
ia mampu menghilangkan proses secara paksa dari CPU apabila ia memutuskan untuk memperuntukkan CPU itu ke proses lain
bukan preemptive
(juga dikenali sebagai "sukarela" atau "koperasi"), di mana penjadual tidak dapat "memaksa" proses dari CPU.
STS dipanggil setiap kali
satu peristiwa berlaku yang mungkin menyebabkan penggantungan proses semasa
atau yang mungkin memberi peluang untuk mengecilkan proses sedang berjalan yang memihak kepada yang lain.
Contohnya. Penggantungan jam, gangguan I / O, Panggilan Sistem Operasi, isyarat (semafor)
No comments:
Post a Comment