Biztonsági folyamatirányító. rendszerek szoftvere



Hasonló dokumentumok
Védelem a véletlenszerű egyedi hibák veszélyeztető hatása ellen Biztonsági stratégiák

Közlekedési automatika Biztonsági architektúrák

Közlekedési automatika Biztonsági folyamatirányító rendszerek szoftvere

Egyszerű fejlesztési modell

Közlekedési automatika. Dr. Sághi Balázs BME Közlekedés- és Járműirányítási Tanszék 2017

Miskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája. Készítette: Urbán Norbert

Szárazföldi autonóm mobil robotok vezérlőrendszerének kialakítási lehetőségei. Kucsera Péter ZMNE Doktorandusz

Programtervezés. Dr. Iványi Péter

Digitális eszközök típusai

A BIZTONSÁGINTEGRITÁS ÉS A BIZTONSÁGORIENTÁLT ALKALMAZÁSI FELTÉTELEK TELJESÍTÉSE A VASÚTI BIZTOSÍTÓBERENDEZÉSEK TERVEZÉSE ÉS LÉTREHOZÁSA SORÁN

Verifikáció és validáció Általános bevezető

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Fejlesztés kockázati alapokon 2.

Párhuzamos programozási platformok

Rubin SPIRIT TEST. Rubin firmware-ek és hardverek tesztelése esettanulmány V1.0. Készítette: Hajnali Krisztián Jóváhagyta: Varga József

Programozható logikai vezérlő

Architektúra tervezési példák: Architektúrák biztonságkritikus rendszerekben

Adatok ábrázolása, adattípusok

KÖZLEKEDÉSAUTOMATIKA

Megbízhatóság és biztonság. Dr. Sághi Balázs BME Közlekedés- és Járműirányítási Tanszék 2017

A fejlesztési szabványok szerepe a szoftverellenőrzésben

Szoftver értékelés és karbantartás

Párhuzamos programozási platformok

Biztonságkritikus rendszerek Gyakorlat: Architektúrák

hardver-szoftver integrált rendszer, amely Xwindow alapú terminálokat szervez egy hálózatba

A Siemens LED-optika fejlesztései

SZÁMÍTÓGÉP FELÉPÍTÉSE (TK 61-TŐL)

IRÁNYÍTÓ RENDSZER IRÁNYÍTANDÓ FOLYAMAT. Biztonsági funkciók Biztonsági integritás. Normál működés. Hibák elleni védettség Saját (belső) biztonság

Szoftver karbantartás

Tarnai Géza: Elektronikus biztosítóberendezések

TANMENET 2018/2019. tanév

Autóipari beágyazott rendszerek. Kockázatelemzés

Hibatűrés. Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Számítógép architektúra

evosoft Hungary Kft.

Szoftverminőségbiztosítás

A személyi számítógép felépítése

Szoftver karbantartási lépések ellenőrzése

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Az informatika alapjai. 10. elıadás. Operációs rendszer

1. Generáció( ):

BMD Rendszerkövetelmények

VTOL UAV. Moduláris fedélzeti elektronika fejlesztése pilóta nélküli repülőgépek számára. Árvai László, Doktorandusz, ZMNE ÁRVAI LÁSZLÓ, ZMNE

Orvostechnikai eszköz tesztelése DSS Unit test. Taliga Miklós BME-IIT

Szoftver-technológia I.

Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése

A szoftverfejlesztés eszközei

Orvostechnikai eszközök gyártmányfejlesztése Aktív orvosi eszközök fejlesztése PEMS V&V. Nagy Katinka

Unit Teszt. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Unit Teszt / 22

ORVOSTECHNIKAI ESZKÖZÖK GYÁRTMÁNYFEJLESZTÉSE AKTÍV ORVOSI ESZKÖZÖK FEJLESZTÉSE - PEMS V&V

Hogyan lesz adatbányából aranybánya?

Közlekedési automatika Biztonságintegritás, életciklus modellek

IDAXA-PiroSTOP. PIRINT PiroFlex Interfész. Terméklap

Új generációs informatikai és kommunikációs megoldások ANMS. távközlési hálózatok informatikai hálózatok kutatás és fejlesztés gazdaságos üzemeltetés

Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.

Veszélyforrások, veszélyeztetések

Szoftverminőségbiztosítás

1. Fejezet: Számítógép rendszerek. Tipikus számítógép hirdetés

Szoftverminőségbiztosítás

Tartalom A verifikáció és validáció tervezése Szoftver vizsgálatok Automatizált statikus analízis Cleanroom szoftverfejlesztés

Rendszermodernizációs lehetőségek a HANA-val Poszeidon. Groma István PhD SDA DMS Zrt.

ESZKÖZTÁMOGATÁS A TESZTELÉSBEN

Programrendszerek tanúsítása szoftverminőség mérése

Bevezetés a programozásba

TELE-OPERATOR UTS v.14 Field IPTV műszer. Adatlap

SUSE Linux Enterprise Server 12 Hargitai Zsolt

Web harvesztelés. Automatikus módszerekkel

Számítógép-szerelő, karbantartó képzés tematika oktatott modulok

Programozási nyelvek a közoktatásban alapfogalmak I. előadás

10. EGYSZERŰ HÁLÓZATOK TERVEZÉSE A FEJLESZTŐLAPON Ennél a tervezésnél egy olyan hardvert hozunk létre, amely a Basys2 fejlesztőlap két bemeneti

Miskolci Egyetem Általános Informatikai Tanszék

A tesztelés feladata. Verifikáció

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.

Intelligens biztonsági megoldások. Távfelügyelet

8.3. AZ ASIC TESZTELÉSE

Laboratóriumi műszerek megvalósítása ARM alapú mikrovezérlővel és Linux-szal

Tesztelés az XP-ben Tesztelés az XP-ben. A tesztelés kulcsjellemzői:

SAP Business One. Áttekintés, gyakorlati ismertetı. Mosaic Business System Kft.; Support:

Mérés, Vezérlés. mérésadat rögzítés CMC - 99 CMC kis és nagytestvér

Járműinformatika A járműinformatikai fejlesztés

Irányítástechnika Elıadás. PLC-k programozása

ELEKTRONIKUS BIZTOSÍTÓBERENDEZÉSEK ETCS

Elosztott rendszer architektúrák

biztonságkritikus rendszerek

Programozási nyelvek 6. előadás

Programozható logikai vezérlõk

Szoftver-mérés. Szoftver metrikák. Szoftver mérés

Biztosítóberendezések biztonságának értékelése

Megbízhatóság az informatikai rendszerekben

UNIX / Linux rendszeradminisztráció

Budapesti Mûszaki Fõiskola Rejtõ Sándor Könnyûipari Mérnöki Kar Médiatechnológiai Intézet Nyomdaipari Tanszék. Karbantartás-szervezés a nyomdaiparban

Élettartam teszteknél alkalmazott programstruktúra egy váltóvezérlő példáján keresztül

Hardver leíró nyelvek (HDL)

Mérés és adatgyűjtés

A SZÁMÍTÓGÉPRENDSZEREK SZOFTVERE

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

SZOFTVER-MINŐSÉGBIZTOSÍTÁS BIZTONSÁGKRITIKUS RENDSZEREK. Széchenyi István Egyetem. Alapfogalmak

Autóipari beágyazott rendszerek. Funkcionális biztonságossági koncepció

Számítógép architektúrák záróvizsga-kérdések február

Intelligens Autonom Kamera Modul (IAKM)

Átírás:

Biztonsági folyamatirányító rendszerek szoftvere 1

Biztonsági folyamatirányító rendszerek szoftvere Tartalom Szoftverek szerepe a folyamatirányító rendszerekben Szoftverek megbízhatósága Szoftver életciklus Biztonsági szoftverekkel szemben támasztott követelmények Szoftverírás Tesztelés 2

Szoftverek szerepe a folyamatirányító rendszerekben Programozott irányítórendszerek Célgépek Nincs operációs rendszer Egyszerű szoftver Pl. egy-chipes mikrokontrollerek Univerzális alkalmazású rendszerek Moduláris hardver (általában kártya rendszerű) Tagolt szoftverfelépítés 3

Tagolt szoftverfelépítés KONFIGURÁCIÓ Az adott alkalmazási hely konfigurációja; általában adatbázis ALKALMAZÓI/FELHASZNÁLÓI SZOFTVER Alkalmazás-specifikus funkciók, pl. általános jelzőlámpa vezérlés OPERÁCIÓS RENDSZER A folyamatirányítással kapcsolatos általános alapfunkciók 4

Az operációs rendszer feladatai A folyamatirányító rendszerek szoftvere általában ciklikus működésű: INICIALIZÁLÁS BEMENETEK BEOLVASÁSA FELDOLGOZÁS KIMENETEK KIÍRÁSA 5

Szoftverek megbízhatósága A szoftver akkor működőképes és így biztonságos, ha a követelményeket (specifikáció) jól fogalmaztuk meg, és a megvalósítás (implementáció) is helyes. A szoftverek megbízhatósága (helyes működésének valószínűsége) független az időtől (amennyiben nem változtattuk meg). Szoftverek esetében nem beszélhetünk meghibásodásról: A szoftver megbízhatóságát csak az eredeti, szisztematikus, specifikációs, tervezési és megvalósítási hibák csökkentik. A szoftvert tároló alkatrész meghibásodása hardvermeghibásodás. DE! Emberi beavatkozással egy jó szoftvert is el lehet rontani, például: Újra-bekerülési hiba: átlagosan minden harmadik hibajavítással újabb hibát idézünk elő. 6

VALIDÁCIÓ VERIFIKÁCIÓ Szoftver-életciklus 1 SPECIFIKÁCIÓ A szoftver feladatának meghatározása 2 SZOFTVER TERVEZÉS 3 KÓDOLÁS 4 KARBANTARTÁS Hibák javítása Módosítások 7

Követelmények a biztonsági szoftverekkel szemben Cél: hibamentesség. Szoftver-megbízhatóságot növelő módszerek Jól strukturáltság Moduláris felépítés Áttekinthetőség szükséges az ellenőrzéshez is Modulonként kevés be/kimenet (lehetőleg 1-1) könnyű tesztelni Jól definiált interfészek Feltétel nélküli ugrások (GOTO) kerülése Tesztelhetőség kialakítása tesztelés-barát tervezés Jól dokumentáltság Funkciók leírása Interfészek leírása Nem-biztonsági részek: arra kell ügyelni, hogy a nem-biztonsági rész semmilyen módon ne legyen hatással a biztonsági részekre visszahatásmentesség. 8

Szoftverírás Programozási koncepciók Defenzív programozás: számítok arra, hogy a programozás során hibákat fogok elkövetni. Passzív ellenőrzések: pl. ellenőrző összegek, hihetőségvizsgálat Aktív ellenőrzések: adatáramlástól független ellenőrzés, így tesztelhetők a ritkán aktív lefutási ágak is. CASE: Computer Aided Software Engineering Automatikus programgenerátorok: a generátor program helyességét kell bizonyítani. 9

Szoftver tesztelés Az eredeti hibák kiküszöbölésének leggyakoribb eljárása a hibaeltávolítás. Lépései: tesztelés diagnózis javítás. Tesztelés Statikus: a rendszer működtetése nélküli tesztelés. Ez végrehajtható a rendszeren magán vagy a rendszer alkalmas modelljén végrehajtott vizsgálatokkal. Dinamikus tesztelés: a rendszer működtetése révén megfelelőségi tesztek / pozitív tesztek hibakereső tesztelés funkcionális/black boksz tesztek és strukturális tesztek 10

Biztonsági architektúrák 1 hardver, 1 szoftver Lehet, h. a szoftver jól van megírva, de a hardver véletlen hibái ellen semmi nem véd. A

Biztonsági architektúrák 1 hardver, 2 szoftver Két különböző (diverz) szoftver fut (A és B) ugyanazon a gépen. Két szoftver futhat párhuzamosan, vagy egymás után. Az összehasonlító felfedi, ha a két szoftver mást mond felfedhetők a specifikációs és programozási hibák Mivel a két program eltérő, ezért egy HW hiba nem egyformán hat a két szoftverre, így a véletlen HW hibák is felfedhetők Pl. Ebilock (svéd) elektronikus bb. A B ÖH

Biztonsági architektúrák 2 hardver, 1 szoftver 2-ből 2 rendszer (2v2) Véd a hardver véletlen meghibásodásai ellen A szoftvert eleve jóra kell készíteni, mert az architektúra nem véd a specifikációs és programozási hibák ellen. Pl. Siemens SIMIS-elv A ÖH A

Simis-elv 2v2 konfiguráció Data input 2 mikroszámítógép Microcomputer 1 Input Input Microcomputer 2 óraszinkron utasításszinkron Processor Memory Output Data exchange Data exchange Comparison Synchronisation Synchronisation Comparison Output Processor Memory a mikroszámítógépektől független 2 összehasonlító összehasonlítja a kimeneteket és a Channel 1 Channel 2 processzor tartalmakat (memóriát)

Biztonsági architektúrák 2 hardver, 2 szoftver Az architektúra véd a véletlen hardver hibák ellen és a szoftver hibák ellen. A két csatornában eltérő specifikációval, eltérő programnyelven kifejlesztett programok futnak Pl. Thales Elektra A ÖH B

Rendelkezésre állás Az eddig bemutatott architektúrák biztonságosak ugyan, de már egy hiba esetén is működésképtelenek. Módszerek a rendelkezésre állás növelésére: 1. Tartalékolás Egycsatornás rendszer: redundancia 2v2 2 (2v2) (pl. SIMIS IS: SIMIS PC) 2v2 2v3 (pl. SIMIS IS: ECC számítógépek)

2v3 3 mikroszámítógép 6 független összehasonlító egység a 3. csatorna is aktív hiba esetén a hibás csatorna/modul leáll tovább működik 2v2 rendszerként

Data input Microcomputer A Microcomputer B computer C Micro- Input Input Input A Data exchange Data exchange Data exchange Data exchange Data exchange Data exchange A B B Processor Memory Processor Memory Processor Memory C Synchronisation Synchronisation Synchronisation C D D E Comparison Comparison Comparison Comparison Comparison Comparison E Output & Output & Output & Channel A Channel B Channel C 3 mikroszámítógép 6 független összehasonlító egység a 3. csatorna is aktív hiba esetén a hibás csatorna/modul leáll tovább működik 2v2 rendszerként

SIMIS PC 2 (2v2) diverz számítógéprendszer Kereskedelmi forgalomban kapható számítógépek és operációs rendszerek AMD, Intel alaplap/processzor Win2000, Linux operációs rendszerek a diverzitás, és az ECC-kben való összehasonlítás miatt lehetséges ezek alkalmazása Összehasonlítás az ECC-kben történik (időablakkal)

DEL PB ECC-CU DEL PB ECC-CU DEL PB ECC-CU SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS F1 F2 F3 F4 F5 F6 F7 F8 PSS ERR SOM F1 - F8 SOM PSS ERR F1 - F8 F1 F2 F3 F4 F5 F6 F7 F8 PSS ERR SOM F1 - F8 F1 F2 F3 F4 F5 F6 F7 F8 PSS ERR SOM F1 - F8 F1 F2 F3 F4 F5 F6 F7 F8 PSS ERR SOM F1 - F8 F1 F2 F3 F4 F5 F6 F7 F8 PSS HS2 POM ERR M2+ M1+ M2- M1- L SHIFT HS1 R PSS HS2 POM ERR M2+ M1+ M2- M1- SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS L SHIFT HS1 R PSS HS2 POM ERR M2+ M1+ M2- M1- L SHIFT HS1 R DEL PB ECC-CU DEL PB ECC-CU DEL PB ECC-CU SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS F1 F2 F3 F4 F5 F6 F7 F8 PSS ERR SOM F1 - F8 PSS ERR F1 F2 F3 F4 F5 F6 F7 F8 SOM F1 - F8 SOM PSS ERR F1 - F8 F1 F2 F3 F4 F5 F6 F7 F8 SOM PSS ERR F1 - F8 F1 F2 F3 F4 F5 F6 F7 F8 PSS ERR F1 F2 F3 F4 F5 F6 F7 F8 SOM F1 - F8 PSS HS2 POM ERR M2+ M1+ M2- M1- L SHIFT HS1 R PSS HS2 POM ERR M2+ M1+ M2- M1- SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS SIEMENS L SHIFT HS1 R PSS HS2 POM ERR M2+ M1+ M2- M1- L SHIFT HS1 R SIMIS PC SIMIS PC 2 x 2-ből 2 rendszer EIM ECC 3-ból 2 rendszer 2 (2v2) diverz számítógéprendszer Kereskedelmi forgalomban kapható számítógépek és operációs rendszerek AMD, Intel alaplap/processzor Win2000, Linux operációs rendszerek a diverzitás, és az ECC-kben való összehasonlítás miatt lehetséges ezek alkalmazása Összehasonlítás az ECC-kben történik (időablakkal)

Alcatel ELEKTRA 1 Két diverz szoftver csatorna A két csatornában lévő gépeknek egyenként van 2-es vagy 3- as redundanciájuk A biztosítóberendezés szintekre oszlik: Kezelés/visszajelentés Központi szint Perifériavezérlés Az egyes számítógépek és a perifériavezérlőket pont-pont kábelezés köti össze Hardverbázis: 486-os processzorok Vágányúti logika: táblázatos, vágányutas elvű

ELEKTRA Rendszerfelépítés kezelőfelület kapcsoló 2 VCA VCB 2 VOTRICS 3 CCA CCB 3 VOTRICS 2 PCA PCB 2 Perifériavezérlő kártyák