KF GAMF Kar
2011–2012-es tanév őszi félév Tantárgyi követelményrendszer és programleírás
I. Követelményrendszer 1. Tantárgynév, kód, kredit, választhatóság: Operációs rendszerek, MAI3A8IN, 5 kredit, kötelező 2. Felelős tanszékszakcsoport: Automatizálási és Alkalmazott Informatikai szakcsoport 3. Szak, szakirány, munkarend: Mérnök informatikus alapszak, nappali tagozat 4. A meghirdetés ideje (mintatanterv szerint, keresztfélében): mintatanterv szerint, keresztfélében 5. A meghirdetés formája (csak vizsgára, teljes tantárgyfelvételre): teljes tantárgyfelvételre 6. Heti tanóraszám (nappali, ea+gy+lb): 2+0+2 7. A félévi konzultációs órák száma (levelező) 8. Az előfeltételi tantárgy (tantárgyak) neve és kódja: Számítógép-architektúrák MAI2A8I 9. Félév végi követelmény (aláírás, gyakorlati jegy, vizsga, szigorlat): gyakorlati vizsgajegy 10. A kötelező ismeretellenőrzések a szorgalmi időszakban (TVSZ 11. §): Rendszeres beadandó feladatok (66 db), 2 géptermi ZH és 2 elméleti ZH 11. A sikeres gyakorlati jegy feltételei (TVSZ 11. §): • Minden rendszeres beadandó feladat (6 db) elfogadható teljesítése a megadott határidőre. Elfogadható egy beadandó feladat, ha nincs benne szintaktikai hiba, megoldja a feladatot, és a hallgató ismertetni tudja a beadott feladathoz tartózó tetszőleges kódrészlet funkcióját, meg tudja indokolni annak alkalmazását. Egyedi, és kiemelkedő megoldásokat a tárgyfelelős plusz pontokkal jutalmazhat, melyek a minimum követelményt nem, de a végső jegyet befolyásolhatják. • Mindkét géptermi ZH elfogadható teljesítése. Egy géptermi ZH során meghatározott számú programot kell elkészíteni a megadott eszközökkel. Egy program elfogadható, ha a kódban nincs szintaktikai hiba és megoldja a feladatot. A géptermi ZH-n a gyakorlatvezető megítélése alapján plusz pontok szerezhetők, melyek a minimum követelményt nem, de a végső jegyet befolyásolhatják. • Mindkét elméleti ZH legalább elégséges szintű teljesítése. Egy elméleti ZH-n maximálisan 50 pont szerezhető. A ZH értékelése TVSZ figyelembevételével történik, elégséges 25 ponttól. • A gyakorlati jegy meghatározása a két elméleti ZH-n elért pontszám összege alapján történik (az esetleges plusz pontok hozzáadásával), elégséges 51 ponttól. 12. A sikeres aláírás feltételei (TVSZ 11. §) 13. A vizsgára bocsátás feltételei (TVSZ 11. §) • Minden rendszeres beadandó feladat (6 db) elfogadható teljesítése a megadott határidőre. Elfogadható egy beadandó feladat, ha nincs benne szintaktikai hiba, megoldja a feladatot, és a hallgató ismertetni tudja a beadott feladathoz tartózó tetszőleges kódrészlet funkcióját, meg tudja indokolni annak alkalmazását. Egyedi, és kiemelkedő megoldásokat a tárgyfelelős plusz pontokkal jutalmazhat, melyek a minimum követelményt nem, de a végső jegyet befolyásolhatják. • Mindkét géptermi ZH elfogadható teljesítése. Egy géptermi ZH során meghatározott számú programot kell elkészíteni a megadott eszközökkel. Egy program elfogadható, ha a kódban nincs szintaktikai hiba és megoldja a feladatot. A géptermi ZH-n a gyakorlatvezető megítélése alapján plusz pontok szerezhetők, melyek a minimum követelményt nem, de a végső jegyet befolyásolhatják. 14. Jegymegajánlás (TVSZ 14. §) 15. Elővizsga (TVSZ 15. §)
1
KF GAMF Kar
2011–2012-es tanév őszi félév Tantárgyi követelményrendszer és programleírás
16. A vizsga részei (írásbeli, szóbeli stb.), menete, a vizsgajegy meghatározása • Irásbeli vizsga. A vizsga 100 pontos, elégséges 51 ponttól. A jegy a vizsga dolgozat és a félév során szerzett plusz pontok alapján számitandó. 17. Kötelező és ajánlott irodalom - Az előadások anyaga és további ajánlott irodalom a tárgy honlapján. - Brian W. Kernigen és Rob Pike: A UNIX operációs rendszer. Műszaki könyvkiadó, 1992 - Bartók Nagy János Laufer Judit. Unix felhasználói ismeretek Openinfo Könyvek, 1998 - A. Tanenbaum: Operációs rendszerek, Panem 1999
2
KF GAMF Kar
2011–2012-es tanév őszi félév Tantárgyi követelményrendszer és programleírás
II. Programleírás 1. Előadás: (2010.09.06) Bevezetés: Operációs rendszerek feladatai (Extended Virtual Machine, Resource Mananagment, responding machine), operációs rendszerek generációi, felépítései (monolikus, moduláris, rétegzettség), kliens-szerver modell, kernel trap, (serverclient), virtualizáció, tipikus problémák, esettanulmányok, telepítési útmutatók 2. Előadás: (2010.09.13) Felületek a kernelhez: kernel API, rendszerhívási osztályok, burok (bash, tcsh, csh), burok programozás I (command line interface): a shell kettős értelme, parancs,cső, átirányítás, behelyettesítés, környezeti változók és tárolása, illeszkedés, semlegesítés, exportálás Gyakorlat: egyedi passw beállítás, ssh moria.kefo.hu, man, ls -l -a, /etc/passwd, cd, ls, cp, mv, rm, mkdir, rmdir, pwd, cat, more, chmod, mcedit, ln, ln -S, cut 3. Előadás: (2010.09.20) Segédprogramok szűrők: vezérlési szerkezetek a shell-ben, segédprogramok, szűrők, parancsok: test, expr, read, cut, head, tail, grep. Reguláris kifejezések: illeszkedés, védés, speciális karakterek, semlegesítés. Az awk programozása. Gyakorlat: bash programozas I. és, file, head, tail, wc -l, du, cut, sort, cat, ps, top, csővezeték, ps, pstree, fg, bg, /dev/null, kill, nohup echo, grep, openoffice 4. Előadás: (2010.09.27) Az I/O alrendszer, eszközök kezelése, eszköz driver-ek. Fájlrendszer megvalósítási alap feladatok. Tároló-hierarchia: fizikai tárkezelés, virtuális memória kezelése/virtuális diszk,fájl-rendszerek, I/O programozása, eszköz-független I/O SW. FAT és UFS. Gyakorlat: bash programok II, feladatok, regexp, grep, awk 5. Előadás: (2010.10.04) Unix Rendszer Adminisztráció: Linux boot, futászintek, IP hálózatok, routing, realtime rendszerek, sysadmin feladatok X11 koncepció, IP hálózatok, routing, real-time rendszerek, sysadmin feladatok Gyakorlat: bash programok III, feladatok 6. Előadás: Gyakori Rendszer Szolgáltatások: CUPS, Samba, SSH, X11 koncepció(2010.10.11) I. nagy zárthelyi írása Gyakorlat: bash programok IV, feladatok 7. Előadás: (2010.10.18) IPC-Processzek közti kommunikáció: shmem, msg, pipe, mmap IPC-Processzek közti kommunikáció: shmem, msg, pipe, mmap Gyakorlat: I. géptermi ZH 8. Előadás: (2010.10.25) Folyamatok: Multiprogramozás lehetőségei, Processzek (Process Control Blocks, Process Image, Proc state graphs) és használatuk, Thread-ek (szálak) és használatuk (POSIX rendszerben) Folyamatok: Multiprogramozás lehetőségei, Processzek (Process Control Blocks, Process Image, Proc state graphs) és használatuk, Thread-ek (szálak) és használatuk (POSIX rendszerben) Gyakorlat: C ismétlés, gcc használat, configure és make fájl programozás
3
KF GAMF Kar
2011–2012-es tanév őszi félév Tantárgyi követelményrendszer és programleírás
9. Előadás: (2010.11.08) 10. Időkiosztás (scheduling), CPU ütemezés algoritmusai. A processz "kapcsolás" (Process Control Switch). Teljesítendő kritériumrendszer. A CPU ütemezési algoritmusok statisztikai alapjai. CPU korlátos illetve be/ki korlátos folyamatok. Hosszú-távú, közép-távú illetve rövid-távú folyamatütemezés. CPU ütemezési algoritmusok elemzése: FCFS, SJF, SRTF és RR Többszintű ütemezési sorok. Időkiosztás (scheduling), CPU ütemezés algoritmusai. A processz "kapcsolás" (Process Control Switch). Teljesítendő kritériumrendszer. A CPU ütemezési algoritmusok statisztikai alapjai. CPU korlátos illetve be/ki korlátos folyamatok. Hosszú-távú, közép-távú illetve rövid-távú folyamatütemezés. CPU ütemezési algoritmusok elemzése: FCFS, SJF, SRTF és RR Többszintű ütemezési sorok. Gyakorlat: multi programozás, processzek és szálak használata 11. Előadás: (2010.11.15) Versenyhelyzetek: Konkurens folyamatok közötti kommunikáció: versenyhelyzet, kritikus szekció fogalma, kritikus szekció sikeres megvalósításának a feltételei. Szinkronizálási algoritmusok primitívéi: megszakítások tiltása, zárolásváltozó, szigorú alternáció, Peterson módszere, Test and Set Lock utasítás. prioritás inverzió, gyártófogyasztó probléma, szemaforok, monitorok; 5 filozófus problémája, író-olvásó probléma, alvó-borbély problémája Versenyhelyzetek: Konkurens folyamatok közötti kommunikáció: versenyhelyzet, kritikus szekció fogalma, kritikus szekció sikeres megvalósításának a feltételei. Szinkronizálási algoritmusok primitívéi: megszakítások tiltása, zárolásváltozó, szigorú alternáció, Peterson módszere, Test and Set Lock utasítás. prioritás inverzió, gyártófogyasztó probléma, szemaforok, monitorok; 5 filozófus problémája, író-olvásó probléma, alvó-borbély problémája Gyakorlat: példa és feladatok shared memory, shm/mmap-pel 12. Előadás: (2010.11.22) Holtpontok: Holtpont kialakulásának feltételei. Erőforrás állokációs mátrix. Holtpont észlelése és kezelése. Holtpontok: Holtpont kialakulásának feltételei. Erőforrás állokációs mátrix. Holtpont észlelése és kezelése. Hiba és eseménykezelés: A megszakítások és a kivételek keletkezése és kezelése; Szignálozás fogalma és rendszerhívásai Gyakorlat: példa és feladatok üzenetsorral (msgqueue) 13. Előadás: (2010.11.29) Hiba és eseménykezelés: A megszakítások és a kivételek keletkezése és kezelése; Szignálozás fogalma és rendszerhívásai A memória menedzselő alrendszer. Virtuális memóriamenedzselési alapok. Lapozó rendszerek, fogalmak: szegmens, page faults, lapcsere, MMU, overlay, stratégiák virtuális memória (FIFO, LRU, OPT). Gyakorlat: Gyakorlat: II. géptermi ZHsignal-ok. socket kommunikáció gépek között 14. Előadás: (2010.12.06) A memória menedzselő alrendszer. Virtuális memóriamenedzselési alapok. Lapozó rendszerek, fogalmak: szegmens, page faults, lapcsere, MMU, overlay, stratégiák virtuális memória (FIFO, LRU, OPT). II. nagy zárthelyi írása Gyakorlat: II. géptermi ZH-k pótlása 15. Előadás: (2010.12.13)
4
KF GAMF Kar
2011–2012-es tanév őszi félév Tantárgyi követelményrendszer és programleírás
Pót ZH-k, jegylezárás Gyakorlat: pót géptermi ZH-k
Kecskemét, 20110. szeptember augusztus 256.
................................ hallgató
................................ szakcsoportvezető
A megvalósult tanmenet a fenti leírástól a következőkben tért el:
5
................................ tantárgyelőadó