Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Informatika 1

    A tantárgy angol neve: Informatics 1

    Adatlap utolsó módosítása: 2017. június 22.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar
    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VIIIAB08   4/0/0/f 4  
    3. A tantárgyfelelős személy és tanszék Dr. Pilászy György,
    A tantárgy tanszéki weboldala https://www.iit.bme.hu/targyak/BMEVIIIAB08
    4. A tantárgy előadója

    Dr. Horváth Tamás (magyar)
    Dr. Pilászy György (magyar)

    Csuka Barna (német)
    Dr. Urbancsek Tamás (német)

    Rácz György (angol)

    5. A tantárgy az alábbi témakörök ismeretére épít

    Digitális technika 2
    Programozás alapjai 1

    6. Előtanulmányi rend
    Kötelező:
    (TargyEredmeny("BMEVIIIAA02" , "jegy" , _ ) >= 2 VAGY
    TargyEredmeny("BMEVIIIAA05" , "jegy" , _ ) >= 2 VAGY
    TargyEredmeny("BMEVIIIAA06" , "jegy" , _ ) >= 2 VAGY
    TargyEredmeny("BMEVIIIA106" , "jegy" , _ ) >= 2 VAGY
    TargyEredmeny("BMEVIIIA108" , "jegy" , _ ) >= 2 )
    ÉS NEM ( TárgyEredmény( "BMEVIIIA202" , "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény("BMEVIIIA202", "FELVETEL", AktualisFelev()) > 0
    VAGY
    TárgyEredmény( "BMEVIIIAB04" , "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény("BMEVIIIAB04", "FELVETEL", AktualisFelev()) > 0)
    ÉS (Training.Code=("5N-A7") VAGY Training.Code=("5N-A7H") VAGY Training.Code=("5NAA7"))

    A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

    A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

    Ajánlott:

    7. A tantárgy célkitűzése Átfogó ismeretek nyújtása és szakmai alapozás a szakirányok számára a korszerű számítógépek felépítése, működése, számítógép-architektúrák, operációs rendszerek funkciói, belső szerkezete, működési elvei területén.
    A tárgy által nyújtott ismeretek birtokában a hallgatók képessé válnak konkrét számítógép-rendszerek és operációs rendszerek dokumentációinak gyors megértésére, üzemeltetési, konfigurálási, karbantartási feladatok gyors megtanulására.
    8. A tantárgy részletes tematikája

    Számítógép architektúrák:

    1. Bevezetés, áttekintés. A számítógép felépítése, a Neumann modell elve. Moduláris és többprocesszoros kialakítás. A CPU-k jellemző tulajdonságai a hardver-szoftver felületen: utasítás készlet, adattípus készlet, regiszterkészlet és flag-ek, memóriakép, memória-elérés, megszakítási rendszer, I/O rendszer. Magasszintű nyelveket támogató megoldások.

    2. Teljesítménynövelés. Az utasítás-végrehajtás gyorsítása, feldolgozás párhuzamosítása processzoron belül, pipe-line elv, utasítások egymásra hatása, társprocesszor alkalmazása. Utasítások számának és bonyolultságának hatása a teljesítményre, CISC-RISC processzorok

    3. Memória. Hierarchikus memória felépítés, memória hozzáférés gyorsítása, cache szervezés, leképzési elvek, működés, stratégiák, memória interleave, burst átvitel. A processzor által megcímezhető tárkapacitás növelése. Virtuális tárkezelés hardver megoldásai.

    4. Multiprogramozott operációs rendszerek támogatása. Memóriaszervezés, védelmi funkciók és megvalósításuk, memória, periféria processzor védelem. Privilégium szintek, privilegizált utasítások, rendszerhívások megvalósítása, taskváltás, kontextuscsere, oszthatatlan utasítások.

    5. I/O kezelés. Elvek összefoglalása: programozott/megszakításos lekezelés, DMA, I/O processzorok, intelligens I/O kezelés, szabványosítás. Periféria típusok és tulajdonságaik. Mágneslemez-tárak: tárolás elve, kódolás adattárolás szervezése, track, szektor, szoftszektor szervezés, adatelérés. SSD meghajtók. Egyéb jellegzetes perifériatípusok.

    6. Többprocesszoros rendszerek. Lazán és szorosan csatolt rendszerek, a laza és a szoros csatolás logikai és fizikai szintje, tipikus megvalósításai.

    7. Sínrendszerek. Sín-kialakítás elve, modularitás, hierarchia szintek, alkatrész, kártya, hátlap interface. Közös és osztott sín. Közös rendszersín funkciók: adatátvitel, megszakítás, vezérlésátadás, hibakezelés, szolgáltatások. Sínre kapcsolódó jellegzetes modulok és funkcióik. Címzési módok, logikai és hely szerinti címzés, címzési tartományok. Időzítés: szinkron-, aszinkron-, részben szinkron, nem kapcsolt, félig kapcsolt, kapcsolt protokoll.

    8. Sínvezérlés, vezérlésátadás, statikus- és dinamikus vezérlésátadás, egy- és többprocesszoros sínvezérlés. Sín-megszerzési és -elengedési stratégiák. Centralizált- és decentralizált arbiterek. Sínek megszakítás-kezelő mechanizmusai. Vezeték nélküli kapcsolatok. Fejlődési irányok.

     

    Operációs rendszerek:

    9. Bevezetés, történeti áttekintés. Általános jellemzők, kapcsolódási felületek, tipikus szolgáltatások, hardver követelmények, alapvető rendszerhívások és rendszerprogramok, eseményvezérelt működés, programszerkezet, virtuális gép, kliens szerver, felhő architektúra. Biztonsági funkciók, védelmi, jogosultsági rendszerek.
    Folyamatok, folyamatrendszerek. A programvégrehajtás, mint folyamat. Több program konkurens végrehajtása egy, illetve több processzoron. A szál fogalma. Erőforrások. Folyamatok közötti csatolások: versengés és együttműködés. Folyamatok együttműködésének alapesetei: közös memória, üzenetváltás.

    10. Közös memóriás együttműködés. Szinkronizáció szükségessége. Szinkronizációs alapesetek: kölcsönös kizárás, precedencia, egyidejűség. Kölcsönös kizárás szoftver megoldása. Hardver támogatás: oszthatatlan TAS és XCHG műveletek. Szemafor. Szinkronizációs alapesetek megoldása szemaforral. Szemafor megvalósítása multiprogramozott rendszerben. Üzenetváltással történő együttműködés. Kommunikációs alrendszerek. Megnevezési módok. Szinkron, aszinkron kommunikáció, a szemantikai konzisztencia feltétele. Pufferelés és hatása a kommunikáló folyamatok futására.

    11. Holtponthelyezetek kezelése. A holtpont fogalma, a holtpont kialakulásának feltételei erőforrásokért versengő rendszerekben, az erőforráskezelés modellezése, erőforrásfoglalási gráf. A holtpont és az éhezés összevetése. Holtpontkezelési stratégiák: strucc algoritmus, megelőzés, elkerülés, felismerés és felszámolás.

    12. Multiprogramozott operációs rendszerek. A multiprogramozás alapelve, az operációs rendszer új feladatai. Sorállási modell és állapotmodell. Ütemezők. Folyamatok környezete. A folyamatkezelés adatszerkezetei, egy megvalósítási séma. CPU ütemezés. A CPU, mint kitüntetett erőforrás. FCFS, SJF, prioritásos, nem-preemptiv és preemptiv ütemezési algoritmusok, időszeleteléses ütemezés. Többszintű ütemezési sorok. Az ütemezési algoritmusok értékelése.

    13. Memóriakezelés. Címek kialakítása, áthelyezhetőség, újrahívhatóság. Szerkesztés és programbetöltés. Object modul, könyvtár, statikus és dinamikus relokáció, betöltési és futási idejű dinamikus szerkesztés. Memóriaallokáció problémái.
    Virtuális tárkezelés. Működési elv lapszervezésű tárkezelés esetén, hardver-szoftver munkamegosztás. Találati arány, effektív elérési idő. Vergődési határhelyzet. Lapváltási algoritmusok. Tárgazdálkodás, működő lapkészlet, dinamikus lokális tárgazdálkodás a laphiba-gyakoriság mérésére alapozva.

    14. Lemezkezelés és fájlrendszer. A lemezkezelő réteg feladatai. Lemezműveletek hatékonyságának javítása (lemezműveletek ütemezése, gyorsítási lehetőségek). Fájl és könyvtár mint adatszerkezet és a rajtuk értelmezett műveletek. Fájlmodellek, szabad helyek nyilvántartása, allokációs módszerek. Védelmi mechanizmusok sérülés és téves hozzáférés ellen. A megnyitás és bezárás szerepe. I/O rendszer, készülékek csatlakoztatása, interfészek szintjei. Eszköz-meghajtók szerepe. Készülékfüggetlen hívási felület kialakítása. Karakteres és blokkos eszközök.
    Korszerű beágyazott rendszerek operációs rendszerei. Erőforrás korlátok hatása az operációs rendszer szolgáltatásaira. 

    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) Heti 4 óra élőadás.
    Az előadásokon az elméleti ismereteket gyakorlati példákkal is illusztráljuk, melyek segítik a félévközi számonkérésekre való felkészülést.
    10. Követelmények

    A szorgalmi időszakban:

    A félév során összesen két összegző típusú számonkérést (lehetőség szerint 8., és a 14. oktatási héten) iratunk (zárthelyi). Az írásbeli számonkérések mindegyikén maximum 30 pont szerezhető. A meg nem írt számonkérés 0 pontot ér.

    A félévközi jegy a két pontszám összege alapján kerül megállapításra az alábbiak szerint:

                    0-23 pont : 1
                    24-32 pont: 2
                    33-41 pont: 3
                    42-50 pont: 4
                    51-60 pont: 5

     A vizsgaidőszakban: nincs

    11. Pótlási lehetőségek A pótlási héten mindkét összegző típusú számonkérés (zárthelyi) pótolható vagy javítható. A pótlásra/javításra a TR-ben jelentkezni kell.
    12. Konzultációs lehetőségek Szorgalmi időszakban: az előadások szünetében, vagy kérésre, időpont egyeztetése után meghirdetett helyen.
    13. Jegyzet, tankönyv, felhasználható irodalom

    A tárgy honlapján közzétett előadás vázlatok, segédanyagok.

    További felhasználható irodalom:

    JOHN L. HENESSY DAVID A. PATTERSON'S : Computer Architecture FIFTH EDITION (2011)
    ISBN-13: 9780123838728 
    David A. Patterson & John L. Hennessy : Computer Organization and Design,Revised Fourth Edition,
    4th Edition The Hardware/Software Interface (2012) ISBN: 978-0-12-374750-1

    D. M. Harris, S.L. Harris, Digital Design and Computer Architecture, Morgan Kaufmann (Elsevier), 2013, ISBN 9978-0-12-394424-5

    ANDREW S. TANENBAUM: Számítógép-architektúrák PANEM kiadó (2007) ISBN 9789635454570
    Michael J. Flynn - Wayne Luk: Computer System Design (Wiley, ISBN 978-0-470-64336-5)
    Wilkinson, B.: Computer architecture, design and performance. Prentice Hall, 1991.
    Van de Goor,A.J.: Computer architecture and design. Addison-Wesley Publishing Company, 1989. 

    Kóczy A. - Kondorosi K. (szerk.) és mások: Operációs rendszerek mérnöki megközelítésben. Panem 2000.

    Silberschatz, A. és mások: Operating System Concepts, Addison-Wesley Publishing Company, tetszőleges kiadás (1-9).

    Tanenbaum, Woodhull: Operációs rendszerek. Panem 2007.

     

    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
    Kontakt óra56
    Félévközi készülés órákra14
    Felkészülés zárthelyire40
    Házi feladat elkészítése0
    Kijelölt írásos tananyag elsajátítása10
    Vizsgafelkészülés0
    Összesen120
    15. A tantárgy tematikáját kidolgozta

    Név:

    Beosztás:

    Tanszék, Int.:

    Dr. Kondorosi Károly

    docens

    IIT

    Dr. Móczár Géza

    docens

    IIT

    Dr. Horváth Tamás

    tudományos munkatárs

    IIT

    Dr. Pilászy György

    docens

    IIT

    IMSc tematika és módszer A programban résztvevő hallgatóknak a tárgy honlapján, otthoni feldolgozásra további (a tananyag mélyebb megértését támogató) anyagokat teszünk közzé.
    IMSc pontozás

    IMSc pontokat a hallgatók csak az írásbeli számonkéréseken (zárthelyiken) szerezhetnek. A pontszerzés lehetősége mindegyik zárthelyin adott. A pontszerzés feltételei:

    • A tárgy követelményeinek teljesítése során összesen 20 IMSc pont (IP) szerezhető.
    • Az IMSc pontokért a zárthelyin 2x5 extra pont (XP) szerezhető, amelyekért külön feladatokat kell megoldani.
    • Az IP-ok miatt kiírt extra feladatokért szerzett pontok az érdemjegyet nem befolyásolják.
    • IP abban az esetben szerezhető, ha a hallgató a tárgyból jeles osztályzatot ért el.

    A megszerzett IP-ok számítása az alábbiak alapján történik:

    IP = 2*XP

    Az IMSc pontok megszerzése a programban nem résztvevő hallgatók számára is biztosított.