Folyamat ütemezés az operációs rendszerben: Hosszú, közepes, rövid távú ütemező
Mi az a folyamatütemezés?
Folyamat ütemezése egy operációs rendszer-feladat, amely különböző állapotú folyamatokat ütemez, mint például a készenlét, a várakozás és a futás.
A folyamatütemezés lehetővé teszi az operációs rendszer számára, hogy minden folyamathoz hozzárendeljen egy időintervallumot a CPU végrehajtásához. A folyamatütemező rendszer használatának másik fontos oka az, hogy folyamatosan lefoglalja a CPU-t. Ez lehetővé teszi a programok minimális válaszidejének elérését.
Folyamat ütemezési sorok
A Process Scheduling Queues segítségével különálló sort tarthat fenn minden egyes folyamatállapothoz és PCB-hez. Az azonos végrehajtási állapotú folyamatok ugyanabba a sorba kerülnek. Ezért, amikor egy folyamat állapotát módosítják, a PCB-jét le kell választani a meglévő sorról, amely visszakerül az új állapotsorba.
Az operációs rendszer várólisták három típusa:
- Munkasor – Segít az összes folyamat eltárolásában a rendszerben.
- Kész sor – Ez a fajta sor segít beállítani a fő memóriában lévő összes folyamatot, amely készen áll és végrehajtásra vár.
- Eszközsorok – Ez egy I/O eszköz hiánya miatt blokkolt folyamat.
A fenti ábrán
- A téglalap egy sort jelképez.
- A kör az erőforrást jelöli
- A nyíl a folyamat menetét jelzi.
- Minden új folyamat először a Ready queue-ba kerül. A készenléti sorban vár, amíg végül fel nem dolgozzák a végrehajtásra. Itt az új folyamat a készenléti sorba kerül, és megvárja, amíg végrehajtásra kiválasztásra kerül, vagy elküldik.
- Az egyik folyamathoz hozzá van rendelve a CPU, és az fut
- A folyamatnak I/O kérést kell kiadnia
- Ezután az I/O-sorba kell helyezni.
- A folyamatnak új alfolyamatot kell létrehoznia
- A folyamatnak meg kell várnia a befejezését.
- Erőteljesen el kell távolítania a CPU-ból, ennek eredményeként a megszakítás. A megszakítás befejezése után vissza kell küldeni a készenléti sorba.
Kétállapotú folyamatmodell
A kétállapotú folyamatmodellek a következők:
- Futó állapot
- Nem futó állapot
futás
A Operadolog rendszer, amikor új folyamat épül fel, az bekerül a rendszerbe, amelynek futnia kell.
Nem fut
A nem futó folyamatok egy sorban maradnak, amely arra vár, hogy sorra kerüljön a végrehajtás. A sor minden bejegyzése egy adott folyamatra mutató pont.
Ütemezési célok
Itt vannak a folyamat ütemezésének fontos céljai
- Maximalizálja az interaktív felhasználók számát elfogadható válaszidőn belül.
- Érje el az egyensúlyt a válaszadás és a felhasználás között.
- Kerülje el a határozatlan időre halasztást, és érvényesítse a prioritásokat.
- Hivatkoznia kell a kulcsfontosságú erőforrásokat tároló folyamatokra is.
Folyamatütemezők típusa
Az ütemező egy olyan rendszerszoftver, amely lehetővé teszi a folyamatütemezés kezelését.
Főleg háromféle folyamatütemező létezik:
- Hosszú távú ütemező
- Rövid távú ütemező
- Középtávú ütemező
Hosszú távú ütemező
A hosszú távú ütemező más néven a munkaütemező. Ez az ütemező szabályozza a program- és kiválasztási folyamatot a sorból, és betölti a memóriába végrehajtáshoz. Szabályozza a többszörös programozás mértékét is.
Az ilyen típusú ütemezők fő célja azonban a feladatok – például a processzor, az I/O feladatok – kiegyensúlyozott keverékét kínálni, amely lehetővé teszi a többprogramozás kezelését.
Középtávú ütemező
A középtávú ütemezés fontos része csere. Lehetővé teszi a kicserélt folyamatok kezelését. Ebben az ütemezőben egy futó folyamat felfüggeszthető, ami I/O kérést ad.
Egy futó folyamat felfüggeszthető, ha I/O kérést ad. A felfüggesztett folyamatok nem tud előrehaladni a befejezés felé. Annak érdekében, hogy a folyamatot eltávolítsuk a memóriából, és helyet hagyjunk más folyamatoknak, a felfüggesztett folyamatot át kell helyezni a másodlagos tárolóba.
Rövid távú ütemező
A rövid távú ütemezést más néven CPU ütemező. Ennek az ütemezőnek a fő célja a rendszer teljesítményének növelése a beállított kritériumok szerint. Ez segít kiválasztani a végrehajtásra kész folyamatok csoportjából, és lefoglalja a CPU-t az egyikhez. A diszpécser átadja a CPU vezérlését a rövid távú ütemező által kiválasztott folyamatnak.
Az ütemezők közötti különbség
Hosszú távú vs. Rövid távú vs. Középtávú
Hosszútávú | Rövid időszak | Medium-Term |
---|---|---|
A hosszú távú munkaütemezőnek is nevezik | A rövid távú CPU ütemezőként is ismert | A középtávot csereütemezőnek is nevezik. |
Az időmegosztásos rendszerben vagy hiányzik, vagy minimális. | Az időmegosztási sorrendben jelentéktelen. | Ez az ütemező az időmegosztási rendszerek egyik eleme. |
A sebesség kisebb a rövid távú ütemezőhöz képest. | A gyorsaság a leggyorsabb a rövid és középtávú ütemezőhöz képest. | Közepes sebességet kínál. |
Lehetővé teszi a folyamatok kiválasztását a betöltésekből, és visszatárolja a memóriába | Csak azokat a folyamatokat választja ki, amelyek a végrehajtás kész állapotában vannak. | Segít visszaküldeni a folyamatot a memóriába. |
Teljes irányítást biztosít | Kevesebb irányítást biztosít | Csökkentse a többprogramozás szintjét. |
Mi az a Context switch?
Ez egy módszer a CPU vagy a PCB állapotának tárolására/visszaállítására a PCB-n. Így a folyamat végrehajtása ugyanattól a ponttól egy későbbi időpontban folytatható. A kontextusváltási módszer fontos a többfeladatos operációs rendszerhez.
Összegzésként
- A folyamatütemezés egy olyan operációs rendszer-feladat, amely ütemezi a különböző állapotú folyamatokat, mint például a készenlét, a várakozás és a futás.
- A kétállapotú folyamatmodellek a következők: 1) Futó és )Nem fut
- A folyamatütemezés maximalizálja az interaktív felhasználók számát, elfogadható válaszidőn belül.
- Az ütemező egy olyan rendszerszoftver, amely lehetővé teszi a folyamatütemezés kezelését.
- Az ütemező három típusa: 1) hosszú távú 2) rövid távú 3) középtávú
- A hosszú távú ütemező szabályozza a program- és kiválasztási folyamatot a sorból, és betölti a memóriába végrehajtáshoz.
- A középtávú ütemező lehetővé teszi a kicserélt folyamatok kezelését.
- A rövid távú ütemező fő célja a rendszer teljesítményének növelése a beállított kritériumok szerint
- A hosszú távot munkaütemezőnek is nevezik, míg a rövid távot más néven CPU ütemező, a középtávot pedig csereütemezőnek is nevezik.