Gordeyev és

stve monolit nevezhetjük Windows 95/98 vagy Linux. Windows operációs rendszer kernel, nem tudunk változtatni, nem vagyunk elérhetővé teszi a forráskódot, és nincs program építeni (fordítására) ezt a magot. De abban az esetben, Linux tehetünk, hogy építsenek egy kernel, hogy meg kell, hogy tartalmazza azokat a szükséges szoftver modulok és a járművezetők, hogy úgy véljük, hogy célszerű felvenni a kernel (és nem fér hozzá a kernel).

Ellenőrző kérdések és feladatok

Kérdések tesztelni

1. Fejtse ki a különbség a fogalmak, mint a folyamat, és feladat.

2 Döntetlen diagramja folyamatállapotok, magyarázza az összes lehetséges átmenet egyik állapotból a másikba.

3 magyarázza a jelentését a következő kifejezések: feladat (feladat), folyamat (folyamat), menet (menet menet). Hogyan viszonyulnak egymáshoz?

4 Mert mi minden feladatot kapja a megfelelő leíró? Mely területeken általában megtalálható a leíró folyamat (feladat)? Mi az a „feladat keretében”?

5. Magyarázza a koncepció erőforrás. Miért van fogalma az élet egyik alapvető, ha figyelembe vesszük az operációs rendszer? Milyen fajtájú és típusú források ismersz?

6. Mit gondol: hány és milyen listákat jellemzőcsoport feladatok lehetnek a rendszerben? Hogy mit kell függenie ezt a számot?

7. Sorolja fel a fegyelem a szolgáltatás megszakadása; Elmagyarázzák, hogyan kell végrehajtani minden egyes ilyen tudományágak.

8. Mi célból OS bevezetett egy speciális rendszer modul, néha egy felügyelő megszakítani?

9. Mi a különbség egy visszatérő (re-bejárat), és újra megszakítható (újra be lehet hatolni) szoftver modul? Hogyan valósítják meg ezeket?

10. Mi az az előnyös szoftver modul? Miért nem hoz létre a többszörös programozásról operációs rendszer, ami nem lenne előnyös szoftver modulok?

2. FEJEZET Szervezet és a memória

Így a CPU és a memória a fő források esetében a több programot számítástechnika.

RAM - a legfontosabb erőforrás a számítógépes rendszerben, mert e nélkül (mint, sőt, anélkül CPU) nem végez semmilyen programot. Már jeleztük, hogy a memória egy megosztott erőforrásra. A kiválasztott memória allokációs mechanizmusok között egy processzor által végrehajtott jelentős mértékben függ és a rendszer kihasználtságát, és annak teljesítményét és képességeit, hogy a programozók használhatják, hogy saját programokat. terjesztési módszerek CPU időt is jelentősen befolyásolja a sebességet az egyes számítások és az általános hatékonyság a számítástechnikai rendszer.

A koncepció a folyamat (feladat) már tudjuk. Ebben a fejezetben, akkor nem próbálja szétválasztani a fogalmak eljárás (folyamat) és a patak (menet), hanem egy általános kifejezés, mint a feladat (feladat). Más szakaszok, kivéve, ha ez nem által meghatározott feladat vagy folyamatot kell érteni, gyakorlatilag egy és ugyanaz. Most fogunk beszélni szétválasztása CPU erőforrás, ezért a távú feladat tartalmazhat a koncepció menet (thread).

Így az operációs rendszer a következő funkciókat kezelésével kapcsolatos kihívások:

♦ létrehozását és törlését feladatok;

♦ tervezési és ütemezési feladatok;

♦ szinkronizációs feladatokat, biztosítva számukra a kommunikációs eszközöket.

Létrehozása és törlése feladatok végezzük kérésére a felhasználó vagy a feladatok magukat. A feladat egy új feladat. Ugyanakkor a folyamatok közötti vannak „kapcsolódó” kapcsolat. Generáló feladat az úgynevezett „őse”, „szülő”, és létrehozott - „leszármazottja”, „fia”, vagy „gyermek feladatokat.” „Őse” felfüggesztheti, vagy távolítsa el a gyermek feladatait, míg a „leszármazottja” nem tudja ellenőrizni „őse”.

Az alapvető megközelítés a szervezet egy adott eljárás folyamat-menedzsment, biztosítva az erőforrások hatékony be- vagy végrehajtó milyen műveleteket másik cél szervezni ocherodey folyamatokat és erőforrásokat.

Egyértelmű, hogy a források elosztását befolyásolja az egyedi igényeinek a feladatokat, amelyeket el kell végezni párhuzamosan. Más szóval, akkor olyan helyzetek, amikor lehetetlen hatékonyan forrásokat, hogy azok nem tétlen. Például az összes futó folyamatot igényel eszköz soros hozzáférést. De mivel, mint már tudjuk, hogy nem lehet elosztani a párhuzamosan futó folyamatokat, a folyamatokat meg kell várni sokáig az ő ocherodi. Így a hiánya egy erőforrás vezethet arra, hogy hosszú ideig nem fogja használni, és sok más források.

Ha veszünk egy sor folyamatok, amelyek nem versenyeznek egymással a nem megosztott erőforrások párhuzamos végrehajtás, akkor valószínű, hogy a folyamatokat lehet végrehajtani gyorsabb (hiánya miatt a további elvárások), és a rendelkezésre álló források a rendszer hatékonyabb felhasználása. Tehát, van egy probléma a válogatás a sok folyamat, hogy amikor tisztázásához

Állapot Zárt fognak beavatkozni a lehető legkevesebbet, mert a rendelkezésre álló források a rendszerben. Ezt a problémát nevezik ütemezése számítási folyamatokat.

A feladat a tervezési folyamatok történtek nagyon hosszú ideig - az első tétel a tervezés az OS csomag feladatot kell elvégezni a számítógépen, és a forrásait optimálisan. Jelenleg a feladat sürgőssége nem olyan nagy. Előtérbe sokáig ki a probléma dinamikus (vagy rövid távú) tervezés, azaz a jelenlegi leginkább a források hatékony elosztását, amely akkor szinte minden esetben. dinamikus ütemezési feladatot 1 hívták ütemezés.

Egyértelmű, hogy a tervezés sokkal kisebb, mint a probléma a jelenlegi erőforrás-allokáció a már futó folyamatok és szálak. A fő különbség a hosszú távú és rövid távú tervezők, hogy indítson jelentése: a rövid távú tervező, például lehet futtatni minden 30 vagy 100 ms, a hosszú távú - egy alkalommal néhány percig (vagy gyakrabban, sok múlik a teljes időtartama az oldat felhasználói feladatok).

Hosszú távú ütemező dönti el, melyik a folyamatokat, amelyek a bemeneti ocherodi, át kell tenni a sorban kész folyamatok esetén a memória felszabadítása. Ő választja ki eljárásokat a bemeneti ocherodi hogy hozzon létre egy heterogén keveréke többszörös programozásról. Ez azt jelenti, hogy ocherodi futtatható folyamatok legyen - különböző arányban - a folyamatok orientált bemenet / kimenet, és a folyamatok orientált elsőbbséget munkát a CPU.

A rövid távú ütemező dönti el, hogy melyik feladat ocherodi futásra kész, hogy át végrehajtásra. A legtöbb modern operációs rendszerek, amelyekkel szembesülünk, a hosszú távú ütemező hiányzik.

1 Sajnos itt van egy terminológiai ellentmondás. Tulajdonképpen felügyelő modulok felelősek ütemezési feladatokat, gyakran nevezik a tervezők (sheduler). Valójában azonban beszélünk ugyanaz a memória tervező vagy bármely más felelős egységek dinamikus erőforrás-allokáció, tartsa szem előtt, hogy ezek ütemező ütemezést. Végül néha nevezik rövid távú diszpozíciós.

Tervezés és ütemezés folyamatok és feladatok

Először is, meg kell jegyezni, hogy ha figyelembe vesszük a tervezési stratégiákat, mint általában, van egy kérdés a rövid távú tervezés, azaz a diszpécser. A hosszú távú tervezés, mint már említettük, a válogatás számítási folyamatokat, amelyek kisebb valószínűséggel versenyeznek a források a számítógépes rendszer.

tervezési stratégia meghatározza, hogy milyen folyamatok tervezünk végezni annak érdekében, hogy elérjük a célt. A nagyszámú különböző folyamatok szelekciós politika, ami kell, hogy a processzort. Közülük először többek között az alábbi stratégiákat:

♦ lehet befejezni számítás (számítási eljárás) ugyanabban a sorrendben, ahogy indult;

♦ a rövidebb eljárások;

♦ minden felhasználót (felhasználói folyamat) ugyanazokat a szolgáltatásokat, beleértve az azonos késleltetést.

Amikor az emberek beszélnek a stratégia a szolgáltatás, mindig szem előtt tartani, a koncepció a folyamat, hanem a koncepció a probléma, mert a folyamat, mint már tudjuk, állhat több szálat (feladatok).

Amikor az emberek beszélnek ütemezés, mindig explicit vagy implicit módon van véve a koncepció feladatok (szálak). Ha az operációs rendszer nem támogatja a mechanizmus a szálak, akkor lehet cserélni a fogalom a probléma fogalmát folyamatot. Mivel ezeket a kifejezéseket gyakran használják ebben az értelemben, kénytelenek leszünk használni a „folyamat” szinonimájaként a „feladat”.

Számos szabályok (ütemezés tudományok), amelynek keretében képződik egy listát (queue) futtatható feladatokat. Két átfogó szolgáltatási osztályok tudományágak - besprioritetnye és a prioritást. Amikor besprioritetnom karbantartási feladat kiválasztás történik

Gordeyev és

meghatározott sorrendben anélkül, hogy figyelembe véve relatív fontossága, valamint szolgálati idő. elővásárlási jogot, hogy bekerüljön a végrehajtás állapot feltétele, hogy a végrehajtás a kiemelt feladatok az egyes tudományágak szolgáltatás. Listája szolgáltatás szakterületek és azok besorolása ábrán adtuk meg. 2.1.

Ábra. 2.1. szállítási fegyelem