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

Slides:



Advertisements
Hasonló előadás
„Esélyteremtés és értékalakulás” Konferencia Megyeháza Kaposvár, 2009
Advertisements

Készítette: Kun Béla.  Operációs rendszernek nevezzük a számítástechnikában a számítógépeknek azt az alapprogramját, mely közvetlenül kezeli a hardvert,
ADATBÁZISOK.
Operációs Rendszerek I.
Operációs rendszerek Bevezetés.
Az operációs rendszer.
A számítógép felépítése
Hálózati architektúrák
Humánkineziológia szak
Operációs Rendszerek II. 5. előadás március 05.
Az operációs rendszer.
Operációs rendszerek 1. Takács Béla
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Ütemezés a Windowsban dr. Micskei Zoltán
Szoftevrismeret Operációs rendszerek.
Az operációs rendszer.
Fejlett Programozási Technológiák II. Világos Zsolt 12. gyakorlat.
BE KI Perifériák Számítógép.
Microsoft Windows A Windows fejlődése, általános jellemzése – 2. dia
ALEPH Integrált könyvtári rendszer
Az operációs rendszerek
1 Operációs rendszerek Folyamatok kezelése a UNIX-ban.
Prímrekord, 2005 Csajbók Tímea, Kasza János Komputeralgebra Tanszék ELTE IK január
Az operációs rendszer.
1 Operációs rendszerek Az ütemezés megvalósítása.
A Windows NT felépítése
1 Folyamatok modellezése az operációs rendszerekben Operációs rendszerek.
Operációs rendszerek.
1 Operációs rendszerek A Windows NT memóriakezelése.
1 Operációs rendszerek Signal kezelés. 2 SIGNAL kezelés Egyszerű folyamatok közötti kommunikációs (IPC – Inter Process Communication) megoldás. A signal.
1 Operációs rendszerek A UNIX védelmi rendszere. 2 Illetéktelen hozzáférés megakadályozása: az egyes felhasználók adataihoz, az operációs rendszer adataihoz,
Microsoft Access Űrlapok.
Programrendszer 2. Erőforrás – erőforrás elosztás 3. Indítja és ütemezi a programokat 4. kommunikáció 2 Takács Béla.
Számítógépes üzemmódok
V 1.0 ÓE-NIK, Programozás I. A Microsoft Visual Studio 2010 használata.
Az operációs rendszereK
A Unix operációs rendszer Előadást tarja: Lázár András.
Operációs rendszer.
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT
Bemutatkozás Név: Vespi Gábor Kelt: december 27.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Operációs rendszerek Balogh Zoltán PTE-TTK IÁTT Operációs rendszerek feladatai és csoportosításuk.
Az operációs rendszerek feladata, fajtái, felépítése
Prímrekord, 2005 Csajbók Tímea, Farkas Gábor, Kasza János.
Adatbázis kezelés.
A gyakorlatok munkakörnyezete
Óravázlat Készítette: Kucsera Mihály és Toldi Miklós
Szoftverek.
Fontos tudnivalók A MATLAB egy fajta objektummal dolgozik (Mátrix)
Programozás, programtervezés
UML modellezés 3. előadás
Webes MES keretrendszer fejlesztése Kiss Miklós Dániel G-5S8 Tervezésvezető: Dr. Hornyák Olivér.
2. Operációs rendszerek.
DLL használata és készítése Feladat
A projekt az Európai Unió társfinanszírozásával, az Európa terv keretében valósul meg. Számítógép- hálózatok dr. Herdon Miklós dr. Kovács György Magó Zsolt.
Memóriakezelés feladatok Feladat: 12 bites címtartomány. 0 ~ 2047 legyen mindig.
Az operációs rendszer.
Netware 6 telepítése Molnár Péter. Telepítési követelmények I. Minimális rendszerkövetelmények · Szerverszintű PC legalább Pentium II vagy AMD K7 processzorral.
A Linux operációs rendszer A Linux felépítése. A UNIX önálló változata. Forráskódja szabadon hozzáférhető->gyors terjedés Szabad szoftver de nem nyilvános.
Programstruktúrák. Program A program utasítások olyan sorozata, amely a számítógépen önállóan képes megoldani egy feladatot. A program háttértáron futtatható.
Operációs rendszerek Az operációs rendszerek működésének alapfogalmai.
Az operációs rendszer.
Párhuzamos programozás
(Iskolai) Beléptető rendszer Raspberry Pi 2-vel.
IT ALAPFOGALMAK OPERÁCIÓS RENDSZEREK.
Operációs rendszerek.
Hálózati architektúrák
Az operációs rendszer  Minden jog fenntartva.
Folyamatok.
Előadás másolata:

1 Operációs rendszerek Az NT folyamatok kezelése

2 Folyamatok logikai felépítése A folyamat modell: –egy adott program kódját végrehajtó szál(ak)ból és, –a szál(ak) által lefoglalt erőforrásokból állnak.

3 Folyamatok logikai felépítése 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ál fogalma A szál fogalmának gyakorlati meghatározása: a szál az a végrehajtható program egység (entitás) az NT-ben, amit az ütemező végrehajtásra a processzorra ütemezhet.

5 Szálak komponensei  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.)

6 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.

7 Erőforrások használata Használat előtt foglalás szükséges. Ezeket az NT objektumokként reprezentálja. Az objektum megnyitása után, a folyamat egy ún. handle-t kap, hogy gyorsabban elérhesse az adott erőforrást.

8 A rendszer erőforrásainak védelme Elérési token-nel (access token). Tartalma: –a folyamat biztonsági azonosítója, –a folyamat jogosultságainak leírását.

9 Folyamat logikai modellje folyamat elérési token virtuális memória a leíró virtuális memória leíró virtuális memória leíró virtuális címtér leírás handle táblázat handle objektum handleobjektum handleobjektum szál elérési token szál

10 Folyamatok típusai Alrendszerhez tartozás alapján: –POSIX (POSIX.EXE), –OS/2 1.x (OS2.EXE), –Win32: Win32  közvetlenül futtatható az.EXE, Win16 (NTVDM.EXE), MS-DOS:.EXE,.COM,.PIF (NTVDM.EXE), MS-DOS:.BAT,.CMD (CMD.EXE).

11 Folyamatokat leíró adatszerkezetek

12 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.

13 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.

14 Win32 alrendszer Ezen alrendszer is kezel egy folyamatleíró (szálleíró) adatstruktúrát (W32PROCESS), minden olyan folyamatról (szálról), amely a Win32 kódot hajt végre.

15 Folyamatokat és szálakat leíró adatszerkezetek Folyamat- környezeti blokk Folyamat címtere Szál blokk (ETHREAD) Szál - környezeti blokk Win32 folyamat blokkFolyamat blokk (EPROCESS) Handle tábla Rendszer címtere

16 Folyamat létrehozása Folyamat létrehozása (rendszerhívással): –CreateProcess() függvény meghívásával, –a több fázisú megvalósítást, az OPR 3 részlete oldja meg. Így:  a Win32 kliens-oldali könyvtárából a KERNEL32.DLL,  a Windows NT executive,  a Win32 alrendszer folyamat (CSRSS).

17 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.

18 A Win32 CreateProcess() főbb lépései I. 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.)

19 A Win32 CreateProcess() főbb lépései II. 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.

20 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.

21 Desktop kiválasztása  Grafikus környezet (desktop) alkalmazás:  ablak nyitás.  Minden ablakot egy desktop-hoz rendel a rendszer.  CreateProcess():  desktop megadása.  Ha nincs desktop definiálva:  automatikusan a hívó aktuális desktop-jához rendelődik.

22 Szálak kezelése az NT-ben Windows NT szál:  Executive szál blokk (ETHREAD):  rendszer címtartományában található.  Szálkörnyezeti blokk:  a folyamat címtartományában. Win32 alrendszer folyamata: –szálleíró adatstruktúra.

23 Az executive szál blokk felépítése

24 Kernel szál blokk (KTHREAD) Adatok, amit a kernel használ: –a szálütemezéshez, és –a szinkronizációhoz.

25 Szál létrehozása (CreateThread() hívás) Szál életciklusának kezdete: 1. Folyamat kérése a executive réteghez. 2. Processzkezelő (process dispatcher): 3. hely foglalás a szálobjektum számára, 4. kernel meghívása, a kernel szál blokk (KTHREAD) kezdeti értékeinek beállítása miatt.

26 CreateThread() végrehajtása (KERNEL32.DLL) I. 5. Felhasználói módú stack létrehozása a folyamat címterében. 6. Kezdeti értékek beállítása a szál hardver kapcsolataihoz. 7. NtCreateThread() függvény hívása: az executive szál objektum létrehozása, ezen utasításokat kernel módú komponensek hajtják végre, az executive, és a kernel.

27 CreateThread() végrehajtása (KERNEL32.DLL) II. 8. Win32 alrendszer értesítése az új szálról, a Win32 alrendszer beállításokat végez az új szál részére. 9. A szál összetett elérési címe (handle) és azonosítója (amik a 3. lépésben lettek generálva) visszaadódik a hívónak. 10. A szál olyan állapotba kerül, hogy ütemezni lehet a végrehajtását.