LØSNINGSFORSLAG. EKSAMEN I Sanntidssystemer Fagkode: STE6221
|
|
- Britt Hetland
- 7 år siden
- Visninger:
Transkript
1 Side 1 av 3 HØGSKOLEN I NARVIK Institutt for data-, elektronikk- og romteknologi LØSNINGSFORSLAG EKSAMEN I Sanntidssystemer Fagkode: STE
2 Side 2 av 3 Oppgave 1 (15%) a) Forklar hvordan sanntidssystemer kan kategoriseres, og gi eksempler på systemer innenfor hver kategori. Løsning: Sanntidssystemer kan kategoriseres etter kritiskhet og hastighet: Harde sanntidsystemer: Resultatet må, i tillegg til å være korrekt, produseres innen en gitt tid ellers vil systemet feile. Systemet må altså tilfredstille absolutte tidskrav, og overskridelse av disse kravene kan gi fatale følger. Myke sanntidssystemer: System der variasjon i respons er akseptabel (applikasjonsavhengig). Tidskrav har gjerne anbefalt øvre grense, men overskridelse får ikke fatale følger. Raske sanntidssystemer: System der responstiden ligger under ett sekund. Trege sanntidssystemer: System der responstiden ligger over ett sekund. Grensen mellom responstid i trege og raske systemer er satt til ett sekund, da problemer i systemet vanligvis endres fra individuelle beregningsproblemer til generelle systemproblemer rundt denne tiden. Raske/harde sanntidssystem: Magnetisk levitasjonssystem for tog Fuel tank protection system teppelegging av gass som følge av flammedeteksjon Raske/myke sanntidssystem: 3D CAD-system TV fjernkontroll Trege/harde sanntidssystem: Patriot missil styresystem Preprogrammering av videoopptak Trege/myke sanntidssystem: Klimakontrollsystem i bil Dokumentprinting på nettverksprinter b) Driftssikker programvare kan sies å være korrekt, pålitelig og sikker. Definer hva som menes med disse begrepene. Løsning: Korrekt programvare: The Dictionary of Computing definerer korrekthet som the static property that a program is consistent with its specification. Med andre ord, dersom vi sjekker koden mot spesifikasjonen, så gjør den nøyaktig det den skal gjøre.
3 Side 3 av 3 Pålitelig programvare: IEEE definisjonen av programvare pålitelighet er the extent to which a program can be expected to perform its intended function with required precision. Det definerer altså hvor bra et program utfører den ønskede oppgaven på forespørsel. Sikker programvare: Har egenskapen at ingenting galt skjer ved feil. Gjelder primært konsekvens av feil. c) I relasjon til spørsmålet over, vil Korrekt programvare alltid være pålitelig? Pålitelig programvare alltid være korrekt? Begrunn svaret. Løsning: Korrekt programvare trenger ikke å være pålitelig, da en feil i spesifikasjon som er implementert i programvaren (og følgelig gjør programvaren korrekt) kan medføre at systemet ikke gir den ønskede respons. Patriot missile system i Gulf-krigen: Brukte 24-bits aritmetikk som ga avrundingsfeil i sanntids beregning. Systemet fungerte perfekt ved testing. Etter 100 timers bruk hadde avrundingsfeil bidratt til en feil på rundt 700 meter i radargenerert range-gate (skillelinje for hvor nærme innkommende missiler ble fanget opp) Pålitelig programvare trenger ikke å være korrekt, da for eksempel elementer i spesifikasjonen som ikke implementeres i koden (og følgelig gjør koden ikke korrekt) kan være overflødige. Systemet kan fremdeles fungere som forventet, og følgelig være pålitelig. Et annet eksempel er at styresystemer som ikke er implementert med ønsket nøyaktighet i henhold til spesifikasjon fremdeles kan være pålitelig dersom feil er små. Et missilstyringsprogram inkluderte exception handling på enkelte fysiske input. Pga kodefeil ble ikke alle fysiske input inkludert. SW fungerte allikevel perfekt i mange år, fordi feil aldri oppstod Oppgave 2 (35%) a) Hva er de ønskede egenskaper i et sanntids operativsystem (RTOS) i forhold til andre operativsystem? Løsning: Ønskede egenskaper ved operativsystemer kan oppsummeres som: Mulighet for multitasking Kjøring av aktiviteter (tasks) i parallell Tilgang til systemets ressurser Abstrahering av aktiviteter Gjennomstrømning (throughput) I et RTOS er de ønskede egenskaper:
4 Side 4 av 3 Predikerbarhet og ytelse Pålitelighet Scheduling Deling av ressurser mutual exclusion Synkronisering og kommunikasjon I et RTOS er vi mer opptatt av predikerbarhet enn gjennomstrømning. Dersom programvaren skal være driftssikker, må vi vite at de aktivitetene som skal kjøres, kjøres til rett tid. Et superraskt system er greit nok, men vi må kunne forutsi at det takler de tidskrav som foreligger. b) Forklar hva som menes med tidsdeling (scheduling) i sanntidssystemer og gi en beskrivelse av algoritmen for cyclic scheduling. Løsning: Scheduling i sanntidssystemer går ut på hvordan CPU skal tilordnes til de forskjellige aktiviteter slik at disse får utført sine oppgaver uten å overskride tidskrav. Cyclic cheduling: Aktiviteter som ønsker å kjøre legges i en FIFO-kø, og kjøres etter tur. Hver aktivitet får kjøre til den er ferdig med sin oppgave. Dersom denne etter kjøring ønsker å kjøre på nytt, legges den bakerst i køen. Nye aktiviteter som kommer inn, legges også bakerst i køen. Ulemper med cyclic sheduling: Dersom en aktivitet låses, låses hele systemet Lange aktiviteter svekker ytelse Nye aktiviteter som ønsker å kjøre kan få lang responstid c) Relatert til oppgaven over, forklar begrepene time slice og prioritet på aktiviteter, og hvordan disse elementene kan inkluderes i cyclic scheduling. Hvilke fordeler og ulemper medfører disse elementene? Løsning: Time slice: inndeling av CPU-tid i faste tidsintervall. Relatert til cyclic sheduling, vil aktiviteter fremdeles kjøres etter tur fra en FIFO-kø, men hver aktivitet får nå tildelt en fast tid for kjøring, før de legges bakerst i køen. Aktiviteter kan mao avbrytes selv om de ikke er ferdige med sin oppgave. Dette er også kjent som pre-emptive scheduling. Fordelene med dette er at responstiden for aktiviteter øker (de får starte tidligere med sin kjøring), og vi får en bedre deling av ressurser. Ulempen er at avbryting av aktiviteter krever context switch (save og restore av all informasjon vedrørende aktiviteter), noe som forbruker prosessortid. Valg av time slice vil i de fleste tilfeller være systemavhengig: Kort time slice: Lav responstid, og tilnærmet parallell kjøring, men hyppig bytting av aktiviteter vil ta mye prosessortid. Lang time slice: Prosessortid benyttes sjelden for bytting mellom aktiviteter, men responstiden vil bli høyere, og det kan medføre mye dødtid for prosessor (dersom en aktivitet er ferdig etter
5 Side 5 av 3 en liten andel av time slice, vil prosessor stå å vente på neste time slice før neste aktivitet kjører). Prioritet: Noen aktiviteter vil i de fleste tilfeller være viktige enn andre, og setting av prioritet på oppgaver vil gjøre det mulig å la de viktigste aktivitetene ha fortrinnsrett på prosessor. Køen av aktiviteter som ønsker å kjøre kan tilordnes etter prioriteter, slik at aktiviteter med høy prioritet kan flyttes lengre frem i køen, i stedet for å stille seg bakerst. Fordelen med prioritet er at viktige aktiviteter vil få lavere responstid, samt at det øker fleksibiliteten i systemet. Ulempene er at vi får mer kompleks kjøring i systemet, og det kan bidra til mer bytting av aktiviteter. Det kan ogsp medføre utsulting av aktiviteter med lav prioritet. d) Forklar hva en semafor er, og hvordan dette kan benyttes for å oppnå gjensidig utelukking (mutual exclusion). Løsning: Ved deling av ressurser er det ønskelig å benytte en metode som gjør det mulig for en aktivitet å melde fra til andre aktiviteter om at den ressursen som denne benytter er opptatt (gjensidig utelukking). For å gjøre dette, trengs et objekt som kan sjekke og sette tilstand i en udelt operasjon. Et slikt objekt kalles en semafor. En semafor kan tilordnes hver ressurs som ønskes å deles mellom aktiviteter, og en aktivitet må ta semaforen før ressursen benyttes. Dersom semaforen er ledig, kan aktiviteten fritt benyttes ressursen. Dersom semaforen er opptatt, vil RTOS suspendere aktiviteten, og så vekke opp aktiviteten igjen når semaforen blir ledig. Dersom flere aktiviteter vil ta en opptatt semafor, kan disse legges i en kø (FIFO eller prioritetsstyrt). Binære semaforer er semaforer som bare kan være ledig eller opptatt, og fungerer som beskrevet over. Det finnes også tellende (counting) semaforer, som kan tilordnes flere verdier. Disse kan for eksempel benyttes der det er tilgjengelig flere ressurser av samme type. e) Hva menes med deadlock, og hvilke betingelser må være oppfylt for at deadlock skal oppstå? Gi tre alternative metoder som kan benyttes for å sikre seg mot at deadlock oppstår (deadlock prevention). Løsning: Deadlock er en situasjon som kan oppstå når to eller flere aktiviteter ønsker to eller flere ressurser samtidig. Eksempel: Aktivitet A1 trenger ressurser R1 og R2, og tar først semafor S1. Før A1 rekker å ta S2 blir den avbrutt av A2, som også trenger begge ressurser. A2 tar først semafor S2, men får ikke tilgang til S1, fordi denne er tatt av A1. Denne blir suspendert, og A1 forsøker å ta S2, som er opptatt. Deadlock medfører mao at ingen aktiviteter får kjøre fordi alle venter på en ressurs som en annen aktivitet holder. Følgende betingelser må alle være oppfylt for at deadlock skal oppstå: Mutual exclusion: aktiviteter har eksklusiv rett til ressurser, og kan utestenge andre aktiviteter
6 Side 6 av 3 Hold and wait: En aktivitet kan holde en ressurs mens den venter på en annen Circular waiting: Det foreligger en sirkulær avhengighet av aktiviteter og ressurser No resource pre-emption: En aktivitet frigir ikke ressurser før den er ferdig å benytte de Non-recovery: Når deadlock inntreffer, varer det evig Deadlock prevention - Sørge for at deadlock ikke kan oppstå Design basert på ressursbruk Unngå flaskehalser og konfliktområder Metoder: Tillat deling av ressurser ingen mutual exclusion o Kølappsystem med ressurshåndterer o Hver aktivitet må trekke kølapp før bruk av ressurs Tillat resource pre-emption o En aktivitet kan ta en ressurs fra en suspendert aktivitet (styrt av RTOS) o Typisk lesing av data fra lager, I/O etc (Skriving ikke tillatt) o Krever ressurshåndtering som gir overhead i tid Styring av ressursallokering o Begrens antallet ressurser som en aktivitet benytter samtidig o Minimaliser tiden en ressurs benyttes Hold and wait prevention o Ta alle ressurser samtidig uten venting o Dersom en ressurs er opptatt når en aktivitet trenger den, frigjøres alle andre ressurser som aktivitet har før den suspenderes o Kan gi ytelsesproblem, og er ikke predikerbart Circular wait prevention o Definert rekkefølge av ressursallokering (ressurser får tildelt en verdi) o Alle aktiviteter følger samme rekkefølge ved allokering (f eks stigende rekkefølge) Disable interrupt ved benyttelse av delte ressurser o Medfører ingen context switch enkelt, billig, lett å implementere o Skummelt å disable interrupt bør minimaliseres f) Forklar hva som menes med prioritetsinversjon (priority inversion). Hvilken mekanisme kan benyttes for å løse slike problem? Løsning: Prioritetsinversjon oppstår når flere oppgaver kjører samtidig, og en oppgave med høy prioritet blokkeres av en oppgave med lavere prioritet, slik at andre oppgaver med mellomliggende prioritet kan kjøre.
7 Side 7 av 3 Løsningen på prioritetsinversjon er prioritetsarv, som innebærer at oppgaven med lav prioritet arver prioriteten til oppgaven den blokkerer for. g) Hva er rate monotonic scheduling (RMS), og hvilke antakelser er denne metoden bygget på? Gi også en beskrivelse av hvordan metoden kan utbedres for system med aperiodiske aktiviteter. Løsning: RMS er en algoritme for scheduling som baseres på aktiviteters periodetid. Prioritet tildeles etter prinsippet om at aktiviteter som kjører ofte (lav periodetid) får høy prioritet. Antakelser for RMS: Periodiske aktiviteter Deadline er det samme som periode for alle aktiviteter Aktiviteter kan avbrytes (pre-emption) Alle aktiviteter er like viktige Alle aktivitetene er uavhengige Worst-case eksekveringstid for en aktivitet er konstant Svakheten ved RM ligger i disse antakelsene, som sjelden kan sies å være realistiske. Dersom allikevel alle aktiviteter i systemet tilfredstiller antakelsene ovenfor, vil RMS garantere at alle n aktiviteter overholder sine tidskrav dersom utnyttelsesgraden U (Andel av tilgjengelig prosessortid som benyttes til eksekvering av aktiviteter) i systemet er slik at U n Tei n = n der U T i= 1 pi når n Til sensor: Det kreves ikke at studentene kan denne formelen i detalj, det er tilstrekkelig at de vet prinsippet med algoritmen og antakelser som ligger til grunn, og at det er mulig å bestemme matematisk om tidskrav overholdes eller ikke. Dersom det eksisterer aperiodiske aktiviteter i systemet, kan disse inkluderes i algoritmen ved å anta disse periodisk, og sette av en definert periode i kjøreplanen for å håndtere disse når de forekommer. Oppgave 3 (20%) a) Hva er nytten av å bruke diagrammetoder i designfasen av et prosjekt, og hva er de grunnleggende kvalitetene i diagram? Løsning: Den hovedsaklige årsaken for å benytte diagram er at et bilde sier mer enn tusen, altså vil dokumenter som utarbeides under et prosjekts oppstart, utvikling og avslutting, bli mer forståelige og gi et bedre bilde av det som skal forklares. Å benytte diagrammetoder i designfasen av et prosjekt, vil: Bidra til god forståelse av systemet
8 Side 8 av 3 Gjøre designdokumenter formelle og strukturerte Fjerne tvetydighet og tvil Gjøre det lettere å revidere og analysere design Synliggjøre ulogisk design og feil Grunnleggende kvaliteter ved diagram: Små Enkle og forståelige Komplett Benytter konkrete symboler Formelt definert b) Gi en beskrivelse av de grunnleggende elementene i et use case diagram, og forklar hva som er hensikten med slike diagram. Løsning: Hensikten med et use case er å illustrere hvorfor systemet benyttes og hvem som benytter det. Et use case kan bestå av aktører (actors), use case er og use case beskrivelser. Hvert system har sin egen modell, der aktører presenterer brukeres roller. Hvorfor disse aktørene benytter systemet er vist som et sett av use case er inni systemets ytre grense (boundary). Dette støttes opp av use case beskrivelser. Use Case 1 Text for use case 1 Use Case 2 Text for use case 2 Use Case 3 Text for use case 3 Actors Use cases Use case descriptions Navigator Vehicle navigation system Driver Get navigation waypoints c) Beskriv oppbygning av og hensikten med et UML sekvensdiagram (sequence diagram).
9 Side 9 av 3 Løsning: Den fundamentale hensikten med et UML sekvensdiagram er å vise samhandlinger mellom objekter over tid. Det grunnleggende konseptet for et system med to objekter er vist i figuren under. Det illustrerer: Hvilke meldinger som sendes. Når meldinger sendes. Hvem sender og mottaker er. Tidsforløp mellom sending og mottak. Time Object 1 Object 2 T 0 Processing Processing T 1 T 2 T 3 T 4 Send message Processing Message arrival and detection Processing Message arrival and detection Send acknowledgement Processing De vertikale linjene kalles livslinjer (lifelines) i UML. Andre aspekter ved semantikk i UML sekvensdiagram er: Focus of control: Tidsperioden som et objekt benytter for å utføre en aksjon. Dette representeres ved å vise livslinjen som et høyt, tynt rektangel mens aksjonen utføres. Ellers er livslinjen tegnet som stiplet linje. Melding eller stimuli: UML definerer kommunikasjonen mellom objekter som en stimuli, vist som en horisontal pil mellom livslinjer. Oppgave 4 (20%) a) Hvilke to grunnleggende metoder har vi for testing av kvalitet og oppførsel i programvare? Løsning: Statisk testing (test av kvalitet): Manuell eller automatisert analyse av kode for å finne feil Sjekk av kode mot designmodeller og kodestandarder
10 Side 10 av 3 Dynamisk testing (test av oppførsel): Kjøring av programvare etter spesifiserte retningslinjer for test Måling av ytelse Testing av målte resultater mot forventede resultater b) Beskriv prinsippet med programvarebasert debugging på målmaskin (target), og angi fordeler og ulemper med denne metoden. Løsning: For å gjennomføre programvarebasert debugging på target, trengs følgende fasiliteter (se figur under): GUI interface Macroprocessor Compiler Symbol table Source program Host Debugger and execution control interface Target Execution monitor Application software Prinsippet er at systemet kjøres på target i sitt virkelige miljø, mens debugging styres fra utviklingsmaskin (host). Programvaren for debugging av to ting, et grensesnitt for debugging og en eksekveringsmonitor. Grensesnittet ligger på host mens monitoren plasseres på target. Ekstra programvare trengs for kommunikasjon mellom disse. Dette består av kommunikasjonsfasiliteter på host og target. Kommunikasjon foregår vanligvis over serielle linjer, typisk RS232 eller Ethernet (på PC som host benyttes også ofte parallellporter). Programvarebasert debugging på target gjør det mulig å se hvordan systemet vil oppføre seg i sitt virkelige miljø, og det er mulig å analysere ytelse og identifisere feil som kan være vanskelig å oppdage dersom programvaren kjøres i en simulator på host. I tillegg vil oppsettet som er beskrevet her ha andre fordeler. For det første ligger all symbolinformasjon på host, selv om debugging gjøres på target. Dette gjør det mulig å tilby kraftige brukergrensesnitt med minimale krav til minne på target. En target run-time support pakke tar typisk noen få kilobyte kode. For det andre kan kjøring lagres på disk på host for senere analyser, og skrives ut. Den siste fordelen er at det eneste
11 Side 11 av 3 periferiutstyr som trengs på target er seriell kommunikasjon, alle andre kan fritt benyttes av applikasjonen. Ulempene med programvarebasert debugging på target er at vi forstyrrer systemets normale kjøring gjennom styring av eksekvering (stepping, breakpoints osv) og monitorering. Følgelig vil ikke systemet kjøre på samme måte under debugging som ved normal kjøring. Andre ulemper er at maskinvaren i systemet må fungere feilfritt, og det kan være vanskelig å håndtere asynkrone interrupts. En siste ulempe er at programvaren som ligger på target er plassert i RAM, uten noe fysisk skille fra systemet. Dette kan medføre minneproblematikk og interferens mellom debugger og system, i tillegg til at den tar opp plass. c) Forklar hvordan en software trace debugger fungerer. Løsning: Software trace debugging er i prinsippet å debugge kode på target ved å sammenligne kildekoden på host med en trace av koden som eksekveres, som i figuren under. Logic analyzer Address, control, data Target Object code Disassembler Symbol database Compiler Software analyzer Host machine En logikkanalysator benyttes som å samle informasjon i sann tid fra target. Dette disassembles og sendes til en programvareanalysator, der det sammenlignes med informasjonen i symbolfiler eller en database av kilden. Når traceinformasjonen er lagret, kan den vises i det samme programmeringsspråket som benyttes for kildekoden. En komplett nedtegning kan steppes gjennom for å finne ut nøyaktig hva som skjedde på target ved gitte tidspunkt. Oppgave 5 (10%) a) Hvilke to hovedkategorier for sikkerhetskritiske systemer finnes? Forklar forskjellen mellom disse to kategoriene, og gi eksempler på systemer i hver kategori. Løsning: Sikkerhetskritiske (Safety-critical) system: Feil på systemet medfører alvorlig skade eller dødsfall. Fly-by-wire, aero engine control systems, aircraft autoland systems, airbag systems
12 Side 12 av 3 Oppgavekritiske (Mission-critical) system: Feil på systemet medfører at planlagte operasjoner ikke kan gjennomføres. Search radar, telecommunication switches, online money transaction systems b) Forklar begrepene Backward error recovery (rollback) og N-version programming i forbindelse med håndtering av feil i en applikasjon under kjøring. Beskriv fordeler og ulemper med disse to metodene. Løsning: Backward error recovery: Kode består av et sjekkpunkt, primærkode, alternative koder og en akseptansetest. System data holdes i sjekkpunkt mens primærkode utføres. Dersom resultat ikke godkjennes av akseptansetest, kjøres alternativ kode 1. Dersom resultatet av denne ikke godkjennes kjøres alternativ kode 2. Dersom ingen godtaes, sendes en feilmelding Fordelen med metoden er at feil i koden kan detekteres, og denne kan fjernes med å kjøre alternative algoritmer. Ulempene er at dersom alle alternative algoritmer gjennomføres med feil resultat, stopper applikasjonen opp inntil ekstern recovery gjennomføres. I tillegg kan eksekveringstider variere mellom hver kjøring, noe som kan medføre problemer med ytelse. Det kan også være vanskelig å konstruere akseptansetest, da dette krever god kjennskap til systemet. N-version programming: Benytter N versjoner av en algoritme Output sjekkes av en voter, som sammenligner resultater, og sender ut det som flest (normalt N-1) mener er riktig Fordelen med denne metoden, er at vi har ingen behov for akseptansetest. Det er uinteressant hva resultatet er, bare flere er enige om det samme resultat. Ulempene er at det tar mye tid å kjøre N versjoner av en algoritme, og at dersom majoriteten av algoritmene kommer ut med feil resultat, så vil dette bli godkjent og sendt videre.
LØSNINGSFORSLAG. EKSAMEN I Sanntidssystemer Fagkode: STE6221
Side 1 av 3 HØGSKOLEN I NARVIK Institutt for data-, elektronikk- og romteknologi LØSNINGSFORSLAG EKSAMEN I Sanntidssystemer Fagkode: STE6221 XX.08.2004 Side 2 av 3 Oppgave 1 (35%) a) Definer hva det vil
DetaljerSTE6221 Sanntidssystemer LØSNINGSFORSLAG TIL EKSAMEN
HØGSKOLEN I NARVIK Avdeling for teknologi MSc.-studiet EL/RT Side 1 av 3 STE6221 Sanntidssystemer LØSNINGSFORSLAG TIL EKSAMEN Tid: Torsdag 09.03.2006, kl: 09:00-12:00 Tillatte hjelpemidler: Godkjent programmerbar
DetaljerLØSNINGSFORSLAG TIL EKSAMEN I STE6221 Sanntidssystemer
HØGSKOLEN I NARVIK Avdeling for teknologi MSc.-studiet EL/RT LØSNINGSFORSLAG TIL EKSAMEN I STE6221 Sanntidssystemer Tid: Onsdag 16.03.2005, kl: 09:00-12:00 Tillatte hjelpemidler: Godkjent programmerbar
DetaljerSTE6221 Sanntidssystemer Løsningsforslag
HØGSKOLEN I NARVIK Avdeling for teknologi MSc.-studiet EL/RT Side 1 av 3 STE6221 Sanntidssystemer Løsningsforslag Tid: Fredag 02.03.2007, kl: 09:00-12:00 Tillatte hjelpemidler: Godkjent programmerbar kalkulator,
DetaljerScheduling og prosesshåndtering
Scheduling og prosesshåndtering Håndtering av prosesser i et OS OS må kontrollere og holde oversikt over alle prosessene som kjører på systemet samtidig Prosesshåndteringen må være: Korrekt Robust Feiltolerant
DetaljerEn prosess kan sees på som et stykke arbeid som skal utføres på datamaskinen. Ofte vil det være flere prosesser/tråder på datamaskinen samtidig.
Synkronisering En prosess kan sees på som et stykke arbeid som skal utføres på datamaskinen. Ofte vil det være flere prosesser/tråder på datamaskinen samtidig. Behov for synkronisering Mange prosesser/tråder
DetaljerSTE6221 Sanntidssystemer Løsningsforslag kontinuasjonseksamen
HØGSKOLEN I NARVIK Avdeling for teknologi MSc.-studiet EL/RT Side 1 av 3 STE6221 Sanntidssystemer Løsningsforslag kontinuasjonseksamen Tid: Mandag 06.08.2007, kl: 09:00-12:00 Tillatte hjelpemidler: Godkjent
DetaljerConcurrency. Lars Vidar Magnusson. September 20, Lars Vidar Magnusson () Forelesning i Operativsystemer September 20, / 17
Concurrency Lars Vidar Magnusson September 20, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 20.09.2011 September 20, 2011 1 / 17 Oversikt Concurrency 1 Concurrency Beskrivelse Prinsipper
DetaljerSTE6221 Sanntidssystemer LØSNINGSFORSLAG TIL KONTINUASJONSEKSAMEN
HØGSKOLEN I NARVIK Avdeling for teknologi MSc.-studiet EL/RT STE6221 Sanntidssystemer LØSNINGSFORSLAG TIL KONTINUASJONSEKSAMEN Tid: Fredag 18.08.2006, kl: 09:00-12:00 Tillatte hjelpemidler: Godkjent programmerbar
DetaljerGetMutex(lock) { while(testandset(lock)) {} } En context switch kan ikke ødelegge siden testen og endringen av lock skjer i samme instruksjon.
Hardware-støttet Semafor og Implementasjon av semafor i OS til å synkronisere Hardware-støttet alle softwareløsninger innebærer mange instruksjoner i tillegg til busy-waiting, som koster CPU-tid. I praksis
DetaljerINF2270. Input / Output (I/O)
INF2270 Input / Output (I/O) Hovedpunkter Innledning til Input / Output Ulike typer I/O I/O internt i datamaskinen I/O eksternt Omid Mirmotahari 3 Input / Output En datamaskin kommuniserer med omverdenen
DetaljerEksamen i TTK4145 Sanntidsprogrammering 12. august
NTNU Norges teknisk-vitenskapelige universitet Institutt for teknisk kybernetikk Fakultet for informasjonsteknologi, matematikk og elektroteknikk Bokmål Eksamen i TTK4145 Sanntidsprogrammering 12. august
DetaljerINF2270. Input / Output (I/O)
INF2270 Input / Output (I/O) Hovedpunkter Innledning til Input / Output Ulike typer I/O I/O internt i datamaskinen I/O eksternt Omid Mirmotahari 3 Input / Output En datamaskin kommuniserer med omverdenen
Detaljer! Ytelsen til I/O- systemer avhenger av flere faktorer: ! De to viktigste parametrene for ytelse til I/O er:
Dagens temaer! Ulike kategorier input/output! Programmert! Avbruddstyrt! med polling.! Direct Memory Access (DMA)! Asynkrone vs synkrone busser! Med! Fordi! -enheter menes de enheter og mekanismer som
DetaljerVranglås (Deadlocks) Fag: Operativsystemer
Vranglås (Deadlocks) Fag: Operativsystemer 1 Innhold: Vranglås Vranglås Eksempler: Svensk flagg, Veikryss, spisende filosofer Betingelser for vranglås Metoder for å håndtere vranglås Tilbake til systemer
DetaljerD: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.
Side 1 av 8 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Løsningsforslag til EKSAMENSOPPGAVE I FAG TDT4186 OPERATIVSYSTEMER Versjon: 13.des 2011 Faglig
DetaljerHva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først
Køer Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først Et nytt element legges alltid til sist i køen Skal vi ta ut et element, tar vi alltid
DetaljerCPU-Scheduling. Fag: Operativsystemer
CPU-Scheduling Fag: Operativsystemer 1 Innhold: Scheduling (tidsplanlegger) Prosesstilstander, bakgrunn, begreper Kriterier for scheduling rettferdighet, - utnyttelse Responstid Throughput (antal prosesser
DetaljerFakultet for informasjonsteknologi,
Side 1 av 6 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Kontinuasjonsløsning
DetaljerLøsningsforslag for TDT4186 Operativsystemer
Institutt for Datateknikk og Informasjonsvitenskap Løsningsforslag for TDT4186 Operativsystemer Eksamensdato: 9. august 2016 Eksamenstid (fra-til): 09:00-13:00 Hjelpemiddelkode/Tillatte hjelpemidler: D:
DetaljerForelesningsnotat. Kapittel 9 Designing and Constructing Software Code related Issues. Design og utvikling av programvare
Forelesningsnotat Kapittel 9 Designing and Constructing Software Code related Issues 1 Design og utvikling av programvare Grunnleggende metoder (Kap 9.1) Utvikling av kode (Kap 9.2) Programmeringsspråk
DetaljerGJENNOMGANG UKESOPPGAVER 9 TESTING
GJENNOMGANG UKESOPPGAVER 9 TESTING INF1050 V16 KRISTIN BRÆNDEN 1 A) Testing viser feil som du oppdager under kjøring av testen. Forklar hvorfor testing ikke kan vise at det ikke er flere gjenstående feil.
DetaljerKort notat om parallellstyring IN147
Kort notat om parallellstyring IN147 Kristin Skar 18. mai 2001 1 Kommunikasjon mellom prosesser Mange problemer man kommer borti kan kreve en paralell løsning: Man kan ha behov for økt hastighet, og dermed
Detaljer- analyse og implementasjon
- analyse og implementasjon Hvem er vi? Vi heter Anders S Finnerud Dennis JMJ Lundh studerer til bachelorgraden i ingeniørfag for data ved Høgskolen i Oslo. Oppgaven Lage et lett system som kan utføre
DetaljerIkke pensum! Plan for dagen. Resource Management Kontekst: Bloom (1979) Kap. 11: Resource control (utvalg)
Plan for dagen Kap. 11: Resource control (utvalg) Hva trenger vi av egenskaper? Hvordan unngår vi vranglåser? Ikke pensum! Kap. 11.4 (The requeue facility) Kap 14 (Distributed Systems) Kap 14 Distributed
DetaljerLøsningsforslag for TDT4186 Operativsystemer
Institutt for Datateknikk of Informasjonsvitenskap Løsningsforslag for TDT4186 Operativsystemer Eksamensdato: 13. august 2015 Eksamenstid (fra-til): 15:00-19:00 Hjelpemiddelkode/Tillatte hjelpemidler:
DetaljerDet matematisk-naturvitenskapelige fakultet
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1060 Introduksjon til operativsystemer og datakommunikasjon Eksamensdag: 7. desember 2007 Tid for eksamen: 14.30 17.30 Oppgavesettet
DetaljerTDT4258 Eksamen vår 2013
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 8 TDT4258 Eksamen vår 2013 Løsningsforslag Oppgave 1 Flervalgsoppgave (16 poeng) Du får 2 poeng
DetaljerIntroduksjon til kurset og dets innhold
til kurset og dets innhold Lars Vidar Magnusson September 4, 2011 Oversikt Forelesninger Kursets fagsider Øvingstimer Kunnskap Ferdigheter 1 Forelesninger Kursets fagsider Øvingstimer Kunnskap Ferdigheter
DetaljerUKE 13 Mer UML modellering. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski
UKE 13 Mer UML modellering Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski Hva skal vi i dag? Objektorientert design - kapittel 5 og 7 UML modellering Aktivitetsdiagrammer Klassediagram Ukesoppgaver
DetaljerKompleksitetsanalyse Helge Hafting 25.1.2005 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO117D Algoritmiske metoder
Helge Hafting 25.1.2005 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO117D Algoritmiske metoder Innhold 1 1 1.1 Hva er en algoritme?............................... 1 1.2
DetaljerGrunnleggende testteori
1 Grunnleggende testteori Error-Fault-Failure 2 Error : når en programmerer koder feil eller utelater kode (evt. miljøpåvirkning) årsaken til en fault Fault (defect eller bug): feil i kode kan lede til
DetaljerHva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først
Køer Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først Et nytt element legges alltid til sist i køen Skal vi ta ut et element, tar vi alltid
DetaljerSamtidige prosesser. Prosessor modus. Hvordan kan OS effektivt kontrollere brukerprosesser? Hvordan kan OS. kontrollere brukerprosesser?
Samtidige To (tasks) må ikke ødelegge for hverandre: skrive til samme minne kapre for mye CPU-tid få systemet til å henge Beste løsning: All makt til OS = Preemptive multitasking Preemptive = rettighetsfordelende.
DetaljerReelle tall på datamaskin
Reelle tall på datamaskin Knut Mørken 5. september 2007 1 Innledning Tirsdag 4/9 var tema for forelesningen hvordan reelle tall representeres på datamaskin og noen konsekvenser av dette, særlig med tanke
DetaljerHØGSKOLEN I SØR-TRØNDELAG
HØGSKOLEN I SØR-TRØNDELAG Eksamensdato: 21. desember 2005 Varighet: 3 timer ( 9:00 12:00 ) Avdeling for informatikk og e-læring Fagnummer: Fagnavn: LO249D Operativsystemer med Linux Klasser: FU (1. ING)
DetaljerGenerelt om operativsystemer
Generelt om operativsystemer Hva er problemet? Styring av maskinvare og ressurser tilknyttet en datamaskin er komplisert, detaljert og vanskelig Maskinvare, komponenter og programvare endres og forbedres
DetaljerGenerelt om operativsystemer
Generelt om operativsystemer Operativsystemet: Hva og hvorfor Styring av prosessorer (CPU), elektronikk, nettverk og andre ressurser i en datamaskin er komplisert, detaljert og vanskelig. Maskinvare og
DetaljerHva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først
Køer Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først Et nytt element legges alltid til sist i køen Skal vi ta ut et element, tar vi alltid
DetaljerFakultet for informasjonsteknologi, Løsning på kontinuasjon i TDT4186 Operativsystemer August 2005,
Side 1 av 5 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på kontinuasjon
DetaljerEksamen DAT 103. Oppgave 2. Kandidatnr.: 145 1) B 2) B 3) A 4) A 5) D 6) C 7) B 8) A 9) A 10) D
Eksamen DAT 103 Kandidatnr.: 145 Oppgave 1 1) B 2) B 3) A 4) A 5) D 6) C 7) B 8) A 9) A 10) D Oppgave 2 a) Et OS er den administrerende softwaren i en datamaskin. Den bygger på prinsippene om filhåndtering,
DetaljerFakultet for informasjonsteknologi,
Side 1 av 7 NTNU Norges teknisknaturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på TDT418 Operativsystemer
DetaljerMinnehåndtering i operativsystemer
Minnehåndtering i operativsystemer Minnehåndtering? Minne er en begrenset ressurs i datamaskinen Tilgjengelig minne må fordeles til prosessene som OS-et håndterer, på en korrekt og rettferdig måte Minnet
DetaljerUse case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case? Use case modellering. Eksempel
Use case modellen Use case modellering i analysefasen Metode for å identifisere og beskrive de funksjonelle kravene til et system Kapittel 3 i UML Distilled Kirsten Ribu beskriver kravene til systemet,
DetaljerGrunnleggende testteori
1 Grunnleggende testteori Industri - og software produkt Industriprodukt: Fysisk produkt Testes under produksjon og til slutt om produktet oppfyller kravene Tilpasses, endres, redesignes, og justeres så
DetaljerSystem integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,
System integration testing Forelesning Systems Testing UiB Høst 2011, Ina M. Espås, Innhold Presentasjon Hva er integration testing (pensum) Pros og cons med integrasjonstesting Når bruker vi integration
DetaljerLars Vidar Magnusson. October 11, Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
Tråder Lars Vidar Magnusson October 11, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 09.09.2011 October 11, 2011 1 / 28 Oversikt Tråder 1 Tråder Introduksjon Multithreading Prosesser og
DetaljerCharacteristics of a good design
Characteristics of a good design (PPT. side 1) Innledning Høykvalitetsdesign bør ha visse karakteristikker for å oppnå kvalitetsprodukter, dvs.: enkelt å forstå enkelt å implementere enkelt å teste enkelt
DetaljerHØGSKOLEN I SØR-TRØNDELAG
HØGSKOLEN I SØR-TRØNDELAG Eksamensdato: 26. mai 25 Varighet: 3 timer ( 9: 2: ) Avdeling for informatikk og e-læring Fagnummer: Fagnavn: LO249D Operativsystemer med Linux Klasser: BADR. ING FU Studiepoeng:
DetaljerD: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.
Side 1 av 5 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Løsningsforslag til EKSAMENSOPPGAVE I FAG TDT4186 OPERATIVSYSTEMER Versjon: 17.jan 2013 Faglig
DetaljerTildeling av minne til prosesser
Tildeling av minne til prosesser Tildeling av minne til prosesser OS må hele tiden holde rede på hvilke deler av RAM som er ledig/opptatt Når (asynkrone) prosesser/run-time system krever tildeling av en
DetaljerMinnehåndtering i operativsystemer
Minnehåndtering i operativsystemer Minnehåndtering? Minne er en begrenset ressurs i datamaskinen Tilgjengelig minne må fordeles til prosessene som OS-et håndterer, på en korrekt og rettferdig måte Minnet
DetaljerAkseptansetesten. Siste sjanse for godkjenning Etter Hans Schaefer
Akseptansetesten Siste sjanse for godkjenning Etter Hans Schaefer Akseptansetesting Formell testing med hensyn til brukerbehov, krav, og forretningsprosesser som utføres for å avklare om et system oppfyller
DetaljerTDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python
TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python Professor Guttorm Sindre Institutt for datateknikk og informasjonsvitenskap Læringsmål og pensum Mål Vite hva et
DetaljerFakultet for informasjonsteknologi, Løsning på kontinuasjon i TDT4186 Operativsystemer 14. august 2006,
Side 1 av 8 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på kontinuasjon
DetaljerLSCs Live Sequence Charts
LSCs Live Sequence Charts LSCs Live Sequence Charts / INF 5160 (Dbsem) 26. spril 2005 /Slide 1 Motivasjon Disposisjon - Message Sequence Charts (MSCs): Positive og negative sider - Fremtidsvisjon Basic
DetaljerEksempler på ikke-blokkerende systemkall:
Blokkerende systemkall Thread-modeller Thread-modeller Blokkerende systemkall Viktigste grunn for tråder: blokkerende I/O forespørsler Applikasjonen som ber om I/O blir satt på vent av operativsystemet
DetaljerINF3140 Modeller for parallellitet INF3140/4140: Programanalyse
INF3140/4140: Programanalyse Uke 4, side 1. Hvordan sjekke egenskaper ved programmer? Testing eller debugging øker tilliten til programmet ved prøving, men gir ingen garanti for korrekthet Operasjonell
DetaljerHØGSKOLEN I SØR-TRØNDELAG
HØGSKOLEN I SØR-TRØNDELAG Eksamensdato: 26. mai 25 Varighet: 3 timer ( 9: 12: ) Avdeling for informatikk og e-læring Fagnummer: Fagnavn: LO249D Operativsystemer med Linux Klasser: BADR 1. ING FU Studiepoeng:
DetaljerFakultet for informasjonsteknologi, Kontinuasjonsløsning på TDT4155 Datamaskiner og operativsystemer
Side 1 av 6 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Kontinuasjonsløsning
DetaljerOversikt. Historie Struktur Moderne UNIX systemer Moderne UNIX kernel struktur 1 UNIX. 2 Linux. 3 Process. 4 Process models
Oversikt UNIX 1 UNIX Historie Struktur Moderne UNIX systemer Moderne UNIX kernel struktur 2 Linux 3 Process 4 Process models 5 Hvordan kjøre operativsystemet 6 Prosesshåndtering i UNIX SVR4 Lars Vidar
DetaljerTildeling av minne til prosesser
Tildeling av minne til prosesser Tildeling av minne til en prosess Når en ny prosess opprettes har den et krav til hvor mye minne som skal reserveres for prosessen Memory Management System (MMS) i OS må
DetaljerOppgave 1 - Linux kommandolinje (%)
Løsningsforslag Eksamen høst 2017 Operativsystemer Oppgave 1 - Linux kommandolinje (%) a) pwd b) ps Oppgave 2 - Bash-scripting (%) a) ping -i 5 www.hin.no b) ping -c 1 www.hin.no ping -c 1 -t 1 www.hin.no
DetaljerEKSAMENSOPPGAVE I FAG TDT4186 OPERATIVSYSTEMER. Faglig kontakt under eksamen: Svein Erik Bratsberg og Arvid Staupe
Side 1 av 8 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Løsningsforslag til EKSAMENSOPPGAVE I FAG TDT4186 OPERATIVSYSTEMER Versjon: 20. nov 2012 Faglig
DetaljerForelesning III Kap 8 & 7; Dagsplan. Gjenbruk. Condition synchronization. Gjennomgående eksempler. Kode: Design: Verktøy
Forelesning III Kap 8 & 7; Dagsplan Moral: Gjenbruk Kap 8: Shared variable-based synchronization and communication Condition synchronization Mutual Exclution Conditional Critical Regions Suspend & Resume
DetaljerPlan for dagen. Kræsj-kurs i sanntidsprogrammering. Måter å tenke på. Programmering intro. Tråder & synkronisering
Kræsj-kurs i sanntidsprogrammering 1. Amanuensis Sverre Hendseth Teknisk Kybernetikk. http://www.itk.ntnu.no/ansatte/hendseth_sverre/ Plan for dagen Programmering intro Tråder & Synkronisering Non-preemptive
DetaljerLøsningsforslag for Eksamensoppgave i TDT4190 Distribuerte systemer
Institutt for datateknikk og informasjonsvitenskap Løsningsforslag for Eksamensoppgave i TDT4190 Distribuerte systemer Faglig kontakt under eksamen: Jon Olav Hauglid Tlf.: 93 80 58 51 Eksamensdato: Onsdag
DetaljerInnholdsfortegnelse. 1. Testing Feiltesting av koden Funksjonstesting: Kilder.10
1 Innholdsfortegnelse 1. Testing... 3 1.1 Feiltesting av koden... 3 1.2 Funksjonstesting:... 7 2. Kilder.10 2 1. Testing Testing av et system er nødvendig for å finne ut om systemet fungere slik det skal
DetaljerEksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer
Institutt for Datateknikk og Informasjonsvitenskap Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer Faglig kontakt under eksamen: Magnus Jahre Tlf.: 952 22 309 Eksamensdato: 19. Mai 2014 Eksamenstid
DetaljerTransaksjoner. transaksjon. når starter/slutter 1 trans.?
Transaksjoner IBE211 Kap. 10 feil mediefeil: disk feiler må gjenopprette (fra sikkerhetskopi, kap. 11) instansfeil: databasen stopper midt i noe tilbakeføring (rollback) til konsistent samtidighet når
DetaljerEksamensoppgave i TDT4186 Operativsystemer
Institutt for Datateknologi og Informatikk Eksamensoppgave i TDT4186 Operativsystemer Faglig kontakt under eksamen: Mads Nygård Tlf.: 905 96 534 Eksamensdato: 23. mai 2017 Eksamenstid (fra-til): 09:00-13:00
DetaljerOppgave 8.1 fra COD2e
Oppgave 8.1 fra COD2e To systemer brukes for transaksjonsprosessering: A kan utføre 1000 I/O operasjoner pr. sekund B kan utføre 750 I/O operasjoner pr. sekund Begge har samme prosessor som kan utføre
DetaljerOppgave 2: Gå til roten (/) av systemet. Finn minst tre forskjellige måter å gå tilbake til hjemmekatalogen din på.
Løsningsforslag for oppgavene i operativsystemer, uke 43 (18.10-22.10) På terminalstue: Oppgave 1: List alle filer og kataloger under XVUELQ som har filnavn som begynner på b. OVXVUELQE Oppgave 2: Gå til
DetaljerSystemutviklingen er ferdig når et system er operativt. Med operativt menes når systemet blir brukt av brukerne på et faktisk arbeidssted.
Presentasjon nummer 5 The changing system and the nature of maintenance Silde 1 Gruppen introduseres Slide 2 The changing system and the nature of maintenance The Changing system Systemutviklingen er ferdig
DetaljerDefinisjon av prosess
Prosesser og tråder Definisjon av prosess Enkel definisjon: En prosess er et program som kjører på datamaskinen Mer presis definisjon: En prosess er en samling av ressurser som er nødvendige for å utføre
DetaljerEksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer
Institutt for Datateknikk og Informasjonsvitenskap Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer Faglig kontakt under eksamen: Magnus Jahre Tlf.: 952 22 309 Eksamensdato: 19. Mai 2014 Eksamenstid
DetaljerKravhåndtering. INF1050: Gjennomgang, uke 03
Kravhåndtering INF1050: Gjennomgang, uke 03 Kompetansemål Kravhåndtering Anvende metoder og teknikker for å Innhente / Analysere / Spesifisere krav Ulike typer krav Funksjonelle krav Ikke-funksjonelle
Detaljeroppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO
oppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO oppgave 1 Hvorfor har vi operativsystemer? Portable programmer Enklere å programmere
DetaljerFra krav til objekter. INF1050: Gjennomgang, uke 05
Fra krav til objekter INF1050: Gjennomgang, uke 05 Kompetansemål Systemmodellering og systemperspektiv Utvikle abstrakte modeller av et system Ulike modeller representerer ulike perspektiver av systemet
DetaljerFunksjonalitet og oppbygning av et OS (og litt mer om Linux)
Funksjonalitet og oppbygning av et OS (og litt mer om Linux) Hovedfunksjoner i et OS OS skal sørge for: Styring av maskinvaren Deling av maskinens ressurser Abstraksjon vekk fra detaljer om maskinvaren
DetaljerOperativsystemer og grensesnitt
Operativsystemer og grensesnitt Ulike måter å bruke OS'et på Application Program Interface (API) Applikasjoner (ofte C-programmer) som f.eks. emacs, som bruker tjenestene i OS ved å kalle på funksjoner
DetaljerFaglig kontakt under eksamen: Orestis Gkorgkas
Side 1 av 5 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Løsningsforslag til EKSAMENSOPPGAVE I FAG TDT4186 OPERATIVSYSTEMER Faglig kontakt under eksamen:
DetaljerUse case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case?
1/15/2004 1 Use case modellen Use case modellering i analysefasen Metode for å identifisere og beskrive de funksjonelle kravene til et system Kapittel 3 i UML Distilled Kapittel 8 i Gurholt og Hasle Kirsten
DetaljerInnholdsfortegnelse INNHOLDSFORTEGNELSE... 2 REVISJONSOVERSIKT...4 INTRODUKSJON MED FORUTSETNINGER... 5
1 Innholdsfortegnelse INNHOLDSFORTEGNELSE... 2 REVISJONSOVERSIKT...4 INTRODUKSJON MED FORUTSETNINGER... 5 FRA LEVERANSE 1 (GRUPPE 2)...5 TILLEGG I FORUTSETNINGER... 5 REVIDERT UTGAVE AV SPESIFIKASJON FRA
DetaljerModellering av brukstilfeller og forretningsprosesser. Kurs i standarder, Oslo, 12. juni 2018
Modellering av brukstilfeller og forretningsprosesser Kurs i standarder, Oslo, 12. juni 2018 Modellering av brukstilfeller Innhold Kort innføring i brukstilfeller Elementer i Use Case diagram Relevante
DetaljerReal-time Operativsystem
Real-time Operativsystem c Ketil Danielsen November 8, 2002 Oversikt hvilke behov har vi (kap. 1-2) hvordan organiseres arbeidet (kap. 3) CPU scheduling (kap. 6) Minnescheduling (kap. 10) Scheduling av
DetaljerAlgDat 10. Forelesning 2. Gunnar Misund
AlgDat 10 Forelesning 2 Oversikt Java repetisjon IDE eller teksteditor + kommandolinje? Java Collections and Generics Programvareutvikling En mengde mer eller mindre veldefinerte metoder (software engineering):
DetaljerDeadlocks og mer om concurrencymekanismer
Deadlocks og mer om concurrencymekanismer Lars Vidar Magnusson September 30, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 27.09.2011 September 30, 2011 1 / 17 Oversikt Deadlocks 1 Deadlocks
DetaljerI dag UML. Domenemodell visualisering av konsepter. Eksempel. Hvordan finne domeneklasser?
UML Use case drevet analyse og design 31.01.2005 Kirsten Ribu I dag Domenemodell (forløper til klassediagram) Interaksjonsdiagrammer Sekvensdiagram Kollaborasjonsdiagram 1 2 Domenemodell visualisering
DetaljerDAT 103 - kandidatnummer: 142
DAT 103 - kandidatnummer: 142 Oppgave 1: 1) B 2) B 3) A 4) A 5) D 6) C 7) B 8) C 9) A 10) D Oppgave 2: a) Et operativsystem er en samling av systemprogrammer og brukes som et bindeledd mellom brukerprogrammer
DetaljerFra krav til objektdesign
Fra krav til objektdesign Ansvarsdrevet OO: CRC og UML Sekvensdiagrammer INF1050-ansvar-1 Dagens forelesning o Kort repetisjon av kravspesifikasjon med UML Hva skal systemet gjøre? UML: Bruksmønstermodeller
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1060 Introduksjon til operativsystemer og datakommunikasjon Eksamensdag: 6. desember 2012 Tid for eksamen: 14.30 18.30 Oppgavesettet
DetaljerAlgDat 12. Forelesning 2. Gunnar Misund
AlgDat 12 Forelesning 2 Forrige forelesning Følg med på hiof.no/algdat, ikke minst beskjedsida! Algdat: Fundamentalt, klassisk, morsomt,...krevende :) Pensum: Forelesningene, oppgavene (pluss deler av
DetaljerUML 1. Use case drevet analyse og design. 20.01.2004 Kirsten Ribu
UML 1 Use case drevet analyse og design 20.01.2004 Kirsten Ribu 1 I dag Domenemodell (forløper til klassediagram) Interaksjonsdiagrammer Sekvensdiagram Kollaborasjonsdiagram 2 Domenemodell visualisering
DetaljerDel 4 Noen spesielle C-elementer
Del 4 Noen spesielle C-elementer 1 RR 2016 Header-filer inneholder Prototypene til funksjonene i standard biblioteket Verdier og definisjoner som disse funksjonene bruker #include #include
DetaljerJobbkø. Innhold. Versjon 1.0 Copyright Aditro Side 1 av 18
Innhold Jobbkø / Varsling... 2 Jobbkø... 2 Generelt om jobbkø... 2 Hovedfunksjoner... 2 Jobbkø Bestilling og Status... 2 Bestilling... 3 Faste jobber... 5 Status... 6 Jobb... 7 Administrasjon... 8 Konsern...
DetaljerSpesifikasjon av Lag emne. Kursregistrering bruksmønstermodell (ny versjon) Dagens forelesning. Fra krav til objektdesign
Dagens forelesning o Kort repetisjon av kravspesifikasjon med UML Fra krav til objektdesign Hva skal systemet gjøre? UML: Bruksmønstermodeller o Objektdesign Ansvarsdrevet OO: CRC og UML Sekvensdiagrammer
DetaljerTeam2 Requirements & Design Document Værsystem
Requirements & Design Document Høgskolen i Sørøst-Norge Fakultet for teknologi, naturvitenskap og maritime fag Institutt for elektro, IT og kybernetikk SRD 22/01/2018 Systemutvikling og dokumentasjon/ia4412
DetaljerGrunnleggende testteori. Etter Hans Schaefer
Grunnleggende testteori Etter Hans Schaefer Industri- og softwareprodukt Industriprodukt Fysisk produkt Testes under produksjon og til slutt om produktet oppfyller kravene Tilpasses, endres, redesignes,
DetaljerEksamensoppgave i TDT4258 Energieffektive datamaskinsystemer
Institutt for datateknikk og informasjonsvitenskap Eksamensoppgave i TDT4258 Energieffektive datamaskinsystemer Faglig kontakt under eksamen: Asbjørn Djupdal Tlf.: 909 39452 Eksamensdato: 29. mai 2013
Detaljer