RAS operatsioonisüsteemid - reaalajalised tuumad (1)

1 Hindamata
Punktid

Esitatud küsimused

  • Millised reaalajalised nõuded määravad RAS tarkvara koostamise eripära ?
  • Millal kasutatakse reaalajasüsteemides pseudokernelit ?
  • Mis on pollitav tsükkel (polled loop), millal seda kasutatakse ?
  • Kuidas saab vältida programmis mehaanilise lüliti lülitamisel tekkivat häiret. ( ?
  • Mis on tsükliliselt täidetavad programmid (cyclic executives), millal neid kasutatakse ?
  • Mis on seisunditega juhitav kood (state-driven code), millal seda kasutatakse ?
  • Mis on kaasprogrammid, millal neid kasutatakse ?
  • Kuidas töötavad katkestustega juhitavad programmid, nende eelised ja puudused ?
  • Mis on konteksti lülitamine (context switching), kuidas seda realiseeritakse ?
  • Kuidas töötab järjestikplaanur (round-robin) ?
  • Mis on tõrjuva prioriteediga süsteemid, millal neid kasutatakse ?
  • Mis on hübriidsüsteemid, milliseid variante teate ?
  • Mis on tegumi juhtimise blokk-mudel (task-control block model - TCB) ?
  • Milline on tüüpiline TCB struktuur ?
  • Miks ja millal on vaja tegumeid sünkroniseerida ?
  • Millise süsteemi ressursid vajavad tavaliselt sünkroniseerimise kasutamist ?
  • Mis on programmi kriitilised piirkonnad ?
  • Mis on ringpuhvrid, kuidas neid kasutatakse ?
  • Mis on kirjakastid (mailbox), kuidas neid kasutatakse ?
  • Mis on semaforid, kuidas neid kasutatakse ?
  • Mis on loenduvad semaforid, milleks neid kasutatakse ?
  • Mis on ummik (deadlock) ?
  • Millised tingimused peavad olema täidetud ummiku tekkimiseks ?
  • Kuidas vältida ummiku tekkimist ?
  • Mis on prioriteetide inversioon, selgitada selle tekkimist ?
  • Kuidas töötab päritava prioriteediga protokoll (priority inheritance protocol) ?
  • Millised eeltingimused peavad olema täidetud tegumi lihtsustatud analüüsiks ?
  • Mida sealjuures kasutatakse ?
  • Millistest faasidest koosneb manussüsteemide arendustsükkel ?
  • Millised on RAS spetsiifilised nõuded tarkvarale ?
  • Mis peab olema ära toodud spetsifikatsioonis ?
  • Kuidas riistvara lisamine mõjutab olulisi parameetreid ­ töökindlus, energiatarve ?
  • Mis on tarkvara usaldusväärsus ?
  • Mis on protseduur-orienteeritud disain, selle puudused ja eelised ?
  • Mis on objekt-orienteeritud disain, selle puudused ja eelised ?
  • Kui kiiresti programm töötab ?
  • Kaua võtab aega koodist täidetava programmi saamine ?
  • Kui palju vaeva on vaja keele õppimiseks ?
  • Milliseid programmeerimiskeele omadusi on vaja teada ja arvestada RAS korral ?
  • Milles seisneb programmeerija efektiivsuse mõõtmismetoodika KLOC, mis on delta KLOC ?
  • Mida mõõdab McCabe meetrika (cyclomatic compexity), kuidas seda rakendatakse ?
  • Mille poolest erinevad terminid ,,bug", ,,error", ,,fault" ja ,,failure" ?
  • Mis on tarkvara musta kastina testimine (black-box testing) ?
  • Mis on tarkvara valge kastina testimine (white-box testing) ?
  • Milliseid sisseehitatud teste reaalajasüsteemides tavaliselt kasutatakse ?
  • Mis on agendid, millised omadused eristavad neid ,,tavalistest" objektidest ?
  • Mis on agendi (agentprogrammi) a) autonoomsus, b) reaktiivsus, c) proaktiivsus ?
  • Mis on reaalajasüsteem ?
  • Mille poolest ta erineb teistest arvutisüsteemidest ?
  • Mis teeb arvutisüsteemist reaalajas töötava arvutisüsteemi ?
  • Mille poolest erinevad funktsionaalsed ja mittefunktsionaalsed nõuded tarkvarale ?
  • Millest lähtudes määratakse olekumuutuja väärtustele kehtivusintervall ?
  • Kui üks kehtivusintervall ?
  • Mida kujutab endast eriolukordade töötlus ?
  • Mille poolest erineb aja poolt juhitud süsteem sündmuste poolt juhitud süsteemist ?
 
Säutsu twitteris
RAS operatsioonisüsteemid - reaalajalised tuumad 
1.Millised reaalajalised nõuded määravad RAS  tarkvara  koostamise eripära?
RAS nõuded määravad tarkvara valmistamise eripärad (enamasti tekib  sundparalleelsus ):

Jõudlus tippkoormusel peab olema ennustatav

Töökiiruse juhtimine toimub ümbritsevast keskkonnast

Ohutus on sageli  kriitilise  tähtsusega

Andmemahud on väikesed või keskmised

Aktiivne liiasus ( dubleerimine , jne)

Andmete  terviklikkus  nõutav lühiajaliselt

Autonoomne  vigade  avastamine
2.Selgitada sundparalleelsuse ja traditsioonilise paralleeltöötluse erinevusi.
Sundparalleelsus on mitme samaaegse  andmevoo  töötlus ja  interaktsioon , kus esinevad vahele 
segamised. Ühe töö katkestamine ja hiljem lõpetamine (Andmevood tükeldatakse kiiremaks töötluseks).
See on paralleelsus, mis on peale sunnitud ümbritseva keskkonna poolt. 
Traditsiooniline paralleeltöötluses ei esine vahelesegamist ühe või mitme andmevoo määramatult 
kestvas töötlemises. On põhimõtteliselt vabatahtlik töörezhiim, mille kasutamine sõltub projekteeria 
tahtest.
(Sundparalleelsus on paralleelsus, mis on tarkvara insenerile peale surutud ümbritseva keskkonna poolt. 
Vajalik reaalajasüsteemide nõuete täitmiseks.)
3. Tegum  (protsess) ja seda iseloomustavad  parameetrid .
Protsess ehk tegum ( Task ) – töötava/täidetava programmi abstraktsioon,
op-süsteemi plaanuri ( Scheduler ) poolt juhitav loogiline ühik. Tüüpiliselt kujutatakse 
andmestruktuuriga, mis sisaldab:
1. täitmise  seisundit  (state of execution)
2. identiteedi-infot ( identity ) – näiteks  registrite  sisu, aadressiruum jne.
3. atribuute (attributes) – näiteks täitmise aeg
4. ressursside nimekirja (resources) – avatud failid,  sisend -väljundseadmed jne
4.Nimetada tegumit puudutavad RAS operatsioonisüsteemi parameetrid.
Scheduling - plaanur/ planeerimine  - määrab, milline tegum täidetakse järgmisena ja millal (järjekord, 
aeg) (eirinevad  protokollid )
Dispatching - dispetšer - tegumi info " raamatupidaja " - hoiab parameetreid, mis tegumi käivitamiseks 
vaja
Intercommunication and Synronization - kommunikatsioon ja sünkroniseerimine - tegumite 
koostöö/vastasmõju juhtimine
OS kernel (tuum) on vähim ühik, mis neid funktsioone täidab.
5.RAS operatsioonisüsteemi  taksonoomia  (osad).(?)

Nanokernel – lõimede/tegumine juhtimine( management )

Mikrokernel – lisab plaanuri (Scheduling)

Kernel – lisab kommunikatsiooni ja sünkroniseerimise(semafor, kirjakast,  kohtumine  jne)

RT  Executive  – mäluplokkide kontroll, IO kontroll jne –enamik  reaalaja  kerneleid on 
“executive” tasemel
Operatsioonisüsteem – lisab kasutaja interfeisi,turvameetodid, kõrgtasemel failitöö
6. Nimetada pseudokernelite liigid. 
1. Polled  loop  – pollitav tsükkel
2. Synchronized Polled Loop – sünkroniseeritud pollitav tsükkel
3. Cyclic Executives –tsükliliselt täidetavad  programmid
4. State-Driven  Code  – seisunditega/olekutega juhitav kood
5. Coroutines - kaasprogrammid
7. Millal kasutatakse reaalajasüsteemides pseudokernelit? 
Reaalajalist paralleeltöötlust on võimalik saavutada ilma katkestusteta ja isegi ilma OS-ta  klassikalises  
mõistes – kus võimalik peaks seda lähenemist kasutama

lihtsam realiseerida,

lihtsam siluda,

lihtsam analüüsida
8. Mis on pollitav tsükkel (polled loop), millal seda kasutatakse? 
Kiire  reaktsioon  ühele sündmusele.  Testitakse , kas mingi  lipp  on oodatud seisus ja siis täidetakse tegum.
Mitu lippu tegumit – cyclic executive. Ideaalsed näiteks kiirete andmekanalite teenindamisel, kus 
andmevahetuse  iseloom ei ole  regulaarneOlemuselt   raiskavad  protsessori aega – sisaldub hüpe 
iseendale .
9. Selgitada, kuidas saab vältida  programmis  mehaanilise lüliti lülitamisel tekkivat häiret. (?)
Lisaks pollitavale sündmusele fikseeritud sagedusega kellakatkestus.Vajalik protsesside kontrollimisel, 
kus võib olla häireid või kindla ajavahemikuga määratud tegevusi – lülitamise häire näiteks (bouncing)
10. Mis on tsükliliselt täidetavad programmid (cyclic executives), millal neid kasutatakse? 
Ilma katkestusi kasutamata  luuakse  samaaegse täitmise  illusioon  – lühikesed protsessid kiires 
protsessoris lõpmatus tsüklis – pollitava tsükli edasiarendus. 
11. Mis on seisunditega juhitav kood (state-driven code), millal seda kasutatakse? 
Kasutab hargnevat if-then  laadset  käsustikku  juhtimiseks  ( case , seisundiautomaat). Mitte kõiki protsesse
ei saa jagada seisunditeks, samuti juhtimistabelid võivad kasvada väga suureks.
12.Mis on kaasprogrammid, millal neid kasutatakse? 
(Coroutines) State-Driven Programming  erijuht .
Koostöötav mitmiktöötlus
(cooperative multitasking) – distsiplineeritud  programmeerija  ja sobiv kasutus. Protsessid koosnevad:

Faasidest  ja iga faasi lõpus juhtimine antakse üle dispetšerile, kes annab täitmise üle järgmise 
tegumi sobivale faasile jne.

Kommunikatsioon ja faasidele vajaliku info säilitamine toimub globaalsete muutujate abil.
13. Kuidas töötavad katkestustega  juhitavad  programmid, nende eelised ja puudused? 
Interrupt - Driven Systems – katkestustega juhitavad programmid
Katkestustega juhitavates süsteemides põhiprogramm koosneb “hüppest iseendale”. Programmi  kulgu  
kontrollitakse  riistvara  ja/või tarkvara katkestustega. Ainult katkestustega juhitavad süsteemid:
1. kiire kosteaeg,
2. tundlik riistvara riketele,
3. race- conditions  ( ajalised  probleemid),
4. iseendale hüppetsükkel (raiskab aega)
5. Interrupt  Service  Routines – katkestuste teenindusprogrammid
6.  Context  Switching – konteksti lülitamine (vahetamine)
14. Mis on konteksti lülitamine (context switching), kuidas seda realiseeritakse? 
Protsess, mis säilitab vajaliku informatsiooni töö jätkamiseks, kui ISR lõpetab töö. Oluline  salvestada  
ainult vajalik osa. Tavaliselt pinu ( cache ) mudel (salvestatakse pinusse)
1. Registrite sisu
2. Programmiloendi väärtus
3. Kaasprotsessori registrite sisu (kui eksisteerib)
4. Mälulehtede  register
5. Mälulaadselt ühendatud I/O andmed/väärtused
6.  Katkestused  sel ajal keelatud
15. Kuidas töötab järjestikplaanur ( round - robin )? 
Round-robin (järjestikku) on üks lihtsamaid plaanuri algoritme (scheduling algorithm) 
protsesside/tegumite juhtimiseks OS-s. Round-robin plaanur:
1. eraldab igale protsessile võrdse ajavahemiku
2. käsitledes protsesse järjekorras,
3. ilma prioriteetideta.
4. Round-robin plaanur on lihtne ja
5. kerge programmiliselt realiseerida,
6. ei teki ressursside  nappuse  (starvation) olukorda
16. Mis on tõrjuva prioriteediga süsteemid, millal neid kasutatakse? 
Preemptive- Priority  Systems – välistava/tõrjuva prioriteediga süsteemid
Kõrgema prioriteediga tegum saab katkestada/välistada madalama prioriteediga tegumi töö. Võimaldab 
tähtsamatele tegevustele/protsessidele omistada kõrgema prioriteedi. Tuumaelektrijaam – sissetungijale 
reageerimine on oluline, aga ülekuumenemine veel olulisem.
Prioriteedid  saavad olla:
1. Fikseeritud – näiteks RM –  Rate  monotonic – sagedamini täidetavatel tegumitel on kõrgem 
prioriteet
2. Dünaamilised – näiteks EDF – Earliest  Deadline   First  – lähima piirajaga tegumi prioriteet 
kõrgeim
Prioriteetide kasutamine võib põhjustada ressursside nälga ja osa tegumite mittepiisavat täitmist.
17. Mis on hübriidsüsteemid, milliseid  variante  teate? 
1. Enamik süsteeme on segu mitmest võimalikust vaadeldud variandist
2. Sisaldavad perioodilisi ja sporaadilisi (juhuslikke) katkestusi.
3. Sporaadilised – kriitiline viga, kriitilise ressursi  katkestus , kriitiline oleku muutus keskkonnas.
4. Teine hübriidsüsteemi variant on “Round-robin” ja “Preemptive-
5. Priority” süsteemide segu.
6. Foreground/Background Systems
◦ Background  Processing  
◦ Initialization
18. Mis on tegumi juhtimise  blokk -mudel (task-control block model - TCB)? 
1. TCB mudel on kõige enam kasutatav mudel kommertsiaalsete OS-de realiseerimisel – tegumite 
hulk võib varieeruda – interaktiivsel  kasutamisel  tegumite hulk tavaliselt muutub – puudus: 
suure hulga tegumite korral plaanuri enda ressursinõudlikkus muutub oluliseks. TCB  mudelis  
iga tegum seotud andmestruktuuriga (TCB).
2. Kasutatakse plaanuritega
◦ Round-robin
◦ Preeemptive-priority
◦  Kombineeritud  variandid
19. Nimetada  enamlevinud  tegumi  seisundid  (task states), näidata seisunditevahelisi võimalikke 
üleminekuid. 
OS juhib tegumi olekut:
1.  Executing  – täidetav tegum, ühe  protsessoriga  süsteemis ainult üks
2.  Ready  – täitmiseks valmis – kas uus või katkestatud (aeg lõppes või välistus tekkis)
3. Suspended (or  blocked ) – tegum on seisatud (mõnikord tähendab ka, et tegum on lõpetanud töö)
4. Dormant (or sleeping) – eksisteerib, pole kättesaadav, seda olekut alati ei kasutata
20. Milline on tüüpiline TCB struktuur?
[TCB mudel on kõige enam kasutatav mudel kommertsiaalsete OS-de realiseerimisel – tegumite hulk  
võib varieeruda – interaktiivsel kasutamisel tegumite hulk tavaliselt muutub – puudus: suure hulga 
tegumite korral plaanuri enda ressursinõudlikkus muutub oluliseks. TCB mudelis iga tegum seotud 
andmestruktuuriga (TCB).
TCB administreerimise mudel – tegumid ise hoiavad oma seisundi infot, paindlik, lihtne tegumeid 
lisada hiljem. Kui OS välja kutsutud, ta testib TCB-de seisundit – võtab nimekirjast järgmise 
valmisoleva tegumi ja seab selle täitmise olekusse (executing), täidetud tegum lingitakse nimekirja 
lõppu  seisundiga  “ready”. Seisundit hoitakse seisundisõnas ( status  word) - executing, ready, suspended, 
dormant (magav) - selline mudel ei nõua TCB-de dünaamilist mälu jagamist.]
RAS operatsioonisüsteemid – tegumite kommunikatsioon ja 
sünkroniseerimine 
21. Miks ja millal on vaja tegumeid sünkroniseerida? 
Kui tegumid sõltumatud ja katkestatavad/välistatavad igal ajahetkel, siis lihtne mudel – praktiliselt pole 
selline olukord võimalik. Peaaegu alati tegumitel vaja infot vahetada ja tegevust sünkroniseerida. 
(Enamasti probleem piiratud hulga ressursside kasutamise sünkroniseerimises.)
[ Teadete   saatmine  võib olla nii  blokeeruv  kui mitteblokeeruv. Blokeerumine annab sünkroonse suhtluse.
Mitteblokeerumine annab asünkroonse suhtluse. Saatmine ja vastuvõtt võivad teineteisest sõltumatult 
olla blokeeruvad või mitteblokeeruvad]
22. Millise süsteemi  ressursid  vajavad tavaliselt sünkroniseerimise kasutamist? (?)

Protsessori aeg/hulk – kõik  protsessorid / kontrollerid  süsteemis

Mälu – kõik mälud süsteemis

Sisend/väljundseadmed (IO) – siia alla käivad ka kõik  andurid /täiturid jms
23. Mis on programmi  kriitilised  piirkonnad? 

Ressursside  jagamise  korral tihti olukord, kus valel ajal pöördumine võib põhjustada 
katastroofilisi  olukordi  või muutub kasutamise eesmärk mõttetuks.

Ketta
80% sisust ei kuvatud. Kogu dokumendi sisu näed kui laed faili alla
Vasakule Paremale
RAS operatsioonisüsteemid - reaalajalised tuumad #1 RAS operatsioonisüsteemid - reaalajalised tuumad #2 RAS operatsioonisüsteemid - reaalajalised tuumad #3 RAS operatsioonisüsteemid - reaalajalised tuumad #4 RAS operatsioonisüsteemid - reaalajalised tuumad #5 RAS operatsioonisüsteemid - reaalajalised tuumad #6 RAS operatsioonisüsteemid - reaalajalised tuumad #7 RAS operatsioonisüsteemid - reaalajalised tuumad #8 RAS operatsioonisüsteemid - reaalajalised tuumad #9 RAS operatsioonisüsteemid - reaalajalised tuumad #10 RAS operatsioonisüsteemid - reaalajalised tuumad #11 RAS operatsioonisüsteemid - reaalajalised tuumad #12 RAS operatsioonisüsteemid - reaalajalised tuumad #13 RAS operatsioonisüsteemid - reaalajalised tuumad #14 RAS operatsioonisüsteemid - reaalajalised tuumad #15 RAS operatsioonisüsteemid - reaalajalised tuumad #16 RAS operatsioonisüsteemid - reaalajalised tuumad #17 RAS operatsioonisüsteemid - reaalajalised tuumad #18 RAS operatsioonisüsteemid - reaalajalised tuumad #19 RAS operatsioonisüsteemid - reaalajalised tuumad #20 RAS operatsioonisüsteemid - reaalajalised tuumad #21
Punktid 50 punkti Autor soovib selle materjali allalaadimise eest saada 50 punkti.
Leheküljed ~ 21 lehte Lehekülgede arv dokumendis
Aeg2014-05-26 Kuupäev, millal dokument üles laeti
Allalaadimisi 19 laadimist Kokku alla laetud
Kommentaarid 1 arvamus Teiste kasutajate poolt lisatud kommentaarid
Autor AnnettS Õppematerjali autor

Meedia

Lisainfo

Tartu Ülikooli aine Reaalajasüsteemid eksami kordamisküsimused ja vastused aastal 2014 kevad semestril
Reaalajasüsteemid , Manussüsteemid , plaanurid , tarkvara arendustsükkel , plaanur , tegum , ummik , intervall , riistvara

Mõisted

Teemad

  • RAS operatsioonisüsteemid - reaalajalised tuumad
  • RAS operatsioonisüsteemid – tegumite kommunikatsioon ja
  • sünkroniseerimine
  • RAS analüüsi teoreetilisi tulemusi
  • RAS Tarkvarasüsteemi disain
  • RAS Programmeerimiskeeled, meetrika, testimine, agendid
  • Lisaks

Kommentaarid (1)

Gumnaasium15 profiilipilt
A A:
00:19 29-01-2017


Sarnased materjalid

39
doc
Microsoft Operatsioonisüsteemid
42
docx
Operatsioonisüsteemide alused
1072
pdf
Logistika õpik
23
docx
Operatsioonisüsteemi alused
937
pdf
Erakorralise meditsiini tehniku käsiraamat
555
doc
Programmeerimiskeel
575
docx
Nimetu
50
doc
Exami materajal





Faili allalaadimiseks, pead sisse logima
Kasutajanimi / Email
Parool

Unustasid parooli?

Pole kasutajat?

Tee tasuta konto

UUTELE LIITUJATELE KONTO MOBIILIGA AKTIVEERIMISEL +50 PUNKTI !