Iterptiniu programines irangos sistemu, kuriu elgsena priklauso nuo laiko apribojimu, projektavimas - PowerPoint PPT Presentation

1 / 47
About This Presentation
Title:

Iterptiniu programines irangos sistemu, kuriu elgsena priklauso nuo laiko apribojimu, projektavimas

Description:

terptini programin s rangos sistem , kuri elgsena priklauso nuo laiko apribojim , projektavimas – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 48
Provided by: ktu94
Category:

less

Transcript and Presenter's Notes

Title: Iterptiniu programines irangos sistemu, kuriu elgsena priklauso nuo laiko apribojimu, projektavimas


1

Realaus laiko sistemu programines irangos
projektavimas
  • Iterptiniu programines irangos sistemu, kuriu
    elgsena priklauso nuo laiko apribojimu,
    projektavimas

2
Tikslai
  • Paaiškinti realaus laiko sistemos savoka ir kodel
    šios sistemos paprastai yra realizuojamos kaip
    lygiagretus procesai
  • Aprašyti realaus laiko sistemu projektavimo
    procesa
  • Paaiškinti realaus laiko vykdikliu vaidmeni
  • Supažindinti su bendromis stebejimo ir valdymo
    architekturomis bei duomenu surinkimo sistemomis

3
Ižanga
  • Realaus laiko sistemu programines irangos
    projektavimas Ižanga (Tikslai, temos,
    apibudinimas, apibrežimai, poveikio/reakcijos
    sistemos, architekturiniai sprendimai, sistemos
    elementai)

4
Nagrinejamos temos
  • Sistemu projektavimas
  • Realaus laiko vykdikliai
  • Stebejimo ir valdymo sistemos
  • Duomenu surinkimo sistemos

5
Realaus laiko sistemos apibudinimas
  • Sistemos, kurios stebi ir valdo savo aplinka
  • Sistemos, kurios neišvengiamai susijusios su
    aparaturine iranga
  • Jutikliai (sensors) surenka duomenis iš
    sistemos aplinkos
  • Judikliai (actuators) pakeicia (tam tikru
    budu) sistemos aplinka
  • Laikas tokioms sistemoms yra esminis kriterijus.
    Realaus laiko sistemos PRIVALO reaguoti
    (response) per tam tikra laika

6
Apibrežimai
  • Realaus laiko sistemos teisingas funkcionavimas
    priklauso nuo gaunamu rezultatu ir laiko, per
    kuri šie rezultatai gaunami
  • Realaus laiko lanksti sistema (soft real-time
    system) yra sistema, kurios veikimo efektyvumas
    laipsniškai mažeja, jei rezultatai nera gaunami
    pagal apibrežto laiko reikalavimus
  • Realaus laiko kieta sistema (hard real-time
    system) yra sistema, kurios veikimas yra
    neteisingas, jei rezultatai nera gaunami per
    nustatyta specifikacijoje laika


7
Poveikio/reakcijos sistemos
  • Gavus poveiki sistema turi reaguoti per tiksliai
    apibrežta laika
  • Periodiniai poveikiai poveikiai, kurie ivyksta
    nustatytais laiko intervalais
  • Pavyzdžiui, temperaturos jutiklis skaiciuoja 10
    kartu per sekunde
  • Ne periodiniai poveikiai - poveikiai, kurie
    ivyksta nenumatytais laiko momentais
  • Pavyzdžiui, sistemos energijos sutrikimas gali
    sukelti sistemos pertraukima

8
Architekturiniai sprendimai
  • Del skirtingu poveikio/reakcijos laiko apribojimu
    sistemos architekturoje turi buti greitas
    poveikiu apdorojimo programu perjungimas
    (switching)
  • Skirtingiems poveikiams yra skirtingi laiko
    apribojimai, todel paprastai nebepakanka paprasto
    nuoseklaus ciklo
  • Realaus laiko sistemos paprastai yra
    realizuojamos kaip tarpusavyje saveikaujantys
    procesai, kuriuos valdo realaus laiko vykdiklis

9
Realaus laiko sistemos modelis
10
Sistemos elementai
  • Jutikliu valdymo procesai
  • Surenka informacija iš jutikliu. Esant tam
    tikriems jutikliu poveikiams, informacija gali
    buti buferizuojama
  • Duomenu procesorius
  • Vykdo surinktos informacijos apdorojima ir
    apskaiciuoja sistemos reakcijos rezultatus
  • Judikliu valdymas
  • Generuoja valdymo signalus judikliui

11
Jutiklio/judiklio procesas
12
Nagrinejamos temos
  • Sistemu projektavimas (reikalavimu padalinimas,
    projektavimo procesas, laikiniai apribojimai,
    automato modeliavimas, programavimas, java)
  • Realaus laiko vykdikliai
  • Stebejimo ir valdymo sistemos
  • Duomenu surinkimo sistemos

13
Sistemos projektavimas
  • Suprojektuoti aparaturine ir programine irangas,
    susijusias su sistema. Priskirti aparaturinei ir
    programinei irangai funkcijas
  • Projektuojama atsižvelgiant i nefunkcinius
    sistemos reikalavimus
  • Aparaturine iranga veikia geriau, bet jos kurimas
    užtrunka ilgiau ir yra mažiau galimybiu ja
    pakeisti

14
Aparaturos ir programines irangos projektavimas
15
Realaus laiko sistemu projektavimo procesas
  • Nustatyti apdorojamus poveikius ir kokios turi
    buti reakcijos i juos
  • Kiekvienam poveikiui ir reakcijai nustatyti laiko
    apribojimus
  • Apjungti poveikio ir reakcijos apdorojima i
    lygiagrecius procesus, susijusius su kiekviena
    poveikio ir reakcijos klase

16
Realaus laiko sistemu projektavimo procesas
  • Suprojektuoti algoritmus kiekvienos poveikio ir
    reakcijos klases apdorojimui su nustatytais laiko
    apribojimais
  • Suprojektuoti planavimo sistema, kuri užtikrintu,
    kad procesu vykdymo pradžios data butu parinkta
    taip, jog juos butu speta užbaigti iki nustatyto
    termino (deadline)
  • Apjungti, naudojant realaus laiko vykdiklius ar
    operacine sistema

17
Laikiniai apribojimai
  • Gali reikalauti plataus modeliavimo ir
    eksperimentavimo, kad užtikrinti, jog sistema
    atitinka laiko apribojimus
  • Gali reikšti, kad tam tikros projektavimo
    strategijos, tokios kaip objektiškai orientuotas
    projektavimas, negali buti naudojamos del
    papildomu išlaidu
  • Gali reikšti, kad vykdymas gali buti realizuotas
    žemo lygio programavimo kalba

18
Automato modeliavimas
  • Realaus laiko sistemoje poveikis gali sukelti
    perejima iš vienos busenos i kita
  • Baigtiniai automatai gali buti naudojami realaus
    laiko sistemu modeliavimui
  • Taciau baigtiniu automatu modeliai stokoja
    strukturiniu elementu. Netgi paprastos sistemos
    gali tureti sudetinga modeli
  • Automato modeliai nusakomi naudojant UML

19
Bangines krosneles buvio automatas
Pilnaspajegumas
Taktugeneratorius
Numeris
Pilnaspajegumas
Pusepajegumo
Pusepajegumo
Durysuždarytos
Taktugeneratorius
Atšaukti
Pradeti
Durysatidarytos
Sistemosklaida
Durysuždarytos
20
Realaus laiko programavimas
  • Realaus laiko aparaturines irangos sistemos gali
    buti suprogramuotos Asemblerio kalba, kad butu
    užtikrinti laiko apribojimai
  • Kalbos, tokios kaip C, leidžia sukurti efektyvias
    programas, taciau neturi konstrukciju
    (constructs), skirtu palaikyti lygiagretumui arba
    bendru resursu valdymui
  • Ada, kaip kalba, yra suprojektuota realaus laiko
    sistemu palaikymui, todel apima bendros
    paskirties lygiagretumo mechanizma

21
Java kaip realaus laiko kalba
  • Java palaiko lengvasvori lygiagretuma (gijas
    (threads) bei sinchronizuotus metodus) ir gali
    buti naudojama kai kuriu realaus laiko
    programines irangos sistemu (soft real-time
    systems) projektavimui
  • Java 2.0 netinka realaus laiko aparaturines
    irangos sistemu (hard real-time systems)
    programavimui ir programavimui, kur reikia
    tikslios sinchronizacijos (timing) valdymo
    kontroles
  • Neimanoma tiksliai nusakyti giju vykdymo laiko
  • Nevaldomas šiukšliu rinkimas
  • Neimanoma nustatyti bendru resursu panaudojimo
    eiles dydžio
  • Kintamas virtualios mašinos idiegimas
  • Neimanoma vykdyti erdves ar laiko analizes

22
Nagrinejamos temos
  • Sistemu projektavimas
  • Realaus laiko vykdikliai (paskirtis,
    komponentai, non-stop sistemos, prioritetai,
    pertraukimu apdorojimas, procesu valdymas,
    perjungimas)
  • Stebejimo ir valdymo sistemos
  • Duomenu surinkimo sistemos

23
Realaus laiko vykdikliai
  • Realaus laiko vykdikliai yra specializuotos
    operacines sistemos, kurios valdo realaus laiko
    sistemu procesus
  • Atsakingi už procesu valdyma ir resursu
    (procesoriaus ir atminties) paskirstyma
  • Gali buti sudaryti pagal standartini realaus
    laiko vykdikliu branduoli, kuris naudojamas
    nepakeistas arba modifikuotas pagal konkrecia
    taikomaja programa
  • Nepalaiko failu valdymo

14
24
Vykdikliu komponentai
  • Realaus laiko laikrodis (clock)
  • Teikia informacija proceso planavimui
  • Pertraukciu apdorojimo programa (interrupt
    handler)
  • Valdo neperiodines užklausas
  • Planuotojas (scheduler)
  • Parenka sekanti vykdymo procesa
  • Ištekliu paskirstymo programa (resource manager)
  • Paskirsto atminties ir procesoriaus resursus
  • Dispeceris arba valdymo programa
  • Pradeda proceso vykdyma

25
Be sustojimo veikianciu (Non-stop) sistemu
komponentai
  • Programa konfiguratorius (configuration manager)
  • Atsakingas už dinamiška sistemos programines ir
    aparaturines irangu konfiguracijos pakeitima.
    Aparaturines irangos moduliai gali buti pakeisti,
    o programine iranga atnaujinta nestabdant
    sistemos darbo
  • Klaidu valdymo programa (fault manager)
  • Atsakingas už klaidu aptikima programineje ir
    aparaturineje irangose bei tinkama veiksmu
    vykdyma (pvz., persijungima i atsarginius
    diskus), kad butu užtikrinta, jog sistema darba
    tes

26



Realaus laiko vykdikliu komponentai
27
Proceso prioritetai
  • Kartais kai kuriu veiksmu apdorojimas turi tureti
    prioriteta
  • Pertraukimo lygio prioritetai. Aukšciausias
    prioritetas, kuris suteikiamas procesams,
    reikalaujantiems labai greitos reakcijos
  • Laikrodžio lygio prioritetai. Suteikiami
    periodiniams procesams
  • Gali buti ir kitu lygiu prioritetu

28
Pertraukimu apdorojimas
  • Valdymas automatiškai yra perduodamas i iš anksto
    apibrežta atminties vieta
  • Šioje vietoje esanciu komandu pagalba valdymas
    yra nukreipiamas i pertraukimo apdorojimo vieta
  • Tuo metu kiti pertraukimai yra negalimi, kai
    pertraukimas apdorojamas ir valdymas gražinamas i
    pertraukta procesa
  • Pertraukimo apdorojimo veiksmai PRIVALO buti
    trumpi, paprasti ir greiti

29
Periodiniu procesu apdorojimas
  • Daugumoje realaus laiko sistemu yra keletas
    periodiniu procesu klasiu, turinciu skirtingus
    periodus (laikus tarp vykdymu), vykdymo laikus ir
    terminus (laikas, iki kurio apdorojimas privalo
    buti baigtas)
  • Realaus laiko laikrodis tiksi periodiškai, ir
    kiekvienas taktas sukelia pertraukima, kuris
    periodinius procesus valdanciai programai leidžia
    palaikyti procesu tvarkarašti
  • Proceso valdytojas parenka pasiruošusi vykdymui
    procesa

30
Proceso valdymas
  • Susijes su lygiagreciu procesu aibes valdymu
  • Periodiniai procesai yra vykdomi iš anksto
    apibrežtais laiko intervalais
  • Vykdytojas naudoja realaus laiko laikrodi, kad
    žinotu, kada vykdyti procesa
  • Proceso periodas laikas tarp proceso vykdymu
  • Periodo terminas laikas, iki kurio turi buti
    baigtas apdorojimas

31
Vykdikliu valdymas

Resursu valdytojas

Resursu valdytojas







32
Procesu perjungimas
  • Planuotojas parenka sekanti procesoriaus procesa.
    Tai priklauso nuo planavimo strategijos kaip
    esminis kriterijus gali buti paimtas proceso
    prioritetas
  • Resursu valdytojas vykdomam procesui paskirsto
    atminti ir procesoriu
  • Dispeceris paima iš pasiruošusiu vykdymui procesu
    sarašo viena procesa, užkrauna ji i procesoriu ir
    pradeda ji vykdyti

33
Nagrinejamos temos
  • Sistemu projektavimas
  • Realaus laiko vykdikliai
  • Stebejimo ir valdymo sistemos (apibudinimas,
    apsaugos ir šildymo sistemu pavyzdžiai)
  • Duomenu surinkimo sistemos

34
Stebejimo ir valdymo sistemos
  • Tai svarbi realaus laiko sistemu klase
  • Nuolat tikrina jutiklius ir priklausomai nuo
    jutiklio reikšmiu vykdo veiksmus
  • Stebejimo sistemos tikrina jutiklius ir praneša
    savo rezultatus
  • Valdymo sistemos priima jutikliu reikšmes ir
    valdo aparaturines irangos judiklius (actuators)

35
Apsaugos sistema
  • Sistema privalo stebeti duru ir langu jutiklius,
    kad pastate aptiktu isilauželius
  • Kai jutiklis aptinka isilaužima, sistema ijungia
    šviesas aplinkineje teritorijoje ir automatiškai
    iškviecia policija
  • Sistema turi užtikrinti procesu vykdyma be
    pagrindinio energijos šaltinio

36
6
0
H
z
4
0
0
H
z
1
0
0
H
z
Judesio detektoriaus procesas

Langu jutiklioprocesas
Duru jutiklioprocesas
Jutikliobusena


Jutikliobusena
Detektoriaus busena
5
6
0
H
z
Aliarmine sistema

Bendravimoprocesas
Pastato stebejimoprocesas

Energijos šaltiniogedimo pertvarkymas
Kambario numeris


Pastato stebejimas
Energijos perjungimoprocesas
Aliarmo sistemosprocesas
Aliarmo pranešimas

Kambario numeris
Aliarmo sistema
Aliarmo sistema
Aliarmo sistema

Kambario numeris

Garso sinte- zatoriaus procesas
Apšvietimo valdymoprocesas
Girdimas aliarmoprocesas
Proceso architektura
37
Valdymo sistemos
  • Visu pirma apsaugos sistema yra stebejimo
    sistema. Ji surenka duomenis iš jutikliu, taciau
    neatlieka realaus laiko sistemu judikliu valdymo
  • Valdymo sistemos yra panašios, bet reaguodama i
    jutikliu reikšmes, sistema siuncia valdymo
    signalus i judiklius
  • Stebejimo ir valdymo sistemos pavyzdys yra
    sistema, kuri stebi temperatura ir ijungia ar
    išjungia šildiklius (heaters)

38
Temperaturos valdymo sistema
5
0
0
H
z
0
0
H
z
Perjungimo komanda

5
0
0
H
z

39
Nagrinejamos temos
  • Sistemu projektavimas
  • Realaus laiko vykdikliai
  • Stebejimo ir valdymo sistemos
  • Duomenu surinkimo sistemos (apibudinimas,
    pavyzdžiai, reaktoriaus srautas, žiedinis
    buferis, abipusis išskyrimas)

40
Duomenu surinkimo sistemos
  • Surenka duomenis iš jutikliu tolimesniam
    apdorojimui ir analizei
  • Duomenu surinkimo ir apdorojimo procesai gali
    tureti skirtingus periodus ir terminus
    (deadlines)
  • Duomenu surinkimas gali buti greitesnis negu ju
    apdorojimas, pvz., informacijos surinkimas apie
    sprogima
  • Ciklinis arba žiedinis buferis yra mechanizmas,
    suvienodinantis greicio skirtumus

41
Reaktoriaus duomenu surinkimas
  • Sistema surenka duomenis iš jutikliu, stebinciu
    neutronu tekejima iš branduolinio reaktoriaus,
    aibes
  • Tekejimo duomenys yra patalpinami i žiedini
    buferi tolesniam apdorojimui
  • Žiedinis buferis yra realizuotas kaip lygiagretus
    procesas taip, kad surinkimo ir apdorojimo
    procesai galetu buti sinchronizuojami

42
Reaktoriaus srauto stebejimas
Jutikliai (kiekvienas duomenu srautas yra
jutiklio reikšme )
Jutiklio identifikatorius ir reikšme
Apdoroto srauto lygis
Jutiklio procesas
Apdorojimo duomenys
Jutiklio duomenu buferis
Išvesti (display)
43
Žiedinis buferis
Registravimo procesas
Apdorojimo procesas
44
Abipusiškas išskyrimas
  • Registravimo procesai surenka duomenis ir ideda
    juos i buferi. Apdorojimo procesai paima duomenis
    iš buferio ir padaro elementus prieinamais
  • Registravimo ir apdorojimo procesai turi buti
    abipusiai išskirti, t.y. netureti priejimo prie
    to paties elemento
  • Buferis turi neleisti registravimo procesams
    ideti informacijos i pilna buferi, o apdorojimo
    procesams bandyti paimti informacija iš tušcio
    buferio

45
Esminiai aspektai
  • Realaus laiko sistemos korektiškumas priklauso ne
    tik nuo to, ka sistema daro, bet ir nuo to, kaip
    greitai ji reaguoja
  • Bendras realaus laiko sistemos modelis apima
    procesu asocijavima su jutikliais ir judikliais
    (actuators)
  • Realaus laiko sistemu architekturos paprastai yra
    projektuojamos kaip lygiagreciu procesu rinkinys

46
Esminiai aspektai
  • Realaus laiko vykdikliai yra atsakingi už proceso
    ir resursu valdyma
  • Stebejimo ir valdymo sistemos surenka informacija
    iš jutikliu ir siuncia valdymo signalus
    judikliams
  • Duomenu surinkimo sistemos paprastai yra
    aprašomos pagal registravimo/apdorojimo modeli
  • Java gali palaikyti lygiagretuma, bet netinkama
    kritiniu laiko atžvilgiu sistemu kurimui

47
Esminiai aspektai
  • Realaus laiko sistemu programines irangos
    projektavimas Esminiai aspektai (korektiškumas,
    modelis, architektura, vykdikliai, stebejimo,
    duomenu surinkimo, Java)
Write a Comment
User Comments (0)
About PowerShow.com