Diagnostyka_by_Prof_Badura(1).doc

(672 KB) Pobierz
artykul dla szporowej

Dariusz Badura

Diagnostyka i niezawodność systemów komputerowych

Wykład

 

 

Wykład 1

DIAGNOSTYKA, BEZPIECZEŃSTWO I NIEZAWODNOŚĆ SPRZĘTU KOMPUTEROWEGO

 

 

 

1. Wprowadzenie

 

wiarygodności systemów (ang. dependability) obejmuje następującą problematykę              

-          dyspozycyjności i diagnostyki,

-          niezawodności

-          bezpieczeństwa oraz

-          zabezpieczenia.

 

Podczas projektowania systemów podejmowane są zabiegi o to, by:

-          systemy działały: niezawodność

-          systemy były wykorzystywane i dostępne w sposób regularny: dyspozycyjność

-          w zastosowaniach krytycznych nie powodowały katastrof: bezpieczeństwo

-          uniemożliwić dostęp do danych oraz manipulowania tymi danymi zabezpieczenie

 

 

·         o dyspozycyjności i bezpieczeństwie systemów można mówić wtedy, gdy istnieją  środki zapewniające diagnostykę systemu w celu eliminacji uszkodzeń lub ich skutków.

 

·         Relacje pomiędzy niezawodnością, dyspozycyjnością, bezpieczeństwem i zabezpieczeniem  systemów są złożone różną od prostej podległości.

 

·         Odpowiednie zaprojektowanie systemu może znacznie podnieść poziom diagnostyczny i bezpieczeństwa; prowadzi to do wzrostu złożoności układu, a przez to do obniżenia niezawodności.

 

·         Trudno rozdzielać pojęcia niezawodności, diagnostyki i bezpieczeństwa elementów składowych systemu: sprzętu i oprogramowania. Szereg fukcji również w zakresie zapewnienia odpowiedniego poziomu diagnostyki i bezpieczeństwa może pełnić wymiennie sprzęt i oprogramowanie.

 

 

2. Wiarygodność jako najistotniejsza właściwość systemów komputerowych

 

Wiarygodność definiuje się jako działania sytemu komputerowego, która pozwala mieć uzasadnione zaufanie do usług, które ten system dostarcza - postrzegane przez użytkownika systemu.

 

Rozróżnia się cztery atrybuty wiarygodności:

-          dyspozycyjność,

-          niezawodność,

-          bezpieczność,

-          zabezpieczenie.

 

Dyspozycyjność systemu rozumiana jest jako gotowość do użycia, a zatem jest miarą zdolności systemu do wypełniania usług zgodnych ze specyfikacją w sposób regularny.

Wiarygodny w tym przypadku znaczy dyspozycyjny.

 

W pewien sposób można kojarzyć dyspozycyjność z efektywnością, jednak tylko w tym zakresie, w którym określa się właściwość zdolności systemu do jego łatwej i szybkiej konserwacji. Dyspozycyjność może być mierzona czasem niedostępności systemu wynikającej z realizacji zadań serwisowych, a to nierozerwalnie wiąże się ze zdolnościami diagnostycznymi systemu: łatwością wykrywania, lokalizacji i usuwania uszkodzeń w systemie.

 

Niezawodność rozumiana jest jako ciągłość usług i określana jest jako właściwość systemu określona przez prawdopodobieństwo spełniania przez system postawionych mu wymagań w określonym czasie i w określonych warunkach.

Z punktu widzenia miary

Niezawodność systemu jest to prawdopodobieństwo zdarzenia polegającego na tym, że w z góry zadanym przedziale czasowym, przy określonych warunkach, system wykona zadanie do którego został przeznaczony. O niezawodności systemu komputerowego decydują jego składowe, w ogólnym przypadku sprzęt i oprogramowanie. Uszkodzenia sprzętu powstają zazwyczaj w trakcie jego użytkowania, a dzisiejsze technologie zapewniają bardzo wysoką niezawodność sprzętu w stosunku do jeszcze niedawno uzyskiwanej. Inaczej się ma z niezawodnością oprogramowania. Uszkodzenia w oprogramowaniu powstają w czasie jego powstawania.

Wiarygodny w tym przypadku znaczy niezawodny,

 

 

Nasze rozważania ograniczone są tematycznie jedynie do tych dwóch atrybutów. Pozostałe dwa można scharakteryzować następująco.

Bezpieczność rozumiana jest jako zdolność do uniknięcie katastrofalnych konsekwencji dla środowiska. wiarygodny znaczy bezpieczny,

Zabezpieczenie rozumiane jest jako zapobieganie nieupoważnionemu dostępowi do danych i / lub manipulowanie danymi; wiarygodny znaczy zabezpieczony

Dyspozycyjność i niezawodność są zawsze wymagane, chaciaż ich stopień zależy od zastosowania.

 

 

Bezpieczeństwo a niezawodność systemów komputerowych.

 

Pojawiający się uszkodzenie powinno zatem spowodować jedną z dwóch reakcji systemu bezpiecznego:

- przejście w stan bezpieczny z jednoczesną sygnalizacją wystąpienia uszkodzenia, lub

- zamaskowanie błędu lub defektu poprzez nadmiar w układzie (systemie).

 

Niezawodność określana jest jako właściwość systemu określona przez prawdopodobieństwo  spełniania przez system postawionych mu wymagań w określonym czasie i w określonych warunkach.

 

Bezpieczeństwo określa właściwość systemu określona przez prawdopodobieństwo spełniania przez system postawionych mu wymagań lub przejścia systemu w stan nie powodujący lub nie prowadzący pośrednio do katastrofy.

 

W systemach komputerowych rozdziela się pojęcie niezawodności samego sprzętu od niezawodności oprogramowania.

 


Naruszenie wiarygodności

 

Defekt sytemu występuje wtedy gdy dostarczona usługa przestaje być zgodna ze specyfikacją, która oznacza uzgodniony opis oczekiwanych funkcji i / lub usług systemu.

 

Błąd jest to część stanu sytemu, która jest odpowiedzialna za będący jego następstwem defekt: błąd mający wpływ na usługę systemu jest symptomem defektu, który właśnie lub wcześniej wystąpił.

 

Uszkodzenie jest to stwierdzona lub hipotetyczna przyczyna wystąpienia błędu.Zależności pomiędzy tymi pojęciami pokazuje rysunek 1.

 

 

 

 

Przykład fizycznego uszkodzenia, => błędu, => defektu

 


Środki zapewniające wiarygodność:

 

a) zapobieganie uszkodzeniom: jak zapobiegać wystąpieniu lub wprowadzeniu uszkodzeń

 

b) tolerowanie uszkodzeń: jak zapewnić usługę zgodną ze specyfikacją, niezależnie od uszkodzeń

 

c) usuwanie uszkodzeń: jak ograniczyć obecność uszkodzeń

 

d) prognozowanie uszkodzeń: jak oszacować aktualną liczbę, możliwość przyszłego wystąpienia oraz konsekwencje uszkodzeń

 

·         Zapobieganie uszkodzeniom i tolerownie uszkodzeń można traktować jako metody dostarczania wiarygodności, tzn. określające jak wyposażyć system w zdolność dostarczania usługi zgodnie ze specyfikacją.

 

·         Usuwanie i przewidywanie uszkodzeń można traktować jako metody walidacji wiarygodności, tzn. określające jak osiągnąć zaufanie do zdolności systemu do dostarczania usługi zgodnie ze specyfikacją.

 

·         Zaufanie do usługi systemu i uzasadnienie tego zaufania są oparte na ocenie systemu, przeprowadzonej głównie ze względu na te atrybuty wiarygodności, które odnoszą się do usługi systemu.

 

Diagnostyka naruszenia wiarygodności

 

Uszkodzenia

 

Natura uszkodzeń :

   - uszkodzenia przypadkowe,

   - uszkodzenia umyślne, (celowo, przypuszczalnie złośliwie).

 

Żródła:

-przyczyny fenomenologiczne

              -uszkodzenia fizyczne,

-uszkodzenia spowodowane przez człowieka

-granice systemu

-uszkodzenia wewnętrzne,

-uszkodzenia zewnętrzne,

-faza powstania w odniesieniu do życia systemu

-uszkodzenie projektowe,

-uszkodzenia operacyjne.

 

Trwałość w czasie:

-uszkodzenia trwałe,

-uszkodzenia przemijające.

 

Błędy

Błąd jest abstrakcyjnym zjawiskiem odpowiedzialnym za defekt, zależnym od:

- budowy sytemu, a więc typu istniejącej redundancji:

- redundancja zamierzona,

- redundancja niezamierzona,

-          działania systemu;

-          definicji defektu z aspektu użytkownika;

 

Defekty

Kryteria:

- dziedzina,

- percepcja przez użytkowników systemu i

- konsekwencje dla otoczenia.

 

Kryterium dziedziny defektu pozwala wyróżnić:

-defekty wartości: wartość dostarczonej usługi jest niezgodna ze specyfikacją

-defekty synchronizacji czas dostarczonej usługi jest niezgodny ze specyfikacją.

 

Kryterium percepcji defektu wyróżnia:

-defekty zgodne, tzn. wszyscy użytkownicy systemu mają taką samą percepcję defektu

-defekty niezgodne, tzn. użytkownicy systemu mają różne percepcje danego defektu; defekty niezgodne nazywane są defektami bizantyjskimi.

 

Konsekwencje defektów dla otoczenia systemu:

- defekty łagodne, których konsekwencje są tego samego rzędu wielkości, co korzyści wynikające z dostarczanej usługi przy braku defektu;

- defekty katastroficzne, których konsekwencje są nieporównywalnie większe niż korzyści wynikające z dostarczanej usługi przy braku defektu.

 

Krytyczność systemu jest to najwyższa dotkliwość jego możliwych typów defektów.

 


Wykład 2

 

3. Diagnostyka układów i systemów cyfrowych

 

 

Etapy życia urządzenia:

-          projektowanie,

-          produkcja

-          eksploatacja.

Typy procesów diagnostycznych:

 

-          diagnostyka on-line obejmująca testowanie i wykrywanie uszkodzeń podczas normalnej pracy urządzeń

- systemy głosujące,

- kody detekcyjno-korekcyjne np. w układach sprawdzających poprawność transmisji i układy kontroli zapisu i odczytu do/z pamięci. Tzw. Samosprawdzanie (ang. self-checking).

-          pseudo on-line (wykradanie luk czasowych).

 

 

-          diagnostyka off-line odnosząca się do testowania i wykrywania uszkodzeń w urządzeniach nie wykonujących w czasie wykonywania procesu diagnostycznego swych podstawowych zadań.

 

Proces diagnostyczny:

- test wykrywający ewentualne uszkodzenia, i jeśli takie wystąpi,

- zlokalizowanie jego wystąpienie oraz

- dokonanie naprawy.

 

Ze względu na architekturę systemu testującego:

- testowanie zewnętrzne,

- testowanie wewnątrz-układowe,

- testowanie programowe.

 

 

 

Wykrywanie uszkodzeń w układach cyfrowych

 

Podczas testowania układu cyfrowego (CUT – ang. Circuit Under Test) z generatora pobudzeń testowych (TPG – ang. Test Pattern Generator) podawane są na wejścia pierwotne układu pobudzenia testowe. Pobudzenia testowe są wektorami wejściowymi, dla których sprawny układ podaje na wyjścia pierwotne stany różne od stanów podawanych na wyjścia przez układ uszkodzony.

Niemożliwe jest rozpatrywanie wszystkich możliwych uszkodzeń. Dlategoteż, dla rozpatrywanego układu zakłada się skończony zbiór uszkodzeń.

wektor V – wektor wejść pierwotnych układu

wektor Z – wektor wyjść pierwotnych układu

 

Poszukiwania sekwencji testującej układ cyfrowy

-          wyznaczanie wzorów testowych

-          weryfikacja pobudzeń testowych

-          minimalizacja pobudzeń testowych

 

Układy kombinacyjne

-          test posiada charakter kombinacyjny, tzn. kolejność pobudzeń testowych nie ma znaczenia

-          oddzielnym problemem testy dla uszkodzeń zmieniających układ kombinacyjny w asynchroniczny sekwencyjny układ cyfrowy (np. zwarcie linii)

 

Układy sekwencyjne

-          test wykrywający jedno uszkodzenie może mieć charakter sekwencji, która dzieli się na sekwencję pobudzającą i sekwencję wyprowadzającą.

-          sekwencja pobudzająca pobudza uszkodzenie i przesyła je na jedno z wyjść układu sekwencyjnego – może to być wyjście stanu wewnętrznego, niedostępne (nie będące wyjściem pierwotnym układu

-          sekwencja wyprowadzająca powoduje przesłanie sygnału błędu na jedno z wyjść pierwotnych układu

 

 

 

 

 

Wykład 3.

D-algorytm

 

1.              Wyznaczanie testów detekcyjnych algorytmem D.

 

W D - algorytmie uszkodzenie oznaczane jest symbolem D, przyjmującym w układzie sprawnym wartość 1, a w układzie uszkodzonym 0. Analogicznie ~D przyjmuje w układzie sprawnym 0, a w układzie uszkodzonym 1.

Procedura wyznaczania testów obejmuje dwa etapy:

1.              wyznaczanie pierwotnego p...

Zgłoś jeśli naruszono regulamin