Folyamat ütemezés az operációs rendszerben: Hosszú, közepes, rövid távú ütemező
⚡ Okos összefoglaló
A folyamatütemezés egy operációs rendszerfeladat, amely a folyamatokat készenléti, várakozó és futó állapotokban kezeli. CPU-időt rendel minden folyamathoz, lefoglalja a CPU-t, és hosszú távú, középtávú és rövid távú ütemezők használatával csökkenti a válaszidőt.

Mi az a folyamatütemezés?
Folyamat ütemezése egy operációs rendszerfeladat, amely különböző állapotú folyamatokat ütemez, például kész, várakozó és futó.
A folyamatütemezés lehetővé teszi az operációs rendszer számára, hogy minden folyamathoz egy időintervallumot rendeljen a CPU végrehajtásához. A folyamatütemező rendszer használatának másik fontos oka, 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 folyamatütemezési sorok segítenek minden egyes folyamatállapothoz és NYÁK-hoz külön sort fenntartani. Az összes azonos végrehajtási állapotú folyamat ugyanabba a sorba kerül. Ezért, amikor egy folyamat állapota módosul, a NYÁK-ját le kell választani a meglévő sorról, és vissza kell helyezni 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 látható:
- A téglalap egy sort jelképez.
- A kör jelöli az erőforrást.
- Egy nyíl jelzi a folyamat menetét.
- Minden új folyamat először a Készenléti várólistába kerül. A kész sorban várakozik, amíg végül végrehajtásra nem kerül. Itt az új folyamat a kész várólistába kerül, és addig vár, amíg végrehajtásra kiválasztják, vagy elküldik.
- Az egyik folyamathoz lefoglalták a CPU-t, és az végrehajtás alatt áll.
- A folyamatnak I/O kérést kell kiadnia.
- Ezután be kell helyezni az I/O várólistába.
- A folyamatnak létre kell hoznia egy új alfolyamatot.
- A folyamatnak meg kell várnia a befejezését.
- Egy megszakítás következtében erőszakkal el kell távolítani a CPU-ból. Miután a megszakítás befejeződött, vissza kell küldeni a kész várólistába.
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 várakoznak a végrehajtásra. A sorban minden bejegyzés egy adott folyamatra mutat.
Ütemezési célok
A folyamatütemezés fontos céljai a következők:
- 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őt más néven a munkaütemezőEz az ütemező szabályozza a programot, kiválasztja a folyamatokat a várakozási sorból, és betölti azokat a memóriába végrehajtásra. Emellett szabályozza a többszörös programozás mértékét is.
Az ilyen típusú ütemező fő célja azonban a feladatok, például a processzor és az I/O feladatok kiegyensúlyozott keverékének biztosítása, 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 cserepingLehetővé teszi a kicserélt folyamatok kezelését. Ebben az ütemezőben egy futó folyamat felfüggeszthető, ami I/O kérést küld.
Egy futó folyamat felfüggeszthető, ha I/O kérést küld. A felfüggesztett folyamat nem tud előrehaladni a befejezés felé. Annak érdekében, hogy a folyamatot eltávolítsuk a memóriából, és helyet szabadítsunk fel más folyamatoknak, a felfüggesztett folyamatot át kell helyezni egy másodlagos tárolóba.
Rövid távú ütemező
A rövid távú ütemezést más néven a 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 alapján. Ez segít kiválasztani a végrehajtásra kész folyamatok egy csoportjából a megfelelőket, és a CPU-t hozzárendelni az egyikhez. A diszpécser átadja a CPU feletti vezérlést 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ú munkarendezőt munkaütemezőnek is nevezik. | A rövid távú ütemezést CPU ütemezőnek is nevezik. | A középtávú ügyletet swapnak is nevezik.ping ütemező. |
| 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ésből és a memóriába való visszatöltését. | Csak azokat a folyamatokat választja ki, amelyek végrehajtásra kész állapotban vannak. | Segít visszaküldeni a folyamatokat a memóriába. |
| Teljes kontrollt kínál. | Kevesebb kontrollt kínál. | Csökkenti a többprogramozás szintjét. |
Mi az a Context switch?
Ez egy módszer a CPU állapotának tárolására/visszaállítására a NYÁK-ban, hogy a folyamat végrehajtása később ugyanarról a pontról folytatható legyen. A kontextusváltási módszer fontos a többfeladatos operációs rendszereknél.
