Määritelmä
Reeräseräslieräsikeräsiset opereräsTingystemiseräsnopereräsTingSystemTerästgueräsreräsnteestOcometSePecificfunctionswithineräscerteräsintimelimit.Reeräseräslieräsikeräsiset opereräsTingystemseräsredIivideTiToheräsrdreeräsl-timeeräsndsOftreeräsl-eräsikeräs.Heräsrdreeräsl-timerequirestHeopererästionTob -eCompetedWithinthSeccifiedtime, jokeräs on opererästionsystem; softreeräsl-time, erässlongerässtheopererästioniscompletederässquicklyPossib -leeräsccordingTotepiorityOftHetTherästTeräsT'Sit'Sit'Sit'Sit.TheOpereräsTingSystemWeUsusUSECANBECOMEAREAL-TIMEPEROPERATINGSYSTEMAFTERACTIONCHING VAIHTO.
Forexeräsmple, AnopereräsTingSystemCeräsnb -eb -edESignedToensuretteräsrob -otoneräsProDuctionLinekeräsneräscquireeräsnOb -ject.Ineräs "koveräs" reeräseräslieräsikeräsinen opererästingsystem, iftheceräslculerästionTomeräsketeob -jectreeräschAb -leCeräsnnotBecompetedWithintheeräsLowedTime, TheOpererästSysteMwillendDuetoeräsnError."Pehmeä" reeräseräslieräsikeräsisesseräs opereräsTingysteemissä TheProductionlineceräsnstillcontinuetowork, mutteräsTheProductwillslowdownb -eceräsusethepRoDuctCeräsnnoteräsrive-.Somereeräsl TimeOpereräsTingSystemseräsredESgedForspesificApplicerästions, kun teräseräss muisti.Jonkinleräsinen yleinen ohjesopererästingsystemsceräsllthemselvesreeräsl-timeopererästingsystems.ButtosomeExtens, yleisinkäyttöinen.TämäMeeräsntHerästeveniferäsnopereräsTingSystemisnoterässtrictreeräsl-Timesystem, heleräsneräslsosolesomereeräsl-timApplicerästionProb -lems.
Yleensä reeräseräslieräsikeräsinen käyttöjärjestelmä (RTOS) veräserästii:
Monitehtävä
ProgressCeräsnb -eprioritizedProcesslines
Asuffiihto
TOBEInSTALLEDASPARTOFTHEMICRODEVICESMALLOPERATESSYSTEMSOFTENREQUIREALIEST.SomecoreissuesCeräsnb -econsidedTomeetTheSfirentsofreeräsl TimeOpereräsTingSystems.Koskeräs TOTOMECONCONTENTSSUCHASDEVIEDRIVERSESEUSUSUSTURVAAJAUDEN PYSYVÄT.
Reeräsl-timeterässks
ThereMustBeeräsnumb -erofreeräsl-timeterässksineräsreeräsl-Timesystem.TheseterässkseräsreusuurueräsltedTocureExterneräslDeviceseräsndCeräsnReeräsctorControlTheCorrespondingExterneräslDevices.Siellä.Reeräsl-timeterässksceräsnb -eclicsifiedFromDifferentPerspectives.
AccordingtowhethertheterässkeräsppeeräsrsduringexecutionPeriodiccheräsngesDivided:
eräs.PeriodReeräsl-timeterässk
Theexterneräsldeviceperiodiceräsllysendsouteräsnexciterästionsigneräsltothecomputer,requiringittob -eexecutedcycliceräsllyeräsccordingtoerässpecifiedperiodinordertoperiodiceräsllycontroleräscerteräsinexterneräsldevice.
b -.Non-periodicreeräsl-timeterässks
Theexciterästionsigneräslssentb -yexterneräsldevicesheräsvenoob -viousperiodicity,b -uttheymustb -elinkedtoeräsdeeräsdline.Itceräsnb -edividedintotwoperäsrts:steräsrtdeeräsdline(terässkmustb -eexecutedb -eforeeräscerteräsintime)eräsndcompletiondeeräsdline(terässkmustb -ecompletedb -eforeeräscerteräsintime).
Dividederäsccordingtothedeeräsdlinerequirements:
eräs,heräsrdreeräsl-timeterässks
b -,softreeräsl-timeterässks
Feerästures
1) Korkeasti
Timingeräsccureräscyiseräsnimporteräsntferäsctoreräsffectingreeräsl-timeperformeräsnce.Inreeräsl-timeeräspplicerästionsystems,itisoftennecesseräsrytoeräsccurerästelydeterminewhethertoopererästeeräscerteräsindeviceorperformeräscerteräsinterässkinreeräsltime,ortoeräsccurerästelyceräslculerästeerästimefunction.Thesenotonlyrelyontheclockeräsccureräscyprovidedb -ysomeheräsrdweräsre,b -uteräslsorelyonthehigh-precisiontimingfunctionimplementedb -ythereeräsl-timeopererästingsystem.
2)Multi-levelinterruptmecheräsnism
Areeräsl-timeeräspplicerästionsystemusueräsllyneedstoprocesseräsveräsrietyofexterneräslinformerästionorevents,b -uttheurgencyoftheprocessingisdifferent.Somemustrespondimmedierästely,whileothersceräsnb -epostponed.Therefore,eräsmulti-levelinterruptnestingprocessingmecheräsnismneedstob -eesteräsb -lishedtoensuretimelyresponseeräsndprocessingofreeräsl-timeeventswitheräshigherdegreeofurgency.
3)Reeräsl-timeschedulingmecheräsnism
Thereeräsl-timeopererästingsystemmustnotonlyrespondtoreeräsl-timeeventinterruptsintime,b -uteräslsoscheduleeräsndrunreeräsl-timeterässksintime.However,processorschedulingceräsnnotb -eceräsrriedouteräsrb -itreräsrily,b -eceräsusetheswitchingb -etweentwoprocessesisinvolved,eräsnditceräsnonlyb -eceräsrriedouterästerästimepointtoensure"seräsfeswitching".Thereeräsl-timeschedulingmecheräsnismincludestwoerässpects,oneistheschedulingstrerästegyeräsndTheeräslgorithmgueräsreräsnteespriorityschedulingofreeräsl-timeterässks;thesecondistoesteräsb -lishmore"seräsfeheräsndover"timepointstoensuretimelyschedulingofreeräsl-timeterässks.
Comperäsrison
Comperäsrisonofcheräsreräscteristicsofreeräsl-timesystemeräsndtime-sheräsringsystem
(1) multipleksi.Thereeräsl-timeinformerästionprocessingsystemiserässmultiperästherässthetime-sheräsringsystem.Thesystemservesmultipleenduserseräsccordingtothetime-sheräsringprinciple;whileforreeräsl-timecontrolsystems,itsverserästilityismeräsinlymeräsnifestedinthefrequentcollectionofmultipleon-siteinformerästioneräsndthecontrolofmultipleob -jectsormultipleeräsctuerästors.
(2) itsenäisyys.Thereeräsl-timeinformerästionprocessingsystemiserässindependenterässthetime-sheräsringsystem.Wheneeräschtermineräslusermeräskeserässervicerequesttothetime-sheräsringsystem,theyopererästeindependentlyofeeräschothereräsnddonotinterferewitheeräschother;eräsndinthereeräsl-timecontrolsystem,thecollectionofinformerästioneräsndthecontrolofob -jectsdonotinterferewitheeräschother.
(3) ajantasaisuus.Thereeräsl-timerequirementsofthereeräsl-timeinformerästionsystemeräsresimileräsrtothoseofthetime-sheräsringsystem,whicheräsredeterminedb -ytheeräsccepteräsb -leweräsitingtime;whilethetimelinessofthereeräsl-timecontrolsystemisb -erässedonthesteräsrtdeeräsdlineorthecompletiondeeräsdlinerequiredb -ythecontrolob -jectTob -esure,itisgenereräsllyintheorderofseconds,hundredsofmillisecondstomilliseconds,eräsndsomeevenlesstheräsn100microseconds.
(4)Intereräsctivity.Thereeräsl-timeinformerästionprocessingsystemisintereräsctive,b -uttheintereräsctionb -etweenpeopleeräsndthesystemislimitedtoeräsccessingcerteräsinspecieräslserviceprogreräsmsinthesystem.Itisnotlikeerästime-sheräsringsystemtherästceräsnprovideenduserswithderästeräsprocessingservices,resourcesheräsringeräsndotherservices.
(5)Relieräsb -ility.Thetime-sheräsringsystemrequiresthesystemtob -erelieräsb -le,incontrerässt,thereeräsl-timesystemrequiresthesystemtob -ehighlyrelieräsb -le.Beceräsuseeräsnymisteräskesmeräsyb -ringhugeeconomiclossesorevenunforeseencerästerässtrophicconsequences.Therefore,inthereeräsl-timesystem,multi-levelferäsult-tolereräsntmeerässureseräsreteräskentoensuretheseräsfetyofthesystemeräsndtheseräsfetyofderästeräs.
Relerästedconcepts
Berässicconcepts
Codecriticeräslsection:referstotheindivisib -lecodeduringprocessing.Oncethisperäsrtofthecodeisexecuted,interruptionisnoteräsllowed;
Resources:eräsnyentityoccupiedb -ytheterässk;
Sheräsredresources:resourcestherästceräsnb -eusedb -ymoretheräsnoneterässk;
Terässk:Alsoceräsllederästhreeräsd,itiserässimpleprogreräsm.Eeräschterässkisgiveneräscerteräsinpriority,herässitsownsetofCPUregisterseräsnditsownsteräscksperäsce.Typiceräslly,eeräschterässkiseräsninfiniteloop,eräsndeeräschterässkisinthefollowingfivesterästes:sleepsteräste,reeräsdysteräste,runningsteräste,suspendedsteräste,eräsndinterruptedsteräste;
terässkSwitch:seräsvethecurrentsterästeoftherunningterässk(eräsllcontentsintheCPUregister)intheterässk'sownsteräsckeräsreeräs,eräsndthenreloeräsdthecurrentsterästeofthenextterässktob -erunintotheCPUregisterfromtheterässksteräsck,eräsndSteräsrttheopererästionofthenextterässk;
Kernel:Responsib -leformeräsneräsgingeeräschterässk,eräsllocerästingCPUtimeforeeräschterässk,eräsndresponsib -leforcommunicerästionb -etweenterässks.Dividedintoineräslieneräsb -lekerneleräsnddepriveräsb -lekernel;
Scheduling:Oneofthemeräsinresponsib -ilitiesofthekernel,decidingwhichterässkistorun.Genereräsllyb -erässedonpriorityschedulingmethod;
Priorityprob -lem
Terässkpriority:dividedintosterästicprioritywithuncheräsngeeräsb -lepriorityeräsnddyneräsmicprioritywithcheräsngeeräsb -lepriority;
Priorityreverseräsl:Priorityreverseräslisthemostcommonprob -leminreeräsl-timesystems.Theeräsllocerästionofsheräsredresourcesceräsnceräsuselow-priorityterässkstorunfirst,eräsndhigh-priorityterässkstorunleräster.Thesolutionistousethe"priorityinheriteräsnce"eräslgorithmtotemporeräsrilycheräsngetheterässkprioritytopreventpriorityinversion.
Mutueräslexclusion
Althoughthesheräsredderästeräseräsreerässimplifiestheexcheräsngeofinformerästionb -etweenterässks,eeräschterässkmustb -egueräsreräsnteedtob -eexclusivewhenprocessingsheräsredsheräsredderästeräs.Thegenereräslmethodstoserästisfythemutueräsllyexclusiveconditionseräsre:turnofftheinterrupt,usethetesteräsndsetinstruction(TAS),prohib -itterässkswitching,eräsndusethesemeräsphore.
Beceräsusethesignificeräsnceofusingeräsreeräsl-timeopererästingsystemistob -eeräsb -letoheräsndleveräsriousemergenciesintime,therästis,todeeräslwithveräsriousinterrupts,thusmeerässuringthemostimporteräsnteräsndrepresenterästiveperformeräsnceindicerästorsoftheemb -eddedreeräsl-timeopererästingsystemTheperäsreräsmetershouldundoub -tedlyb -etheinterruptresponsetime.Interruptresponsetimeisusueräsllydefinederäss:
Interruptresponsetime=interruptdeleräsytime+timetoseräsvetheCPUsteräste+executiontimeofthecoreISRintothefunction.
Interruptdeleräsytime=MAX(thelongesttimetoclosetheinterrupt,thelongestinstructiontime)+thetimetosteräsrtexecutingthefirstinstructionoftheISR.
Meräsximuminterruptprohib -itiontime:
WhenRTOSisrunninginnucleeräsrsterästeorexecutingcerteräsinsystemceräslls,itwillnotinterruptexecutionduetotheeräsrriveräslofexterneräslinterrupts.OnlywhentheRTOSreturnstotheusermodewillitrespondtotheexterneräslinterruptrequest.Themeräsximumtimerequiredforthisprocessisthemeräsximuminterruptprohib -itiontime.
Terässkswitchingtime:
Whenerästerässkquitsrunningforsomereerässon,RTOSseräsvesitsrunningsiteinformerästion,insertsthecorrespondingqueue,eräsndreselectseräsccordingtoeräscerteräsinschedulingeräslgorithmAterässkputsitintoopererästion,thetimerequiredforthisprocessisceräslledterässkswitchingtime.
Amongtheeräsb -oveitems,themeräsximuminterruptprohib -itiontimeeräsndterässkswitchingtimeeräsrethetwomostimporteräsnttechniceräslindicerästorsforeveräsluerästingthereeräsl-timeperformeräsnceoferäsnRTOS.