Threos: Mikrokernel operációs rendszer a gyakorlatban

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Threos: Mikrokernel operációs rendszer a gyakorlatban"

Átírás

1 : Mikrokernel operációs rendszer a gyakorlatban Nagy András Baráth Áron Conet Kft

2 Tartalom

3 Tartalom Hardware Software

4 Programok Hardware Software Natív (lefordított) vagy interpretált Programok végrehajtásához futási környezet szükséges Környezet: Megfelelő hardware és software összesége Kapcsolat a program és a külvilág között

5 Hardware környezet Hardware Software Utasítások beolvasása, értelmezése és végrehajtása Be- és kimenetek kezelése Nagyon alacsony szint ( vas ) Végrehajtó egység (processzor) Memória (RAM, ROM, FLASH) Perifériák Sokféle: komplex, nem nyitott, nem hibamentes Nehéz kezelni Léteznek speciális hardware környezetek

6 Hardware alapok Hardware Software Végrehajtó egység (processzor) Sokféle típus Általános célú (asztali gép, szerver, tablet) Speciális célú (grafika, hang) Mikrokontroller (teljes rendszer egy chipben (SOC)) Elmosódtak a határvonalak Technológiai fejlődés hatása 1994: Intel Pentium P54C ( MHz, 8-12W, $849) 2015: Intel Atom x5-z8500 (4mag 1.44 GHz, 2W, $25) 2014: ARM Cortex A7 (4mag 1.2 GHz, 1W, $2) MCU 2011: ARM Cortex M3 (180 MHz, 0.25W, $5) MCU 2017: ARM Cortex M0+ (48 MHz, 0.01W, $1)

7 Processzor alapok Hardware Software Kontextus Programszál futásához erőforrások (regiszterek, flag) Cserélés hosszabb ideig is eltarthat Privilegizált állapot Általában 2 szint Privilegizált, Nem privilegizált Megszakítások Software megszakítások, kivételek (rendszerhívás) Hardware megszakítások aszinkron (időzítő)

8 Hardware Software Processzor alapok: Processzor címtér Műveletek által elérhető memória Von Neumann: egy címtér utasításoknak és adatnak Harvard: külön címtér utasításoknak és adatnak Nem feltétlenül egyezik meg a fizikailag címezhető memória méretével, lehet nagyobb vagy kisebb 32 bit 32 bit virtuális, 36 bit fizikai (PAE) 64 bit 48 (56) bit virtuális, bit fizikai Hardware perifériák regiszterei címtérbe leképezve

9 Hardware Software Processzor alapok: Virtuális memória Fix méretű (4 KiB) blokkokra osztott címtér leképezés A leképezés nem feltétlenül folytonos Fizikai memória töredezettségét elfedi Váltogatható (kontextus váltás) Lassabb elérés, laphibák kezelése Virtuális címterek átfedésben is lehetnek Nem minden processzor támogatja

10 Hardware Software Programok software környezete Elfedi a hardware környezetet Egységes software felületet biztosít Több szintű (pl. interpreter, web böngésző) Lehet nyers vasra (bare metal) is programot írni Beágyazott rendszerekben nem ritka Operációs rendszer!

11 Operációs rendszer Hardware Software Alacsony szintű software réteg Szolgáltatások egységes felülete Széles spektrum Két nagy pólus: Microkernel és Monolitikus kernel Hol húzzuk meg az operációs rendszer határvonalát Operációs rendszer részei egyben vagy külön Szétosztott vagy központosított Sebesség, komplexitás, modularitás vonzata van Hibrid kernel (részben micro, részben monolitikus)

12 Hardware Software Operációs rendszer: Microkernel Kicsi kernel, csak alapfunkciók Szolgáltatások külön programokban Üzenetküldés a központi mechanizmus Lassabb lehet a kontextus váltások miatt Biztonságosabb Párhuzamos működés (több processzor) Nem kell kernel állapotot menteni

13 Hardware Software Operációs rendszer: Monolitikus kernel Egy nagy kernel Minden funkciót a kernel lát el (modulok) Kevesebb kontextus váltás Nem szeparált, belső erőforrás függőségek Device driver magával ránthatja az egész rendszert Szükséges a kernel állapotának mentése

14 Hardware Software Operációs rendszer: Alapvető felhasználási terület Microkernel Kis helyigény Valós idejű feladatok Beágyazott rendszerek (GSM/GPRS modem) Monolitikus kernel Nagyobb rendszerek Határok elmosódnak

15 Tartalom Kernel Kernel objektumok Kernel rendszerhívás

16 Tervezési szempontok Kernel Kernel objektumok Kernel rendszerhívás Alacsony memória és teljesítmény igény Gyors működés, rövid válaszidő Modularitás Könnyű portolhatóság

17 operációs rendszer Kernel Kernel objektumok Kernel rendszerhívás Microkernel Valós idejű ütemezés Multitasking, multithreading Virtuális memória kezelése, de egy címtér ASLR adja magát Task kontextusában futó megszakítások Nagyon kevés architektúra függő rész

18 Kernel Kernel objektumok Kernel rendszerhívás microkernel tulajdonságok Objektum orientált szemléletmód Alapvetően C-ben + C preprocesszált ASM Gyors, egyszerű rendszerhívások (timeout) Single stack kernel (stateless) Paraméter átadás csak regisztereken keresztül Üzenet alapú kommunikáció

19 Kernel objektumok Kernel Kernel objektumok Kernel rendszerhívás Közös header ( ősosztály ) Csak rendszerhívásokon keresztül lehet hozzáférni Használat előtt létre kell hozni Egy objektum több láncon is szerepelhet (owner, timeout) Objektumok automatikus törlése (tulajdonos törlése) Kritikus futási időben nem lehet objektumot létrehozni Task felszabadítása sokáig is eltarthat kiszervezhető

20 Task Kernel Kernel objektumok Kernel rendszerhívás Alap összefogó objektum Tulajdonosa más objektumoknak Közös címtér a futási szálaknak Nincs szülő-gyerek kapcsolat Prioritással rendelkezik Privilegizálható

21 Thread Kernel Kernel objektumok Kernel rendszerhívás Futási egység kontextussal Task-hoz tartozik, annak a címterében fut Prioritással rendelkezik (Task-on belüli prioritás) Kell stack-et definiálni neki Gyorsan létrehozható

22 Memo (MEMory Object) Kernel Kernel objektumok Kernel rendszerhívás Memória lapokból álló egysége Task-hoz tartozik Nem feltétlenül folytonos, de lehet kérni (DMA) Nem feltétlenül tartozik hozzá fizikai memória (HW IO) Lehet fix fizikai címre kérni (HW IO) Speciális típus Copy Memo, copy-on-write megvalósítására Tartalma View-on keresztül címezhető

23 View Kernel Kernel objektumok Kernel rendszerhívás Nézet egy adott Memo adott részére Virtuális címtér egybefüggő része Task-hoz és Memo-hoz tartozik Lehet több különböző View egy Memo-ra Virtuális címek kiosztása AVL-fa használatával

24 View kezelés Kernel Kernel objektumok Kernel rendszerhívás Virtuális cím elérésekor van felhasználva Laphiba (kivétel) esetén: Memo lap foglalás, másolás, tisztítás Task virtuális címterébe leképezés (mappelés) Laphiba indukálhat magasabb szintű műveleteket: On demand loading On demand relocation

25 Memo és View leképezése Kernel Kernel objektumok Kernel rendszerhívás VA 0 VA 1 VS Ta 0 VS 1 0 V max P MA 0 MB 0 MB 1 MA 1 MS 0 MS 1 0 P max VB Tb 0 VB 1 VS 0 VS 1 0 V max

26 View címtér tulajdonságok Kernel Kernel objektumok Kernel rendszerhívás Egy közös virtuális címtér van, de védett (szeparált) Memória mindenképpen korlátos, nincsenek végtelen erőforrások Közös címtér esetén pointerek ugyanoda mutatnak Gyors shared memory Hasonló felépítés VM nélkül is (MCU) Lehet csak virtuális címteret foglalni (VirtualAlloc)

27 Kernel Kernel objektumok Kernel rendszerhívás View címtér tulajdonságok (folyt.) Program részei futási időben is megoszthatóak Nem kell L1i cache-t törölni kontextus váltáskor VIVT (virtually indexed virtually tagged) esetén Tényleges párhuzamos működés Relokálni kell a programokat

28 Message Port (MsgPort) Kernel Kernel objektumok Kernel rendszerhívás Üzenetek küldésére és fogadására szolgál Task-hoz tartozik Fix mennyiségű (10-20) üzenet tárolására alkalmas Kapacitás fordítási időben definiált Aszinkron küldés Ha betelt, akkor a várakozók sorába kerül a küldő Ha üres, akkor a várakozók sorába kerül a fogadó

29 Message (Msg) Kernel Kernel objektumok Kernel rendszerhívás Folyamatok közötti kommunikáció alapja Nem valódi objektum (csak SignalMsg esetében) Csak üzenetportokon keresztül lehet küldeni és fogadni 3 érték (32 vagy 64 bit, architektúra specifikus) Konvenció: küldő, üzenet1, üzenet2 (sender, msg1, msg2) Sender alapvetően egy Handle Üzenetek értéke bármi lehet (azonosító, mutató, kompozit érték)

30 Signal Message (SignalMsg) Kernel Kernel objektumok Kernel rendszerhívás Gyorsan és garantáltan akarunk üzenetet küldeni Task-hoz tartozik Akár többször is elküldhetjük Fogadás után nem törlődik, újrafelhasználható Megszakításból való üzenet küldésre Megszakításban nem lehet várakozni

31 Kernel Kernel objektumok Kernel rendszerhívás Interrupt Service Routine (ISR) Hardware megszakítások kezelésére Egy megszakításhoz többet is lehet rendelni Task-hoz tartozik, annak címterében, jogosultságával fut Speciális szál, nem callback Van saját stack-je (tulajdonos Task címteréből) Hívhat rendszerhívásokat, de nem várakozhat Rendszerhívással tér vissza (RetISR) Laphiba vagy várakozás esetén abortálódik

32 Rendszerhívás tulajdonságok Kernel Kernel objektumok Kernel rendszerhívás 60 rendszerhívás Regisztereken keresztüli paraméter és eredmény átadás A kernel nem látja a hívó címterét Laphiba speciális rendszerhívás, blokkolódhat a Thread Kivételek: Thread fogja feldolgozni FPU regiszterek betöltése, kimentése csak szükség esetén Kernel nem használ FPU-t

33 Rendszerhívás felépítés Kernel Kernel objektumok Kernel rendszerhívás Architektúra függő rész (Assembly és C) Rendszerhívás prológus és epilógus Pár funkció csak itt van megvalósítva (pl. RetISR) Magas szintű rendszerhívás függvény (C) Objektumok létrehozás, megszüntetés, módosítás Task-ok, Thread-ek várakoztatása, felélesztése Ütemezés Platform függő részek (csak header, C makrók) Pl. megszakítások száma, regiszterek kiosztása

34 Kernel Kernel objektumok Kernel rendszerhívás Rendszerhívás architektúra függő rész 1 Átlépés rendszer üzemódba (sysenter, syscall, svc,...) 2 Alapvető regiszterek mentése Thread struktúrába 3 Bejövő paraméter vizsgálat (rendszerhívás száma) 4 Futási idő elszámolása 5 Magas szintű rendszerhívás (ASM C) 6 Visszatérési érték értelmezése Kell-e Thread-et (és Task-ot) váltani? Ha váltás van, ütemező hívás (ASM C) Váltás esetében maradék regiszterek mentése 7 Ha kell, akkor virtuális címtér váltás (másik Task) 8 Thread regiszterek visszatöltése, és visszatérés

35 Kernel Kernel objektumok Kernel rendszerhívás Rendszerhívás magas szintű függvény törzs 1 Objektum paraméterek (Handle) vizsgálata Pseudo handle feldolgozás Létezik-e az Objektum? Végrehajtható-e a művelet? Megfelelőek a jogosultságok? 2 Művelet végrehajtása Fel kell ébreszteni alvó szálat? Várakoztatni kell a hívó szálat? Megváltoztak-e a prioritások?

36 Kernel használata Kernel Kernel objektumok Kernel rendszerhívás Feladathoz szabható rendszer A virtuális memória kezelés megléte meghatározó Virtuális memória kezelést nem támogató hardware Kisebb rendszer (Mikrokontrolleres környezet) Sok minden kiesik (nincs laphiba) Virtuális memória kezelést támogató hardware Általános számítógépes környezet (ARM, PPC, x86, x86 64) Teljes értékű nagy rendszer építhető Lehet mindkettőn működő programot írni

37 Tartalom Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés

38 I/O request Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Megnyitott Device példány szükséges hozzá Nagy mennyiségű adat is átküldhető Üzenet küldése a Device-nak T D 0 V max IOreq Device T P 0 V max

39 Device class Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Azonos szerepkörű device-ok (service-ek) közös interfésze DCLS_BLOCK DCLS_FILESYSTEM DCLS_SERVICE... Egy device (service) több class-t is megvalósíthat pl. TCP/IP device: DCLS_TCPIP, DCLS_SERVICE Vannak opcionális parancsok pl. FS_CMD_MKDIR

40 Device Framework Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés A rendszerben sok device driver található Ezek hasonló elven működnek, sok tevékenység ugyanaz Kód újra felhasználás Aszinkron működés Library (static vagy dynamic)

41 Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Opcionális corutin könyvtár (utask) A device framework kiegészítése Device-nak (service) egyszerre nagyon sok tevékenysége lehet Rész tevékenységek, vagy egymásra épülő tevékenységek Nagyon kevés erőforrás szükséges hozzá Corutinok, amik meg tudják őrizni állapotukat (állapotgépek) Szinkronizálhatóak

42 Program loader Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Program indítása: egy leíró küldése a loadersvc-nek Adatszerkezetek előálĺıtása, és erőforrások foglalása Szükséges view-ok készítése Szükség esetén page fault exception handler installálása Program betöltése page fault-ok mentén Kód relokálása (reloc info kell az ELF-be) Külső szimbólumok (weak, undef) feloldása libsvc-vel Rendszerhívások külön shared view-ban (Intel vs AMD)

43 Loader: crt0 Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Mindenképpen része a programnak (mindig static library) Legalapvetőbb tevékenységek elvégzése crt inicializálása main meghívása crt takarító eljárásának meghívása

44 Loader: crt Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Nagyobb library (lehet dinamikus is) Heap méret beálĺıtása libc kontextus és kivételkezelők inicializálása Parancssori argumentumok előfeldolgozása Task név beálĺıtása (később)

45 bootfs és cpio Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Az adatok bootfs-en tárolódnak bootloader.ini Rendszer image-ek: *.cpio.xz Multi-config image Tartalma teljes egészében a /run alá kerül (tmpfs) Alapvető device-ok IDE, SATA vezérlő Network driver-ek, TCP/IP service VFS, file rendszerek Config-ok, script-ek, devman ini-k

46 Config script Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Egyszerű szintaxis (értékadás, szekvencia és elágazás) Alapműveletek elvégzése egész számokon String konkatenáció Konverziók Programindítás Műveletek a registry-vel: kulcs létrehozás kulcsra várakozás kulcs törlés A device manager script nyelve

47 Device manager Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Supervisor A detektorok információi ide futnak be Programok (újra)indítása Függőségek kezelése A futtatási környezet egyszer értékelődik ki Config script-ek futtatása File rendszer interface: /dev Karakter és blokk device-ok listázása

48 Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés /$ ls -l /dev dr-xr-xr-x 1 root root :26:56 detectors dr-xr-xr-x 1 root root :26:56 iniroot crw-rw-rw- 1 root root :26:56 null dr-xr-xr-x 1 root root :26:56 programs c root root :26:57 ptmx drwxrwxrwx 1 root root :26:56 pts crw-rw-rw- 1 root root :26:56 random brw-rw-rw- 1 root root :26:56 sata0n0 brw-rw-rw- 1 root root :26:56 sata0n1 brw-rw-rw- 1 root root :26:56 sata0n2 lrwxrwxrwx 1 root root :26:56 tty -> /dev/pts/0 crwxrwxrwx 1 root root :26:57 tty0 crw-rw-rw- 1 root root :26:56 ttys0 crw-rw-rw- 1 root root :26:56 urandom crw-rw-rw- 1 root root :26:56 zero

49 Detektorok Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Hardware konfiguráció detektálása (ACPI, PCI) Másra is használható Statikus (PCI) és dinamikus (USB) detektálások A device manager-nek küldi el A detektált hardware meghajtója kommunikálhat a detektorával Szabványos interface

50 Detektorok (xen példa) Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés

51 Registry Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Futási idejű információk szálbiztos megosztása task lista device lista Értesítési mechanizmus Típusok: dir, tmp, int, bin Szerializálhatóság Guarded key

52 Registry guarded key Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés A registry kulcsnak lehet egy tulajdonosa A tulajdonos egy megnyitott registry példány A példány bezáródásakor a kulcs automatikusan törlődik Felhasználás: task lista, device lista

53 Registry Watch Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Registry bejegyzésekre A watch mélysége beálĺıtható Kulcs vagy részfa megváltozása esetén üzenetet küld Üzenet típusok: módosítás és törlés Felhasználás: IPC ( globális változó helyett)

54 Library Service Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Program méretét növeli a static library Érdemes a programkönyvtárat külön tenni Dinamikus hozzászerkesztés: dynamic library Input adat: Shared Executable (sx) Szimbólumok feloldása Szükség esetén library megosztása a klienssel

55 Shared Executable (sx) Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Stateless (shared) Nincs relokálás Nincs allokálás Korlátozott Nem lehet állapota Stateful (mapped) GOT/PLT relokálása.data,.bss allokálás Univerzális Tárolhat állapotot

56 Library példa (1) Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés

57 Library példa (2) Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés

58 Library példa (3) Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés

59 Library példa (4) Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés

60 VFS Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés A file system inferfészek nagyon alacsony szintűek Egységes felület kell Elég a VFS gyökerét ismerni Könyvtár bejegyzések cache-elése File system-ek felé csak entry id (inode) Speciális bejegyzések: char, block, fifo, socket

61 File system service Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Class: DCLS_FILESYSTEM Különböző file system-ek közös interfésze tmpfs ext2 ffs bootfs FAT32 Nem feltétlenül valósít meg minden műveletet Összekötés blokk vagy flash device-szal Mindegyik a VFS-en keresztül érhető el

62 Network interface Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Ethernet és Wi-Fi Adatcsomagok küldése megadott MAC címre A hogyan nem érdekes Közös interfész: DCLS_NETIFACE Speciális műveletek (NIF_CMD_GETOPT, NIF_CMD_SETOPT)

63 TCP/IP stack Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Network interfészek felhasználása Absztrakciós réteg Robusztus, moduláris és testreszabható IPv4 üzenetek küldése ICMP UDP TCP Alkalmazás szintű protokollok DNS DHCP Adatok perzisztálása a registry segítségével

64 SystemService Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Minden task megszűnésére feliratkozik (üzenet küldés) Programok exit code-jának kezelése Várakozás program befejeződésére Device-ok értesítése task törlődéséről Megnyitott device példányok automatikus bezárása Kevés program kerül explicit interakcióba vele

65 telnetd Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Telnet daemon Fejlesztéshez kellett Egyszerű Alacsony erőforrás igény Megbízható (TCP) Tesztnek is kiváló

66 httpd Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Hypertext Transfer Protocol FastCGI (és CGI) támogatás Többszálú request feldolgozás FastCGI programok automatikus betöltése és cache-elése FastCGI-k újra felhasználhatók

67 ftpd Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés File Transfer Protocol Újra fordított binárisokat gyorsan kellett másolni TFTP kényelmetlen és nem megbízható httpd-hez hasonlóan többszálú Nem titkosított

68 HTTP kérés kiszolgálása Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés

69 pkman Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Package manager Teljesen C-ben íródott.pkg.cpio.xz formátum Integritás: SHA-256 Verifikálás: digitális aláírás (RSA, 2048+) Az alpm és a pacman ihlette Nem kell minden programnak saját update mechanizmus

70 makepk Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés pkman-kompatibilis package előálĺıtása Különböző sémák A package formátum is paraméter Feladata: Külső tool-ok meghívása (build) Package leíró (integritás, aláírás) cpio összeálĺıtása Tömörítés (xz)

71 barsh Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés A bash egy egyszerűsített verziója Nincs központi szerepe Automatikus- és környezeti változók kezelése Shell script lehetőség Figyelembe veszi a shebang-et (interpreter választás) Minimális a beépített parancskészlet

72 utibox Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Unix-ból ismert parancsok gyűjteménye ls cp mv Egyetlen program, közös függvények miatt Symlink-ek választják ki az eszközt Program betöltése lustán!

73 sysbox Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Rendszer erőforrásait és kernel objektumait kezeli task threads tview tmemo treereg Egyetlen program, közös függvények miatt Symlink-ek választják ki az eszközt Program betöltése lustán!

74 Dokumentáció Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Dokumentációk rendszerint package-ként: pl: threos-docs, sysbox-docs A dokumentáció frissítése is megoldott Opcionálisan telepíthetőek Rendszerint egyszerű html file-ok Olvashatóak pl. a cat tool-lal

75 I/O request-ekkel Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Teljesen aszinkron programok készítése Központi szereplő a MsgPort lesz Kapcsolat a külvilággal: registry (service) file system (vfs service) socket-ek (tcpip service)

76 POSIX Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés A nyers I/O request-ek mellett nyúltott API Ismertebb, és rengeteg segédanyag elérhető Aszinkron alkalmazások továbbra is készíthetőek: poll A központi szereplő így is a MsgPort lesz! Kapcsolat a külvilággal: C99 és POSIX file API BSD-style socket API

77 Példák Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés Több open source projekt is gond nélkül fordítható joe, tcc, ncurses, links grep, make, sed, yacc Több projekt forrásként érhető el ctris (make-elhető) 2048-c (binárisként is)

78 Konklúzió Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés A alapvetően más alapokra épült Nem Unix/Linux, sem Windows Egységes API előny Fontos a POSIX (és a C89, C99) ismerete

79 Felhasználási terület Alapok Rendszer indulás (boot-olás) Device-ok, service-ek és daemon-ok Alkalmazások és fejlesztés PC-n (de csak x86 64) Beágyazott rendszerekben Kevés erőforrás ARM, PPC pl. OrangePI, de egyedi hardware is Az egész rendszer moduláris!

80 Tartalom Boot Rendszer állapot analizálása

81 Q&A Boot Rendszer állapot analizálása Az eddigiekkel kapcsolatos kérdések.

82 Első fázis Boot Rendszer állapot analizálása Elindul a vas BIOS kiválasztja a boot disk-et MBR betöltése és elindítása Boot partíció kiválasztása PBR betöltése és elindítása Bootloader betöltése és elindítása A bootloader kilistázza a boot-olható konfigurációkat A konfigurációk a bootfs-en találhatóak A mindenképpen a bootfs-ről indul

83 Második fázis Boot Rendszer állapot analizálása A konfigurációhoz tartozó XZ után a bootloader betöltése XZ kitömörítése memóriában CPIO boot.cfg alapján induló kernel image összeálĺıtása Az első modul a kernel A többi modul alapvető szolgáltatásokat valósítanak meg Pl: registry, loader, syslog, early serial, libsvc A kernel után a modulok indítása, melyek párhuzamosan futnak Pl: a devman elkezdi a saját tevékenységét, közben a PCI is végzi a detektálást A devman egyik utolsó target-je a shell

84 readlog Boot Rendszer állapot analizálása A devman tevékenysége (mit indított el) Detektálások Milyen detektált hardware-ek vannak Milyen driver lett hozzárendelve Mely hardware elemhez nem lett driver rendelve TCP/IP események (pl. DHCP log)

85 task Boot Rendszer állapot analizálása Éppen futó task-ok (process-ek) kilistázása -n: task nevének megjelenítése -s: task státusza B: blocked R: ready r: running Z: zombie

86 tview és tmemo Boot Rendszer állapot analizálása Task view-jainak/memo-inak listázása Root jogok szükségesek Task állapotának vizsgálata Allokált és használt memória mennyiége Memory leak detektálásra is használható

87 treereg Boot Rendszer állapot analizálása Registry megjelenítő segédprogram -a: bináris kulcsok ASCII-ként -F: bejegyzés típusa -x: egész számok hexadecimálisként

88 Boot Rendszer állapot analizálása Q&A Köszönjük a figyelmet! andy2@conet.hu baratharon@caesar.elte.hu

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

Demo board. Nagy András. Conet Kft november 29. Nagy András Baráth Áron Kéri Kálmán Conet Kft. 2016. november 29. Tartalom 1 Hardware Software 2 3 Hardware Software Tartalom 1 Hardware Software 2 3 Hardware Software Motiváció Elosztott épületvezérlés

Részletesebben

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

Operációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok: 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

Részletesebben

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

Operációs rendszerek. Az NT folyamatok kezelése Operációs rendszerek Az NT folyamatok kezelése 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. Folyamatok

Részletesebben

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

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1 Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1. A folyamat (processzus, process) fogalma 2. Folyamatok: műveletek, állapotok, hierarchia 3. Szálak (threads)

Részletesebben

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

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1 Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication) 1. A folyamat (processzus, process) fogalma 2. Folyamatok: műveletek, állapotok, hierarchia 3. Szálak (threads)

Részletesebben

Operációs rendszerek III.

Operációs rendszerek III. A WINDOWS NT memóriakezelése Az NT memóriakezelése Memóriakezelő feladatai: Logikai-fizikai címtranszformáció: A folyamatok virtuális címterének címeit megfelelteti fizikai címeknek. A virtuális memóriakezelés

Részletesebben

Architektúra, megszakítási rendszerek

Architektúra, megszakítási rendszerek Architektúra, megszakítási ek Mirıl lesz szó? Megszakítás fogalma Megszakítás folyamata Többszintű megszakítási ek Koschek Vilmos Példa: Intel Pentium vkoschek@vonalkodhu Koschek Vilmos Fogalom A számítógép

Részletesebben

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

Operációs rendszerek. Az NT memóriakezelése Operációs rendszerek MS Windows NT (2000) memóriakezelés Az NT memóriakezelése 32-bites virtuális memóriakezelés: 4 GB-os címtartomány, alapesetben: a fels! 2 GB az alkalmazásoké, az alsó 2 GB az OPR-é.

Részletesebben

Operációs rendszerek. UNIX/Linux fájlrendszerek

Operációs rendszerek. UNIX/Linux fájlrendszerek Operációs rendszerek UNIX/Linux fájlrendszerek Tartalom Linux fájlrendszerek UNIX/Linux fájlrendszerek Szimbolikus linkek Fájlrendszerek csatolása Virtuális fájlrendszer Szuperblokk Inode Objektumok 2

Részletesebben

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

Operációs rendszerek. Windows NT. A Windows NT Operációs rendszerek Windows NT A Windows NT Felépítésében is új operációs rendszer: New Technology (NT) 32-bites Windows-os rendszerek felváltása Windows 2000: NT alapú 1 Operációs rendszerek felépítése

Részletesebben

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

Operációs rendszerek. Folyamatok kezelése a UNIX-ban Operációs rendszerek Folyamatok kezelése a UNIX-ban Folyamatok a UNIX-ban A folyamat: multiprogramozott operációs rendszer alapfogalma - absztrakt fogalom. A gyakorlati kép: egy program végrehajtása és

Részletesebben

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

Autóipari beágyazott rendszerek. Komponens és rendszer integráció Autóipari beágyazott rendszerek és rendszer integráció 1 Magas szintű fejlesztési folyamat SW architektúra modellezés Modell (VFB) Magas szintű modellezés komponensek portok interfészek adattípusok meghatározása

Részletesebben

(kernel3d vizualizáció: kernel245_graph.mpg)

(kernel3d vizualizáció: kernel245_graph.mpg) (kernel3d vizualizáció: kernel245_graph.mpg) http://www.pabr.org/kernel3d/kernel3d.html http://blog.mit.bme.hu/meszaros/node/163 1 (ml4 unix mérés boot demo) 2 UNIX: folyamatok kezelése kiegészítő fóliák

Részletesebben

Matematikai és Informatikai Intézet. 4. Folyamatok

Matematikai és Informatikai Intézet. 4. Folyamatok 4. Folyamatok A folyamat (processzus) fogalma Folyamat ütemezés (scheduling) Folyamatokon végzett "mûveletek" Folyamatok együttmûködése, kooperációja Szálak (thread) Folyamatok közötti kommunikáció 49

Részletesebben

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

OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc - OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc - koczka.ferenc@ektf.hu KÖVETELMÉNYEK GYAKORLATI JEGY: Két zárthelyi dolgozat eredményes megírása. Forrás: http://wiki.koczka.hu ELMÉLETI VIZSGA Az előadások

Részletesebben

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

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft Flash és PHP kommunikáció Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft A lehetőségek FlashVars External Interface Loadvars XML SOAP Socket AMF AMFphp PHPObject Flash Vars Flash verziótól függetlenül

Részletesebben

Operációs rendszerek. Bemutatkozás

Operációs rendszerek. Bemutatkozás Bevezetés az operációs rendszerek világába dr. Benyó Balázs benyo@sze.hu Bemutatkozás www.sze.hu/~benyo 1 Számítógép HW-SW felépítése felhasználó felhasználó felhasználó Operációs rendszer Operációs rendszer

Részletesebben

A számítógép egységei

A számítógép egységei A számítógép egységei A számítógépes rendszer két alapvető részből áll: Hardver (a fizikai eszközök összessége) Szoftver (a fizikai eszközöket működtető programok összessége) 1.) Hardver a) Alaplap: Kommunikációt

Részletesebben

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

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 Processzusok 1 Uniprogramozás Program A futás várakozás futás várakozás Idő A programnak várakoznia kell az I/Outasítások végrehajtására mielőtt továbbfuthatna 2 Multiprogramozás Program A futás vár futás

Részletesebben

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

Operációs rendszerek. A Windows NT felépítése Operációs rendszerek A Windows NT felépítése A Windows NT 1996: NT 4.0. Felépítésében is új operációs rendszer: New Technology (NT). 32-bites Windows-os rendszerek felváltása. Windows 2000: NT alapú. Operációs

Részletesebben

Hardver összetevők ellenőrzése Linux alatt. Hardverguruk előnyben...

Hardver összetevők ellenőrzése Linux alatt. Hardverguruk előnyben... Hardver összetevők ellenőrzése Linux alatt Hardverguruk előnyben... A hardverek támogatottsága A telepítés előtt érdemes meggyőződni arról, hogy a jelenleg használt hardver elemek támogatottak-e a Linux

Részletesebben

BEÁGYAZOTT RENDSZEREK TERVEZÉSE UDP csomag küldése és fogadása beágyazott rendszerrel példa

BEÁGYAZOTT RENDSZEREK TERVEZÉSE UDP csomag küldése és fogadása beágyazott rendszerrel példa BEÁGYAZOTT RENDSZEREK TERVEZÉSE 1 feladat: A Netburner MOD5270 fejlesztőlap segítségével megvalósítani csomagok küldését és fogadását a fejlesztőlap és egy PC számítógép között. megoldás: A fejlesztőlapra,

Részletesebben

Image Processor BarCode Service. Felhasználói és üzemeltetői kézikönyv

Image Processor BarCode Service. Felhasználói és üzemeltetői kézikönyv Image Processor BarCode Service Áttekintés CIP-BarCode alkalmazás a Canon Image Processor programcsomag egyik tagja. A program feladata, hogy sokoldalú eszközt biztosítson képállományok dokumentumkezelési

Részletesebben

Adatbázis és alkalmazás konszolidáció Oracle SPARC T4/5 alapon

Adatbázis és alkalmazás konszolidáció Oracle SPARC T4/5 alapon Adatbázis és alkalmazás konszolidáció Oracle SPARC T4/5 alapon Makár Zénó 2013. október 9. Invigor Informatika Kft 4 éve alakult Oracle Gold Partner HW és SW specializációk Oracle HW Support Provider Szolgáltatások

Részletesebben

Számítógépek felépítése

Számítógépek felépítése Számítógépek felépítése Emil Vatai 2014-2015 Emil Vatai Számítógépek felépítése 2014-2015 1 / 14 Outline 1 Alap fogalmak Bit, Byte, Word 2 Számítógép részei A processzor részei Processzor architektúrák

Részletesebben

2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés

2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés . Számítógépek működési elve Bevezetés az informatikába. előadás Dudásné Nagy Marianna Az általánosan használt számítógépek a belső programvezérlés elvén működnek Külső programvezérlés... Vezérlés elve

Részletesebben

Virtualizációs Technológiák Operációs rendszer szintű virtualizáció Konténerek Forrás, BME-VIK Virtualizációs technológiák

Virtualizációs Technológiák Operációs rendszer szintű virtualizáció Konténerek Forrás, BME-VIK Virtualizációs technológiák Virtualizációs Technológiák Operációs rendszer szintű virtualizáció Konténerek Forrás, BME-VIK Virtualizációs technológiák https://www.vik.bme.hu/kepzes/targyak/vimiav89/ Koncepció Ha megfelel, hogy azonos

Részletesebben

Operációs rendszerek. UNIX fájlrendszer

Operációs rendszerek. UNIX fájlrendszer Operációs rendszerek UNIX fájlrendszer UNIX fájlrendszer Alapegység: a file, amelyet byte-folyamként kezel. Soros (szekvenciális) elérés. Transzparens (átlátszó) file-szerkezet. Link-ek (kapcsolatok) létrehozásának

Részletesebben

386 processzor címzés

386 processzor címzés 386 processzor címzés 0 31 0 31 Báziscím + Offset cím Szegmens regiszter 0 15 16 31 Bázis cím 0..15 Határbitek 0..15 32 39 40 41 44 47 Bázis cím 24..31 G B/D Határbitek 16..1 48 49 50 51 52 54 55 56 63

Részletesebben

Nyíregyházi Egyetem Matematika és Informatika Intézete. Fájl rendszer

Nyíregyházi Egyetem Matematika és Informatika Intézete. Fájl rendszer 1 Fájl rendszer Terminológia Fájl és könyvtár (mappa) koncepció Elérési módok Fájlattribútumok Fájlműveletek ----------------------------------------- Könyvtár szerkezet -----------------------------------------

Részletesebben

Norway Grants. Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai. Kakuk Zoltán, Vision 95 Kft.

Norway Grants. Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai. Kakuk Zoltán, Vision 95 Kft. Norway Grants AKKUMULÁTOR REGENERÁCIÓS ÉS Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai Kakuk Zoltán, Vision 95 Kft. 2017.04.25. Rendszer szintű megoldás

Részletesebben

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

Kommunikáció. 3. előadás Kommunikáció 3. előadás Kommunikáció A és B folyamatnak meg kell egyeznie a bitek jelentésében Szabályok protokollok ISO OSI Többrétegű protokollok előnyei Kapcsolat-orientált / kapcsolat nélküli Protokollrétegek

Részletesebben

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

Szenzorhálózatok programfejlesztési kérdései. Orosz György Szenzorhálózatok programfejlesztési kérdései Orosz György 2011. 09. 30. Szoftverfejlesztési alternatívák Erőforráskorlátok! (CPU, MEM, Energia) PC-től eltérő felfogás: HW közeli programozás Eszközök közvetlen

Részletesebben

Utolsó módosítás:

Utolsó módosítás: Utolsó módosítás: 2011. 09. 08. 1 A tantárggyal kapcsolatos adminisztratív kérdésekkel Micskei Zoltánt keressétek. 2 3 4 5 6 7 8 9 10 11 12 13 14 Erősen buzzword-fertőzött terület, manapság mindent szeretnek

Részletesebben

TI TMDSEVM6472 rövid bemutatása

TI TMDSEVM6472 rövid bemutatása 6.6.1. Linux futtatása TMDSEVM6472 eszközön TI TMDSEVM6472 rövid bemutatása A TMDSEVM6472 az alábbi fő hardver paraméterekkel rendelkezik: 1db fix pontos, több magos (6 C64x+ mag) C6472 DSP 700MHz 256MB

Részletesebben

Dr. Schuster György október 30.

Dr. Schuster György október 30. Real-time operációs rendszerek RTOS 2015. október 30. Jellemzők ONX POSIX kompatibilis, Jellemzők ONX POSIX kompatibilis, mikrokernel alapú, Jellemzők ONX POSIX kompatibilis, mikrokernel alapú, nem kereskedelmi

Részletesebben

IP alapú komunikáció. 2. Előadás - Switchek 2 Kovács Ákos

IP alapú komunikáció. 2. Előadás - Switchek 2 Kovács Ákos IP alapú komunikáció 2. Előadás - Switchek 2 Kovács Ákos PoE Power Over Ethernet Még jobban előtérbe került a IoT kapcsán WAP, IP telefon, Térfigyelő kamerák tápellátása Résztvevők: PSE - Power Source

Részletesebben

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

Informatikai Rendszerek Intézete Gábor Dénes Foiskola. Operációs rendszerek - 105 1. oldal LINUX 1. oldal LINUX 2. oldal UNIX történet Elozmény: 1965 Multics 1969 Unix (Kernighen, Thompson) 1973 Unix C nyelven (Ritchie) 1980 UNIX (lényegében a mai forma) AT&T - System V Microsoft - Xenix Berkeley

Részletesebben

Hálózati architektúrák laborgyakorlat

Hálózati architektúrák laborgyakorlat Hálózati architektúrák laborgyakorlat 10. hét Dr. Orosz Péter, Skopkó Tamás 2012. szeptember A Unix (C) socket A kommunikációt lehetővé tevő programozási eszköz UNIX fájlleíró (ld. minden egy fájl filozófia)

Részletesebben

UNIX: folyamatok kommunikációja

UNIX: folyamatok kommunikációja UNIX: folyamatok kommunikációja kiegészítő fóliák az előadásokhoz Mészáros Tamás http://home.mit.bme.hu/~meszaros/ Budapesti Műszaki Egyetem Méréstechnika és Információs Rendszerek Tanszék 1 A kommunikáció

Részletesebben

Utolsó módosítás:

Utolsó módosítás: Utolsó módosítás: 2012. 09. 06. 1 A tantárggyal kapcsolatos adminisztratív kérdésekkel Micskei Zoltánt keressétek. 2 3 4 5 6 7 8 9 Forrás: Gartner Hype Cycle for Virtualization, 2010, http://premierit.intel.com/docs/doc-5768

Részletesebben

Szoftver Tervezési Dokumentáció. Nguyen Thai Binh

Szoftver Tervezési Dokumentáció. Nguyen Thai Binh Szoftver Tervezési Dokumentáció Nguyen Thai Binh April 2010 1. fejezet Feladat Szimulációs feladat. Célja, hogy reprezentáljunk egy több komponensből álló alkalmazást, amely a megadott témakörnek megfelel,

Részletesebben

Hálózati operációs rendszerek II.

Hálózati operációs rendszerek II. Hálózati operációs rendszerek II. Novell Netware 5.1 Web-es felügyelet, DNS/DHCP szerver, mentési alrendszer 1 Web-es felügyelet Netware Web Manager HTTPS protokollon keresztül pl.: https://fs1.xy.hu:2200

Részletesebben

Hálózati architektúrák és Protokollok GI 8. Kocsis Gergely

Hálózati architektúrák és Protokollok GI 8. Kocsis Gergely Hálózati architektúrák és Protokollok GI 8 Kocsis Gergely 2018.11.12. Knoppix alapok Virtuális gép létrehozása VirtualBox-ban (hálózatelérés: bridge módban) Rendszerindítás DVD-ről vagy ISO állományból

Részletesebben

Programozás alapjai. 10. előadás

Programozás alapjai. 10. előadás 10. előadás Wagner György Általános Informatikai Tanszék Pointerek, dinamikus memóriakezelés A PC-s Pascal (is) az IBM PC memóriáját 4 fő részre osztja: kódszegmens adatszegmens stackszegmens heap Alapja:

Részletesebben

6.2. TMS320C64x és TMS320C67xx DSP használata

6.2. TMS320C64x és TMS320C67xx DSP használata 6.2. TMS320C64x és TMS320C67xx DSP használata 6.2.1. bemutatása TI Davinci DM6446 EVM rövid A Davinci DM6446 EVM az alábbi fő hardver paraméterekkel rendelkezik: 1db ARM 9 CPU (ARM926EJ) 1db C64x DSP 4MB

Részletesebben

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

Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon Mi az IMDG? Nem memóriában futó relációs adatbázis NoSQL hagyományos relációs adatbázis Más fajta adat tárolás Az összes adat RAM-ban van, osztott

Részletesebben

Hálózatok építése és üzemeltetése

Hálózatok építése és üzemeltetése Hálózatok építése és üzemeltetése Linux 1 Rendszergazda jogosultságok (Fehér Gábor slide-jai) 2 Root jogosultságok Többfelhasználós rendszerekben adminisztrációs teendők Felhasználók menedzselése Külső

Részletesebben

Kommunikációs rendszerek programozása. Switch-ek

Kommunikációs rendszerek programozása. Switch-ek Kommunikációs rendszerek programozása ről általában HUB, Bridge, L2 Switch, L3 Switch, Router 10/100/1000 switch-ek, switch-hub Néhány fontosabb működési paraméter Hátlap (backplane) sávszélesség (Gbps)

Részletesebben

Konkurens TCP Szerver

Konkurens TCP Szerver A gyakorlat célja: Konkurens TCP Szerver Megismerkedni a párhuzamos programozás és a konkurens TCP szerver készítésének az elméleti és gyakorlati alapjaival és egy egyidejűleg több klienst is kiszolgáló

Részletesebben

Digitális rendszerek. Digitális logika szintje

Digitális rendszerek. Digitális logika szintje Digitális rendszerek Digitális logika szintje CPU lapkák Mai modern CPU-k egy lapkán helyezkednek el Kapcsolat a külvilággal: kivezetéseken (lábak) keresztül Cím, adat és vezérlőjelek, ill. sínek (buszok)

Részletesebben

Kommunikáció. Távoli eljáráshívás. RPC kommunikáció menete DCE RPC (1) RPC - paraméterátadás. 3. előadás Protokollok. 2. rész

Kommunikáció. Távoli eljáráshívás. RPC kommunikáció menete DCE RPC (1) RPC - paraméterátadás. 3. előadás Protokollok. 2. rész 3. előadás Protokollok Kommunikáció 2. rész RPC (Remote Procedure Call) távoli eljáráshívás RMI (Remote Method Invocation) távoli metódushívás MOM (Message-Oriented Middleware) üzenetorientált köztesréteg

Részletesebben

Programmable Chip. System on a Chip. Lazányi János. Tartalom. A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban?

Programmable Chip. System on a Chip. Lazányi János. Tartalom. A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban? System on a Chip Programmable Chip Lazányi János 2010 Tartalom A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban? Page 2 1 A hagyományos technológia Elmosódó határvonalak ASIC

Részletesebben

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

C# Szálkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés 2013 1 / 21 C# Szálkezelés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés 2013 1 / 21 Tartalomjegyzék 1 Bevezetés 2 Szálkezelés 3 Konkurens Programozás Tóth Zsolt (Miskolci Egyetem)

Részletesebben

Számítógép felépítése

Számítógép felépítése Alaplap, processzor Számítógép felépítése Az alaplap A számítógép teljesítményét alapvetően a CPU és belső busz sebessége (a belső kommunikáció sebessége), a memória mérete és típusa, a merevlemez sebessége

Részletesebben

Dr. Schuster György október 14.

Dr. Schuster György október 14. Real-time operációs rendszerek RTOS 2011. október 14. A fordítás vázlata prog.c Előfeldolgozó Átmenti állomány Fordító prog.obj más.obj-tek könyvtárak indító kód Linker futtatható kód Ismétlés Előfeldolgozó

Részletesebben

Elosztott rendszerek

Elosztott rendszerek Elosztott rendszerek NGM_IN005_1 Konkurrens folyamatok Folyamat koncepció Adatok (információ reprezetáció) M!veletek (input->output) Számítás (algoritmus) Program (formális nyelv) Folyamat (végrehajtás

Részletesebben

Utolsó módosítás:

Utolsó módosítás: Utolsó módosítás:2010. 09. 15. 1 2 Kicsit konkrétabban: az utasítás hatására a belső regiszterek valamelyikének értékét módosítja, felhasználva regiszter értékeket és/vagy kívülről betöltött adatot. A

Részletesebben

Könyvtári címkéző munkahely

Könyvtári címkéző munkahely Könyvtári címkéző munkahely Tartalomjegyzék A RENDSZER HARDVER ELEMEI...3 1 RFID CÍMKÉK... 3 2 RFID ASZTALI OLVASÓ... 3 A RENDSZER SZOFTVER ELEMEI... 4 1 KÖNYV CÍMKÉZŐ MUNKAÁLLOMÁS... 4 2 A PC- S SZOFTVEREK

Részletesebben

Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb

Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb Input és Output 1 Bevitel-Kivitel Eddig a számítógép agyáról volt szó Processzusok, memória, stb Szükség van eszközökre Adat bevitel és kivitel a számitógépből, -be Perifériák 2 Perifériákcsoportosításá,

Részletesebben

Adatbányászat és Perszonalizáció architektúra

Adatbányászat és Perszonalizáció architektúra Adatbányászat és Perszonalizáció architektúra Oracle9i Teljes e-üzleti intelligencia infrastruktúra Oracle9i Database Integrált üzleti intelligencia szerver Data Warehouse ETL OLAP Data Mining M e t a

Részletesebben

Szkriptnyelvek. 1. UNIX shell

Szkriptnyelvek. 1. UNIX shell Szkriptnyelvek 1. UNIX shell Szkriptek futtatása Parancsértelmez ő shell script neve paraméterek shell script neve paraméterek Ebben az esetben a szkript tartalmazza a parancsértelmezőt: #!/bin/bash Szkriptek

Részletesebben

Párhuzamos programozási platformok

Párhuzamos programozási platformok Párhuzamos programozási platformok Parallel számítógép részei Hardver Több processzor Több memória Kapcsolatot biztosító hálózat Rendszer szoftver Párhuzamos operációs rendszer Konkurenciát biztosító programozási

Részletesebben

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

2. Folyamatok. Operációs rendszerek. Folyamatok. Bevezetés. 2.1. Folyamatkezelés multiprogramozott rendszerekben. Folyamatok modellezése Operációs rendszerek 2. Folyamatok Simon Gyula 2. Folyamatok Bevezetés Folyamatkezelés multiprogramozott rendszerben Környezet váltás Folyamatleírók, I/O leírók Szálak Megszakítások Felhasznált irodalom:

Részletesebben

S04-2 Elosztott alkalmazások készítése

S04-2 Elosztott alkalmazások készítése S04-2 Elosztott alkalmazások készítése Tartalom 1. Többrétegű architektúra, elosztott szerveroldal 2. Kommunikációs eszközök: távolieljárás-hívás és üzenet alapú infrastruktúra (point-to-point és publish-subscribe

Részletesebben

5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix

5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix 2. Adattípusonként különböző regisztertér Célja: az adatfeldolgozás gyorsítása - különös tekintettel a lebegőpontos adatábrázolásra. Szorzás esetén karakterisztika összeadódik, mantissza összeszorzódik.

Részletesebben

Arduino bevezető Szenzorhálózatok és alkalmazásaik

Arduino bevezető Szenzorhálózatok és alkalmazásaik Arduino bevezető Szenzorhálózatok és alkalmazásaik VITMMA09 Okos város MSc mellékspecializáció Mi az Arduino? Nyílt hardver és szoftver platform 8 bites Atmel mikrokontroller köré építve Ökoszisztéma:

Részletesebben

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:

Részletesebben

Operációs Rendszerek II.

Operációs Rendszerek II. Operációs Rendszerek II. Második előadás Első verzió: 2004/2005. I. szemeszter Ez a verzió: 2009/2010. II. szemeszter Visszatekintés Visszatekintés Operációs rendszer a számítógép hardver elemei és az

Részletesebben

Enterprise JavaBeans 1.4 platform (EJB 2.0)

Enterprise JavaBeans 1.4 platform (EJB 2.0) Enterprise JavaBeans 1.4 platform (EJB 2.0) Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11.13. Az Enterprise JavaBeans Az Enterprise Javabeans Az Enterprise JavaBeans

Részletesebben

Operációs rendszerek. Az X Window rendszer

Operációs rendszerek. Az X Window rendszer Operációs rendszerek X Windows rendszer Az X Window rendszer Grafikus felhasználói felületet biztosító alkalmazás és a kapcsolódó protokoll 1983-84: a Massachusetts Institute of Technology-n (MIT, USA).

Részletesebben

Az internet ökoszisztémája és evolúciója. Gyakorlat 1

Az internet ökoszisztémája és evolúciója. Gyakorlat 1 Az internet ökoszisztémája és evolúciója Gyakorlat 1 GNS3: installálás és konfiguráció GNS3: hálózatszimulátor Valódi router/hoszt image-ek hálózatba kapcsolása emulált linkeken keresztül: CISCO, Juniper,

Részletesebben

Operációs rendszerek. 4. gyakorlat. BASH bevezetés, script írása, futtatása UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Operációs rendszerek. 4. gyakorlat. BASH bevezetés, script írása, futtatása UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED BASH bevezetés, script írása, futtatása Operációs rendszerek 4. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Csuvik

Részletesebben

ARM Cortex magú mikrovezérlők. mbed

ARM Cortex magú mikrovezérlők. mbed ARM Cortex magú mikrovezérlők mbed Scherer Balázs Budapest University of Technology and Economics Department of Measurement and Information Systems BME-MIT 2016 MBED webes fejlesztőkörnyezet 2009-ben megjelent

Részletesebben

Mikrorendszerek tervezése

Mikrorendszerek tervezése BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Mikrorendszerek tervezése Beágyazott rendszerek Fehér Béla Raikovich Tamás

Részletesebben

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama 10. évfolyam: 105 óra 11. évfolyam: 140 óra 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra 36 óra OOP 14 óra Programozási

Részletesebben

CISCO gyakorlati segédlet. Összeállította: Balogh Zoltán

CISCO gyakorlati segédlet. Összeállította: Balogh Zoltán CISCO gyakorlati segédlet Összeállította: Balogh Zoltán 2 1. Forgalomirányítók alapszintű konfigurálása Hostname megadása: (config)#hostname LAB_A Konzol és telnet kapcsolatok jelszavainak megadása: (config)#line

Részletesebben

Java I. A Java programozási nyelv

Java I. A Java programozási nyelv Java I. A Java programozási nyelv története,, alapvető jellemzői Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2007. 02. 12. Java I.: Történet, jellemzők, JDK JAVA1 / 1 Egy kis történelem

Részletesebben

Operációs rendszerek Folyamatok 1.1

Operációs rendszerek Folyamatok 1.1 Operációs rendszerek p. Operációs rendszerek Folyamatok 1.1 Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA ÉS ÁLTALÁNOS TECHNIKA TANSZÉK A rendszermag Rendszermag

Részletesebben

Concurrency in Swing

Concurrency in Swing Concurrency in Swing A szálkezelés a swing alkalmazásokban is fontos. Cél egy olyan felhasználói felület készítése, amely soha nem fagy, mindig válaszol a felhasználói interakciókra, bármit is csináljon

Részletesebben

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT Eddig Tetszőleges

Részletesebben

Digitális technika VIMIAA01 9. hét

Digitális technika VIMIAA01 9. hét BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT Eddig Tetszőleges

Részletesebben

BMD Rendszerkövetelmények

BMD Rendszerkövetelmények BMD Rendszerkövetelmények Rendszerkövetelmények BMD 1. SZERVER Az alábbiakban áttekintést nyerhet azokról a szerver rendszerkövetelményekről, melyek szükségesek a BMD zavartalan működéséhez. Ezen felül

Részletesebben

Laborsegédlet 3. Labor

Laborsegédlet 3. Labor 1/6. oldal Logisztikai rendszerek irányítás és automatizálás technikája I. CX-Programmer: 3. Labor A CX Programmer az OMRON PLC-k programozó szoftvere. Új program megnyitásának lépései: FILE NEW Device

Részletesebben

Számítógépes munkakörnyezet II. Szoftver

Számítógépes munkakörnyezet II. Szoftver Számítógépes munkakörnyezet II. Szoftver A hardver és a felhasználó közötti kapcsolat Szoftverek csoportosítása Számítógép működtetéséhez szükséges szoftverek Operációs rendszerek Üzemeltetési segédprogramok

Részletesebben

Everything Over Ethernet

Everything Over Ethernet Everything Over Ethernet Következő Generációs Adatközpontok felépítése Lenkei Árpád Arpad.Lenkei@snt.hu 2009. November 12. www.snt-world.com 0 0 Tartalom Adatközpont 3.0 Migráció fázisai, kihívások Építőelemek

Részletesebben

1. Kapcsolók konfigurálása

1. Kapcsolók konfigurálása 1. Kapcsolók konfigurálása Üzemmódok: Felhasználói Privilegizált Globális konfigurációs váltás: enable (en), váltás: exit váltás: configure terminal (conf t), váltás: exit váltás: változó, váltás: exit,

Részletesebben

Számítógépes Hálózatok. 5. gyakorlat

Számítógépes Hálózatok. 5. gyakorlat Számítógépes Hálózatok 5. gyakorlat PYTHON ALAPOK V. Socket programozás, UDP 2 Óra eleji kiszh Elérés: https://canvas.elte.hu Számítógépes Hálózatok Gyakorlat 1 3 A kommunikációs csatorna kétféle típusa

Részletesebben

Operációs rendszerek 1.

Operációs rendszerek 1. Operációs rendszerek 1. Fájlkezelés Balla Tibor balla.tibor@inf.unideb.hu Fájlrendszer: Könyvtárak és Fájlok Inode szuperblokk inode tábla tényleges lemezterület inode = index-node Az inode tábla egy fix

Részletesebben

Az interrupt Benesóczky Zoltán 2004

Az interrupt Benesóczky Zoltán 2004 Az interrupt Benesóczky Zoltán 2004 1 Az interrupt (program megszakítás) órajel generátor cím busz környezet RESET áramkör CPU ROM RAM PERIF. adat busz vezérlõ busz A periféria kezelés során információt

Részletesebben

Operációs rendszerek. A védelem célja. A fenyegetés forrásai. Védelmi tartományok. Belső biztonság. Tartalom

Operációs rendszerek. A védelem célja. A fenyegetés forrásai. Védelmi tartományok. Belső biztonság. Tartalom Tartalom Operációs rendszerek 12. Az operációs rendszerek biztonsági kérdései Simon Gyula A védelem célja A fenyegetés forrásai Belső biztonság Külső biztonság Felhasznált irodalom: Kóczy-Kondorosi (szerk.):

Részletesebben

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem A Java EE 5 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2008. 04. 17. A Java EE 5 platform A Java EE 5 plattform A J2EE 1.4 után következő verzió. Alapvető továbbfejlesztési

Részletesebben

A Java EE 5 plattform

A Java EE 5 plattform A Java EE 5 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11. 13. A Java EE 5 platform A Java EE 5 plattform A J2EE 1.4 után következő verzió. Alapvető továbbfejlesztési

Részletesebben

Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs

Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs Szoftver labor III. Dr. Csébfalvi Balázs Irányítástechnika és Informatika Tanszék e-mail: cseb@iit.bme.hu http://www.iit.bme.hu/~cseb/ Tematika Bevezetés Java programozás alapjai Kivételkezelés Dinamikus

Részletesebben

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

Tartalomjegyzék. Előszó... 10 Előszó... 10 1. Bevezetés a Symbian operációs rendszerbe... 11 1.1. Az operációs rendszer múltja...11 1.2. Az okos telefonok képességei...12 1.3. A Symbian felépítése...15 1.4. A könyv tartalma...17 2.

Részletesebben

Operációs rendszerek. A Windows NT

Operációs rendszerek. A Windows NT Operációs rendszerek Windows NT A Windows NT Felépítésében is új operációs rendszer: New Technology (NT) 32-bites Windows-os rendszerek felváltása Windows 2000: NT alapú Operációs rendszerek felépítése

Részletesebben

1. Az Android platform bemutatása (Ekler Péter)... 1 1.1. Az Android sikerességének okai... 1 1.2. Az Android platform története... 3 1.3. Android-verziók... 5 1.4. Android Market (Google Play)... 13 1.5.

Részletesebben

Kommunikáció. Folyamatok közötti kommunikáció. Minden elosztott rendszer alapja

Kommunikáció. Folyamatok közötti kommunikáció. Minden elosztott rendszer alapja Kommunikáció Folyamatok közötti kommunikáció Minden elosztott rendszer alapja Marshalling Alap primitívek Direkt, indirekt portok Blokkolás, nem blokkolás Pufferelés Megbízhatóság RPC Az RPC jellemzői

Részletesebben

Hálózati architektúrák és Protokollok GI 7. Kocsis Gergely

Hálózati architektúrák és Protokollok GI 7. Kocsis Gergely Hálózati architektúrák és Protokollok GI 7 Kocsis Gergely 2017.05.08. Knoppix alapok Virtuális gép létrehozása VirtualBox-ban (hálózatelérés: bridge módban) Rendszerindítás DVD-ről vagy ISO állományból

Részletesebben

Párhuzamos programozási platformok

Párhuzamos programozási platformok Párhuzamos programozási platformok Parallel számítógép részei Hardver Több processzor Több memória Kapcsolatot biztosító hálózat Rendszer szoftver Párhuzamos operációs rendszer Konkurenciát biztosító programozási

Részletesebben