Belépés címtáras azonosítással
magyar nyelvű adatlap
A UNIX rendszer felhasználói és fejlesztői felülete
A tantárgy angol neve: User and Developer Interface of Unix
Adatlap utolsó módosítása: 2011. január 19.
Tantárgy lejárati dátuma: 2019. január 31.
Villamosmérnöki Szak
Mérnöki Informatikus Szak
Szabadon választható tárgy
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ó.
A tárgy keretében a hallgatók programozási példákon keresztül megismerik a UNIX belső működési mechanizmusainak alapjait is, így pl. azokat a kommunikációs eszközöket, melyek elengedhetetlenek egy komplex informatikai rendszer kialakításában.
Az elméleti órák keretében megismert elveket, eszközöket a hallgatók ki is próbálhatják.
1. hét:
Bevezetés. Történelmi áttekintés. Unix rendszer legfontosabb tulajdonságai. Bejelentkezés, session. Állományrendszer fő egységei, szerkezete. UNIX operációs rendszer védelmi rendszere. Az alapvető Unix parancsok (cd, ls, rm, mv, mkdir, man, cat, chmod, umask, passwd). Shell feladata, egy általánosan használt shell (pl. Bash) legfontosabb parancsainak megismerése.
2. hét:
Shellek szerepe. Fő tulajdonságai. Parancsok szerkezete. Legfontosabb környezeti változók jelentése, kényelmi beállítások. File- és paraméterhelyettesítés, I/O átirányítás, "here" dokumentum.
3. hét:
Szűrők és más segédprogramok jelentősége a UNIX-ban. Reguláris kifejezések. (sort, tee, tr, tail, head, sed, pr, grep, comm, cmp, diff, find, dd, dc, bc, file)
4. hét:
Szövegszerkesztők szerepe, jelentősége, történelmi fejlődése. Legfontosabb szerkesztő funkciók. Néhány alapvető parancs és fogás az ed, vi, sed programban.
Sed, awk, perl programok bemutatása. Perl és más scriptek.
5. hét:
Shell programozás jelentősége és fő változatai. Shell változók. Vezérlési szerkezetek. Programozást segítő programok (test, expr). Egyszerű példák (telefon regiszter, ff, önkicsomagoló script, "helyesírás ellenőrző").
6. hét:
Processz kezelés. I/O átirányítás megvalósításának rendszerhívás szintű részletei (fork, exec, dup, pipe). Egyszerű script nyelv megvalósítása.
7. hét:
Processzek közötti kommunikáció (IPC). (Shared memory, semaphor, message queue, signal, socket).
Szálak és processzek. Szinkronizációs eszközök.
8. hét:
9. hét:
Make segédprogram szerepe, használata. Verzió követést segítő eszköz bevezetése, használata (sccs, rcs, cvs, svn). Egyszerű filter program írása, kipróbálása C, vagy C++ nyelven. (pl. ékezetes szövegből repülő ékezetes szöveg konvertálása és vissza).
Hibakeresés, nyomkövetés eszközei (gdb, ddd). Futási idő analízis (profile). Dokumentáció készítés hagyományos és újabb eszközei (nroff, latex, Doxygen).
11. hét
Lex és yacc nyelvek alapjai. Saját parancsértelmező ötlete.
12. hét
Grafikus felület (X-window) programozásának alapjai. Window kezelők.
13. hét
Egyszerű programozási példák. Grafikus megjelenítés segédprogramjai (xfig, gnuplot).
14. hét
Összefoglalás, Konzultáció a házi feladatról. Kiselőadások.
A tárgy oktatása kiscsoportos formában történik. Az előadások is laboratóriumban lesznek, így az elmondottak könnyen illusztrálhatók példákkal.
Az elméleti és labor jellegű foglalkozások, feladatok gyakran egy-egy tanórán belül is váltják egymást az adott tananyagnak megfelelően.
a.) Szorgalmi időszakban:
A tanórákon a jelenlétet a félév folyamán több, előre nem jelzett alkalommal ellenőrizzük, aláírást nem kaphat az, aki ezek alapján az alkalmak több, mint 30%-áról hiányzott.
Előre bejelentett időpontokban legalább 4 db ellenőrző dolgozat, valamint a 12. tanulmányi héten (előre egyeztetett időpontban) egy nagy zárthelyi megírására kerül sor. Az ellenőrző dolgozatok megírása nem kötelező, azok a jegymegajánlást teszik lehetővé.
b.) Otthoni feladat:
A 8. héten kiadásra kerül a nagy házi feladat, melynek megoldását legkésőbb a vizsga napját megelőzően elektronikusan fel kell tölteni, a vizsgán pedig be kell mutatni.
c.) Aláírás:
Csak az kaphat aláírást, aki az előadások legalább 70%-án részt vett, és a nagy zárthelyit legalább elégséges szinten teljesítette.
A vizsga írásbeli és szóbeli. A szóbeli rész a házi feladat bemutatásából, és a feladattal kapcsolatos kérdések megválaszolásából áll.. Akinek a legjobb 3 ellenőrző dolgozata átlagosan eléri a 85 %-os szintet és a nagy zárthelyi eredménye jeles, valamint a házi feladatát a szorgalmi időszak végéig bemutatta és az kiváló minősítésű, megajánlott vizsgajegyet kaphat.
[1] W. Richard Stevens
Advanced Programming int the UNIX environment,
Addison-Wesley, 1992
UNIX A rendszer használata,
Budapest: PANEM, 2004.
[3] Szeberényi Imre
Bevezetés a UNIX operációs rendszerbe (oktatási segédlet), 1998