• Nie Znaleziono Wyników

„Programowa symulacja błędów w środowisku Windows NT”

Badanie niezaw odności sprzętu i oprogra­

m ow ania je st zadaniem dość trudnym i w ym a­

gającym specjalistycznych narzędzi w spom a­

gających ten proces. Do grupy takich narzędzi należą sym ulatory błędów. P ozw alają one sym ulow ać (w strzykiw ać, an g .fa u lt injection) błędy w badanym system ie i obserw ow ać w yw ołane przez nie efekty. W szczególnym przypadku technika ta pozw ala na ocenę efe­

ktyw ności różnego rodzaju m echanizm ów detekcji i tolerow ania błędów oraz program ów diagnostycznych. W literaturze dotyczącej sym ulacji błędów w yróżnić m ożna dw ie techniki:

> w prow adzanie błędów do m odelu (sym ulow anego) badanego system u

> w prow adzanie błędów do rzeczyw istego system u.

Koncepcja w strzykiw ania błędów do m ode­

lu testow anego system u je s t bardzo atrakcyjna.

Sym ulacja testow anego system u pozw ala bowiem na pełną kontrolę nad czasem gene­

racji, typem i m iejscem błędu. M ożliw ości tej techniki testow ania uzależnione są od poziom u szczegółow ości stosow anego w niej m odelu analitycznego. W adą jest olbrzym i nakład pracy w łożony w opracow anie m odelu testo­

wanego system u oraz duży narzut czasow y na sam ą sym ulację. Stąd stosując tę technikę w prow adza się różnego rodzaju uproszczenia i ograniczenia przez co sym ulatory takie

dedykow ane są dla konkretnych aplikacji.

P rzykłady rozw iązań tego typu znaleźć m ożna w [5, 10, 14],

B ardziej uniw ersalne w y dają się być techniki w strzykiw ania błędów do rzeczyw i­

stych system ów . W yróżnić tu m ożna trzy podejścia:

> poprzez w ym uszanie błędów fizycznych (na poziom ie sprzętu) w badanym system ie (np. [9])

> poprzez program ow e sym ulow anie błę­

dów w badanym system ie (np. [3])

> poprzez im plem entację hybry do w ą (np.

[13]), w ykorzystującą jedn ocześnie pierw sze dw ie koncepcje.

Sprzętow e w strzykiw anie błędów je st przede w szystkim szybkie i realistyczne - w testow anym system ie generow ane są rzeczyw iste błędy. Przykłady takich rozw iązań znaleźć m ożna w [1, 7, 8, 9, 11]. M ają one jed n ak szereg wad. Po pierw sze, w y m agają one dodatkow ego sprzętu, który najczęściej je st dedykow any jed y n ie do testow anego system u, a to z kolei podnosi znacznie koszty eksperym entów . Duża złożoność i szybkość w spółczesnych procesorów spraw ia, że proje­

ktow anie tego dodatkow ego sprzętu je st bardzo trudnym zadaniem . G łów ny problem tkwi nie tylko w sam ej generacji błędu, ale w um ożliw ieniu późniejszej obserw acji

PO L S K IE T O W A R Z Y ST W O IN F O R M A T Y C Z N E — O D D Z IA Ł G Ó R N O Ś L Ą SK I

6 4 P io tr G aw kow ski — I n agroda w kon ku rsie P T I

testow anego system u i kontroli nad nim.

C zęsto zachodzi konieczność porów nyw ania w szystkich w yjść układów scalonych w testo­ (zazw yczaj w ykorzystując do tego instrukcję pułapki program ow ej) i w ykonanie kodu, w ykorzystując m echanizm y m onitorow ania i urucham iania spotykane w nowych procesorach [4],

W przedstaw ianej tu pracy dyplom ow ej zrealizow any został program ow y sym ulator błędów . Istotną ce ch ą opracow anego system u, pełnej kontroli projektanta eksperym entu nad m om entem generacji błędu, m iejscem i rodza­ ich pow tarzalność. Do przeprow adzania eksperym entów nie potrzeba dodatkow ego kom putera m onitorującego, ja k m a to m iejsce sym ulatora błędów . W ykorzystując opracow a­

ny system sym ulacji błędów przeprow adzono w iele eksperym entów z różnym i program am i aplikacyjnym i. W ykonane eksperym enty m ia­

ły głów nie na celu zw eryfikow anie pracy wyniki z przeprow adzonych eksperym entów .

O pracow any system sym ulacji błędów pozw ala na d u żą dokładność specyfikacji eksperym entów oraz szczegółow ość zbierania danych co z kolei pozw ala na w nikliw ą analizę efektów błędów układow ych w środow isku system ow ym . S ym ulacja błędów okazała się bardzo przydatna przy badaniu efektyw ności różnych program ow ych m echanizm ów d ete­

kcji i tolerow ania błędów. Ponadto w yko­

rzystano j ą rów nież do oceny i optym alizacji profesjonalnego testu koprocesora arytm ety­

cznego procesora Intel Pentium . Przew idy­

wane są dalsze badania eksperym entalne.

Funkcjonalność zas sym ulatora błędów podlega ciągłem u rozw ojow i.

PO L S K IE T O W A R Z Y ST W O IN F O R M A T Y C Z N E — O D D Z IA Ł G Ó R N O Ś L Ą SK I

Jedenasta Górska Szkoła P T IS z c z y r k ’9921-25 czerwca 1999 6 5

Literatura

1. J.A rlat, F ault Injection fo r D ependability Validation: A M ethodology a n d Som e A pplications, IEEE T ransactions on Softw are E ngineering, vol. 16, no. 2, pp. 166-182, February 1990.

2. A .Bens, P.Prinetto i inni, A F ault Injection approach f o r em b edd ed M icroprocessor-based Boards, The Proc. o f N inth European W orkshop on D ependable C om puting: testing m ethods and tools for m odern com puter system s and netw orks, G dansk, 14-16 M ay, 1998, pp. 2-6.

3. Joao C arreira, Henrique M adeira, Joao Gabriel Silva, X ception: Softw are F ault Injection and M on itoring in Processor F unctional Units, D C C A -5, C onference on D ependable C om puting for C ritical A pplications, Septem ber 1995, pp. 135-149.

4. Joao C arreira, H enrique M adeira, Joao G abriel Silva, X ception: A Technique f o r the E xperim ental E valuation o f D ependability in M odern C om puters, IEEE T ransactions on Software E ngineering, Vol. 24, N o. 2, February 1998, pp. 125-136.

5. D .G il, J.C .B araza, J.V .B usquets, P.J.G il, Fault Injection into VHDL M odels: A n alysis o f the E rror Syndrom e o f a M icrocom puter System , Proc. o f the 2 4 ^ E U R O M IC R O Conference, V asteras, Sweden, A ugust 25-27 1998, EU R O M IC R O 98, V olum e I, pp. 418-425.

6. G .A .K anaw ati, N .A . K anaw ati, J.A . A braham , F E RRARI: A Tool f o r the Validation o f System D ependability Properties, Proc. 22 n d. Int. Symp. on F ault-T olerant C om puting (FTC S-22), pp.

336-344.

7. J.K arlsson, P.Liden, P.D ahlgren, R .Johansson, U .G unneflo, Using H eavy-ion Radiation to Validate F ault-H andling M echanism s, IEEE M icro, Vol. 14, N o. 1, pp. 8-32, 1994.

8. H .M adeira, M .R ela, F.M oreira, J.S ilva, RIFLE: A G eneral Purpose P in -L evel Fault Injector, Proc. First European D ependable C om puting C onf., Berlin, pp. 199-216, O ctober 1994.

9. G .M irem adi, J.K arlsson, U .G unneflo, J.T orin, Two Softw are Techniques f o r O n-Line E rror D etection, Proc. FTCS-22, pp. 328-335,1992.

10. S.Racek, P.Herout, J.H lavicka, F ault Injection as a Tool f o r F T Process C ontroller D esign, Proc.

o f Design and D iagnostics o f Electronic C ircuits and System s, W orkshop, Szczyrk, 2-4 Septem ber 1998, pp. 123-128.

11. J.R .Sam son, W .M oreno, F.Falquez, A Technique f o r A u to m a ted Validation o f Fault Tolerant D esigns Using L aser Fault Injection (LFI), FTCS-28, IEEE C om puter Society, 1998, pp. 162­

167.

12. Z .Segall, D .V rsalovic, D .Sieviorek, D .Y askin, J.K ow nacki, J.B arton, D .Rancey, A .R obinson, A .Lin, F IA T -F ault Injection b a sed A u to m a ted Testing E nvironm ent, FTCS-18, pp. 102-107.

13. L.T.Y oung, R .K .lyer, K .K .G osw am i, A H y b rid M onitor A ssiste d F a ult Injection Environm ent, Proc. Third IFIP W orking Conf. D ependable C om puting for C ritical A pplications, Italy, Sept.

1992.

14. C harls R. Y ount, Daniel P.Siew iorek, A M ethodology f o r the R a p id Injection o f Transient H ardw are Errors, IEEE T ransactions on C om puters, Vol. 45, N o. 8, A ugust 1996

P O L S K IE T O W A R Z Y ST W O IN F O R M A T Y C Z N E — O D D Z IA Ł G Ó R N O Ś L Ą S K I

Jedenasta G órska Szkoła P T I Szczyrk '9921-25 czerw ca 1999 67

Tomasz K aim ierczuk