Proses adalah program dalam pelaksanaan. Komputer harus melakukan banyak tugas pada masa yang sama. Oleh itu, CPU perlu mendapatkan proses dan melaksanakannya. Kadang -kadang perlu melaksanakan beberapa proses daripada proses lain. Pada ketika itu, proses berjalan terganggu, dan CPU diperuntukkan kepada proses baru. Setelah tugas selesai, CPU diperuntukkan kembali ke proses sebelumnya. Penjadualan mengikut mekanisme ini dikenali sebagai penjadualan preemptive. Sekiranya proses yang sedang berjalan, tidak boleh terganggu dan wajib untuk melaksanakan proses yang sedang berjalan, maka ia dikenali sebagai penjadualan yang tidak dapat dipertahankan. Artikel ini membincangkan perbezaan antara penjadualan preemptive dan non -preemptive dalam sistem operasi. Penjadualan Preemptive adalah mekanisme penjadualan proses di mana proses yang dapat terganggu oleh proses lain di tengah -tengah pelaksanaannya. Penjadualan yang tidak berprofil adalah mekanisme penjadualan proses di mana satu proses memulakan pelaksanaan hanya setelah proses sebelumnya berakhir. Itulah Perbezaan utama antara Penjadualan Preemptive dan Non Preemptive di OS.
1. Gambaran Keseluruhan dan Perbezaan Utama
2. Apakah penjadualan preemptive di OS
3. Apakah penjadualan yang tidak berpengalaman dalam OS
4. Persamaan antara penjadualan preemptive dan tidak preemptive dalam OS
5. Perbandingan sampingan - Preemptive vs Penjadualan Non -Preemptive dalam OS dalam Bentuk Tabular
6. Ringkasan
Penjadualan Round Robin adalah contoh penjadualan preemptive. Setiap proses mendapat sedikit masa CPU. Biasanya 10 hingga 100 milisaat. Unit data kecil ini juga dikenali sebagai kuantum masa. Selepas masa ini telah berlalu, proses itu telah dipulihkan dan ditambah pada akhir barisan siap. Anggapkan bahawa terdapat 4 proses seperti P1, P2, P3 dan P4. CPU pecah masa dalam milisaat adalah seperti berikut. Kuantum masa adalah 20.
Rajah 01: Contoh penjadualan robin pusingan
Proses P1 dilaksanakan sehingga 20. Terdapat lagi 33ms lagi. Kemudian P2 melaksanakan. Oleh kerana kuantum masa adalah 20 dan masa yang diperlukan P2 adalah 17ms, P2 akan dilaksanakan untuk 17ms. Jadi, proses P2 selesai. Maka peluang diberikan kepada P3. Ia akan dilaksanakan selama 20ms. Selebihnya adalah 48ms. Maka P4 akan dilaksanakan selama 20ms. Ia mempunyai 4ms untuk menyelesaikan proses keseluruhan. Sekali lagi, P1 akan dilaksanakan untuk 20ms. Ia mempunyai 13ms lagi untuk menyelesaikan proses selesai. Perubahan diberikan kepada P3. Ia akan dilaksanakan untuk 20ms, dan ia mempunyai 28ms lagi untuk menyelesaikan sepenuhnya. P4 melaksanakan. Ia hanya mempunyai 4ms. Oleh itu, P4 melengkapkan pelaksanaan. P2 dan P4 sudah selesai. Proses baki adalah P1 dan P3. Peluang diberikan kepada P3. Ia mempunyai 13ms untuk disiapkan, jadi ia selesai. Sekarang satu -satunya proses yang tinggal adalah P3. Ia mempunyai 28ms untuk diselesaikan. Jadi P3 akan berjalan selama 20ms. Selebihnya adalah 8ms. Semua proses lain telah selesai melaksanakan. Oleh itu, sekali lagi 8ms P3 akan melaksanakan. Begitu juga, setiap proses mendapat peluang untuk melaksanakan.
Pertama pertama kali dijadwakan (FCFS) penjadualan boleh diambil sebagai contoh penjadualan yang tidak berpengalaman. Proses yang meminta pertama diperuntukkan kepada CPU terlebih dahulu. Penjadualan ini mudah diuruskan oleh barisan pertama dalam barisan pertama (FIFO). Sekiranya ada proses yang datang dengan teratur sebagai P1, P2 dan P3, maka peluangnya pertama kali diberikan kepada P1. Setelah selesai, P2 akan melaksanakan. Apabila P2 selesai, P3 akan melaksanakan. Anggapkan bahawa terdapat 3 proses seperti P1, P2 dan P3 dengan masa pecah CPU dalam milisaat seperti berikut.
Rajah 02: Contoh penjadualan FCFS
Menurut perkara di atas, P1 akan melaksanakan. Setelah selesai, proses P2 dilaksanakan untuk 3ms. Sekarang proses selebihnya ialah P3. Kemudian ia akan melaksanakan. Masa menunggu untuk P1 adalah sifar. Proses P2 terpaksa menunggu 24ms, dan proses P3 terpaksa menunggu 27ms. Sekiranya proses tiba mengikut urutan P2, P3 dan P1 maka P2 akan selesai terlebih dahulu. P3 seterusnya akan selesai, dan akhirnya, P1 akan selesai.
Penjadualan Preemptive vs Non -Prreemtive di OS | |
Penjadualan Preemptive adalah mekanisme penjadualan proses di mana proses dapat terganggu oleh proses lain di tengah -tengah pelaksanaannya. | Penjadualan yang tidak berprofil adalah mekanisme penjadualan proses di mana satu proses memulakan pelaksanaan hanya setelah proses sebelumnya berakhir. |
Gangguan proses | |
Dalam penjadualan preemptive, proses boleh terganggu. | Dalam penjadualan yang tidak berpengalaman, proses boleh terganggu. |
Penggunaan CPU | |
Dalam penjadualan preemptive, penggunaan CPU lebih tinggi daripada penjadualan yang tidak dipulihkan. | Dalam penjadualan yang tidak berpengalaman, penggunaan CPU adalah minimum berbanding dengan penjadualan preemptive. |
Fleksibiliti | |
Penjadualan Preemptive adalah fleksibel. | Penjadualan yang tidak berprofil tidak fleksibel. |
Terdapat banyak proses yang berjalan di komputer. Apabila setiap proses dijalankan, CPU diperuntukkan kepada proses tertentu. Kadang -kadang, perlu menghentikan pelaksanaan proses semasa dan memberi keutamaan kepada proses lain. Mekanisme penjadualan proses boleh menjadi preemptive atau tidak berpengalaman. Penjadualan Preemptive adalah mekanisme penjadualan proses melalui proses yang dapat terganggu oleh proses lain di tengah -tengah pelaksanaannya. Penjadualan yang tidak dijangkiti adalah mekanisme penjadualan proses walaupun satu proses memulakan pelaksanaan hanya setelah proses sebelumnya berakhir. Ini adalah perbezaan antara penjadualan preemptive dan tidak preemptive dalam OS.
Anda boleh memuat turun versi PDF artikel ini dan menggunakannya untuk tujuan luar talian mengikut nota petikan. Sila muat turun versi PDF di sini: Perbezaan antara penjadualan preemptive dan non -preemptive di OS
1.Apakah penjadualan pra-pengkelasan dan tidak terpilih?. Terdapat di sini
2.Titik, tutorial. "Algoritma penjadualan sistem operasi.", Tutorial Titik. 8 Jan. 2018. Terdapat di sini
3."Apakah istilah pra-pengkhianatan dan tidak preemptive dalam konteks OS ?"Geeksforgeeks Q & A. Terdapat di sini