Lars Vidar Magnusson. October 11, Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
|
|
- Oliver Peder Erlandsen
- 7 år siden
- Visninger:
Transkript
1 Tråder Lars Vidar Magnusson October 11, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
2 Oversikt Tråder 1 Tråder Introduksjon Multithreading Prosesser og tråder Hastighetsøkning med multithreading 2 Multithreaded prosessmodell 3 Illustrere kjøring av tråder 4 Forskjellige typer tråder 5 Prosesser og tråder i Solaris og Linux Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
3 Tråder Introduksjon Introduksjon Et operativsystem med trådstøtte må skille mellom to ulike egenskaper med kjørende prosesser. Tilgang til resurser og virtuelt minne. En eksekveringssekvens som kan flettes sammen med andre prosesser. I et multithreaded operativsystem blir denne inndelingen representer av henholdsvis prosesser og tråder (eller light-weight processes) Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
4 Tråder Multithreading Multithreading Et multithreaded operativsystem støtter at flere tråder kjører samtidig i samme prosess. MS-DOS kan kjøre en tråd. Tradisjonelle UNIX implementasjoner støtter flere prosesser, men bare en tråd per prosess. Linux, Windows, Solaris, Mach og OS/2 er eksempler på operativsystem som støtter flere prosesser og flere tråder per prosess. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
5 Prosesser og tråder Tråder Prosesser og tråder Et diagram som illustrerer forskjellen mellom en tråd og flere tråder per prosess. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
6 Tråder Hastighetsøkning med multithreading Hastighetsøkning med multithreading Aamdahls lov beskriver forventet hastighetsøkning i forhold til å spre applikasjoner over flere tråder eller prosesser. Speedup = time to execute on a single processor time to execute on N processors Der N er antall prosessorer og τ er parallelliserbar kode. = 1 (1 τ) + τ N Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
7 Oversikt Multithreaded prosessmodell 1 Tråder 2 Multithreaded prosessmodell Prosesser Tråder Trådstatus Trådoperasjoner Singlethreaded og multithreaded prosessdesign Fordeler med tråder 3 Illustrere kjøring av tråder 4 Forskjellige typer tråder 5 Prosesser og tråder i Solaris og Linux Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
8 Multithreaded prosessmodell Prosesser Prosesser I et multithreaded operativsystem reduseres omfanget til hva som kalles en prosess. Hver prosess har et virtuelt minneområde som inneholder prosessens process image og deles av alle tråder. Prosessen styrer tilgang til prosessoren, andre prosesser, filer og I/O-resurser. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
9 Multithreaded prosessmodell Tråder Tråder En tråd inneholder data for å kjøre en sekvens med instruksjoner i tillegg til noen nye elementer. En statuskode for kjøringen e.g running and ready. Lagring av registere og annen relevant informasjon (thread context for å kunne bytte mellom tråder. En eller flere stacks for å ivareta program variable og parametere Mulighet for lokale variable. Tilgang til felles virtuelt minne. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
10 Multithreaded prosessmodell Trådstatus Trådstatus Som med prosesser kan tråder settes i forskjellig status, men det er ikke behov for en så kompleks modell e.g. ikke behov for suspended. Running Ready Blocked Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
11 Multithreaded prosessmodell Trådoperasjoner Trådoperasjoner Det er vanlig å kunne kontrollere status til en tråd med et sett med operasjoner. Spawn kan benyttes til å lage en ny tråd (i tillegg til den som blir laget når prosessen starter). Nye tråder får egen instruksjonspeker, eget registerlager og egne argumenter, og de blir så satt til ready-state og lagt til ready-køen. status. Block kan sette en tråd i blocked-status, som medfører at registerne, programteller og stack-pekere må lagres. Unblock kan hente frem en låst tråd og legge den til ready-køen. Finish kan brukes til å avslutte tråden og slette tilhørende data. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
12 Multithreaded prosessmodell Singlethreaded og multithreaded prosessdesign Singlethreaded og multithreaded prosessdesign Et diagram som illustrerer forskjellen mellom singlethreaded og multithreaded prosessdesign. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
13 Multithreaded prosessmodell Fordeler med tråder Fordeler med tråder Det er en rekke fordeler med å benytte seg av tråder. Det tar mindre tid å starte og stoppe en tråd enn en prosess. Det tar mindre tid å bytte mellom ulike tråder enn å bytte prosess. Tråder kan kommunisere uten å involvere kernelen, siden de deler det samme virtuelle minnet. Kan fordele applikasjoner over tråder (forgrunn, bakgrunn og moduler). Asynkron prosessering og ytelsesforbedring. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
14 Oversikt Illustrere kjøring av tråder 1 Tråder 2 Multithreaded prosessmodell 3 Illustrere kjøring av tråder RPC med en enkel tråd RPC med to tråder Multithreading med to prosesser og tre tråder 4 Forskjellige typer tråder 5 Prosesser og tråder i Solaris og Linux Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
15 Illustrere kjøring av tråder RPC med en enkel tråd RPC med en enkel tråd En illustrasjon av kjøringen av en tråd som utfører et Remote Procedure Call (RPC). Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
16 RPC med to tråder Illustrere kjøring av tråder RPC med to tråder En illustrasjon av kjøringen av to tråder som utfører hver sitt Remote Procedure Call (RPC). Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
17 Illustrere kjøring av tråder Multithreading med to prosesser og tre tråder Multithreading med to prosesser og tre tråder En illustrasjon av kjøringen av to prosesser med tilsammen tre tråde som kjører samtidig. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
18 Oversikt Forskjellige typer tråder 1 Tråder 2 Multithreaded prosessmodell 3 Illustrere kjøring av tråder 4 Forskjellige typer tråder User-level tråder Kernel-level tråder Kombinerte fremgangsmåter 5 Prosesser og tråder i Solaris og Linux Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
19 Forskjellige typer tråder User-level tråder User-level tråder User-level tråder er blir kontrollert i applikasjonen. Kernelen er ikke engang klar over eksistensen av tråder. Man trenger ikke gå i kernelmodus for å bytte mellom tråder. Man kan sette opp scheduling slik som man selv ønsker. Siden tråden bare eksisterer i applikasjonen trenger man ikke legge til endringer i kjernen. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
20 Forskjellige typer tråder Kernel-level tråder Kernel-level tråder Motsetningen til user-level tråder er kernel-level tråder kontrollert i sin helhet av kernelen. Tillater at tråder kan gjøre kall som låser uten å forstyrre andre tråder. Gjør det mulig å kjøre tråder parallelt hvis maskinvaren tillater det i.e. har flere kjerner. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
21 Forskjellige typer tråder Kombinerte fremgangsmåter Kombinerte fremgangsmåter Siden både user-level og kernel-level tråder har sine ulemper har man også prøvd seg på kombinerte fremgangsmåter. Tråder lages i applikasjonen men blir mappet mot et sett med underliggende kerneltråder. Mesteparten av jobben blir gjerne gjort i applikasjonen Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
22 Oversikt Prosesser og tråder i Solaris og Linux 1 Tråder 2 Multithreaded prosessmodell 3 Illustrere kjøring av tråder 4 Forskjellige typer tråder 5 Prosesser og tråder i Solaris og Linux Solaris arkitektur Solaris prosesser og tråder Tråder og prosesser i Linux Linux task Task status Task status diagram Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
23 Prosesser og tråder i Solaris og Linux Solaris arkitektur Solaris arkitektur Solaris sin arkitektur for prosesser og tråder er et eksempel på en kombinert fremgangsmåte. De har prosesser på omtrent samme måte som i tradisjonell UNIX. De støtter user-level tråder som er usynlige for kernelen. Leightweight prosesser fungerer en mapping mellom user-level trådene og de underliggende kernel-level trådene. De bruker kernel-level tråder som blir fordelt over tilgjengelige prosessorer. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
24 Prosesser og tråder i Solaris og Linux Solaris prosesser og tråder Solaris prosesser og tråder En illustrasjon av relasjonene mellom prosesser, user-level tråder, kernel-level tråder og leightweight prosesser i Solaris. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
25 Prosesser og tråder i Solaris og Linux Tråder og prosesser i Linux Tråder og prosesser i Linux Linux tar en unik fremgangsmåte for å representere prosesser og tråder. De skiller ikke mellom de to. De første utgavene av Linux, som med tradisjonell UNIX, støttet ikke multithreading. Portable Operating Systems Interface for UNIX (POSIX) inneholder et API for å lage å håndtere tråder (Pthreads). Tråder er bare en spesiell form for prosess. Tråder kan grupperes sammen og mappes til samme prosess slik at det ikke trengs å utføres tradisjonelle kontekstbytter. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
26 Prosesser og tråder i Solaris og Linux Linux task Linux task Både prosesser og tråder blir i Linux representert som en task som inneholder en rekke elementer. Status til prosessen Identifikatorer både for prosessen og gruppen Linker til forelderprosess og søskenprosesser. Pekere til minneområder... (1.7Kb i 32 bit) Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
27 Prosesser og tråder i Solaris og Linux Task status Task status I likhet med prosesser har en task i Linux ulike status. Running tilsvarer to tilstander; ready og executing. Interruptable er en blokkert status som tilsier at prosessen venter på en event, tilgang til en resurs eller et signal fra en annen prosess. Uninterruptable ligner på interruptable, men den kan ikke avbrytes med et signal. Stopped er når en prosess har blitt stoppet og bare kan settes i gang igjen fra annen prosess. Zombie er en state som har blitt stoppet, men av en eller annen grunn ikke kan fjernes. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
28 Prosesser og tråder i Solaris og Linux Task status diagram Task status diagram Et diagram over mulige prosessstatus i Linux. Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28
Oversikt. 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
DetaljerTrå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
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
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
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
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
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
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.
DetaljerRepetisjon - Modul 1
Repetisjon - Modul 1 Lars Vidar Magnusson October 7, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 07.10.2011 October 7, 2011 1 / 18 Forelesning 1 - Maskinvare De fire hovedkomponentene i
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
Detaljeroppgavesett 4 INF1060 H16 Hans Petter Taugbøl Kragset Øystein Dale Christian Resell 27. september 2016 Institutt for informatikk, UiO
oppgavesett 4 INF1060 H16 Hans Petter Taugbøl Kragset Øystein Dale Christian Resell 27. september 2016 Institutt for informatikk, UiO oppgave 1 Hvorfor har vi operativsystemer? 1 oppgave 1 Hvorfor har
DetaljerSingletasking 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
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
DetaljerMinnehåndtering. Lars Vidar Magnusson. October 4, 2011. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 1 / 20
Minnehåndtering Lars Vidar Magnusson October 4, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 1 / 20 Oversikt Introduksjon 1 Introduksjon Beskrivelse Terminologi
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
DetaljerP1 P2 P3 P1 P2 P3 P1 P2. OS gjør Contex Switch fra P1 til P2
i, intensive i og Når OS switcher fra prosess P1 til prosess P2 utføres en såkalt Contex (kontekst svitsj). 10 30 50 70 P1 P2 P3 P1 P2 P3 P1 P2 OS gjør Contex fra P1 til P2 tid/ms bruk Figure: Prosessene
DetaljerOversikt. Beskrivelse Bash. 1 UNIX shell. 2 Kommandolinje som brukergrensesnitt. 3 Input og output. 4 Bash builtins. 5 Linux utilities.
Oversikt UNIX shell 1 UNIX shell Beskrivelse Bash 2 Kommandolinje som brukergrensesnitt 3 Input og output 4 Bash builtins 5 Linux utilities Lars Vidar Magnusson () Forelesning i Operativsystemer 30.08.2011
DetaljerMer 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
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
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
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
DetaljerThreads 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
DetaljerLæringsmål og pensum. Oversikt. Systemprogramvare Operativsystemer Drivere og hjelpeprogrammer. To hovedtyper programvare
1 2 Læringsmål og pensum TDT4105 Informasjonsteknologi grunnkurs: Uke 36 programvare Førsteamanuensis Alf Inge Wang Læringsmål Forstå hva systemprogramvare og applikasjonsprogramvare er Forstå hvordan
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:
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
DetaljerHØGSKOLEN I BERGEN Avdeling for ingeniørutdanning Data
HØGSKOLEN I BERGEN Avdeling for ingeniørutdanning Data Øving 9 (Obligatorisk) Kommentarer til øvingen: Utlevert: 29. oktober 2010. Øvingen gjøres på lab A516 eller A521: Halve klassen møter torsdag 4.
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
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)
Detaljer4/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
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,
DetaljerInnhold. 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
DetaljerKommersiell Unix Linux og frie Unix kloner
og og Desktop- Desktop- Kommersiell Linux og frie kloner og Desktop- Desktop- MS-D 1981, 16-bit Desktop- Windows 1.0 i 1985, 3.0 i 1990, GUI på toppen av D Windows 95 Noe 32-bit kode, mye 16-bit intel
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:
DetaljerApplikasjonsutvikling med databaser
Applikasjonsutvikling med databaser Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 10.10.2011 October 12, 2011 1 / 24 Applikasjonsutvikling med databaser Databaser tilbyr
Detaljer1. Introduksjon til operativsystemer
1. Introduksjon til operativsystemer mets plassering: Lagdeling: applikasjon, system, maskinvare Basisfunksjoner: Abstraksjon, deling, isolering Prosesser og ressurser Kjøring: sekvensiell, multitasking
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
Detaljer6105 Windows Server og datanett
6105 Windows Server og datanett Leksjon 1b Virtualisering Tradisjonell arkitektur Virtualisering og virtuelle maskiner Hypervisor» Hosted type 2» Native type 1 Eksempler på produkter for virtualisering
DetaljerIT1101 Informatikk basisfag, dobbeltime 18/9. Kommunikasjon med perifere enheter. Kontrollere. Kontrollere (2) I/O-instruksjoner
IT1101 Informatikk basisfag, dobbeltime 18/9 I dag: Kommunikasjon med perifere enheter (på maskinspråknivå) Kommunikasjonsrater Kommunikasjonsfeil Feildetektering Feilkorrigering (Hammingdistanse) Operativsystemer
DetaljerSIE 4005, 8/10 (3. Forelesn.)
SIE 4005, 8/10 (3. Forelesn.) Andre forelesning: litt repetisjon 7.7 Arithmetic / Logic unit 7.8 The Shifter 7.9 Datapath representation 7.10 The control word 7.11 Pipelined datapath Tredje forelesning:
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
DetaljerEducatia AS. Programmeringsgrensesnitt (API) for brukersynkronisering. Versjon: 1.1 (19.10.2015) Educatia AS firmapost@educatia.
Educatia AS Programmeringsgrensesnitt (API) for brukersynkronisering Versjon: 1.1 (19.10.2015) Educatia AS firmapost@educatia.no Side 1 av 9 Introduksjon Dette dokumentet beskriver hvordan Educatias programmeringsgrensesnitt
Detaljer1,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"
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:
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
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
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
DetaljerLæ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
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
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:
DetaljerDefinisjon av prosess
Prosesser og tråder Definisjon av prosess Enkel definisjon En prosess er et program som kjører Mer presis definisjon En prosess er en samling av ressurser som er nødvendige for å utføre en oppgave beskrevet
DetaljerDebugging. 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...
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
DetaljerProsesstabeller (PCB - Prosess Control Block) Se på PD: kommandoene ps og top Bakgrunnsprosesser Opprettelse av prosesser:
Prosesser i Prosesstabeller (PCB - Prosess Control Block) Se på PD: kommandoene ps og top Bakgrunns Opprettelse av : fork og exec pid og ppid Foreldre, barn og barnebarn Utførelse av kommando i Eksempler
DetaljerTDT4110 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
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
DetaljerITPE/DATS 2400: Datamaskinarkitektur og Nettverk
ITPE/DATS 2400: Datamaskinarkitektur og Nettverk Forelesning 9: Instruksjonsettarkitektur 3 Knut H. Nygaard / T. M. Jonassen Institute of Computer Science Faculty of Technology, Art and Design Oslo and
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):
DetaljerTDT ITGK - Hardware. Kapittel 9: Følge Instruksjoner - Prinsipper for Datamaskinens Virkemåte. Terje Rydland - IDI/NTNU
1 TDT4110 - ITGK - Hardware Kapittel 9: Følge Instruksjoner - Prinsipper for Datamaskinens Virkemåte Terje Rydland - IDI/NTNU 2 Læringsmål Vite om å forstå hvordan prosessoren er oppbygd (5 deler, PC)
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1060 Introduksjon til operativsystemer og datakommunikasjon Eksamensdag: 8. desember 2004 Tid for eksamen: 14.30 17.30 Oppgavesettet
DetaljerPlan. Oppgaver og repetisjon Eksempler med fikspunkt og induksjon: 1. sortering 2. divisjon 3. Heis? IN 315: Foilsett 9: Unity: Arkitekturer
Plan Tema: Ulike arkitekturer og avbildninger 1. asynkron arkitektur med felles variable 2. synkron arkitektur med felles variable 3. distribuert arkitektur med kanal-kommunikasjon 4. program-skjemaer
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
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
DetaljerSENTRAL FELLES KARTDATABASE. Geir Heksem
SENTRAL FELLES KARTDATABASE Geir Heksem AGENDA GISLINE mot QMS Hva er endringene for brukerne Matrikkel Andre FKB-data Andre data Plansynkronisering Litt om utrulling/installasjon Litt om kostnader serverkrav/tekniske
DetaljerTMA4100 Matematikk 1, høst 2013
TMA4100 Matematikk 1, høst 2013 Teknostart forelesning 4 www.ntnu.no TMA4100 Matematikk 1, høst 2013, Teknostart forelesning 4 Hva er Maple? www.ntnu.no TMA4100 Matematikk 1, høst 2013, Teknostart forelesning
DetaljerEn ny generasjon standarder for bygging av geografisk infrastruktur Modellering av tjenester
En ny generasjon standarder for bygging av geografisk infrastruktur Modellering av tjenester Kurs i standarder, Oslo, 13.juni Modellering av tjenester Innhold Kort om tjenester og interoperabilitet NS-EN
DetaljerTMA4100 Matematikk 1, høst 2013
TMA4100 Matematikk 1, høst 2013 Teknostart forelesning 4 www.ntnu.no TMA4100 Matematikk 1, høst 2013, Teknostart forelesning 4 Hva er Maple? Maple er et kraftig matematikkverktøy. Symbolsk matematikk er
DetaljerOperativsystemets ansvar er å koordinere. programmers bruk av I/O
Operativsystemets ansvar er å koordinere programmers bruk av systemet blir delt av flere programmer som også deler prosessoren bruker ofte avbrudd for å melde tilbake om status til operasjoner avbrudd
DetaljerIntroduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus
Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus Kategorisering av programmeringsspråk? Deklarativ vs. imperativ Lav nivå vs. høy nivå Kompilert vs. tolket
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
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
DetaljerHypervisor. Hardware. Virtualisering. App 1. App 2. App 2 App 1 App 2 App 1 CPU RAM I/O. Virtualisering av server/desktop hardware
Para av server/desktop hardware En simulerer hardware ved å gi samme grensesnitt som virkelig hardware gir Operativsystemene som kjører på en virtuell maskin, tror de kjører på ekte hardware App 1 OS App
DetaljerEKSAMEN. 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
DetaljerKom i gang med Python
Kom i gang med Python Instruksjon for lærere Pål Hellesnes SYSTEMUTVIKLER paal@firstpoint.no www.bedreinnsikt.no Dette dokumentet er en del av skolematerialet for undervisning i programmering. «Alle barn
DetaljerOversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays
Oversikt C programmering 1 C programmering Introduksjon Kildekode Kompilering Hello world Hello world med argumenter 2 Funksjoner 3 Datatyper 4 Pekere og arrays 5 Kontrollstrukturer Lars Vidar Magnusson
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
DetaljerAndroid-Programmering Async. Vår 2017
Android-Programmering Async Vår 2017 Oversikt Ytelse vs responsivitet Strategier for og opprettholde responsiviteten Tråder Asynchronos Task Ytelse vs responsivitet Forskjellen på ytelse og responsivitet
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1060 Introduksjon til operativsystemer og datakommunikasjon Eksamensdag: 9. desember 2005 Tid for eksamen: 14.30 17.30 Oppgavesettet
DetaljerIntroduksjon...5. Systemkrav...7. For Windows...9
Innholdfortegnelse Introduksjon...................................5 Systemkrav...................................7 For Windows...................................9 Installere programvare for bildeutskrift
DetaljerEKSAMENSOPPGAVE, INF-2200
EKSAMENSOPPGAVE, INF-2200 Eksamen i : INF-2200 Datamaskinarkitektur og organisering Eksamensdato : Mandag 20. februar 2012 Tid : 09:00 13:00 Sted Tillatte hjelpemidler : Aud. max. : Ingen Oppgavesettet
DetaljerQt Jambi E t R ammeverks His torie
Qt Jambi E t R ammeverks His torie Hvem er jeg? Eskil Abrahamsen Blomfeldt Hovedfag i informatikk fra Blindern Spesialisering i programmeringsspråk og kompilatorteori Utvikler i Trolltech siden 2005 Vedlikehold
DetaljerOperativsystemer og nettverk
Løsningsforslag til eksamen i Operativsystemer og nettverk 04.06.2015 Oppgave 1: Generelt om Linux a) Det grunnleggende brukergrensesnittet i Linux er et tastaturbasert CUI (Commandline User Interface),
DetaljerHvorfor operativsystemer? Introduksjon til operativsystemer. Samtidighet. Praktiske hensyn. Kjell Åge Bringsrud INF103
Hvorfor operativsystemer? Introduksjon til operativsystemer Kjell Åge Bringsrud INF103 Hardwaren i en enkelt maskin er i prinsippet i stand til å utføre ett program Når maskinen slås på begynner den å
DetaljerInternminnet. Håkon Tolsby Håkon Tolsby
Internminnet Håkon Tolsby 26.09.2017 Håkon Tolsby 1 Innhold: Internminnet RAM DRAM - SDRAM - DDR (2, 3, 4, 5) ROM Cache-minne 26.09.2017 Håkon Tolsby 2 Internminnet Minnebrikkene som finnes på hovedkortet.
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:
DetaljerTilstandsmaskiner med UML og Java
Tilstandsmaskiner med UML og Java DAT2160 DAT2160 Høst Høst 2002 2002 Tilstandsmaskiner Tilstandsmaskiner med med UML UML og og Java Java Hva er en (endelig) tilstandsmaskin? En tilstandsmaskin kan sees
DetaljerSikkerhet: Virus Sikkerhet i operativsystemet Maskinstøtte for sikkerhet Trojanske hester Ormer. IN 147 Program og maskinvare.
Sikkerhet: Virus Sikkerhet i operativsystemet Maskinstøtte for sikkerhet Trojanske hester Ormer Ark 1 av 14 Sikkerhet og virus Virus Virus er programmer som «infiserer» andre programmer slik at de endrer
DetaljerDagens program. Sanntidsprogrammering med Linux. Embedded Linux: Begrensninger. Hvorfor Linux?
Dagens program Sanntidsprogrammering med Linux TTK4155 Sanntidsprogrammering Gjesteforelesning 28. september 2004 Håvard Skinnemoen Grunner til å velge Linux Linux i dedikerte systemer (sanntid eller ikke)
DetaljerKapittel 9: Følge Instruksjoner Prinsipper for Datamaskinens Virkemåte. Oversatt av Rune Sætre,
Kapittel 9: Følge Instruksjoner Prinsipper for Datamaskinens Virkemåte Oversatt av Rune Sætre, 2013-2016 Først: Info om kollokviegrupper Tiltenkt de som henger etter i faget og som mangler forståelse for
DetaljerKapittel 9: Følge Instruksjoner Prinsipper for Datamaskinens Virkemåte
Kapittel 9: Følge Instruksjoner Prinsipper for Datamaskinens Virkemåte «Fluency with Information Technology» Sixth Edition by Lawrence Snyder Oversatt av Rune Sætre, 2013 bearbeidet av Terje Rydland, 2015
DetaljerProsedyrer. Lars Vidar Magnusson. October 26, Lars Vidar Magnusson () Forelesning i DAS October 26, / 19
Prosedyrer Lars Vidar Magnusson October 26, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 26, 2011 1 / 19 Repetisjon om triggere og prosedyrer Triggere og prosedyrer ligner på hverandre
DetaljerDagens temaer. Fra kapittel 4 i Computer Organisation and Architecture. Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen
Dagens temaer Fra kapittel 4 i Computer Organisation and Architecture Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen Register Transfer Language (RTL) Instruksjonseksekvering Pipelining
DetaljerTilkobling og Triggere
Tilkobling og Triggere Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 12, 2011 1 / 25 Tilkobling med PHP PHP bruker databasespesifike moduler til å koble
DetaljerStikkord: Java EE, EJB, JSF, JPA, SWT, klient/tjener, Glassfish server, Application Client.
Stikkord: Java EE, EJB, JSF, JPA, SWT, klient/tjener, Glassfish server, Application Client. Studenter: Magnus Skomsøy Bae, Marius Eggen, Magnus Krane Klasse: 3ING, Systemutvikling Produserer redaksjonelle
DetaljerCORBA Component Model (CCM)
CORBA Component Model (CCM) INF5040 Høst 2005 Erlend Birkedal Jan Erik Johnsen Tore Ottersen Løkkeberg Denne presentasjonen CORBA Svakheter ved CORBA Object Model Komponenter CORBA Component Model Hva
DetaljerIntroduksjon til operativsystemer
Introduksjon til operativsystemer Kjell Åge Bringsrud INF103 Introduksjon Operativsystemer 1 Hvorfor operativsystemer? Hardwaren i en enkelt maskin er i prinsippet i stand til å utføre ett program Når
DetaljerInstallere JBuilder Foundation i Mandrake Linux 10.0
Installere JBuilder Foundation i Mandrake Linux 10.0 Installasjon av JBuilder Foundation på Linux (dekker her spesifikt fremgangen ved bruk av Mandrake Linux 10.0, men distribusjon vil gjøre liten eller
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
DetaljerKRAVSPESIFIKASJON FOR SOSIORAMA
KRAVSPESIFIKASJON FOR SOSIORAMA Innhold 1. Forord... 2 2. Definisjoner... 3 3. Innledning... 4 3.1 Bakgrunn og formål... 4 3.2 Målsetting og avgrensninger... 4 4. Detaljert beskrivelse... 8 4.1 Funksjonelle
DetaljerFør du starter, del 2
1 Før du starter I Windows må du sørge for at tekst og andre elementer er satt til å vises normalt 100%. Visma Global støtter ikke zooming, da vil noen elementer forsvinne fra programmet og ikke fungere.
DetaljerLøsningsforslag for TDT4186 Operativsystemer
Institutt for Datateknikk of Informasjonsvitenskap Løsningsforslag for TDT4186 Operativsystemer Eksamensdato: 7. juni 2016 Eksamenstid (fra-til): 09:00-13:00 Hjelpemiddelkode/Tillatte hjelpemidler: D:
Detaljer