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.

Størrelse: px
Begynne med side:

Download "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."

Transkript

1 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 gir et behov for å organisere hvordan prosessene/trådene skal samkjøres. Det er behov for synkronisering av tråder i to tilfeller. Samarbeid mellom tråder. Konkurranse mellom tråder. Samarbeid mellom tråder Hvis alle trådene på et system kjørte hver for seg uten å ha noe med andre tråder å gjøre vil det ikke være vanskelig å fordele tid til dem i prosessor. Det som gjør prosessering vanskelig er at tråder kan samarbeide og være avhengige av hverandre. Tråder kan i forskjellige situasjoner samarbeide. En tråd kan iblant ha som oppgave å utføre en oppgave for en annen tråd. Et eksempel på samarbeid mellom tråder er når to tråder jobber mot en felles liste. Den ene tråden kan ha til oppgave å henge objekter på listen. Den andre tråden kan ha til oppgave å fjerne objekter fra listen. 1

2 Konkurranse mellom tråder Konkurranse mellom tråder oppstår når to tråder ønsker å bruke den samme ressursen på samme tidspunkt. Et eksempel er to tråder som samtidig forsøker å skrive til samme fil. Et annet eksempel på konkurranse om en ressurs er to tråder som skriver til skjermen samtidig. Dette fører gjerne til kollisjoner og rotete utskrifter. Eksempel på kollisjon Eksempel på kollisjon når to tråder skriver til skjermen samtidig. Tråd 1 skriver Hallo Tråd 2 skriver Hei Resultatet på skjermen kunne bli HaHellio Eksklusiv rådighet Det vil iblant skje at flere tråder samtidig konkurrerer om en ressurs. Det er derfor behov for systemer som sørger for at tråder ikke kolliderer. Når kun en tråd har tilgang til en ressurs på et bestemt tidspunkt kalles dette eksklusiv rådighet. Eksklusiv rådighet heter Mutual Exclusion på engelsk. Eksklusiv rådighet er når en tråd har fått rettighet til en ressurs slik at den har eksklusiv tilgang til ressursen. Eksklusiv tilgang vil si at andre tråder lukkes ute og ikke får tilgang til ressursen. 2

3 Synkronisering ved semafor En semafor kan beskrives som et heltall. Semaforen kan ha verdien 0, 1,, n. Hvor n er et tall som vi bestemmer. En måte å oppnå eksklusiv tilgang på er å bruke kun verdiene 0 eller 1. For eksempel kan to tråder som skal skrive samtidig til skjermen bruke en semafor for å unngå kollisjoner. Verdi = 0 Verdi = 1 Skjermen er i bruk Skjermen er i ikke bruk Før trådene skriver til skjermen sjekker de semaforen. Er semaforen ledig, det vil si har verdien 1, settes verdien til 0, og tråden har eksklusiv rådighet over skjermen. Når tråden er ferdig med skjermen settes verdien til semaforen lik 1 igjen. En semafor kan ha flere tallverdier enn 0 og 1. Semafor med flere tallverdier Iblant kan det være mulig at flere tråder kan få tilgang til en ressurs samtidig. Da kan man benytte en semafor med flere tallverdier. En semafor med tallverdier 0, 1, 2 vil kunne tillate to tråder samtidig. Semaforen kan starte med verdien 2. Hver tråd som entrer semaforen avtar verdien med 1. Når verdien er 0 vil ikke flere tråder slippes inn i semaforen. 3

4 class Semaphore class Semaphore er en klasse i.net Framework Class Library. Her er det to funksjoner som kontrollerer semaforen. WaitOne() Semaforen avtar med 1 Release() Semaforen øker med 1 WaitOne() avtar verdien til semaforen med 1 og medfører at andre tråder stenges ute når verdien er lik 0. Release() skjer når tråden forlater semaforen og verdien til semaforen øker med 1. Mutex Semaforer kan brukes på forskjellige måter. En semafor som kun benyttes til å oppnå eksklusiv rådighet kalles gjerne en Mutex. En Mutex er en semafor som bare kan ha verdiene 0 og 1. Mutex-er kan bli implementert av mer spesialiserte og raskere rutiner enn en semafor. Når man programmerer vil det derfor lønne seg å bruke en Mutex istedenfor en semafor når man ønsker å oppnå eksklusiv rådighet. 4

5 Semafor for synkronisering En annen type semafor kalles for Semafor for synkronisering. Gitt to tråder A og B som samarbeider. Tråd A må ikke passere et punkt p1 i koden før tråd B har nådd et punkt p2 i sin kode. Måten en semafor for synkronisering virker på er at tråd A blokkerer semaforen når den starter. Når tråd A har kommet til punkt p1 frigjør den semaforen slik at tråd B vet at tråd A har kommet til punkt p1. Events Istedenfor å benytte semafor for å få til synkronisering kan en benytte Events. Events brukes i tilfeller der en tråd må vente på at noe er utført i en annen tråd. Et eksempel på tråder som må vente på hverandre er når en tråd skal lese en fil som en annen tråd har skrevet. Tråden som skal lese filen kan ikke lese den før den andre tråden er ferdig med å skrive den. Class EventWaitHandle Class EventWaitHandle er en klasse i.net Framework Class Library som kan benyttes for å synkronisere tråder som må vente på hverandre. I Class EventWaitHandle er det to funksjoner WaitOne() Set() Blokkerer tilgang Tillater tilgang 5

6 Ulemper med semaforer Noen ulemper med semaforer 1. Tråder er ikke tvunget til å bruke semaforer. Det kan være tråder som ikke har semafor når det er nødvendig. 2. Ukorrekt bruk av semafor kan føre til vranglås (Deadlock). 3. Blokkering av en semafor er uendelig, det er ikke mulig å bestemme blokkering for en bestemt tidsperiode. (Mulig i Visual Studio). 4. Hvis en tråd med lav prioritet som sultes får tilgang til en semafor, kan dette låse systemet fordi andre tråder med høyere prioritet ikke får tilgang. Monitor Monitor er en måte å synkronisere på som er noe annerledes enn ved semafor. Oppgaven til en monitor er å sørge for at bare en tråd får tilgang til noen data på et bestemt tidspunkt. En monitor brukes på et stykke programkode (for eksempel en klasse). Dataene som skal benyttes av tråder kan bare nås via koden i monitoren. For å sikre eksklusiv rådighet benyttes noe som kalles en Condition Variabel. En Condition Variabel er en variant av en semafor som kan ha verdien 0 og 1. Hver gang en tråd går inn i eller forlater en monitor signaliserer den til en Condition Variabel. 6

7 Class Monitor class Monitor er en klasse i.net Framework Class Library. Objekter fra klassen Monitor kan synkronisere adgang til kode vi skriver. Dette betyr at bare en tråd kan nå koden om gangen. Class Monitor har funksjoner som er med på å regulere adgang til objekter fra klassen. Enter() TryEnter() Exit() Lukker objektet Forsøker å lukke Åpner objektet Vranglås Når flere tråder konkurrerer om en ressurs kan det oppstå noe som kalles vranglås (Deadlock). Tråder som har status vranglås er i den situasjon at hver tråd venter på en ressurs som er opptatt av en annen tråd. Et eksempel på vranglås er 1. To tråder har hver sin fil åpen for skriving. Begge tråder forsøker å åpne den andre trådens fil. 2. Begge tråder vil vente evig fordi en fil som er åpen for skriving, kan ikke åpnes av en annen tråd. Tråd 1 Fil1 Fil 2 Tråd 2 7

8 Prosessplanlegging Prosessplanlegging (CPU Scheduling) er oppgaven å behandle deling av prosessor mellom en gruppe med prosesser/tråder. Planlegging heter på engelsk Scheduling. Om planlegging Prosessplanlegging av tråder skiller seg ikke fra annen planlegging. For eksempel planlegging av 1. Bruk av undervisningsrom. 2. Trafikkflyt ved trafikkregler. Prosessplanlegging kan gjøres på mange forskjellige måter. Hvordan dette skal gjøres på best mulig måte har derfor vært et forskningsproblem. To typer prosessplanlegging Man kan skille mellom to typer algoritmer for prosessplanlegging Ikke preemptive algoritmer Preemptive algoritmer Med preemptiv menes at operativsystemet griper inn. 8

9 To måter å behandle prosesser Ikke preemptive algoritmer lar en prosess som har kommet inn i prosessor kjøre til den er ferdig. Preemptive algoritmer lar prosesser kjøre bare et bestemt intervall. Det vil si at prosesser hele tiden bytter på å kjøre. Prosessplanleggings politikk På en datamaskin er det vanligvis mange tråder som venter på å komme inn i prosessor. Når en tråd er ferdig i prosessor og en ny tråd skal lastes inn, må prosessplanleggeren (Scheduler) bestemme hvilken tråd som skal lastes inn. Hvilken tråd som skal lastes inn bestemmes ved en prosessplanleggingspolitikk. En prosessplanleggingspolitikk (Scheduling Policy) må bestemme to ting 1. Når tiden er inne for en tråd til å forlate prosessor. 2. Hvilken tråd som er den neste til å lastes inn i prosessor. Årsaker til at en tråd forlater prosessor Det er fire årsaker til at en tråd forlater prosessor 1. Tråden er ferdig (programslutt). 2. Tråden behøver en ressurs, men denne er for øyeblikket ikke tilgjengelig. 3. Tråden bestemmer frivillig å forlate prosessor. 4. Tråden må forlate prosessor fordi den har brukt opp tiden den får være i prosessor. 9

10 Trådutskifting Å fjerne en tråd fra prosessor og å laste inn en ny tråd kalles trådutskifting (Context Switching). En tråd som er i prosessor bruker flere registre som har data og informasjon om tråden. Ved trådutskifting må derfor dataene i disse registrene lagres, slik at de kan lastes inn i prosessor neste gang tråden kjøres. Preemptiv prosessplanlegging Windows benytter preemptiv prosessplanlegging. Tråder tillates å være i prosessor en bestemt tid som kalles et Quantum. Et Quantum er et tidsintervall som en tråd kan være i prosessor før den byttes ut med en annen tråd. Lengden til et Quantum Lengden til et Quantum varierer fra system til system. I Windows 7 er et Quantum 2 klokkeintervaller. På Windows Server systemer 12 klokkeintervaller. Et klokkeintervall er ca. 10 millisekunder. 10

11 Måter prosesser kan dele prosessor på Trådene kan dele bruk av prosessor på to måter Frivillig deling av prosessor. Ufrivillig deling av prosessor. Frivillig deling av prosessor Frivillig deling av prosessor vil si at trådene er programmert til å forlate prosessor selv. En prosessplanlegger som benytter frivillig deling av prosessor kalles en ikke preemptiv prosessplanlegger. Et problem ved å bruke frivillig deling av prosessor som system er at det kan dukke opp tråder som ikke vil samarbeide. Ufrivillig deling av prosessor Ufrivillig deling av prosessor vil si at systemet har et avbrytelsessystem som kan avbryte en tråd som kjører i prosessor. Dette systemet bruker gjerne en timer som avbryter prosessen når det har gått et bestemt intervall. Prosessplanleggeren Prosessplanleggeren bestemmer hvilke tråder som skal inn i prosessor og hvor lenge trådene får bli i prosessor. Hvordan prosessplanleggeren organiseres har derfor stor innvirkning på datamaskinens hastighet og ytelse. 11

12 Høy ytelse og lav ytelse En tråd som prosessplanleggeren lar komme inn i prosessor ganske lett, vil ha høy ytelse. Motsatt vil en tråd som sjelden kommer inn i prosessor, ha lav ytelse. Hvordan prosessplanleggeren bør organiseres avhenger av hva operativsystemet skal brukes til. Prosessplanlegging i et sanntidsoperativsystem Prosesser i et sanntidsoperativsystem skal reagere med en gang. De må derfor prioriteres mye høyere enn prosesser i et vanlig operativsystem. Prioritet Prosessplanleggings algoritmer som er laget for moderne operativsystemer bruker prioritet til å bestemme hvilke prosesser som skal få tilgang til prosessor. Hver tråd gis en prioritet som angir hvor viktig tråden er. En prosessplanlegger som benytter frivillig deling av CPU kalles en ikke preemptiv prosessplanlegger. 12

13 Ikke preemptiv prosessplanlegger Vi skal se på noen måter som en ikke preemptiv prosessplanlegger kan arbeide på. Noen måter en ikke preemtiv prosessplanlegger kan arbeide på er 1. First Come First Served 2. Shortest Job Next 3. Priority Scheduling 4. Deadline Scheduling First Come First Served First Come First Served strategien lar trådene komme inn i prosessoren etter hvert som de blir startet. En måte å organisere dette på er at trådene henges på en liste etter hvert som de er klare til å komme inn i prosessoren. Trådene henges bakerst på lista etter hvert som de kommer. Den som er først på lista kommer inn i prosessoren. First Come First Served strategien fungerer ikke bra i praksis og er lite brukt. Shortest Job Next Shortest Job Next strategien er at den tråden som går raskest å utføre hentes først inn i prosessor. Denne strategien minsker ventetiden da de små trådene går fort unna. Ulempen med strategien er at det kan føre til sulting av store tråder hvis det er mange små. 13

14 Prioritet prosessplanlegging Prioritet prosessplanlegging vil si at trådene får plass i CPU etter hvilken prioritet de har. Ulempen med denne metoden er at det kan føre til sulting av tråder med lav prioritet. Deadline Scheduling I sanntidssystemer er det ofte nødvendig at noen tråder må kunne kjøre ferdig i prosessor for å kunne holde en tidsfrist. Systemets ytelse avhenger av at slike tidsfrister overholdes. Dette kalles for Deadline Scheduling på engelsk. Preemptiv prosessplanlegger Noen måter en preemtiv prosessplanlegger kan arbeide på 1. Round Robin. 2. Køer med ulike nivåer. 3. Forgrunn og bakgrunn prosesser. Round Robin Round Robin er den mest brukte av alle prosessplanleggings algoritmer. Ideen bak Round Robin er at alle trådene skal få like mye tid i prosessoren. Hver prosess får et tidsintervall kalt et Quantum. 14

15 Køer med ulike nivåer Køer med ulike nivåer er et system der alle tråder med samme prioritet henges på en liste. Køer med ulike nivåer er derfor en utvidelse av prioritet systemet. Det er mange forskjellige strategier for at alle lister skal få tid i prosessor. Forgrunn og bakgrunns prosesser Forgrunn og bakgrunns prosesser er en måte å organisere tråder på. Tråder i forgrunnen kjører på prosessor for å utføre oppgaver for en bruker. Tråder i bakgrunnen slipper til når det er anledning til det. Det vil si når det ikke er noen aktive tråder i forgrunnen. Om prosessplanlegging på PC Prosessplanlegging er ikke så viktig på PC-er. På en PC kjører en bruker oftest bare et program, for eksempel en tekstbehandler. Dagens PC-er er blitt så raske at prosessor fint klarer alle oppgaver. Prosessplanlegging på server Prosessplanlegging er mye viktigere på en server i nettverk enn på en PC. På en server er det ofte mange prosesser som konkurrerer om tid i prosessor. 15

16 Prosessplanlegging på ulike systemer Hvilken prosessplanlegging algoritme vi skal bruke avhenger av operativsystemet. Vi skal se på tre ulike operativsystemer Batch systemer Interaktive systemer Sanntidssystemer Batch systemer Batch systemer utfører en oppgave beskrevet på en fil. I Batch systemer er det derfor ingen bruker som venter på respons. Batch systemer brukes fortsatt en del i forretningsverdenen. For Batch systemer brukes derfor en av følgende to algoritmer 1. Ikke preemptive algoritmer. En prosess kjører i prosessor til den er ferdig. 2. Preemptive algoritmer med lang tid for hver prosess i prosessor. Målet med prosessplanlegging algoritmer for Batch systemer er Få utført flest mulig jobber på kortest mulig tid. Holde prosessor aktiv hele tiden. 16

17 Interaktive systemer På et interaktivt system, hvor en bruker kommuniserer med datamaskinen, er preemtive algoritmer nødvendig. Preemptive algoritmer sørger for at ikke en prosess får datamaskinen til å henge om det blir en feil (Bug) i prosessen. Målet med prosessplanlegging algoritmer for Interaktive systemer er Kunne reagere på handlinger raskest mulig. Kunne tilfredsstille brukerens forventninger til systemet. Sanntidssystemer Sanntidssystemer kjører prosesser med høy prioritet som er klar til å reagere på ytre hendelser i systemet. Målet med prosessplanlegging algoritmer for sanntidssystemer er 1. Kunne reagere på handlinger med en gang. 2. Ting må skje på riktig tidspunkt. Det vil si at systemet må være forutsigbart. Målet med prosessplanlegging Generelt kan vi si at målet med prosessplanlegging algoritmer for alle systemer er Gi alle prosesser tilgang til prosessor. Utnytte systemet best mulig. 17

Begrepet kritisk region er sentralt i forbindelse med datamaskinsystemer.

Begrepet kritisk region er sentralt i forbindelse med datamaskinsystemer. Kritisk region Begrepet kritisk region er sentralt i forbindelse med datamaskinsystemer. Generelt kan en kritisk region defineres som et sted der det kan oppstå kollisjoner. Et veikryss er en kritisk region

Detaljer

Scheduling og prosesshåndtering

Scheduling 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

Detaljer

Concurrency. Lars Vidar Magnusson. September 20, Lars Vidar Magnusson () Forelesning i Operativsystemer September 20, / 17

Concurrency. 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

Detaljer

CPU-Scheduling. Fag: Operativsystemer

CPU-Scheduling. Fag: Operativsystemer CPU-Scheduling Fag: Operativsystemer 1 Innhold: Scheduling (tidsplanlegger) Prosesstilstander, bakgrunn, begreper Kriterier for scheduling rettferdighet, - utnyttelse Responstid Throughput (antal prosesser

Detaljer

INF2270. Input / Output (I/O)

INF2270. 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

INF2270. Input / Output (I/O)

INF2270. 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:

! 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

Detaljer

Kort notat om parallellstyring IN147

Kort 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

Eksamensoppgave i TDT4186 Operativsystemer

Eksamensoppgave 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

Detaljer

GetMutex(lock) { while(testandset(lock)) {} } En context switch kan ikke ødelegge siden testen og endringen av lock skjer i samme instruksjon.

GetMutex(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

Detaljer

Samtidige prosesser. Prosessor modus. Hvordan kan OS effektivt kontrollere brukerprosesser? Hvordan kan OS. kontrollere brukerprosesser?

Samtidige 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.

Detaljer

Eksempler på ikke-blokkerende systemkall:

Eksempler 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

Detaljer

Løsningsforslag for TDT4186 Operativsystemer

Lø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:

Detaljer

Eksamen 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. 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,

Detaljer

Operativsystemer for multiple prosessorer

Operativsystemer for multiple prosessorer Operativsystemer for multiple prosessorer I datamaskinenes historie har hele tiden datamaskinenes hastighet økt og økt. Tidligere var den vanligste måten å øke datamaskiners hastighet på, å øke farten

Detaljer

EKSAMEN. Operativsystemer. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene.

EKSAMEN. Operativsystemer. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene. EKSAMEN Emnekode: ITF22506 Emne: Operativsystemer Dato: 9. desember 2009 Eksamenstid: kl. 9.00 til kl. 13.00 Hjelpemidler: 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre

Detaljer

Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først

Hva 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

Detaljer

Løsningsforslag for TDT4186 Operativsystemer

Lø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:

Detaljer

EKSAMEN. Operativsystemer. 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre A-4 ark med selvskrevne notater.

EKSAMEN. Operativsystemer. 1. Læreboken A Practical Guide to Red Hat Linux av Mark Sobell 2. Maks. tre A-4 ark med selvskrevne notater. EKSAMEN Emnekode: ITF22506 Emne: Operativsystemer Dato: 12. desember 2007 Eksamenstid: kl. 9.00 til kl. 13.00 Hjelpemidler: 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre

Detaljer

TOD063 Datastrukturer og algoritmer

TOD063 Datastrukturer og algoritmer TOD063 Datastrukturer og algoritmer Øving : 4 Utlevert : Veke 9 Innleveringsfrist : 19. mars 2010 Klasse : 1 Data og 1 Informasjonsteknologi Ta gjerne 1 og 2 først! Gruppearbeid: 2 personar pr. gruppe

Detaljer

oppgavesett 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 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

Detaljer

Oppgave 1 - Linux kommandolinje (%)

Oppgave 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

Detaljer

Fakultet for informasjonsteknologi, Løsning på kontinuasjon i TDT4186 Operativsystemer 14. august 2006,

Fakultet 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

Detaljer

Skisse til løsning for eksamensoppgave i TDT4186 Operativsystemer

Skisse til løsning for eksamensoppgave i TDT4186 Operativsystemer Institutt for datateknikk og informasjonsvitenskap Skisse til løsning for eksamensoppgave i TDT4186 Operativsystemer Faglig kontakt under eksamen: Svein Erik Bratsberg: 9953 9963 Eksamensdato: 9. desember

Detaljer

Faglig kontakt under eksamen: Orestis Gkorgkas

Faglig 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:

Detaljer

Introduksjon til kurset og dets innhold

Introduksjon 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

Detaljer

Mer om C programmering og cuncurrency

Mer om C programmering og cuncurrency Mer om C programmering og cuncurrency Lars Vidar Magnusson September 23, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 20.09.2011 September 23, 2011 1 / 19 Oversikt Mer om C programmering

Detaljer

Fakultet for informasjonsteknologi, Løsning på kontinuasjon i TDT4186 Operativsystemer August 2005,

Fakultet 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

Detaljer

1: Steng ned alle MAB på alle maskiner før dere starter oppdateringen. Dette gjelder også MAB Schedule som dere vil finne på serveren.

1: Steng ned alle MAB på alle maskiner før dere starter oppdateringen. Dette gjelder også MAB Schedule som dere vil finne på serveren. Oppdatering av MAB. Før dere begynner pass på følgende 1: Steng ned alle MAB på alle maskiner før dere starter oppdateringen. Dette gjelder også MAB Schedule som dere vil finne på serveren. 1 2. Viktig

Detaljer

static int ant_steiner; //antall steiner static int teller2 = 0; //teller for printing til Thread^ murer; //murertråden

static int ant_steiner; //antall steiner static int teller2 = 0; //teller for printing til Thread^ murer; //murertråden Øving 4 Thorstein Brekke Operativsystemer Oppgave 1 Kode for Murer: // Uke4oppgave1murer.cpp : main project file. #include "stdafx.h" using namespace System; using namespace Threading; using namespace

Detaljer

Minnehåndtering i operativsystemer

Minnehå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

Detaljer

Real-time Operativsystem

Real-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

Detaljer

1,r H øgs kolen i Østfol d

1,r H øgs kolen i Østfol d 1,r H øgs kolen i Østfol d EKSAMEN Emnekode: ITF22506 Emne: Operativsystemer Dato: 2. juni 2010 Eksamenstid: kl. 9.00 til kl. 13.00 Hjelpemidler: Faglærer: 1. Læreboken "A Practical Guide to Red Hat Linux"

Detaljer

STE6221 Sanntidssystemer Løsningsforslag

STE6221 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,

Detaljer

Minnehåndtering i operativsystemer

Minnehå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

Detaljer

Debugging. Tore Berg Hansen, TISIP

Debugging. Tore Berg Hansen, TISIP Debugging Tore Berg Hansen, TISIP Innhold Innledning... 1 Å kompilere og bygge et program for debugging... 1 Når debugger er i gang... 2 Symbolene i verktøylinjen... 3 Start på nytt... 3 Stopp debugging...

Detaljer

DAT 103 - kandidatnummer: 142

DAT 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

Detaljer

Definisjon av prosess

Definisjon 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

Detaljer

Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først

Hva 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

Detaljer

Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først

Hva 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

Detaljer

Høgskolen i Molde Institutt for Informatikk Eksamen in240: Operativsystemer Høsten 2002 SVARFORSLAG:

Høgskolen i Molde Institutt for Informatikk Eksamen in240: Operativsystemer Høsten 2002 SVARFORSLAG: 1 1 Høgskolen i Molde Institutt for Informatikk Eksamen in240: Operativsystemer Høsten 2002 SVARFORSLAG: bokmål Les dette før du begynner: Det er syv (7) oppgaver som skal løses på eget ark. Faglærer vil

Detaljer

4/5 store parallelle maskiner /4 felles hukommelse in 147, våren 1999 parallelle datamaskiner 1. når tema pensum.

4/5 store parallelle maskiner /4 felles hukommelse in 147, våren 1999 parallelle datamaskiner 1. når tema pensum. Parallellitet når tema pensum 27/4 felles hukommelse 9.2 9.3 4/5 store parallelle maskiner 9.4 9.6 in 147, våren 1999 parallelle datamaskiner 1 Tema for denne forelesningen: kraftigere enn én prosessor

Detaljer

INF1010 Tråder II 6. april 2016

INF1010 Tråder II 6. april 2016 INF1010 Tråder II 6. april 2016 Stein Gjessing Universitetet i Oslo 1 Tråder i Java tråden minrunp class MinRun implements Runable { MinRun(... ) {... } public void run( ) {...... } } //end

Detaljer

// Handlanger.cpp : main project file. #include "stdafx.h"

// Handlanger.cpp : main project file. #include stdafx.h // Handlanger.cpp : main project file. #include "stdafx.h" using namespace System; using namespace System::Threading; using namespace System::IO; using namespace System::Runtime::Serialization; using namespace

Detaljer

Fakultet for informasjonsteknologi,

Fakultet for informasjonsteknologi, Side 1 av 6 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Kontinuasjonsløsning

Detaljer

Oppsummering av IN147 siste del Operativsystemer Parallellisering Veien videre

Oppsummering av IN147 siste del Operativsystemer Parallellisering Veien videre Oppsummering av IN147 siste del Operativsystemer Parallellisering Veien videre Ark 1 av 12 Forelesning 12.5.1999 Operativsystemer I kurset har vi fokusert på UNIX, men prinsippene gjelder i større eller

Detaljer

For å sjekke at Python virker som det skal begynner vi med å lage et kjempeenkelt program. Vi vil bare skrive en enkel hilsen på skjermen.

For å sjekke at Python virker som det skal begynner vi med å lage et kjempeenkelt program. Vi vil bare skrive en enkel hilsen på skjermen. Kuprat Skrevet av: Geir Arne Hjelle Kurs: Python Tema: Tekstbasert Fag: Norsk Klassetrinn: 5.-7. klasse, 8.-10. klasse Introduksjon I dette kurset skal vi introdusere programmeringsspråket Python. Dette

Detaljer

Kan micro:biten vår brukes som en terning? Ja, det er faktisk ganske enkelt!

Kan micro:biten vår brukes som en terning? Ja, det er faktisk ganske enkelt! Microbit PXT: Terning Skrevet av: Geir Arne Hjelle Kurs: Microbit Språk: Norsk bokmål Introduksjon Kan micro:biten vår brukes som en terning? Ja, det er faktisk ganske enkelt! Steg 1: Vi rister løs Vi

Detaljer

Fakultet for informasjonsteknologi,

Fakultet for informasjonsteknologi, Side 1 av 7 NTNU Norges teknisk naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på TDT4186 Operativsystemer

Detaljer

Dagens temaer. Kort repetisjon. Mer om cache (1) Mer om cache (2) Read hit. Read miss. Write hit. Hurtig minne. Cache

Dagens temaer. Kort repetisjon. Mer om cache (1) Mer om cache (2) Read hit. Read miss. Write hit. Hurtig minne. Cache Dagens temaer Dagens emner er hentet fra Englander kapittel side 338-35 (gammel utgave). Mer om design av cache. Kort repetisjon er en spesiell type rask hukommelse som inneholder et subsett av det som

Detaljer

Singletasking OS. Device minne Skjerm minne. Brukerprogram. Brukerdata/heap. Stack. Basis for flerprosess-systemer.

Singletasking OS. Device minne Skjerm minne. Brukerprogram. Brukerdata/heap. Stack. Basis for flerprosess-systemer. -OS i i L1 og L2 og og Basis for flerprosess-systemer. Adresser.. 2 1 0 OS Device minne Skjerm minne Brukerprogram Brukerdata/heap Stack Stack: brukes bl. a. til å lagre adressen som skal returneres til

Detaljer

TDT4258 Eksamen vår 2013

TDT4258 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

Detaljer

Et operativsystem er programvare som har som oppgave å gjøre tjenester for datamaskinsystemet.

Et operativsystem er programvare som har som oppgave å gjøre tjenester for datamaskinsystemet. Om operativsystemer Et operativsystem er programvare som har som oppgave å gjøre tjenester for datamaskinsystemet. er svært store programmer som består av tusenvis av funksjoner som gjør tjenester av forskjellig

Detaljer

Oppgave 2: Gå til roten (/) av systemet. Finn minst tre forskjellige måter å gå tilbake til hjemmekatalogen din på.

Oppgave 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

Detaljer

Øving i Tornado og VxWorks

Øving i Tornado og VxWorks Øving 5 Øving i Tornado og VxWorks Innledning Denne øvingen går ut på å programmere for et målsystem som benytter sanntidsoperativsystemet VxWorks. Til dette benyttes utviklingssystemet Tornado fra WindRiver.

Detaljer

IN1010 våren Repetisjon av tråder. 15. mai 2018

IN1010 våren Repetisjon av tråder. 15. mai 2018 IN1010 våren 2018 Repetisjon av tråder 15. mai 2018 Stein Gjessing,, Universitetet i Oslo 1 Tråder Datamaskinarkitektur prosessor registre cache 1 cache 2 prosessor registre cache 1 Disk System-bus Minne

Detaljer

Tråder Repetisjon. 9. og 13. mai Tråder

Tråder Repetisjon. 9. og 13. mai Tråder Tråder Repetisjon 9. og 13. mai Tråder Hva er tråder? 2 Hva er tråder? I utgangspunktet uavhengige aktiviteter som konkurrerer om å få bruke prosessoren. 2 Hvorfor tråder? 3 Hvorfor tråder? Flere oppgaver

Detaljer

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

D: 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

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Eksamensdato: 22. mai 2002 Varighet: Fagnummer: Fagnavn: 4 timer LO245D Datateknikk Klasse(r): 1D FU Vekttall: 3 Faglærer(e): Geir Maribu

Detaljer

Til Nye abonnenter av Adm.prg Tidl ref: Dato: Org.nr 943 942 102

Til Nye abonnenter av Adm.prg Tidl ref: Dato: Org.nr 943 942 102 Til Nye abonnenter av Adm.prg Vår ref: Tidl ref: Dato: Org.nr 943 942 102 Takk for din bestilling av Administrasjonsprogram for skytterlag. Vedlagt følger siste versjon av programmet. Fullstendig brukerveiledning

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET 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

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØ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)

Detaljer

Læringsmål og pensum. https://www.youtube.com/watch? v=nkiu9yen5nc

Læringsmål og pensum. https://www.youtube.com/watch? v=nkiu9yen5nc 1 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python Professor Alf Inge Wang 2 https://www.youtube.com/watch? v=nkiu9yen5nc 3 Læringsmål og pensum Mål Lære om

Detaljer

Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den.

Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den. PXT: Stein, saks, papir Skrevet av: Bjørn Hamre Kurs: Microbit Introduksjon Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den. Steg 1: Velge tilfeldig

Detaljer

EKSAMEN. Operativsystemer. Dato: 10. desember 2008 Eksamenstid: kl til kl

EKSAMEN. Operativsystemer. Dato: 10. desember 2008 Eksamenstid: kl til kl EKSAMEN Emnekode: ITF22506 Emne: Operativsystemer Dato: 10. desember 2008 Eksamenstid: kl. 9.00 til kl. 13.00 Hjelpemidler: 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre

Detaljer

Kanter, kanter, mange mangekanter. Introduksjon: Steg 1: Enkle firkanter. Sjekkliste. Skrevet av: Sigmund Hansen

Kanter, kanter, mange mangekanter. Introduksjon: Steg 1: Enkle firkanter. Sjekkliste. Skrevet av: Sigmund Hansen Kanter, kanter, mange mangekanter Skrevet av: Sigmund Hansen Kurs: Processing Tema: Tekstbasert, Animasjon Fag: Matematikk, Programmering, Kunst og håndverk Klassetrinn: 8.-10. klasse, Videregående skole

Detaljer

Programmering i C++ Løsningsforslag Eksamen høsten 2005

Programmering i C++ Løsningsforslag Eksamen høsten 2005 Programmering i C++ Eksamen høsten 2005 Simen Hagen Høgskolen i Oslo, Avdeling for Ingeniørutdanning 7. desember 2005 Generelt Denne eksamensoppgaven består av tre oppgaver, pluss en ekstraoppgave. Det

Detaljer

Steg 1: Installere programvaren

Steg 1: Installere programvaren Blinkende lysdiode Skrevet av: Adrian Helle Kurs: Arduino Tema: Elektronikk, Tekstbasert Fag: Programmering, Teknologi Klassetrinn: 5.-7. klasse, 8.-10. klasse, Videregående skole Introduksjon Arduino

Detaljer

Tilstandsmaskiner kalles på engelsk for Finite State Machines.

Tilstandsmaskiner kalles på engelsk for Finite State Machines. Tilstandsmaskiner Tilstandsmaskiner kalles på engelsk for Finite State Machines. Tilstandsmaskiner er en metode til å beskrive systemer med logisk og dynamisk/tidsmessig oppførsel. Metoden tilstandsmaskiner

Detaljer

Lars Vidar Magnusson. October 11, Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28

Lars 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

Detaljer

Blinkende lysdiode Introduksjon Arduino Lærerveiledning

Blinkende lysdiode Introduksjon Arduino Lærerveiledning Blinkende lysdiode Introduksjon Arduino Lærerveiledning Introduksjon Arduino er en mikrokontroller som kan programmeres til å styre elektroniske dingser og duppeditter. Ved hjelp av en Arduino kan du skru

Detaljer

Heap og prioritetskø. Marjory the Trash Heap fra Fraggle Rock

Heap og prioritetskø. Marjory the Trash Heap fra Fraggle Rock Heap og prioritetskø Marjory the Trash Heap fra Fraggle Rock Binær heap En heap er et komplett binært tre: Alle nivåene i treet, unntatt (muligens) det nederste, er alltid helt fylt opp med noder Alle

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang 2 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python Professor Alf Inge Wang 3 https://www.youtube.com/watch? v=nkiu9yen5nc 4 Læringsmål og pensum Mål Lære om

Detaljer

Håndtering av minne i et OS

Håndtering av minne i et OS Håndtering av minne i et OS Hva er det som skal håndteres? Minnehåndtering (memory management) utføres av de delene av systemet som har ansvar for å håndtere maskinens primærminne Primærminnet (aka hovedminne,

Detaljer

Scan Secure GTS 5.1 + PAS

Scan Secure GTS 5.1 + PAS Scan Secure GTS 5.1 + PAS Installasjonsmanual For versjon 5.1.7 og nyere Denne installasjonsmanualen er konfidensiell Den er kun ment til bruk for system administrator Den skal ikke benyttes av brukere

Detaljer

Datamaskinens oppbygning

Datamaskinens oppbygning Datamaskinens oppbygning Håkon Tolsby 18.09.2014 Håkon Tolsby 1 Innhold Hovedenheten Hovedkort Prosessor CISC og RISC 18.09.2014 Håkon Tolsby 2 Datamaskinens bestanddeler Hovedenhet Skjerm Tastatur Mus

Detaljer

Operativsystemet Internt

Operativsystemet Internt Operativsystemet Internt Kjell Åge Bringsrud INF 103 Opsys. internt 1 Singletasking OS Små og enkle Trenger Filhåndtering og device-drivere Trenge brukergrensesnitt Trenger ikke skedulering av I/O Trenger

Detaljer

PXT: Hermegåsa. Introduksjon. Skrevet av: Felix Bjerke og Tjerand Silde

PXT: Hermegåsa. Introduksjon. Skrevet av: Felix Bjerke og Tjerand Silde PXT: Hermegåsa Skrevet av: Felix Bjerke og Tjerand Silde Kurs: Microbit Introduksjon Hermegåsa er et spill der en person er spilleder, og går ut på at han utfører instruksjoner på micro:biten sin som de

Detaljer

Visma Contracting Oppgradering til versjon 5.20

Visma Contracting Oppgradering til versjon 5.20 Visma Contracting Oppgradering til versjon 5.20 Oslo, oktober 2013 Før installasjon: SuperOffice De som kjører SuperOffice må få oppgradert denne samtidig. Henvendelse til leverandøren firma KeyForce.

Detaljer

Tråder og concurrency i Linux

Tråder og concurrency i Linux Tråder og concurrency i Linux Lars Vidar Magnusson September 27, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 27.09.2011 September 27, 2011 1 / 14 Oversikt Tråder i Linux 1 Tråder i Linux

Detaljer

Dagens temaer. Dagens emner er hentet fra Englander kapittel 11 (side ) Repetisjon av viktige emner i CPU-design.

Dagens temaer. Dagens emner er hentet fra Englander kapittel 11 (side ) Repetisjon av viktige emner i CPU-design. Dagens temaer Dagens emner er hentet fra Englander kapittel 11 (side 327-344 ) Repetisjon av viktige emner i CPU-design. Flere teknikker for å øke hastigheten Cache 03.10.03 INF 103 1 Hvordan øke hastigheten

Detaljer

Betalingsterminal problemhåndtering

Betalingsterminal problemhåndtering Betalingsterminal problemhåndtering Jostein Toftebakk, Extensor AS Versjon 6, 09.01.2012. Dette er en enkel prosedyre som løser de fleste feil og problemer med betalingsterminal. Prosedyren gjelder for

Detaljer

Patrick Fallang (Dataingeniør) Lab Oppgave: Kjenn Din Egen PC (XP)

Patrick Fallang (Dataingeniør) Lab Oppgave: Kjenn Din Egen PC (XP) Patrick Fallang (Dataingeniør) Lab Oppgave: Kjenn Din Egen PC (XP) 1: Hva slags prosessor har maskinen? Maskinen min har en «Pentium 4 CPU 3.00Ghz»prosessor. 2: Hvor mye minne har den. Maskinen min har

Detaljer

Threads Threads (tråder) threads vs prosesser threads vs prosesser Definisjoner av

Threads Threads (tråder) threads vs prosesser threads vs prosesser Definisjoner av prosess = At en kokk lager en porsjon middag i et kjøkken CPU = kokk ressurser = kjøkken, matvarer, oppskrift thread/tråd = den sammenhengende serien(tråden) av hendelser som skjer når kokken lager en

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØ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:

Detaljer

DBS21 Samtidighetskontrollteknikker

DBS21 Samtidighetskontrollteknikker Side 1 for Databaser DBS21 Samtidighetskontrollteknikker mandag 30. mai 2016 21.25 Pensum: 21.1, side 781-792, og 21.3 side 795-796 tom 21.3.1 21.1 Tofaselåsingsteknikker for samtidighetskontroll 21.1.1

Detaljer

Sprettende ball Introduksjon Processing PDF

Sprettende ball Introduksjon Processing PDF Sprettende ball Introduksjon Processing PDF Introduksjon: I denne modulen skal vi lære et programmeringsspråk som heter Processing. Det ble laget for å gjøre programmering lett for designere og andre som

Detaljer

Betinget eksekvering og logiske tester i shell

Betinget eksekvering og logiske tester i shell Betinget eksekvering og logiske tester i shell Betinget eksekvering *? Programmet utfører operasjon(er) bare hvis en logisk betingelse er sann Bash tilbyr to kontrollstrukturer for å kunne gjøre betinget

Detaljer

Start et nytt Scratch-prosjekt. Slett kattefiguren, for eksempel ved å høyreklikke på den og velge slett.

Start et nytt Scratch-prosjekt. Slett kattefiguren, for eksempel ved å høyreklikke på den og velge slett. Norgestur Introduksjon Bli med på en rundreise i Norge! Vi skal lage et spill hvor du styrer et helikopter rundt omkring et kart over Norge, mens du prøver å raskest mulig finne steder og byer du blir

Detaljer

Forelesning 5. Diverse komponenter/større system

Forelesning 5. Diverse komponenter/større system Forelesning 5 Diverse komponenter/større system Hovedpunkter Komparator Dekoder/enkoder MUX/DEMUX Kombinert adder/subtraktor ALU En minimal RISC - CPU 2 Komparator Komparator sammenligner to 4 bits tall

Detaljer

Norgestur. Introduksjon. Steg 1: Et norgeskart. Sjekkliste. Scratch. Skrevet av: Geir Arne Hjelle

Norgestur. Introduksjon. Steg 1: Et norgeskart. Sjekkliste. Scratch. Skrevet av: Geir Arne Hjelle Scratch Norgestur Skrevet av: Geir Arne Hjelle Kurs: Scratch Språk: Norsk bokmål Introduksjon Bli med på en rundreise i Norge! Vi skal lage et spill hvor du styrer et helikopter rundt omkring et kart over

Detaljer

Innhold. Introduksjon til parallelle datamaskiner. Ulike typer parallelle arkitekturer. Prinsipper for synkronisering av felles hukommelse

Innhold. Introduksjon til parallelle datamaskiner. Ulike typer parallelle arkitekturer. Prinsipper for synkronisering av felles hukommelse Innhold Introduksjon til parallelle datamaskiner. Ulike typer parallelle arkitekturer Prinsipper for synkronisering av felles hukommelse Multiprosessorer koblet sammen av én buss 02.05 2001 Parallelle

Detaljer

Kan micro:biten vår brukes som et termometer? Ja, den har faktisk en temperatursensor!

Kan micro:biten vår brukes som et termometer? Ja, den har faktisk en temperatursensor! PXT: Temperatur Skrevet av: Kolbjørn Engeland, Julie Revdahl Kurs: Microbit Tema: Blokkbasert, Elektronikk, Spill Fag: Programmering Klassetrinn: 1.-4. klasse, 5.-7. klasse, 8.-10. klasse Introduksjon

Detaljer

STE6221 Sanntidssystemer LØSNINGSFORSLAG TIL EKSAMEN

STE6221 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

Detaljer

Installasjonsveiledning, CGM Vision Installasjonskrav. 1 Innhold. 1 Formål. 2.1 Windows. 2.2 Oracle. 2.3 CGM Vision. Oppgradering v4.7 til v4.

Installasjonsveiledning, CGM Vision Installasjonskrav. 1 Innhold. 1 Formål. 2.1 Windows. 2.2 Oracle. 2.3 CGM Vision. Oppgradering v4.7 til v4. NB: Nye krav til installasjonen, se kap. 3.1.1 og 3.2.1 1 Innhold 1 Formål... 1 2 Installasjonskrav... 1 2.1 Windows... 1 2.2 Oracle... 1 2.3 CGM Vision... 1 3 Oppgradering... 2 3.1 Databaseserver... 2

Detaljer

INF3140 Modeller for parallellitet INF3140/4140: Låser og Barrierer

INF3140 Modeller for parallellitet INF3140/4140: Låser og Barrierer INF3140/4140: Låser og Barrierer Uke 2, side 1. Praktisk Obligatorisk oppgave 1 Er nå lagt ut. Merk: Frist fredag 21. sept. Guppelærer Mohammad Ali Norozi mohammno@ifi.uio.no Merk: Kun gruppe 1 åpen! Forelesningssted

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØ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:

Detaljer

INF1010 Tråder J. Marit Nybakken Motivasjon. Å lage en tråd

INF1010 Tråder J. Marit Nybakken Motivasjon. Å lage en tråd J INF1010 Tråder J Marit Nybakken marnybak@ifi.uio.no Motivasjon Til nå har vi kun skrevet programmer der programmet bare var på ett sted i koden til enhver tid (bortsett fra når vi har drevet med GUI,

Detaljer

INF1400 Kap4rest Kombinatorisk Logikk

INF1400 Kap4rest Kombinatorisk Logikk INF4 Kap4rest Kombinatorisk Logikk Hovedpunkter Komparator Dekoder/enkoder MUX/DEMUX Kombinert adder/subtraktor ALU FIFO Stack En minimal RISC - CPU Komparator Komparator sammenligner to tall A og B 3

Detaljer

Ikke pensum! Plan for dagen. Resource Management Kontekst: Bloom (1979) Kap. 11: Resource control (utvalg)

Ikke 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

Detaljer