User Tools

Site Tools


tanszek:oktatas:szamitastechnika:szoftver_alapismeretek

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tanszek:oktatas:szamitastechnika:szoftver_alapismeretek [2025/09/16 19:18] – [2. Rendszerszoftverek, operációs rendszerek] kneheztanszek:oktatas:szamitastechnika:szoftver_alapismeretek [2026/09/15 21:27] (current) – knehez
Line 1: Line 1:
-===== 1. Szoftver alapismeretek =====+===== 1. A szoftver szerepe és fő típusai =====
  
-A számítógép működését két fő tényező határozza meg: +=== 1.1 Mit nevezünk szoftvernek? ===
-  * **Hardver** – a fizikai eszközök (processzor, memória, háttértár, perifériák). +
-  * **Szoftver** – a programok és adatok összessége, amelyek a hardvert működtetik.+
  
-A szoftver feladata: a hardver erőforrásainak vezérlése és a felhasználó számára értelmezhető szolgáltatások biztosítása.   +A **szoftver** a számítógépes rendszer működését meghatározó programok, adatok, beállítások és kapcsolódó dokumentáció összessége. A hardver fizikai eszköz, a szoftver pedig azt írja elő, hogy a hardver milyen feladatot és hogyan hajtson végre. 
-A számítógép használhatóságát nagymértékben a szoftver határozza meg.[1]+ 
 +Ugyanaz a hardver különböző szoftverekkel eltérő célokra használható. Egy ipari számítógép például működhet gépvezérlőként, mérési adatgyűjtőként vagy képfeldolgozó állomásként. 
 + 
 +A legtöbb számítógépen a felhasználó és a hardver között több szoftverréteg található:
  
 <mermaid> <mermaid>
-flowchart LR +flowchart TD 
-    HW[Hardver] --> OS[Operációs rendszer] +    U[Felhasználó] <--> A[Alkalmazói\nszoftver] 
-    OS --> APP[Alkalmazások] +    A <--> OS[Operációs\nrendszer] 
-    APP --> USER[Felhasználó] +    OS <--> D[Eszközmeghajtók] 
-    USER --> APP +    D <--> H[Hardver]
-    APP --> OS +
-    OS --> HW+
 </mermaid> </mermaid>
  
-=== 1.1 A szoftver fogalma === +Egyes beágyazott vezérlőkön nincs általános célú operációs rendszer: a vezérlőprogram közvetlenül vagy egy kis valós idejű rendszeren keresztül kezeli a hardvert.
-  * A **szoftver** olyan programok és adatok összessége, amelyek a hardveren futnak és konkrét feladatokat látnak el. +
-  * A szoftver mindig a hardverhez kötődik, de ugyanaz a szoftver különböző hardverplatformokon is megjelenhet (pl. Windows, Linux, macOS). +
-  * A szoftver jellemzői: +
-    - nem kézzel fogható, hanem logikai entitás, +
-    - fejlesztők készítik (programozás útján), +
-    - a futtatáshoz megfelelő hardver és operációs rendszer szükséges.+
  
 === 1.2 A szoftverek fő csoportjai === === 1.2 A szoftverek fő csoportjai ===
-  * **Rendszerszoftverek** – az alapvető működést biztosítják (pl. operációs rendszer, driverek). 
-  * **Alkalmazói szoftverek** – konkrét felhasználói feladatok elvégzésére szolgálnak (pl. CAD, szövegszerkesztő). 
-  * **Fejlesztői szoftverek** – programok létrehozására szolgálnak (pl. fordítók, IDE-k). 
  
-<mermaid> +  * **Rendszerszoftver:** működteti a számítógépet és kezeli az erőforrásokat. Ide tartozik az operációs rendszer, az eszközmeghajtó és a firmware egy része. 
-graph TD +  * **Alkalmazói szoftver:** a felhasználó konkrét feladatát támogatja, például dokumentumkészítést, tervezést, mérést vagy szimulációt. 
-    SZOFT[Szoftver] --> REND[Rendszerszoftver] +  * **Fejlesztői szoftver:** más programok, automatizmusok és vezérlések létrehozását, tesztelését és karbantartását segíti. 
-    SZOFT --> ALK[Alkalmazói szoftver] + 
-    SZOFT --> FEJL[Fejlesztői szoftver] +A csoportok határa nem mindig éles. Egy MATLAB- vagy LabVIEW-rendszer egyszerre lehet kész mérnöki alkalmazás és saját modellek, illetve mérési folyamatok fejlesztési környezete. 
-</mermaid>+ 
 +=== 1.3 Szoftverrétegek egy ipari példán === 
 + 
 +Egy kamerás minőség-ellenőrző állomáson: 
 + 
 +  - a kamera firmware-e működteti az eszközt; 
 +  - az eszközmeghajtó kapcsolatot teremt a kamera és az operációs rendszer között; 
 +  - a képfeldolgozó alkalmazás megkeresi a hibákat; 
 +  - az adatbázis eltárolja az eredményeket; 
 +  - a kezelőfelület jelzi a gépkezelőnek, ha selejt keletkezett. 
 + 
 +Az egész rendszer csak akkor működik jól, ha a rétegek verziói, interfészei és beállításai összeillenek. 
 + 
 +===== 2. Rendszerszoftverek és operációs rendszerek ===== 
 + 
 +=== 2.1 Az operációs rendszer feladatai === 
 + 
 +Az **operációs rendszer (OS)** közös környezetet biztosít az alkalmazások számára, és összehangolja a hardver használatát. 
 + 
 +  * **Folyamatkezelés:** elosztja a processzor idejét a futó programok között. 
 +  * **Memóriakezelés:** memóriaterületet rendel a programokhoz, és védi őket egymástól. 
 +  * **Fájl- és háttértárkezelés:** fájlokba és könyvtárakba szervezi az adatokat. 
 +  * **Eszközkezelés:** illesztőprogramokon keresztül kezeli a perifériákat. 
 +  * **Felhasználó- és jogosultságkezelés:** szabályozza, ki milyen erőforráshoz férhet hozzá. 
 +  * **Hálózati szolgáltatások:** biztosítja a hálózati kommunikáció alapjait. 
 +  * **Felhasználói felület:** grafikus felületet és gyakran parancssort is nyújt. 
 + 
 +Az **eszközmeghajtó** egy adott hardver kezelését teszi lehetővé. Ha például egy mérőkártyához nincs megfelelő illesztőprogram az adott operációs rendszerhez, az eszköz fizikailag csatlakoztatható, de nem biztos, hogy használható. 
 + 
 +=== 2.2 Operációs rendszerek felhasználási terület szerint === 
 + 
 +^ Rendszertípus ^ Jellemző felhasználás ^ Fontos szempont ^ 
 +| Asztali rendszer | Irodai munka, CAD, mérnöki alkalmazások | Kezelhetőség, széles szoftver- és eszköztámogatás | 
 +| Szerverrendszer | Fájl-, adatbázis- és webszolgáltatás | Megbízhatóság, távoli felügyelet, többfelhasználós működés | 
 +| Mobil rendszer | Telefonok, táblagépek, hordozható mérőeszközök | Energiahatékonyság, érintéses kezelés, érzékelők támogatása | 
 +| Beágyazott rendszer | Gépek, műszerek, járművek | Kis erőforrásigény, hosszú élettartam, célfeladatra optimalizálás | 
 +| Valós idejű rendszer (RTOS) | Szabályozás, robotika, biztonságkritikus vezérlés | Előre meghatározható válaszidő | 
 + 
 +Gyakori platform a Windows, a Linux, a macOS, az Android és az iOS; beágyazott területen sokféle RTOS és gyártóspecifikus rendszer létezik. A „valós idejű” nem egyszerűen nagy sebességet jelent: azt jelenti, hogy a rendszernek egy műveletet az előírt határidőn belül, kiszámíthatóan kell végrehajtania. 
 + 
 +=== 2.3 Rendszerindítás és alapvető védelem === 
 + 
 +A számítógép bekapcsolásakor a firmware — PC-knél jellemzően az UEFI — ellenőrzi és inicializálja a hardvert, majd elindítja az operációs rendszert. 
 + 
 +  * A **Secure Boot** digitális aláírások alapján ellenőrzi a rendszerindítás fontos elemeit. 
 +  * A **TPM** védett módon kezelhet titkosítási kulcsokat és segítheti a rendszer állapotának ellenőrzését. 
 +  * A **lemez- vagy eszköztitkosítás** csökkenti annak kockázatát, hogy egy elveszett vagy ellopott eszköz adatai hozzáférhetők legyenek. 
 + 
 +Ezek egymást kiegészítő védelmek; egyik sem helyettesíti a frissítéseket, a megfelelő jogosultságokat és a biztonsági mentést. 
 + 
 +===== 3. Alkalmazói szoftverek a mérnöki munkában ===== 
 + 
 +=== 3.1 Alkalmazáskategóriák === 
 + 
 +Az alkalmazói szoftver közvetlenül egy felhasználói vagy szervezeti feladatot old meg.
  
-=== 1.3 Szoftver és hardver kapcsolata === +  * **Irodai és együttműködési eszközök:** dokumentum, táblázat, prezentáció, levelezés és csoportmunka. 
-  * A hardver önmagában nem használható → szükséges a szoftver.   +  * **CAD:** termékek, alkatrészek, építmények vagy áramkörök számítógépes tervezése. 
-  * A szoftver a hardver képességeit „láthatóvá” és felhasználhatóvá teszi.   +  * **CAE:** mérnöki elemzés és szimuláció, például FEM vagy CFD. 
-  * A felhasználó → alkalmazói szoftveren keresztül → rendszerszoftveren keresztül → hardvert használja.+  * **CAM:** gyártási folyamatok és CNC-megmunkálás előkészítése. 
 +  * **Mérési és adatfeldolgozó szoftver:** műszerek vezérlése, adatok rögzítése, kiértékelése és megjelenítése. 
 +  * **PLM/PDM:** termékadatok, dokumentumok, változatok és jóváhagyások kezelése. 
 +  * **SCADA/HMI:** ipari folyamatok felügyelete és kezelői megjelenítése. 
 +  * **MES/ERP:** gyártási műveletek, erőforrások és vállalati folyamatok támogatása.
  
 <mermaid> <mermaid>
 flowchart LR flowchart LR
-    USER[Felhasználó] --> APP[Alkalmazói szoftver] +    CAD[CAD: geometria] --> CAE[CAE: ellenőrzés] 
-    APP --> OS[Rendszerszoftver] +    CAE --> CAM[CAM: gyártás\nelőkészítés] 
-    OS --> HW[Hardver]+    CAM --> MES[MES: végrehajtás] 
 +    MES --> Q[Minőségadatok] 
 +    Q --> PLM[PLM/PDM: életciklus] 
 +    PLM --> CAD
 </mermaid> </mermaid>
  
-=== 1.4 Példák a gyakorlatból === +=== 3.2 Telepített, webes és felhőalapú megoldások ===
-  * **Rendszerszoftver**: Windows 11, Linux Ubuntu, macOS.   +
-  * **Alkalmazói szoftver**: AutoCAD (mérnöki tervezés), MATLAB (számítás), Word/Excel (irodai).   +
-  * **Fejlesztői szoftver**: Visual Studio Code, GCC, Python interpreter.  +
  
-===== 2. Rendszerszoftverek, operációs rendszerek =====+  * **Helyben telepített alkalmazás:** a felhasználó gépén fut. Előnye lehet a kis késleltetés, az offline működés és a helyi hardver — például GPU — közvetlen használata. 
 +  * **Webalkalmazás:** böngészőn keresztül használható, ezért egyszerűbb lehet a központi frissítés és a több eszközről történő elérés. 
 +  * **SaaS (Software as a Service):** szolgáltatásként, általában előfizetéssel igénybe vett szoftver. Az üzemeltetés jelentős részét a szolgáltató végzi. 
 +  * **Hibrid megoldás:** a számítás egy része helyben, más része szerveren vagy felhőben történik.
  
-A rendszerszoftverek azok a programok, amelyek a számítógép alapvető működését biztosítják,   +Egy nagyméretű CAD-modell szerkesztése történhet helyi munkaállomáson, miközben a dokumentumkezelés és a jóváhagyás felhőszolgáltatásban fut. A választásnál az internetkapcsolat, az adatvédelem, a teljesítmény, a rendelkezésre állás és a költség egyaránt számít.
-összekötik a hardvert a felhasználóval, és környezetet nyújtanak az alkalmazások futtatásához.[2]+
  
-=== 2.1 A rendszerszoftver fogalma === +=== 3.3 Szoftver kiválasztásának mérnöki szempontjai === 
-  * A rendszerszoftver olyan program, amely a számítógép hardverét vezérli, kezeli az erőforrásokat és lehetővé teszi az alkalmazások futtatását.   + 
-  * Fő összetevői: +Nem elegendő azt vizsgálni, hogy a program képes-e egy számítás elvégzésére. Fontos még: 
-    - **Operációs rendszer (OS)** – központi vezérlő program. + 
-    - **Eszközmeghajtók (driverek)** – perifériák működéséhez szükséges szoftverek. +  * kezeli-e a szükséges fájlformátumokat és berendezéseket; 
-    - **Segédprogramok (utility programok)** – karbantartást, diagnosztikát biztosítanak.+  * megfelelő pontosságú és ellenőrizhető-e a számítási modell; 
 +  * biztosított-e a gyártói támogatás és a hosszú távú elérhetőség; 
 +  * együtt tud-e működni a vállalat más rendszereivel; 
 +  * megfelel-e az adatvédelmi és iparági előírásoknak; 
 +  * mennyi a licenc, a betanítás, az üzemeltetés és az esetleges leállás teljes költsége. 
 + 
 +Biztonságkritikus döntésnél a szoftver eredményét mérnöki ellenőrzésnek és lehetőség szerint fizikai mérésnek vagy másik módszerrel végzett számításnak is alá kell támasztania. 
 + 
 +===== 4. Fejlesztői eszközök és mérnöki automatizálás ===== 
 + 
 +Nem minden mérnök lesz szoftverfejlesztő, de a fejlesztési folyamat alapjainak ismerete segít az automatizálás, a mérőrendszerek és a műszaki szoftverek megértésében. 
 + 
 +=== 4.1 A program elkészítésének folyamata === 
 + 
 +  - **Követelmények:** mit kell a rendszernek elvégeznie, milyen pontossággal és határidővel? 
 +  - **Algoritmus vagy modell:** milyen lépések vezetnek az eredményhez? 
 +  - **Megvalósítás:** programkód, grafikus folyamatábra, PLC-program vagy konfiguráció elkészítése. 
 +  - **Tesztelés:** helyes-e az eredmény normál és hibás bemenetek esetén is? 
 +  - **Üzembe helyezés és karbantartás:** dokumentálás, verziózás, frissítés és hibajavítás.
  
 <mermaid> <mermaid>
-flowchart TD +flowchart LR 
-    HW[Hardver] --> OS[Operációs rendszer] +    K[Követelmény] --> T[Tervezés] 
-    OS --> DRIVER[Eszközmeghajtók] +    T --> M[Megvalósítás] 
-    OS --> UTIL[Segédprogramok] +    M --> V[Ellenőrzés] 
-    OS --> APP[Alkalmazások] +    V --> U[Üzemeltetés] 
-    APP --> USER[Felhasználó]+    V -->|hiba| T
 </mermaid> </mermaid>
  
-=== 2.2 Az operációs rendszer feladatai === +=== 4.2 Nyelvek és végrehajtás ===
-  * Hardver erőforrások kezelése (CPU, memória, háttértár, perifériák). +
-  * Folyamatkezelés (programok párhuzamos futtatása). +
-  * Fájlrendszer kezelése (adatok tárolása és elérése). +
-  * Felhasználói felület biztosítása (grafikus GUI, parancssor). +
-  * Hálózati kommunikáció és biztonsági funkciók.+
  
-=== 2.3 Windows 11 bemutatása === +  * A **gépi kódot** közvetlenül a processzor hajtja végre. 
-  * **Megjelenés**: 2021-ben adták ki, a Windows 10 utódjaként.   +  * Az **assembly** a gépi utasítások ember számára olvashatóbb leírása. 
-  * **Felhasználói felület**: +  * Az **általános célú magas szintű nyelvek**, például C, C++, Python vagy Java összetettebb feladatok leírását teszik lehetővé. A C közel engedi a programozót a hardverhez, de nem gépi vagy assembly nyelv. 
-    - Új, középre rendezett **Start menü** és **tálca**. +  * A **szakterület-specifikus nyelvek** egy adott feladattípusra készülnek, például SQL adatlekérdezésre, MATLAB mérnöki számításokra vagy VHDL digitális hardver leírására. 
-    - Lekerekített ablakok, modern ikonok. +  * A PLC-k programozására az IEC 61131-3 szabvány többféle nyelvet, például létradiagramot és strukturált szöveget határoz meg.
-    - **Widgetek** integrálása (időjárás, hírek, naptár). +
-  * **Beállítások**: +
-    - Egyszerűsített **Settings** alkalmazás. +
-    - Gyors keresési lehetőségek. +
-    - Jobb támogatás több monitorhoz és érintőkijelzőkhöz. +
-  * **Újdonságok**: +
-    - Beépített Microsoft Teams integráció. +
-    - **Android alkalmazások futtatásának támogatása** (Amazon Appstore, WSA). +
-    - Javított játékfunkciók: DirectStorage, AutoHDR. +
-    - Fokozott biztonsági követelmények: TPM 2.0, Secure Boot.+
  
-<mermaid> +A **fordítóprogram** a forráskódot a futtatás előtt gépi kódra vagy köztes formára alakítja. Az **értelmező** futás közben dolgozza fel a programot. A gyakorlatban hibrid megoldások is gyakoriak, ezért a két kategória nem mindig válik el élesen.
-graph TD +
-    UI[Felhasználói felület] --> START[Start menü és tálca] +
-    UI --> WID[Widgetek] +
-    UI --> MULTI[Többmonitor támogatás]+
  
-    FUNC[Újdonságok] --> TEAMS[Teams integráció] +=== 4.3 Fejlesztői és együttműködési eszközök ===
-    FUNC --> ANDR[Android appok] +
-    FUNC --> GAME[Játékfunkciók]+
  
-    SEC[Biztonság] --> TPM[TPM 2.0] +  * **IDE:** szerkesztést, futtatást, hibakeresést és projektkezelést egyesítő környezet. 
-    SEC --> SB[Secure Boot] +  * **Debugger:** lehetővé teszi a program lépésenkénti vizsgálatát és a változók értékének ellenőrzését. 
-</mermaid>+  * **Verziókezelő rendszer:** rögzíti, hogy ki, mikor és mit változtatott; korábbi állapotok visszakereshetők. A Git verziókezelő, míg a GitHub és a GitLab együttműködési szolgáltatás is. 
 +  * **Automatikus tesztelés:** ismételhetően ellenőrzi, hogy a módosítás nem rontotta-e el a már működő részeket. 
 +  * **Konténer:** az alkalmazást és fontos függőségeit egységes futtatási csomagba szervezi; nem azonos egy teljes virtuális géppel.
  
-=== 2.4 Operációs rendszerek típusai === +Mérnöki példa: egy számítási táblázat vagy mérési szkript is szoftver. Ha termelési döntés alapja, ugyanúgy fontos a dokumentálás, a tesztadat, a változatok követése és a jóváhagyás, mint egy hagyományos programnál.
-  * **Windows** – a legelterjedtebb asztali OS. +
-  * **Linux disztribúciók** – nyílt forrású, stabil, sokféle verzió (Ubuntu, Debian, Fedora). +
-  * **macOS** – Apple saját rendszere. +
-  * **Ipari rendszerek** – valós idejű operációs rendszerek (RTOS) ipari és beágyazott eszközökben.+
  
-=== 2.5 Példák mérnöki gyakorlatból === +===== 5. Fájlok, formátumok és műszaki adatok kezelése =====
-  * **Windows 11**: mérnöki alkalmazások (AutoCAD, SolidWorks, MATLAB).   +
-  * **Linux**: szerverek, HPC klaszterek (FEM, CFD szimulációk).   +
-  * **RTOS**: beágyazott mérnöki vezérlők, PLC-k.  +
  
-===== 3. Alkalmazói szoftverek =====+=== 5.1 Fájl, formátum és metaadat ===
  
-Az alkalmazói szoftverek a felhasználók mindennapi munkáját segítik:   +A **fájl** névvel ellátott adategység egy adattárolón. Legfontosabb tulajdonságai a név, az elérési út, a méret, az időbélyegek, a tulajdonos és a jogosultságok.
-ezek azok a programok, amelyek konkrét feladatokat oldanak meg a számítógépen.   +
-Ide tartoznak az irodai programcsomagok, mérnöki és tudományos szoftverek, valamint a szórakoztatásra szolgáló alkalmazások is.[3]+
  
-=== 3.1 Az alkalmazói szoftver fogalma === +A fájlnév kiterjesztése — például `.pdf`, `.csv`, `.step` vagy `.jpg` — általában a formátumra utal, de önmagában nem garantálja a tartalom típusát. A fájl átnevezése nem alakítja át az adatot másik formátumba. 
-  * Olyan program, amely a felhasználói igények kiszolgálására készült. + 
-  * Az alkalmazói szoftver mindig az operációs rendszer fölött működik. +  * **Szöveges formátum:** ember által is olvasható lehet, például TXT, CSV, JSON vagy XML. 
-  * Példák: +  * **Bináris formátum:** tömörebb vagy összetettebb adatot tárolhat, de értelmezéséhez megfelelő program szükséges. 
-    - Szövegszerkesztő → dokumentumok létrehozása. +  * **Metaadat:** az adatot leíró információ, például mértékegység, mérési idő, koordináta-rendszer, anyagminőség vagy szoftververzió. 
-    - CAD program → mérnöki tervezés. + 
-    - Adatbáziskezelő → adatok tárolása és lekérdezése.+Mérési adatnál az értéksor önmagában gyakran kevés. A mértékegység, a mintavételi frekvencia, az érzékelő azonosítója és a kalibrálás ideje nélkül az adat félreérthető vagy később használhatatlan lehet. 
 + 
 +=== 5.2 Könyvtárak, elérési utak és fájlrendszerek === 
 + 
 +A könyvtárak hierarchiába rendezik a fájlokat. Az **abszolút elérési út** a fájlrendszer egy rögzített kiindulópontjától, a **relatív elérési út** az aktuális könyvtártól adja meg a fájl helyét. 
 + 
 +Gyakori fájlrendszerek: 
 + 
 +^ Fájlrendszer ^ Tipikus környezet ^ Megjegyzés ^ 
 +| NTFS | Windows belső meghajtó | Jogosultságok, naplózás, nagy fájlok | 
 +| ext4 | Linux | Elterjedt, naplózó fájlrendszer | 
 +| APFS | Apple rendszerek | Flashalapú tárolókra optimalizált funkciók | 
 +| FAT32 | Cserélhető adathordozó, régi eszközök | Széles kompatibilitás, de egy fájl legfeljebb 4 GiB lehet | 
 +| exFAT | Nagyobb cserélhető adathordozó | Nagy fájlok és több operációs rendszer támogatása | 
 + 
 +Az adathordozó és a fájlrendszer nem ugyanaz: ugyanaz az SSD többféle fájlrendszerrel formázható. 
 + 
 +=== 5.3 Interoperabilitás és adatvesztés === 
 + 
 +Mérnöki adatcsere során gyakran kell formátumot konvertálni. A konverzió adatvesztést okozhat: egy semleges CAD-formátum például átadhatja a geometriát, miközben a parametrikus szerkesztési előzmény, az anyagadat vagy egyes tűrések elveszhetnek. 
 + 
 +  * **Nyílt formátum:** specifikációja hozzáférhető, ezért több gyártó támogathatja. 
 +  * **Gyártóspecifikus formátum:** egy adott szoftver funkcióit teljesebben őrizheti meg, de függőséget okozhat. 
 +  * **Veszteségmentes tömörítés:** az eredeti adat teljesen visszaállítható, például ZIP esetén. 
 +  * **Veszteséges tömörítés:** a kisebb méret érdekében információt hagy el; fotónál elfogadható lehet, mérési adatnál veszélyes lehet. 
 + 
 +=== 5.4 Verziók és dokumentumkezelés === 
 + 
 +A `vegleges2_uj_javitott.step` jellegű fájlnevek nem adnak megbízható változáskövetést. Mérnöki projektben célszerű szabályozni: 
 + 
 +  * az elnevezést és a könyvtárszerkezetet; 
 +  * a verzió- és revíziószámot; 
 +  * a jóváhagyás állapotát; 
 +  * a módosítás okát és felelősét; 
 +  * azt, hogy melyik változat került gyártásba. 
 + 
 +CAD- és dokumentumállományoknál ezt PDM/PLM vagy dokumentumkezelő rendszer, forráskódnál és szöveges konfigurációnál gyakran verziókezelő rendszer támogatja. 
 + 
 +===== 6. Hálózati és felhőalapú szoftverek ===== 
 + 
 +=== 6.1 A hálózati kommunikáció rétegei === 
 + 
 +A hálózati kommunikáció szabályait **protokollok** határozzák meg. Egy adatátvitelben több protokoll együtt működik. 
 + 
 +  * **IP:** címzést és csomagok hálózatok közötti továbbítását biztosítja. 
 +  * **TCP:** kapcsolatot épít fel, sorrendhelyes és megbízható adatfolyamot nyújt. 
 +  * **UDP:** kisebb többletterhelésű, kapcsolat nélküli átvitelt ad, de önmagában nem garantálja a kézbesítést. 
 +  * **DNS:** neveket, például egy szerver nevét IP-címhez rendel. 
 +  * **HTTP/HTTPS:** webes erőforrások és API-k elérésére szolgál; HTTPS esetén a kommunikáció titkosított és hitelesített csatornán történik. 
 +  * **SFTP:** biztonságos fájlátvitelt biztosít SSH-kapcsolaton keresztül. Nem azonos az FTP titkosított változatával, az FTPS-sel.
  
 <mermaid> <mermaid>
 flowchart TD flowchart TD
-    OS[Operációs rendszer] --> APP[Alkalmazói szoftver] +    APP[Alkalmazás:\n HTTPS, SFTP] --> TRANS[Átvitel:\nTCP vagy UDP] 
-    APP --> USER[Felhasználó] +    TRANS --> IP[Hálózat: IP] 
-    USER --> APP+    IP --> LINK[Kapcsolat:\nEthernet vagy Wi-Fi]
 </mermaid> </mermaid>
  
-=== 3.2 Alkalmazói szoftverek típusai === +=== 6.2 Kommunikációs modellek ===
-  * **Irodai programcsomagok** – szövegszerkesztő, táblázatkezelő, prezentációkészítő. +
-    - Példa: Microsoft Office 365, LibreOffice, Google Workspace. +
-  * **Grafikai és multimédia szoftverek** – képszerkesztés, videóvágás, 3D modellezés. +
-    - Példa: Photoshop, Blender, Premiere Pro. +
-  * **Mérnöki és tudományos szoftverek** – tervezés, szimuláció, adatfeldolgozás. +
-    - Példa: AutoCAD, SolidWorks, MATLAB, ANSYS. +
-  * **Adatbázis-kezelő rendszerek** – nagy adathalmazok tárolása, lekérdezése. +
-    - Példa: Oracle, MySQL, PostgreSQL. +
-  * **Szórakoztató és speciális alkalmazások** – játékok, tanulást segítő alkalmazások.+
  
-<mermaid> +  * **Kliens–szerver:** a kliens szolgáltatást kér, a szerver válaszol. Példa: a mérnöki munkaállomás fájlt kér a PDM-szervertől. 
-graph LR +  * **Peer-to-peer:** a résztvevők közvetlenül is szolgáltathatnak egymásnak erőforrást. 
-    APP[Alkalmazói szoftver] --> OFF[Irodai] +  * **Publish–subscribe:** az adatforrás egy témába üzenetet küld, a feliratkozók pedig megkapják azt. Szenzorhálózatokban és IoT-rendszerekben gyakori. 
-    APP --> GFX[Grafikai] +  * **API:** szabályozott szoftveres kapcsolódási felület, amelyen keresztül két alkalmazás adatot vagy szolgáltatást cserélhet.
-    APP --> ENG[Mérnöki/Tudományos] +
-    APP --> DB[Adatbázis] +
-    APP --> GAME[Szórakozás] +
-</mermaid>+
  
-=== 3.3 Szoftverlicencek és terjesztés === +=== 6.3 Helyi rendszer, edge és felhő ===
-  * **Kereskedelmi szoftver** – fizetős, zárt forráskódú. +
-  * **Nyílt forráskódú szoftver (Open Source)** – ingyenes, módosítható. +
-  * **Szabad szoftver** – felhasználó szabadon tanulmányozhatja, módosíthatja és terjesztheti. +
-  * **SaaS (Software as a Service)** – felhőalapú szolgáltatás, előfizetéses modell.+
  
-<mermaid> +  * **Helyi (on-premises) rendszer:** a szervezet saját telephelyén és felügyelete alatt működik. 
-graph TD +  * **Edge feldolgozás:** az adatot a géphez vagy szenzorhoz közel dolgozza fel; előnye lehet a kis késleltetés és a hálózati forgalom csökkentése. 
-    LIC[Szoftverlicencek] --> COM[Kereskedelmi] +  * **Felhőszolgáltatás:** távoli, igény szerint méretezhető számítási, tárolási vagy alkalmazási szolgáltatás.
-    LIC --> OSS[Nyílt forráskódú] +
-    LIC --> FREE[Szabad szoftver] +
-    LIC --> SAAS[SaaS - előfizetés] +
-</mermaid>+
  
-=== 3.4 Példák mérnöki alkalmazásokra === +Ipari példa: egy rezgésérzékelő nagy sebességű jeleit egy edge eszköz helyben elemzi, csak a jellemzőket és a riasztást küldi a felhőbe, ahol hosszú távú elemzés és több telephely összehasonlítása történik. A helyi vezérlés így internetkimaradáskor is működhet.
-  * **Gépészmérnökök**: AutoCAD, SolidWorks, CATIA.   +
-  * **Villamosmérnökök**: MATLAB, LabVIEW.   +
-  * **Anyagmérnökök**: ANSYS, COMSOL.   +
-  * **Mechatronikus mérnökök**: robotikai szoftverek, PLC programozókörnyezetek.  +
  
-===== 4. Fejlesztői szoftverek =====+A felhő nem automatikusan olcsóbb vagy biztonságosabb. Mérlegelni kell az adat mennyiségét, az átviteli költséget, a késleltetést, a szolgáltatói függést, a hozzáférési szabályokat és a kiesés következményeit.
  
-A fejlesztői szoftverek olyan programok, amelyek más szoftverek létrehozására szolgálnak.   +===== 7. Szoftverbiztonság, licencek és életciklus =====
-Segítségükkel a programozók, mérnökök és kutatók új alkalmazásokat, vezérlőprogramokat, szimulációs eszközöket készíthetnek.[4]+
  
-=== 4.1 A fejlesztői szoftver fogalma === +=== 7.1 Többrétegű védelem ===
-  * Célja: programok írása, fordítása, tesztelése és hibakeresése. +
-  * A fejlesztői környezet tartalmazhat: +
-    - **Fordítóprogramokat (compiler)** → magas szintű nyelvből gépi kód.   +
-    - **Értelmezőket (interpreter)** → utasítások közvetlen végrehajtása.   +
-    - **Linker** → összekapcsolja a külön modulokat.   +
-    - **Debugger** → hibakereső eszköz.   +
-    - **IDE (Integrated Development Environment)** → integrált fejlesztőkörnyezet.  +
  
-<mermaid> +Nincs olyan biztonsági program, amely önmagában minden támadást kivéd. A védelem egymást kiegészítő műszaki és szervezési intézkedésekből áll:
-graph TD +
-    SRC[Kódforrás] --> COMP[Fordító] +
-    SRC --> INT[Értelmező] +
-    COMP --> BIN[Binaris program] +
-    INT --> RUN[Futtatás] +
-    BIN --> DEBUG[Debugger] +
-    RUN --> DEBUG +
-</mermaid>+
  
-=== 4.2 Programozási nyelvek === +  * rendszeres biztonsági frissítés; 
-  * **Alacsony szintű nyelvek** – gépközeli (Assembly, C).   +  * kártevő- és végpontvédelem; 
-  * **Magas szintű nyelvek** – könnyebben érthető, hordozható (C++, Java, Python).   +  * tűzfal és hálózati szegmentálás; 
-  * **Domain-specifikus nyelvek** – speciális célra (SQL, MATLAB, VHDL).   +  * egyedi felhasználói fiókok és a legkisebb szükséges jogosultság elve; 
-  * **Modern trendek**: +  * többtényezős hitelesítés; 
-    - Python → gépi tanulás, adatfeldolgozás.   +  * adatok titkosítása; 
-    - Rust → biztonságos rendszerprogramozás.   +  * naplózás, felügyelet és incidenskezelés; 
-    - JavaScript/TypeScript → webes fejlesztés.  +  * kipróbált biztonsági mentés és visszaállítás.
  
-=== 4.3 Fejlesztői környezetek és eszközök === +Ipari környezetben különösen veszélyes lehet egy már nem támogatott, de a gép működéséhez szükséges szoftver. Ilyenkor hálózati leválasztásra, szigorú hozzáférésre, ellenőrzött adathordozó-használatra és korszerűsítési tervre lehet szükség.
-  * **IDE-k**: +
-    - Visual Studio, Eclipse, PyCharm, IntelliJ IDEA.   +
-  * **Verziókezelő rendszerek**: +
-    - Git, GitHub, GitLab.   +
-  * **Konténerizáció és DevOps**: +
-    - Docker, Kubernetes, CI/CD rendszerek.  +
  
-<mermaid> +=== 7.2 Mentés, szinkronizálás és archiválás === 
-flowchart LR + 
-    DEV[Fejlesztő] --> IDE[IDE] +  * **Biztonsági mentés:** helyreállítható másolat adatvesztés esetére. 
-    IDE --> GIT[Verziókezelő] +  * **Szinkronizálás:** több helyen ugyanazt az aktuális állapotot tartja; egy hibás törlést vagy titkosítást is továbbíthat, ezért önmagában nem feltétlenül mentés. 
-    GIT --> CI[CI/CD pipeline] +  * **Archiválás:** hosszú távra megőrzött, ritkán változó adatállomány. 
-    CI --> DOCKER[Konténerizáció] + 
-    DOCKER --> DEPLOY[Telepítés] +A **3–2–1 elv** szerint legyen legalább három példány az adatból, kétféle adathordozón, és legalább egy példány fizikailag vagy logikailag elkülönítve. Fontos a verziók megőrzése és a visszaállítás rendszeres próbája is. 
-</mermaid>+ 
 +  * **Teljes mentés:** minden kijelölt adatot lemásol. 
 +  * **Növekményes mentés:** az előző bármilyen mentés óta történt változásokat menti. 
 +  * **Differenciális mentés:** a legutóbbi teljes mentés óta történt változásokat menti. 
 + 
 +Mérnöki projektnél a CAD-modellek mellett a kapcsolódó anyagjegyzéket, szimulációs beállításokat, mérési nyersadatokat, kalibrációs információkat és szoftverkörnyezetet is meg kell őrizni, ha az eredmény később reprodukálandó. 
 + 
 +=== 7.3 Licencek és felhasználási jogok === 
 + 
 +A szoftver használatát a licenc feltételei szabályozzák. A „letölthető” vagy „ingyenes” nem jelenti automatikusan azt, hogy a szoftver bármilyen célra korlátozás nélkül használható. 
 + 
 +  * **Tulajdonosi, kereskedelmi licenc:** a gyártó meghatározott felhasználási jogot ad; a forráskód rendszerint nem hozzáférhető. 
 +  * **Nyílt forráskódú licenc:** engedélyezheti a forráskód tanulmányozását, módosítását és terjesztését, de feltételeket is előírhat. 
 +  * **Freeware:** díjmentesen használható, de nem feltétlenül nyílt forráskódú. 
 +  * **Oktatási licenc:** gyakran csak oktatásra és kutatásra használható, üzleti munkára nem. 
 +  * **Előfizetéses vagy SaaS-licenc:** a használati jog időszakhoz, felhasználóhoz vagy szolgáltatási csomaghoz kötődhet. 
 + 
 +Vállalati használat előtt ellenőrizni kell a felhasználók, gépek vagy egyidejű használatok számát, a külső partnerek hozzáférését, a felhőben kezelt adatok helyét, valamint a szerződés megszűnése utáni adatexport lehetőségét. 
 + 
 +=== 7.4 Szoftver-életciklus és változáskezelés === 
 + 
 +A szoftver nem egyszeri beszerzés: telepíteni, konfigurálni, frissíteni, felügyelni és végül kivonni kell. Egy frissítés javíthat hibákat és biztonsági problémákat, de megváltoztathat fájlformátumot, illesztőprogramot vagy számítási eredményt is. 
 + 
 +Mérnöki és ipari rendszerben ezért célszerű: 
 + 
 +  - nyilvántartani a használt verziókat és licenceket; 
 +  - tesztkörnyezetben kipróbálni a jelentős frissítéseket; 
 +  - mentési és visszaállítási tervet készíteni; 
 +  - dokumentálni a változtatást és annak jóváhagyását; 
 +  - figyelni a gyártói támogatás végét; 
 +  - megtervezni az adatok és modellek későbbi megnyithatóságát.
  
-=== 4.4 Példák mérnöki alkalmazásokra === +Egy tíz-húsz évig üzemelő gépnél a vezérlőszoftver, az operációs rendszer, az illesztőprogram és a licenckezelés elavulása ugyanolyan fontos kockázat lehet, mint a fizikai alkatrészek kopása.
-  * **Beágyazott rendszerek** fejlesztése: C, C++, RTOS környezet.   +
-  * **Számítástudomány**: Python + MATLAB a mérnöki számításokhoz.   +
-  * **Ipari vezérlés**: PLC programozó környezetek (TIA Portal, Codesys).   +
-  * **Szimulációk**: ANSYS APDL, COMSOL scriptnyelvek.  +
  
tanszek/oktatas/szamitastechnika/szoftver_alapismeretek.1758050320.txt.gz · Last modified: by knehez