Operációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok:

Hasonló dokumentumok
Operációs rendszerek. Az NT folyamatok kezelése

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Előadás_#11. Előadás_11-1 -

Matematikai és Informatikai Intézet. 4. Folyamatok

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Operációs rendszerek III.

Operációs rendszerek. Az NT memóriakezelése

Operációs rendszerek. Folyamatok kezelése a UNIX-ban

Uniprogramozás. várakozás. várakozás. Program A. Idő. A programnak várakoznia kell az I/Outasítások végrehajtására mielőtt továbbfuthatna

2. Folyamatok. Operációs rendszerek. Folyamatok. Bevezetés Folyamatkezelés multiprogramozott rendszerekben. Folyamatok modellezése

Operációs rendszerek. Windows NT. A Windows NT

Operációs rendszerek. A Windows NT felépítése

Elosztott rendszerek

Operációs rendszerek. A Windows NT

A Windows NT tulajdonságai. Operációs rendszerek. Az NT története. Az NT története. Az NT felépítése. Az NT felépítése

(kernel3d vizualizáció: kernel245_graph.mpg)

Vé V g é r g e r h e a h j a tá t s á i s s z s ál á ak a Runnable, Thread

Operációs rendszerek

Az operációs rendszer szerkezete, szolgáltatásai

OPERÁCIÓS RENDSZEREK 1. PROCESSZKEZELÉS

A mai program OPERÁCIÓS RENDSZEREK. A probléma. Fogalmak. Mit várunk el? Tágítjuk a problémát: ütemezési szintek

Operációs rendszerek. Bemutatkozás

DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1

Konkurens TCP Szerver

Az interrupt Benesóczky Zoltán 2004

Feladatok (task) kezelése multiprogramozott operációs rendszerekben

Előadás_#12. Előadás_12-1 -

Windows ütemezési példa

Concurrency in Swing

Operációs rendszerek Folyamatok 1.1

Utolsó módosítás:

UNIX ütemezése. Operációs rendszerek MINB240 UNIX, Windows NT ütemezése Holtpontkezelés. Algoritmus követelményei. UNIX ütemezés jellemzése

OPERÁCIÓS RENDSZEREK. Célkitűzések, tárgyfelépítés. Módszerek. OS fogalom, struktúrák. 2005/2006. tanév II. félév Dr. Vadász Dénes

OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc -

Architektúra, megszakítási rendszerek

386 processzor címzés

C# Szálkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés / 21

Kölcsönös kizárás, atomicitás, szemafor.

Operációs Rendszerek II.

Operációs Rendszerek II.

Szenzorhálózatok programfejlesztési kérdései. Orosz György

UNIX: folyamatok kommunikációja

Operációs rendszerek MINB240

Operációs rendszerek MINB240 UNIX, Windows NT ütemezése Holtpontkezelés. UNIX ütemezése. Algoritmus követelményei. 4.

Operációs rendszerek

Windows Windows Server

Párhuzamosság a modern operációs rendszerekben

Bevezetés az informatikába

Rootkitek. Előadó: Barta Csaba

Tartalom. Történeti áttekintés. Történeti áttekintés Architektúra DCOM vs CORBA. Szoftvertechnológia

Bevezetés a számítástechnikába

Előadás_#02. Előadás_02-1 -

Tartalomjegyzék. Előszó... 10

PROJEKTLABOR PÁRHUZAMOS ÉS ELOSZTOTT RENDSZEREK OPERÁCIÓS RENDSZEREI

Virtuális memóriakezelés Védelem. Memória védelem. Intel x68. Izsó Tamás október 18. Izsó Tamás Memória védelem/ 1

Programozási nyelvek és módszerek Java Thread-ek

Operációs rendszerek MINB240

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

ARM Cortex magú mikrovezérlők

Operációs rendszerek

Operációs rendszerek. Történet 1988 új op. rendszer felvetése a MS-nál

OPERÁCIÓS RENDSZEREK. Elmélet

Ütemezés (Scheduling),

Automatikus vírusvédelmi megoldások az Interneten

Virtualizáció. egy hardveren több virtuális rendszer működik egyszerre, virtuális gépekben futó önálló vendég (guest) operációs rendszerek formájában

Csoportos üzenetszórás optimalizálása klaszter rendszerekben

Operációs rendszerek. 1. Bevezetö. Operációs rendszer: nincs jó definíció

Kommunikáció. 3. előadás

Operációs rendszerek. UNIX fájlrendszer

Utolsó módosítás:

Számítógépes alapismeretek

eseményvezérelt megoldások Vizuális programozás 5. előadás

Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon

Utolsó módosítás:

SAP vállalatirányítási rendszer alapjai

Operációs rendszerek

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

Alkalmazások biztonsága

Informatikai Rendszerek Intézete Gábor Dénes Foiskola. Operációs rendszerek oldal LINUX

Operációs rendszerek. 3. előadás Ütemezés

Léteznek nagyon jó integrált szoftver termékek a feladatra. Ezek többnyire drágák, és az üzemeltetésük sem túl egyszerű.

SQLServer. SQLServer konfigurációk

Feladatok (task) együttműködése

Operációs rendszerek II. Folyamatok ütemezése

Optimalizáció ESX-től View-ig. Pintér Kornél ügyfélszolgála3 mérnök

Utolsó módosítás:

Operációs rendszerek 1. kidolgozott tételsor Verzió: 1.0 (Build: )

Applying a Real-time CORBA ORB for Avionics Mission Computing

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

Informatikai rendszerek alapjai (Informatika I.)

Windows Windows Server

Folyamatok. 6. előadás

Utolsó módosítás:

COMET webalkalmazás fejlesztés. Tóth Ádám Jasmin Media Group

Balogh Ádám Lőrentey Károly

Demo board. Nagy András. Conet Kft november 29.

Az előadás magáncélra szabadon felhasználható. Köz- és felsőoktatásban felhasználható, csak előtte kérlek írj egy t nekem.

Feladatok (task) kezelése multiprogramozott operációs rendszerekben

Ütemezés (Scheduling),

ELEKTRONIKUS MUNKABÉRJEGYZÉK MODUL

Átírás:

Operációs rendszerek MS Windows NT (2000) folyamatok Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok: szálak ütemezése végrehajtásra interruptok és kivételek kezelése alacsony szint! multiprocesszor szinkronizálás hibák utáni visszaállítási eljárások rezidens, nincs preemptivitás (de megszakítható) C és assembly 2

Kernel objektumok Egyszer!bbek, mint az Executive objektumok két csoport: Control objects kernel folyamat objektumok, aszinkron eljárás hívás, késleltetett eljárás hívás, energia kezelés Dispatcher objects szinkronizálás, kernel szálak, kernel események, kernel mutexek, kernel timerek 3 Folyamatok Az NT folyamat modelljéhez tartozó elemek: a végrehajtandó program kódja és adatai, a folyamat által használható virtuális memória címtér, rendszerer"források, amelyeket az OPR foglal le a folyamatnak (pl.: szemaforokat, file-okat), a folyamat egyedi azonosítója (process ID, PID), legalább egy végrehajtható szál, amely ütemezésre kerül. 4

Szálak jellemz"i Szál környezet: végrehajtó processzor regiszterei (processzor állapota), két veremtár (stack): a kernel illetve felhasználói módokhoz, kizárólagosan használható tárterület a DLL-ek, és run-time könyvtárak számára. A szál egyedi azonosítója a thread ID. (Thread ID-t és a process ID-t azonos névtérb"l választja ki.) 5 Folyamatok és szálak viszonya Az adott folyamathoz tartozó szálak: közös virtuális címtartományt használnak, és osztoznak az er"forrásokon. A folyamatok: külön címtartományt használnak, átfedés csak kommunikáció esetén lehetséges. 6

Folyamat logikai modellje 7 Folyamat és szál objektumok 8

Folyamatok leírása az Executive rétegben Folyamat leírás: folyamatblokkban (EPROCESS): kísér" adatok és mutatók a kapcsolódó adatstruktúrákra, a rendszer címterében helyezkedik el. folyamatkörnyezeti blokk (Process Environment Block, - PEB): a futási környezetet írja le, a folyamat címterében van, mert a tartalmát a felhasználói módban futó kód is megváltoztathatja. 9 Szálak leírása az Executive rétegben Szálak leírása: executive szálblokk (ETHREAD): a rendszer címterében helyezkedik el. szálkörnyezeti blokk (Thread Environment Block, - PEB): a folyamat címterében van, mert a tartalmát a felhasználói módban futó kód is megváltoztathatja. 10

Folyamatokat és szálakat leíró adatszerkezetek 11 Alrendszerek folyamatkezelése Windows NT: több környezeti alrendszer, az executive réteg processz objektumának kezelése (minden alrendszer használhatja), elválasztva a Win32 folyamat létrehozási tevékenységt"l. 12

A Win32 CreateProcess() f"bb lépései A folyamaton belüli végrehajtandó image-file (.EXE) megnyitása. A Windows NT executive processz objektumának létrehozása. A kezdeti szál létrehozása. A Win32 értesítése az új processzr"l. (Felkészülhessen az új processzre és szálra.) A kezdeti szál végrehajtásának elindítása. Az újonnan létrehozott processz és szál környezetben a címtér inicializálása (pl. a szükséges DLL-ek betöltése). A program végrehajtásának elkezdése. 13 A folyamat prioritásának a meghatározása CreateProcess() hívásakor megadható. CreateProcess() hívásakor egynél több prioritási osztály is specifikálható: az NT a processzhez automatikusan a legalacsonyabb prioritási osztályt rendeli. Ha nincs prioritási osztály specifikálva: az új folyamat a Normal prioritási osztályba kerül. 14

Az executive szál blokk felépítése 15 Elemi szálak (fiber) Könny! súlyú szálak Cél: skálázható (szerver) megoldások kialakítása id"szelet kihasználása context switch elkerülése Megvalósítás felhasználói módban kezelve kernel számára láthatatlan felhasználói ütemezés 16

Folyamatok, szálak, elemi szálak process thread task context switch scheduling (kernel mode) fiber switch (user mode) 17 Szálak ütemezése Prioritás alapú, preemptív ütemezés 0 (alacsony)..31 (magas) prioritás szint 16-31 real-time 0-15 változó prioritás 0 rendszer célokra fenntartva 31 várakozó sor 18

Szál állapotai 19 Szál állapotai (folyt.) ready: futásra várakozó standby: adott processzorra futásra kiválasztva running: fut ameddig magasabb prioritású szál kiszorítja id" kvantum lejár terminálódik önkéntesen várakozó állapotba kerül waiting: várakozó állapot transition: végrehajtásra kész, de er"források nincsenek meg terminated: végrehajtás befejez"dött 20

Interrupt- és kivételkezelés HW architektúra függ" megoldások trap handling ok meghatározása -> kernel vagy executive kezelés interrupt vektoros kezelés automatikus ISR kiválasztás és végrehajtás device interruptok: ISR device driverben rendszerhívás: executive service 21 Szál szinkronizálás Synchronization objects (Executive) event, event pair, semaphore, timer, mutant két állapot: signalled non-signalled wait szolgáltatás Object type Set to signalled state when... Effect on waiting threads Process last thread terminates All released Thread thread terminates All released File I/O operation completes All released Event a thread sets (signals) the event All released Event-pair dedicated client or server thread sets the event Other dedicated thread released Semaphore count drops to zero All released Timer set time arrives or interval expires All released Mutant thread releases the mutant One thread released 22

Riasztások és aszinkron eljáráshívás alert: jelzés küldési mechanizmus APC: szál értesítése el"re definiált eljárás végrehajtására I/O rendszer kernel módú APC-vel értesíti a szálakat Felhasználói módú APC: szabályozható mikor kerüljön végrehajtásra polling (rendszerhívással teszteli) wait egy objektumon, szabályozva a várakozás megszakíthatóságát 23