Megosztás a következőn keresztül:


Folyamatokról és szálakról

Minden folyamat biztosítja a program végrehajtásához szükséges erőforrásokat. A folyamatok virtuális címtérrel, végrehajtható kóddal, rendszerobjektumok nyitott leíróival, biztonsági környezettel, egyedi folyamatazonosítóval, környezeti változókkal, prioritási osztálysal, minimális és maximális munkakészlet-méretekkel és legalább egy végrehajtási szálal rendelkezik. Minden folyamat egyetlen szálból indul ki, amelyet gyakran elsődleges szálnak neveznek, de bármely szálból létrehozhat további szálakat.

A szál a végrehajtásra ütemezhető folyamat entitása. A folyamat összes szála osztozik a virtuális címtéren és a rendszererőforrásokon. Emellett minden szál fenntartja a kivételkezelőket, az ütemezési prioritást, a szál helyi tárolóját, az egyedi szálazonosítót és a rendszer által használt struktúrákat, amelyek segítségével a rendszer menti a szálkörnyezetet az ütemezésig. A szálkörnyezet tartalmazza a szál gépregisztrálási készletét, a kernelvermet, a szálkörnyezet blokkját és a felhasználói vermet a szál folyamatának címterében. A szálak saját biztonsági környezettel is rendelkezhetnek, amely az ügyfelek megszemélyesítéséhez használható.

A Microsoft Windows támogatja előzetes többfeladatos feldolgozást, amely azzal a hatással jár, hogy több folyamat különböző szálai egyidejűleg futnak. Többprocesszoros számítógépen a rendszer egyszerre annyi szálat képes végrehajtani, amennyi processzor található a számítógépen.

A feladatobjektumok lehetővé teszik a folyamatok csoportjainak egységként való kezelését. A feladatobjektumok elnevezéssel ellátott, biztonságos, megosztható objektumok, amelyek a hozzájuk társított folyamatok attribútumait szabályozzák. A feladatobjektumon végrehajtott műveletek hatással vannak a feladatobjektumhoz társított összes folyamatra.

Az alkalmazások a szálkészlet használatával csökkenthetik az alkalmazásszálak számát, és kezelhetik a feldolgozó szálakat. Az alkalmazások sorba rendezhetik a munkaelemeket, hozzárendelhetik a munkát a várakozási fogantyúkhoz, időzítő alapján automatikusan sorba rendezhetik, és összekapcsolhatják az I/O-val.

felhasználói módú ütemezési (UMS) egy egyszerű mechanizmus, amellyel az alkalmazások saját szálakat ütemezhetnek. Az alkalmazások felhasználói módban válthatnak az UMS-szálak között anélkül, hogy bevonnák a rendszerütemezőt, és visszanyerhetik a processzor irányítását, ha egy UMS-szál blokkolja a kernelt. Minden UMS-szál saját szálkörnyezettel rendelkezik ahelyett, hogy egyetlen szál szálkörnyezetét osztaná meg. Az, hogy képesek vagyunk szálak között váltani felhasználói módban, hatékonyabbá teszi az UMS-t, mint a szálcsoportok használata a rövid időtartamú munkafeladatok esetén, amelyekhez kevés rendszerhívás szükséges.

A szálas olyan végrehajtási egység, amelyet az alkalmazásnak manuálisan kell ütemeznie. Az ütemező szálak kontextusában futnak a fonalak. Minden szál több szálat is ütemezhet. A rostok általában nem biztosítanak előnyöket a jól megtervezett többszálú alkalmazásokkal szemben. A szálak használata azonban megkönnyíti a saját szálak ütemezésére tervezett alkalmazások portozását.

További információkért tekintse meg a következő témaköröket: