Beágyazott információs rendszerek - vizsga 2010.05.19

A VIK Wikiből


1 Egy öt taszkból álló rendszerben prioritásos ütemezést alkalmazunk. Az egyes taszkok periódusát, számítási idejét, határidejét, ill. a hibakezelő handler futási idejét msec-ben megadó számnégyesek csökkenő prioritás szerint rendezve a következők (10, 0.4, 3, 0.1), (3, 0.45, 3, 0.05), (6, 0.7, 6, 0.05), (14, 1.15, 14, 0.1), (14, 4.5, 14, 0.5). Valamelyik taszk végrehajtása során 5 msec-enként legfeljebb egyszer, véges valószínűséggel hiba lép fel. A Deadline Monotonic Analysis (DMA) módszer felhasználásával vizsgálja meg, hogy a legkisebb prioritású taszk teljesíti-e a határidőt (4 pont)?
Táblázat a jobb átláthatóságért
Taszk T C D
1 10 0.4 3 0.1
2 3 0.45 3 0.05
3 6 0.7 6 0.05
4 14 1.15 14 0.1
5 14 4.5 14 0.5
A szokásos képletet ki kell egészíteni a hibakezelés számítással:
, ahol
, azaz a hiba fellépésének periódusideje
... ... ...
... ... ...
2. Hogyan értékeli a memóriamenedzsment technikákat a válaszidő kézbentarthatósága szempontjából (1 pont)?
STACK : megfelelő, mert fix idejű utasítsai vannak
HEAP : kritikus, a keresések időigényesek (malloc, free)
3. Mutassa be a TTA architektúrát (2 pont)!
4. Hogyan épül fel egy fizikai óra (1 pont)? Mi a referencia óra, a helyes óra és a pontos óra definíciója (1 pont)? Hogyan értelmezzük az óra driftet (a drift mértékét), mit nevezünk ofszetnek, együttfutásnak, ill. pontosságnak (2 pont)? Mit nevezünk belső, és mit külső szinkronizációnak (1 pont)?
helyes óra:
pontos óra:
drift:
együttfutás: _?_ - ehhez tartozik a belső szinkronizáció
pontosság: referenciaórától az eltérés - külső szinkronizáció
5. Milyen szabályokat alkalmazunk (2 szabály), ha egy aperiodikus és sporadikus, hard-time és szoft real-time taszkokat egyaránt ütemeznünk kell (2 pont)?
Minden taszkot az átlagos érkezési és végrehajtási idővel veszünk figyelembe
A hard-real time taszkok a worst-case értékekkel szerepelnek
6. Egy token vezérelt busz rendszerben a token körbejárási ideje 10 msec. A globális idő nem férhető hozzá. Az üzenet továbbítási idő 1 msec. Az óra felbontóképessége elhanyagolható. A fizikai eszközt elérő protokoll felett PAR (Positive Acknowlegement & Retransmission) protokollt alkalmazunk. Az ismétlések száma 2.
Legalább mekkora time-out beállítása javasolható? Miért (1 pont)?
Mekkora a hibadetektálás késleltetése? Miért? (2 pont)
Mekkora az akció késleltetési idő (két eset)? Miért? (2 pont)
Timeout
Ha éppen elment a token, 10 msec-et kell várni
a timeout idő
Hibadetektálás
Ha letelt a timeout, a vevő nem reagált
2 ismétlés 3 próbálkozást jelent
A hibadetektálás késleltetése 66 msec, azaz 3-szoros timeout
Akció késleltetési idő
Ha nincs globális idő, akkor
, mert rögtön volt token
, mert kétszer megvártuk a timeout-ot, majd a tokent még meg kellett kapnia
7. Ismertesse a TinyOS/NesC környezet építőelemeit, ezek felépítését és tulajdonságait! Milyen szabályok érvényesek az elemek kapcsolódására (2 pont)?
komponensek
modul - interfész megvalósítása
konfiguráció - modulok összekapcsolása
interfészek
2 irányú, lehet command vagy event
8. Hogyan működnek az elárasztásos protokollok (1 pont)? Mikor célszerű ezek alkalmazása (1 pont)? Jellemezze ezeket a protokollokat mind hálózati mind a csomóponton belüli erőforrás igény szempontjából (1 pont)! Milyen előnyei és hátrányai vannak, hogyan lehet a hátrányos tulajdonságokon javítani (1 pont)?
Működése:
Csomópontok broadcastolnak, amíg el nem jut mindenkihez
Alkalmazása
Információ terítés
Erőforrás
Csomópontonként és üzenetenként egy-egy üzenet
Előnye
Hibatűrő, robosztus
Hátránya
Nagy üzenetszám
Javítása
Valamilyen valószínűséggel küldjük tovább
9. Ismertesse a "reference broadcasting" elnevezésű szinkronizációs eljárás lépéseit, és képlettel adja meg mekkora mekkora értékkel kell módosítani a szinkronizálandó órát
A 2014-es zh, 2. feladat - Koza (vita) 2014. május 28., 09:33 (UTC)
10. Röviden ismertesse a szolgáltatásbiztonság jellemzőit és befolyásoló tényezőit (2 pont)!
Ez a szakasz egyelőre csonk. Segíts a szerkesztésében!

Ha nem tudod, hogyan állj neki, olvasd el az útmutatót!


11. Mutassa be a szolgáltatásbiztonság növelésére szolgáló eszközöket (2 pont)! Ismertesse a verifikáció és validáció fogalmát (2 pont)!
Ez a szakasz egyelőre csonk. Segíts a szerkesztésében!

Ha nem tudod, hogyan állj neki, olvasd el az útmutatót!


12. A alábbi C nyelvű függvényt a táblázatban felírt bemenő paraméterek (teszt vektorok) beállításával tesztelik. A control értéke UP, DOWN vagy FORWARD, a direction értéke LEFT vagy RIGHT, a mode értéke NORMAL vagy ENHANCED lehet.
int set_status(int control, int direction, int mode) {
  status=OK;
  switch (control) {
    case DOWN:
      status=OK;
      break;
    case UP:
      if((direction==LEFT) || (mode==NORMAL)){
        STATUS=OK;
      } else {
        STATUS=FAIL;
      }
      break;
  }
  return(status)
}
Teszt bemenetek control direction mode
Teszt 1 DOWN LEFT NORMAL
Teszt 2 UP LEFT ENHANCED
Teszt 3 UP RIGHT NORMAL
Adja meg, hogy hány független út bejárásával tesztelhető a kódrészlet (1 pont)!
4 független út
Határozza meg a döntési ág, feltétel kombináció és út fedettségi mértékeket a fenti tesztek végrehajtása esetén (3 pont)!
Döntési ág lefedettség: 3/5
Feltétel kombináció: 2/5
Útfedettség: 2/4
Ha szükséges, akkor egészítse ki úgy a teszt sorozatot, hogy valamennyi fedettségi mérték 100% legyen (2 pont)!
Teszt bemenetek control direction mode
Teszt 4 FORWARD don't care don't care
Teszt 5 UP LEFT NORMAL
Teszt 6 UP RIGHT ENHACED