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
|
|
- Klaus Bjerke
- 8 år siden
- Visninger:
Transkript
1 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, minnehåndtering, IO-håndtering og prosesshåndtering. Man kan si at OSet har to roller; extendet machine og resource manager. Som en extendet machine (virtuel machine) sørger OSet for å dekke over den stygge koden til hardwaren. All hardware har forskjellig kode, noe som gjør det vanskelig å programmere imot. OSet ligger over hardwaren og kan tilby programmerere tilgang til hardwaren gjennom systemkall. Som en extendet machine har også OSet ansvar for å skjule unøvendig informasjon for brukeren, som interrupts, algoritmer, osv. Som en resource manager sørger OSet for å samle og tildele ressursene i en datamaskin (eks prosessortid, minne, IO, osv) til prosessene. Dette skal gjøres på en rettferdig måte. b) OSx er et veldig tilpasset OS som kun takler noen få IO-enheter. Andre vil rett og slett ikke fungere. Dette gjør at Apple kan velge hvilke enheter som de vil at skal kunne fungere på deres maskiner, noe som gir et dårligere utvalg for brukeren, men muligens en bedre opplevelse i og med at de enhetene som får brukes på Mac er kvalitetssikret og mindre fare for feil i kode. I motsetning til dette kan Windows/Lunix brukes med de aller fleste enheter, de er veldig tilpasningsdyktige. Men til hver enhet følger det med en driver og hvis denne driveren ikke er helt bra laget vil det kunne føre til at OSet krasjer (driveren ligger i OSet, evt at driveren krasjer hvis den ligger i brukermodus).
2 c) Hvor mange bit et OS er på går på hvor mange minneadresser som er mulig å ha. I et 32-bit system vil det være mulig å ha 2^32 adresser, noe som tilsvarer ca 4 GB med RAM, mens i et 64-bit system kan man potensielt ha 2^64 adresser, noe som er veldig mye og som antageligvis vil holde en stund. Det spiller også inn på andre ting, som for eks farger (dybde, skarphet, osv) og andre ting som begrenser seg av minneområdet som et 32-bits system har å tilby. d) Alle tråder innad i en prosess deler prosessens minneområde. Derfor, hvis en tråd i en viss prosess har en fil åpen, vil andre tråder i denne prosesser kunne ha tilgang til samme fil, altså en delt ressurs. Her er det potensiale til en race condition (i og med at vi har med delte ressurser å gjøre), men et program er veldig dårlig dersom det klarer å ødelegge for seg selv på den måten. Hadde filen derimot vært delt mellom prosesser kunne dette vært tilfellet. e) En prosess er et program under eksekvering og bygger på prinsippene om ressursgruppering (minneområde, bruk av ressurser, filer, osv) og eksekvering (den delen der prosessen faktisk blir kjørt på CPUen). Moderne datamaskiner har flere prosesser i sitt system for å øke effektiviteten. Alle prosesser har minst en tråd, som er den delen av prosessen som kjøres på CPUen. For å kunne kalles en prosess og bli kjørt på CPUen må noen ting være på plass, det som definerer prosessen, nemlig PCB (process control block). Denne tabellen inneholder informasjon om prosessen som når den ble opprettet, prioritet, child- og parent-prosesser, hvor mye tid den har fått på CPUen, alarms og signals, samt pekere til minneområdet og stack, osv. Appropos! Alle prosesser får tildelt et eget minneområde som de kan jobbe mot. I et system som bruker paging går dette minneområdet fra 0 til MAKS. Prosesser vet ingenting om hverandres eksistens, alle prosesser tror de er alene i systemet, og det er derfor viktig at minneområdene beskyttes slik at ikke en prosess, ved et uhell, går inn i en annens prosess minneområde. Prosesser har også en stack, en program counter, m.m. som definerer prosessen. Prosesser må opprettes. Dette kan skje ved fire forskjellige situasjoner: 1. System initiering - man starter datamaskinen 2. Interaktivitet - eks at en bruker trykker på et ikon for å starte et program 3. Batch job 4. Systemkall - en annen prosess utfører et systemkall som fører til opprettelse av en ny prosess. På samme måte avsluttes prosesser av forskjellige grunner: 1. Normal exit (frivillig) - prosessen er ferdig med det den skal 2. Error exit (frivillig) - en prosess velger å avslutte som følge av en feilmelding (kanskje for å prøve å fikse problemet) 3. Fatal error (ufrivillig) - en error som gjør at prosessen plutselig avsluttes. 4. kill (ufrivillig) - Når en bruker aktivt går inn og dreper en prosess I mellom disse to situasjonene lever prosessene, og som en del av PCB antyder har de forskjellig status. Disse er Ready, running og blocked. Når en prosess er klar til å kjøres vil den ligge i readykøen og vente på klarsignal fra OSet (gjennom dispatcheren/scheduleren) om å få kjøre på CPUen. Når den får det og er på CPUen har den statusen running. Herfra kan det skje to ting. Dersom planleggeren bestemmer seg for at den har fått nok tid på CPUen vil prosessen flyttes tilbake til ready-køen. Dersom prosessen i mellomtiden har gjort et systemkall, eks lese fra fil, printe noe, osv, vil den bli plassert i blokkert fram til IO sender en interrupt og sier at den er ferdig. Da flyttes prosessen til ready-køen igjen. Når en prosess blir opprettet vil den med en gang kjøres på CPUen, og den kan avsluttes fra hvilken som helst av de forskjellige statusene, avhengig av hvordan avsluttingen foregår. Som sagt; en tråd er den delen av en prosess som kjøres på CPUen. En prosess kan ha flere tråder og disse trådene (innad i prosessen) deler det samme minneområde, åpne filer og andre ressurser som prosessen har. Alle tråder har derimot hver sin stack. Tråder kan kjøres i forskjellige moduser / forskjellig typer tråder. Brukermodus-tråder er tråder som kun arbeider mot prosessens minneområde
3 og data. Fordelen med disse er at de er lette å opprette og fjerne og de trenger ikke context switch på CPUen når de byttes ut. De kan også brukes på systemer som egentlig ikke støtter tråder. Ulempen med disse er at dersom en av de gjør et systemkall mot kjernen vil hele prosessen bli blokkert, noe som er litt i mot hensikten med tråder. I denne situasjonen er det prosessen som vet om trådene og som har en tråd-tabell. For kjernemodus-tråder ligger den nevnte tabellen i kjernen sammen med prosess-tabellen. Disse trådene koster mer å opprette og fjerne og det er derfor vanlig å resirkulere dem når de er ferdige (kan bli problemer rundt dette med tanke på type tråder og bla bla bla). I motsetning til forrige modus blokkeres ikke prosessen dersom det gjøres et systemkall, istedenfor får prosessen fortsette å bruke CPUtiden sin og sender en annen tråd til å kjøres på CPUen. Det tar litt lenger tid å bytte kjernemodus-tråder enn brukermodus-tråder. Hybrid-versjonen av disse er tråder som kjøres i brukermodus, men kjernen er klar over at de eksisterer og har trådtabellen hos seg. f) En kritisk region er ofte en delt ressurs, som for eks delt minne. Problemet med disse oppstår når tilfeldigheter fører til at to eller flere prosesser overskriver hverandres arbeid. Dette kan skje når en prosess kjøres på CPUen, skriver noe til et delt minne og like etterpå blir byttet ut av despatcheren til en annen prosess som overskriver det den forrige gjorde. Når den første prosessen får kjøre igjen vil verdien være forandret, men det vil ikke prosessen merke for den tror den er alene i systemet og tror derfor at verdien er riktig. Utfallet /svaret vil avhenge av rekkefølgen prosessene blir kjørt. Altså har vi fått en race condition. Det er viktig for en programmerer å være oppmerksom når man bruker delte ressurser / kritiske regioner fordi det er programmereren selv som må sørge for å forebygge dem. Dette kan gjøres ved å bruke teknikker som TSL, Mutex, semaphorer, monitor, e.l. Hvis ikke programmereren bruker dette eller ikke bruker det riktig kan det føre til nevnte race condition eller deadlock. g) CPUen er veldig, veldig rask. I hvertfall i forhold til IO-enheter. Når et program kjøres på CPUen og prosessen gjør et systemkall etter IO vil CPUen måtte vente lenge på IO-enheten før den kan kjøre igjen. Ved å ha flere prosesser i minnet kan andre prosesser få kjøre i mellomtiden mens prosessen venter. Dette øker effektiviteten. h) Som allerede nevnt (siden jeg ikke så denne oppgaven før nå...) er race condition en situasjon som oppstår når flere prosesser bruker den samme, delte resurssen/kritiske område og utfallet er avhengig av rekkefølgen prosessene blir kjørt i. Henviser med dette til eksempelet i oppg f. Dette kan skje fordi de som har programmert prosessene ikke har vært oppmerksomme nok til å tenke over at de bruker delte, krittiske ressurser og gjort tiltak mot det (se oppg f), og dispatcheren tilfeldigvis kjører prosessene i en slik rekkefølge at det oppstår en slik situasjon. Denne oppgaven syns jeg var veldig lik oppg f og svaret mitt er kanskje preget av det, men bare for å vise at jeg kan forskjellen på race condition og deadlock. Race condition handler om prosesser som overskriver hverandre, disse er vanskelig å oppdage fordi de ikke gir noen feilmelding og det ikke er noe "feil" med koden. Deadlock er en situasjon der flere prosesser må vente på hverandre for å kunne fortsette, noe som fører til en låst situasjon. Utgangspunktet er veldig likt, kriteriene er veldig like og løsningene er veldig like, derfor blir svaret mitt litt rart... :-) i) I denne situasjonen har vi en deadlock (en prosess venter på en annen prosess som okkuperer en ressurs, mens den andre ressursen ikke kan fortsette fordi den venter på den første ressursen igjen, en ond sirkel...) med starvation (L får ikke kjørt fordi H har høyere prioritet, L vil "sulte ut".) For å løse denne situasjonen bør det brukes en annen teknikk enn busy waiting (noe som er dårlig utnyttelse av CPUen). Et forslag er sleep- og wake up-signaler. Da vil H legges i dvale når den finner ut av det kritiske området er opptatt slik at L får kjørt seg ferdig. Når L er ferdig og forlater det kritiske området
4 vil den vekke opp H med wake up, slik at den kan gå inn i området. Alternativt kunne det vært brukt semaphorer, men da kreves det større endringer i forhold til slik situasjonen er her. j) I et system som bruker paging blir alt minne delt opp i x antall like store pages. I det fysiske minnet ligger det et visst antall (begrenset av type system 32-bit/64-bit, hvor stort RAM), like store page frames med plass til page'ene. Denne struktureringen gjør det mulig at alle prosesser kan ha sitt eget, virtuelle minneområde som begynnner på 0 og går til Maks. Når en prosess kjøres på CPUen og gjør en instruksjon, eks lese noe fra eget minneområde, vil prosessen gi ut en intern adresse for prosessen, en virtuell adresse. For at CPUen skal finne igjen denne virtuelle adressen i det fysiske minnet er det nødvendig å oversette denne. Dette er jobben til MMUen (memory management unit). Den sjekker mot en høyhastighets-cache, TLB (translation lookaside buffer) som inneholder adressene til alle pagene som ligger i minnet, om den ønskede pagen ligger i minnet. Om den gjør det sender MMuen ut den fysiske adressen ut på bus'en og henter opp pagen. Dersom den ikke ligger i minnet vil MMUen sende beskjed til disk kontrolleren om at den skal hente frem ønsket page (prosessen blir i mellomtiden blokkert grunnet IO-forespørsel). Når IO er ferdig og pagen ligger i minnet sendes en interrupt til CPUen som flytter prosessen over i ready-køen, klar for å kjøres videre. k) DMA er en enhet som tar seg av det administrative rundt det å flytte data mellom minne og disk eller IO og minne/disk. Den er til for å kunne avlaste CPUen og la den gjøre andre ting mens DMA tar for seg flytting av data. Alternativet er at CPUen flytter data selv, noe som forårsaker mange interrupts som tar relativt lang tid å behandle for CPUen (interrupt for hver enhet (byte/blokk/) som blir overført). Ved bruk av DMA initierer CPUen DMA til jobben og DMAen utfører. Dermed er det DMAen som mottar alle interruptene, men sender ingen videre til CPUen. DMAen sender bare interrupt når jobben er gjort, bufferet er tømt, eller ved jevne mellomrom. Fordelen er altså at det sparer CPUen for mange interrupts. Ulempen er det at DMAen er veldig mye tregere enn CPUen og at det er tidbesparende at CPUen hadde gjort jobben selv, siden den antageligvis ikke har så mye annet å gjøre allikevel. DMAen er også en fysisk enhet som koster penger å produsere og implementere så det er også en downside. Litt om hvordan den virker. Minnet og IO vet ikke om at DMAen eksisterer og tror at det er CPUen som kommer med kommandoene. Det er heller ikke vesentlig for de som blir brukt av DMAen å vite hva som styrer dem. Det er også forskjell på hvordan de forskjellige DMAene overfører data. Det kan gjøres i såkalt burst mode der DMAen okkuperer bus'ene (også fra CPUen) og gjør jobben sin helt til den er ferdig. Dette er ikke helt bra siden CPU kan bli blokkert fra bus'ene over en lengre periode. Eller så kan DMAen bruke en teknikk kalt cycle stealing der deler av overføringene skjer i tidsrom der CPUen ikke bruker bus'ene fra før. CPUen kan bli litt forsinket men ikke nevneverdig. Overføringen tar også lenger tid. l) Mutex er en form for lås på et kritisk område eller delt ressurs. Det er en enkel form for semaphor, der en bit-variabel (null eller en) uttrykker om området er ledig eller opptatt og kun en prosess kan gå inn i et kritisk område av gangen. Dersom ressursen er ledig vil prosessen kunne sette mutexen til opptatt (dette må skje som en atomic operation - kan ikke bli avbrutt) og gå inn i området (da vil ingen andre kunne bruke ressursen selv om prosessen blir tatt vekk fra CPUen). Når den har gjort seg ferdig oppheves låsen og andre prosesser kan få tilgang. Andre prosesser i kø vil bli vekket (dersom det er flere vil en tilfeldig prosess bli vekket (en av ulempene med mutex i forhold til semaphorer som bruker et køsystem i steden for)). Eksempel (føler avsnittet over var nesten et eksempel i seg selv, men men): En prosess A kommer til en delt ressurs, sjekker mutex. Dersom opptatt setter den seg selv til sleep, dersom ledig setter den mutexen til opptatt og går inn i det kritiske område. Når den går ut av området vil den sjekke om andre prosesser står i kø. Hvis ja, vekke en tilfeldig prosess og la den gå inn, A fortsetter. Hvis nei, sette mutexen til ledig og forlate ressursen.
5 m) Linked list allocation using a table in memory er en måte å strukturere filene på i et filsystem der alle blokkene en fil består av kan fremstilles som en lenka liste der den første delen i denne lista henviser til den første blokken i fila. Når man henter opp en fil vil man i tabellen (som må ligge i minnet) finne den første blokken og hente og lese denne til minnet. Det første som står i en blokk er hvor neste blokk ligger. Dette kan være hvor som helst på disken, det trenger det ikke være struktur på i og med at man bruker en linka liste. Ulempen med denne teknikken er at tabellen alltid må ligge i minnet, det kan også bli relativt lenger søketid etter alle blokkene sammenlikned med andre metoder (vanlig at man derfor skriver i to og to blokker etterhverandre for å minke søketiden). Fordeler kan være at blokkene kan plasseres der det er plass (man trenger ikke omstrukturere minnet) og disken blir derfor mindre fragmentert. n) Det er to metoder. Den ene er linka liste, men siden jeg nettopp har forklart konseptet rundt denne velger jeg å ta for meg bitmap nå. Ved bitmap får alle blokkene et tall, 0 dersom blokken er ledig og 1 dersom den er i bruk. Størrelsen på blokkene har noe å si for hvor stort bitmappet blir og hvor nøyaktig det er. Blokkene på en disk er definert på forhånd, men i andre sammenhenger, der størrelsen pr enhet kan bestemmes har dette en del å si. Dersom blokkene er store tar bitmappet mindre plass fordi det er færre bits som skal settes, men det blir veldig unøyaktig i og med at det kan hende at det bare er en liten del av blokken som er brukt, mens det ser ut som at hele blokken er i bruk. På en annen side kan man ha mindre blokk-størrelser, som gir et større bitmap (som også tar lenger tid å søke igjennom ved behov for tomme blokker), men som gir et mer detaljert bilde av disken og "sløser" ikke bort like mye av den ledige plassen. I et filsystem, når filer opprettes eller det trengs mer plass, blir bitmappet søkt igjennom etter mange nok 0'er som det trengs. For å gjøre dette på en mest mulig effektiv måte og finne det område som passer aller best / utnytter minnet på best mulig måte, finnes det algoritmer for.
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
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
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:
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
DetaljerInnhold. Virtuelt minne. Paging i mer detalj. Felles rammeverk for hukommelseshierarki. 02.04.2001 Hukommelseshierarki-2 1
Innhold Virtuelt minne Paging i mer detalj Felles rammeverk for hukommelseshierarki 02.04.200 Hukommelseshierarki-2 Virtuelt minne Lagringskapasiteten i RAM må deles mellom flere ulike prosesser: ûoperativsystemet
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å
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
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
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
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
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
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
DetaljerDagens 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
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
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
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
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
DetaljerSkisse 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
DetaljerKjenn din PC (Windows 7)
Kjenn din PC (Windows 7) Datamskinen jeg bruker er en HP pavilion dv3-2080eo. Espen Rosenberg Hansen 1. Prosessor: Intel P7450. Dette er en prosessor med to kjerner og har en klokkehastighet på 2,13 GHz
DetaljerOppsummering av digitalteknikkdelen
Oppsummering av digitalteknikkdelen! Følgende hovedtemaer er gjennomgått! Boolsk Algebra! von Neuman-arkitektur! Oppbygging av CPU! Pipelining! Cache! Virtuelt minne! Interne busser 09.05. INF 1070 1 Boolsk
DetaljerPatrick 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
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
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
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
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
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
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
DetaljerTildeling av minne til prosesser
Tildeling av minne til prosesser Tildeling av minne til en prosess Når en prosess opprettes har den et krav til hvor mye minne som skal reserveres for prosessen Memory Management System (MMS) i OS må da:
DetaljerCPU-Scheduling. Fag: Operativsystemer
CPU-Scheduling Fag: Operativsystemer 1 Innhold: Scheduling (tidsplanlegger) Prosesstilstander, bakgrunn, begreper Kriterier for scheduling rettferdighet, - utnyttelse Responstid Throughput (antal prosesser
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
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
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.
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:
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
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
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
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
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
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
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
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
DetaljerNadine Pedersen GRIT Datamaskinen- kjenn din Mac
Kjenn din Mac MacBook Pro 13,3 Retina MF840 Oppgave 1. Beskriv hvilke enheter som er koblet til datamaskinen, og det du kan finne ut om egenskapene deres. Bluetooth: Dette er en trådløs protokoll for å
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
DetaljerHå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,
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
DetaljerOperativsystemer - Oblig 5. Mathias Hedberg - Ving 68
Operativsystemer - Oblig 5 Mathias Hedberg - Ving 68 1 KAP 11: I/O Kap 11: I/O Teori Spørsmål: 1. Hva er forskjellen på memory mapped og isolated I/O? Angi fordeler og ulemper med disse to prinsippene.
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
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
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
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
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
DetaljerWP-WATCHER WORDPRESS SIKKERHET
WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER BACKUP - SIKKERHETSKOPIERING «Hei! Jeg oppdaterte en plugin på siden min og nå kommer jeg ikke inn på siden min i det hele tatt. Kan du hjelpe meg?» «Hjelp! Jeg
DetaljerForelesning Instruksjonstyper Kap 5.5
TDT4160 Datamaskiner Grunnkurs Forelesning 22.11 Instruksjonstyper Kap 5.5 Dagens tema Instruksjonstyper (5.5) Datatransport Datamanipulering Betingede hoppinstruksjoner Prosedyrekall Løkker I/O Eksempler
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
DetaljerHvorfor lære om maskinvare*?
Litt om maskinvare Hvorfor lære om maskinvare*? Hovedoppgaven til et OS er å styre maskinvare Må ha grunnleggende kjennskap til maskinvare for å forstå hvordan OS fungerer Skal bare se på grunnleggende
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
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
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
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
DetaljerSteg for steg. Sånn tar du backup av Macen din
Steg for steg Sånn tar du backup av Macen din «Being too busy to worry about backup is like being too busy driving a car to put on a seatbelt.» For de fleste fungerer Macen som et arkiv, fullt av bilder,
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
Detaljer4. Prøv om du kan finne en tastatur-snarvei for å komme til dette kontrollpanelet.
Kjenn din PC (Windows7/8) Her velger dere først System and Security og deretter System. 1. Hva slags prosessor har maskinen. Intel Celeron 743 1.3 Ghz. 2. Hvor mye minne har den. 2GB minne er installert
DetaljerKjenn din PC (Windows 8.1)
Kjenn din PC (Windows 8.1) Denne delen handler om hva man kan finne ut om datamaskinens hardware fra operativsystemet og tilleggsprogrammer. Alle oppgavene skal dokumenteres på din studieweb med tekst
DetaljerINF2270. Minnehierarki
INF2270 Minnehierarki Hovedpunkter Bakgrunn Kort repetisjon Motivasjon Teknikker for hastighetsøkning Multiprosessor Økt klokkehastighet Raskere disker Økt hurtigminne Bruksområder Lagringskapasitet Aksesstider
DetaljerDagens 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
DetaljerFiler i Linux og Bourne-again shell
Filer i Linux og Bourne-again shell Filbegrepet En fil * er en grunnleggende lagringsenhet i et OS Brukes for alle data som: Lagres utenfor RAM (primærminnet) På permanente media (sekundærminne) Definisjoner
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:
DetaljerIN1020. Datamaskinarkitektur
IN1020 Datamaskinarkitektur Hovedpunkter Von Neumann Arkitektur BUS Pipeline Hazarder Intel Core i7 Omid Mirmotahari 4 Von Neumann Arkitektur John von Neumann publiserte i 1945 en model for datamaskin
DetaljerHer 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
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)
Detaljer1. Introduksjon til operativsystemer
Avdeling for informatikk og elæring, Høgskolen i Sør-Trøndelag Introduksjon til operativsystemer Geir Maribu 30.1.2007 Lærestoffet er utviklet for faget LO249D Operativsystemer med Linux 1. Introduksjon
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
DetaljerSteg for steg. Sånn tar du backup av Macen din
Steg for steg Sånn tar du backup av Macen din «Being too busy to worry about backup is like being too busy driving a car to put on a seatbelt.» For de fleste fungerer Macen som et arkiv, fullt av bilder,
DetaljerResymé: I denne leksjonen vil du få en oversikt over hva et operativsystem er for noe, hvordan det er bygget opp og hvordan det virker.
Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Introduksjon til operativsystemer Geir Maribu 2.9.2014 Lærestoffet er utviklet for faget «IINI2008 Operativsystemer med Linux» Resymé: I
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
DetaljerKjenn din PC (Windows7)
Kjenn din PC (Windows7) Denne delen handler om hva man kan finne ut om datamaskinens hardware fra operativsystemet og tilleggsprogrammer. Alle oppgavene skal dokumenteres på din studieweb med tekst og
DetaljerPXT: 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
DetaljerKjenn din PC (Windows vista)
Kjenn din PC (Windows vista) Jeg har en Dell studio XPS 1640 Gå Inn på kontrollpanel Her velger dere først System and Maintenance og deretter System (System) 1. Prosessor: Intel Core 2 Duo P8600 prosessor
DetaljerVirus på Mac? JA! Det finnes. Denne guiden forteller deg hva som er problemet med virus på Mac hva du kan gjøre for å unngå å bli infisert selv
Virus på Mac? JA! Det finnes. Denne guiden forteller deg hva som er problemet med virus på Mac hva du kan gjøre for å unngå å bli infisert selv «Å tro at det ikke finnes virus på Mac er dessverre litt
DetaljerPXT: Hermegåsa. Steg 1: Sjekk at du har riktig utstyr. Sjekkliste. Introduksjon
PXT: Hermegåsa Nybegynner Micro:bit 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 andre spillerene skal gjenta, altså
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
DetaljerKapittel 3. The fun starts
Kapittel 3 The fun starts Introduksjon I dette kapittelet vil jeg prøve å gjøre ting på en annen måte. Siden vi nå skal begynne å faktisk lage noe, tenkte jeg at jeg vil gjøre det slik at kapittelet blir
DetaljerDagens tema. Flere teknikker for å øke hastigheten
Dagens tema Flere teknikker for å øke hastigheten Cache-hukommelse del 1 (fra kapittel 6.5 i Computer Organisation and Architecture ) Hvorfor cache Grunnleggende virkemåte Direkte-avbildet cache Cache-arkitekturer
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
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
Detaljer2 Om statiske variable/konstanter og statiske metoder.
Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo 1 Innledning Dette notatet beskriver noe av det som foregår i primærlageret når et Javaprogram utføres.
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:
DetaljerKjenn din pc (Windows Vista)
Kjenn din pc (Windows Vista) Jeg har en Acer Aspire 5739G 1. Hva slags prosessor har maskinen. Min maskin har: Intel(R) Core(TM)2 Duo CPU 2. Hvor mye minne har den. RAM-type: DDR3 RAM (MB): 4 096 Minnehastighet
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
DetaljerKjenn din PC (Windows7, Vista)
Kjenn din PC (Windows7, Vista) Michael Moncrieff, Kristoffer Kjelvik, Ola Johannessen og Jarle Bergersen Denne delen handler om hva man kan finne ut om datamaskinens hardware fra operativsystemet og tilleggsprogrammer.
Detaljer!!!!!!!!!!!! !!!!!!!!!!! WP-WATCHER WORDPRESS SIKKERHET
WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER BACKUP - SIKKERHETSKOPIERING «Hei Jeg oppdaterte en plugin på siden min og nå kommer jeg ikke inn på siden min i det hele tatt. Kan du hjelpe meg?» «Hjelp Jeg
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
DetaljerOppløsning vil si antallet pixler det er i skjermen, i min skjerm er det 2560x1600px.
1) Printers: EPSON XP- 322 323 325 SERIES USB: Samsung Flash Drive FIT: Speed: up to 480 Mb7sec. Current Available (ma): 500, Current Required (ma): 300. Capacity: 128,31 GB (128 312 137 968 bytes). Available:
DetaljerLitt om Javas class-filer og byte-kode
Litt om Javas class-filer og byte-kode INF 5110, 11/5-2010, Stein Krogdahl (Dessverre litt få figurer) Disse formatene ble planlagt fra start som en del av hele Java-ideen Bt Byte-koden gir portabilitet
DetaljerVi anbefaler at du setter deg litt inn i maskinen på forhånd. Det er en DELL Optiplex 620.
Oppgave lab Vi anbefaler at du setter deg litt inn i maskinen på forhånd. Det er en DELL Optiplex 620. Søk etter denne maskinen på nettet. Alle oppgavene skal dokumenteres på din studieweb med tekst og
DetaljerTor-Eirik Bakke Lunde torebl@stud.cs.uit.no
Obligatorisk oppgave 1 INF-3200 12. oktober 2003 Tor-Eirik Bakke Lunde torebl@stud.cs.uit.no Oppgavebeskrivelse: Designe og implementere en distribuert ray-tracing applikasjon, med basis i kontroller-
Detaljerif-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS
Løkker og if-tester Gløer Olav Langslet Sandvika VGS 29.08.2011 Informasjonsteknologi 2 Funksjoner, løkker og iftester Læreplansmål Eleven skal kunne programmere med enkle og indekserte variabler eller
Detaljer