Filhåndtering. Fysisk organisering av filer. Hva er en fil logisk sett? Eksempel: Post (record) orientert fil. Kjell Åge Bringsrud INF 103

Størrelse: px
Begynne med side:

Download "Filhåndtering. Fysisk organisering av filer. Hva er en fil logisk sett? Eksempel: Post (record) orientert fil. Kjell Åge Bringsrud INF 103"

Transkript

1 Eksempel: Post (record) orientert fil Filhåndtering En post-orientert fil består av en samling av poster (records), som hver består av en sekvens av felt (fields). Vanlig form for organisering innen databaser. Kjell Åge Bringsrud (Foiler fra Olav Lysne) INF 103 Filhåndtering 1 Filhåndtering 3 Hva er en fil logisk sett? Fysisk organisering av filer En samling data til ett eller annet formål En kjørbar programfil En fil med kildekode til et program En samling tall som skal benyttes av et program som driver med numerisk analyse Informasjon om andre filer (linker, directories) Et tekstdokument i ett eller annet gitt format En samling administrative data som henger sammen på ett eller annet vis både internt og med andre filer Representasjon av et bilde, en lydsekvens, en film, et kunstverk Et logisk bilde av en fil må kunne representeres på et fysisk medium. Sylinder Plate (platter) Spor Sektor Blokk Filhåndtering 2 Filhåndtering 4 1

2 Blokker En blokk er den minste enheten som kan leses fra eller skrives til på en disk. Et program som leser ett ascii tegn fra en fil, vil kreve at det leses en hel blokk av disken. En typisk (og svært vanlig) blokkstørrelse er 512 byte. Hele disken har samme blokkstørrelse. Det betyr at dataene er lagret på mindre fysisk plass innerst på disken enn ytterst. Dette gjør oppgaven til diskhodet mye enklere. Filhåndtering 5 Blokkstørrelse Vanligvis 512, evt 256 eller En fil krever minimum en blokk, uansett hvor liten den er. Det er en avveining mellom effektiv lesing/skriving, og god utnyttelse av diskplass i valg av blokkstørrelse. Det er ikke nødvendigvis slik at de blokkene som inneholder en fil er lokalisert i nærheten av hverandre. Det er imidlertid ofte ønskelig av ytelsesårsaker. Filhåndtering 7 Mapping av post-filer til diskblokker Det er (som regel) ingen sammenheng mellom poststørrelse og blokkstørrelse på en maskin. Operativsystemets filtyper Windows og UNIX har bare to filtyper Kataloger (directories) og datafiler. Datafilene sees på som en byte-strøm. For å holde rede på forskjellige filtyper benyttes forskjellige navne-utvidelser..doc.c.java Dette gir fordeler i form av enkelhet i filsystemet. Det overlater imidlertid ansvaret for en del funksjonalitet til applikasjonsprogrammereren. Filhåndtering 6 Filhåndtering 8 2

3 Men hva med Random Access filer? Fil håndteringsystemets (FS) rolle Enkelte logiske filtyper er slik at vi typisk ikke ønsker å lese hele filen fra starten av, men ønsker tilgang til en post midt inni Databasefiler er typiske eksempler Disse kalles gjerne post-baserte (record-based) IBM OS/390 har et rikere sett av filtyper, hvor dette problemet er løst av OSet. Mer om dette senere Tjener som et grensesnitt mellom brukerens logiske bilde av filen, og maskinens fysiske realiteter. Skjuler begreper som sektorer, plater og blokker. Tilbyr et felles sett av kommandoer for alle filer uavhengig av lagringsmediets egenskaper (floppy, harddisk, blokkstørrelser etc.) Sjekker gyldigheten av forespørsler, og oversetter dem til f.eks lesing og skriving av enkelte blokker. For å få til dette vedlikeholder systemet en katalog- (directory-) struktur. Filhåndtering 9 Filhåndtering 11 Andre egenskaper ved filer som systemet kan støtte Logisk bilde av FS sin rolle Tilgangskontroll Skrive Lese Eksekvere Kopiere, kunnskap om eksistens Forskjellige brukergrupper. Assosiere et program med en fil på en annen måte enn vha. slutten på filnavnet). Filhåndtering 10 Filhåndtering 12 3

4 Hva skjer ved kommandoen prompt> cp frafil tilfil 1. Shell ber FM åpne filen frafil og opprette filen tilfil. 2. FM sjekker om frafil finnes, i tilfelle settes det av bufferplass i minnet til (minst) en diskblokk. 3. FM sjekker om det er plass til tilfil. I tilfelle opprettes den med det nødvendige antall blokker. 4. Shell informeres om at punkt 2 og punkt 3 over gikk bra. 5. Shell ber FM om å lese litt (typisk en blokk) av frafil 6. FM leser en blokk av frafil inn i det avsatte bufferet. 7. Shell ber FM om å skrive bufferet ut til en blokk av tilfil. 8. FM skriver bufferet ut til frafil 9. Punktene 5-8 gjentas det nødvendige antall ganger. 10. Filene lukkes 11. Kopieringen avsluttes. Funksjoner som endrer innholdet i filer Post-baserte filer Åpne og lukke filer Lese en post Skrive en post Fjerne en post Endre en post Hvilken post (record) man opererer på angis gjerne med en unik nøkkel. Mer om dette i andre kurs. Strøm-baserte filer Åpne og lukke filer Lese et antall byte Skrive et antall byte Spole frem og tilbake Dersom OS kun tilbyr denne typen filer, må de post-baserte operasjonene implementeres av de applikasjonene som trenger dem. Filhåndtering 13 Filhåndtering 15 Tre typer operasjoner Logisk fil-aksess De som opererer på hele filer Kopier, flytt, lagre, etc. De som bare opererer på informasjon om filen uten å endre filen selv. Endre sikkerhetsnivå, endre navn på filen De som endrer innholdet i filer Skriv, legg til, fjern Hvilken funksjonalitet som her er nødvendig er avhengig av om filene ansees som strøm-baserte eller post- (record-) baserte. Sekvensiell aksess Byte-strøm Magnetisk tape analogi Støttes av alle OS. Random aksess Tilgang til enkelt-poster Tilgang basert på kjennskap til hvilken logisk blokk posten befinner seg i. Ved f. eks Hashing. Logisk blokkstørrelse behøver ikke være det samme som fysisk blokkstørrelse - man ønsker ikke å endre alle applikasjoner selv om man bytter til en disk med annen fysisk blokkstørrelse. Omregning fra logisk blokk til fysisk blokk må gjøres av Filsystemet Støttes av nesten alle moderne OS. Filhåndtering 14 Filhåndtering 16 4

5 Logisk aksess forts. Kontinuerlig blokk-allokering Indeksert aksess. Tilgang til poster gjennom flere forskjellige indekser. Oppslag i telefonkataløgen ved hjelp av Etternavn eller gatenavn eller kommune eller telefonnummer eller. Implementert ved hjelp av pekere fra indekslister til blokker. Gjerne kombinert med sekvensiell eller random access. Implementasjonen av indeksert aksess er ofte overlatt til applikasjonen, men noen OS har et FS som støtter indeksert aksess direkte (IBM OS/390). Dette er den enkleste metoden Enhver fil lagres i blokker som følger etter hverandre. men hva betyr etter hverandre her? Jo at diskhodet lett kan lese blokkene i sekvens. Filhåndtering 17 Filhåndtering 19 Fysisk fillagring Kontinuerlig forts. FM må tilordne blokker til filer, og holde rede på hvilke blokker en fil består av. For sekvensiell aksess bør dette gjøres slik at det er mulig å aksessere alle blokker etter hverandre på en rask måte. For random aksess er det viktig at det finnes effektive metoder for å få tak i en gitt blokk midt inne i en fil. De to kravene over står ofte i motsetning til hverandre. Tre vanlige metoder Kontinuerlig Pekerkjede Indeksert Filhåndtering 18 Styrker Sekvensiell aksess blir svært effektiv. Random aksess kan gjøres enkelt-hvilken blokk en post ligger i kan lett regnes ut. Svakheter Vanskelig med filer som vokser over tid de må få satt av all den plassen de trenger med en gang, evt flyttes når de er for store. Fragmentering av disken når en fil blir fjernet er man sjelden så heldig at det dukker opp en ny fil som er akkurat like stor. Filhåndtering 20 5

6 Kontinuerlig - fragmentering Pekerkjede forts. Dette problemet minner mye om fragmenteringsproblemet for minnehåndtering. Metodene for å håndtere dem er de samme: Allokering ved First fit første og beste Best fit den minste som er stor nok Worst fit den største ledige plassen (fordi det da er større sjanse for at det som er igjen er stort nok til å kunne benyttes av noen andre). I siste instans må disken jevnlig reorganiseres for å fjerne fragmenteringsproblemer. Defragmentering, eller defragging, kompaktering. Styrker God utnyttelse av diskkapasitet Velegnet til sekvensiell aksess Ingen fragmenteringsproblemer Svakheter Dårlig egnet for random access. Hva med evnen til å tolerere feil i en diskblokk..? Filhåndtering 21 Filhåndtering 23 Pekerkjede Indeksert allokering En fil kan spres ut over de blokkene som er tilgjengelige. I slutten av hver blokk ligger en peker til neste blokk. Listen kan også være toveis, ved at hver blokk også inneholder en peker til forrige blokk. Samme grunnidé som pekerkjeder, men med den forskjell at alle pekere (indekser) ligger på samme sted (indeks blokken). Det er mao. én indeksblokk per fil. Filhåndtering 22 Filhåndtering 24 6

7 Indeksert allokering UNIX i-node Styrker Egnet for sekvensiell aksess Velegnet for random aksess Ingen fragmentering Svakheter Bruker en hel blokk til pekere uavhengig av hvor stor filen er. Hva når indeksblokken blir for liten? Man kan søke å allokere så mange kontinuerlige blokker som mulig. Indeksblokken trenger da bare ta vare på adressen til den første blokken, og antallet blokker for hvert cluster av blokker (Windows 2000). Filhåndtering 25 Filhåndtering 27 UNIX allokeringsmetode Indeksert aksess med et antall første nivå indekser. I tillegg én peker til et 2- nivå hierarki, én til et 3- nivåhierarki, og én til et 4-nivåhierarki. Dette er tilstrekkelig for filer opp til flere hundre GigaByte. FAT File Allocation Table Brukt i MS-DOS, Windows, OS/2 I stedet for en indekstabell per fil, er det en felles indekstabell for hver disk. Hver linje i en FAT tilsvarer en blokk (cluster av blokker) på disken. Hver linje inneholder en peker til neste blokk i filen. Et spesielt tegn tabellen angir at dette er filens siste blokk Filhåndtering 26 Filhåndtering 28 7

8 Håndtering av ledig plass FAT-eksempel fra boken Bitmap Setter av en bit som er 0 dersom blokken er ledig, og 1 dersom den er opptatt. Fordeler Trenger lite ekstra plass Enkelt å implementere Lett å finne kontinuerlige sekvenser av ledige blokker. Ulemper Når en fil slettes risikerer man å overskrive blokkene med en gang uheldig for recovery. Filhåndtering 29 Filhåndtering 31 FAT Styrker Samme som indeksert aksess Enklere å sette av bare den indeksplassen som trengs. Svakheter Opprinnelig bare satt av 16 bit til å lagre hver peker det gir kun mulige blokker (clustre) På store disker må derfor blokkene (clustrene) bli store, slik at mye plass går til spille ved små filer. FAT32 løser dette problemet, men FAT ser allikevel ut til å fases ut av Micrsoft. Håndtering av ledig plass forts. Kø/Pekerkjede Vedlikeholder en oversikt over alle ledige blokker i en kø. Blokker som akkurat har blitt ledige legges bakerst i køen Allokering av nye blokker skjer forfra. Styrke Bra for recovery av fjernede filer det tar lang tid fra en fil blir slettet til innholdet i den er borte fra diskblokkene. Svakhet Gir svært inneffektiv allokering av blokker kontinuerlige blokker er vanskelig å finne. Filhåndtering 30 Filhåndtering 32 8

9 Fjerning av diskdata Trestrukturert katalog Merk at vi har antatt at idet en fil slettes, så vil de blokkene som inneholdt filen ikke berøres. Dette er den vanligste måten å gjøre det på, siden det opplagt er det som krever minst ressurser Det gir imidlertid en sikkerhetsrisiko en fil som er slettet er ikke det samme som et dokument som er makulert. Det finnes software som virkelig sletter de blokkene som ikke er i bruk på disken. Filhåndtering 33 Relevante begreper er rot (root), sti (path), stinavn (path name), nåværende katalog (current) etc. Dette er kjent stoff! Filhåndtering 35 Katalogstrukturer Historisk Flate struktur - alle filer på samme nivå Vanskelig å holde oversikt Navnekollisjoner skjer ofte Alle brukere må ha hensyn til hverandres filnavn Struktur med to nivåer Skiller brukerfiler fra hverandre og fra systemfiler Fremdeles vanskelig for en bruker med mange filer å holde oversikt. I dag hierarkiske strukturer Trær (MS-DOS, og eldre Windows) Asyklisk graf (UNIX og nyere Windows) Filhåndtering 34 Asyklisk graf En enkel generalisering av trestrukturert katalog, som tillater lenker (links) fra et sted i katalogen til en fil eller mappe/directory som ligger et annet sted. Dette er praktisk av flere grunner Flere brukere kan innlemme et filområde blant sine filer for å lette samarbeide Tillater en bruker å benytte korte enkle navn i stedet for lange stinavn. Opprettes i UNIX ved ln kommandoen f eks: ln s /hom/olavly OlavSittOmråde gir en peker ved navn OlavSittOmråde som peker til olavly sitt hjemmeområde. Filhåndtering 36 9

10 Asyklisk graf - eksempel Tilnærming til linker Skal alle linker til en fil være sidestilte (hard link), eller skal en link eie filen (symbolic links). Filhåndtering 37 Filhåndtering 39 Asyklisk graf forts. Når en fil fjernes kan man få en linker som ikke peker noen steder lengre Man kan jo vente til den siste linken er fjernet før man fjerner filen. Hvordan vet man når den siste linken er fjernet? Man kan for hver fil telle opp antall linker hver gang de opprettes, og telle ned hver gang en fjernes. Hva når det blir løkker i grafen slik at den ikke lenger er asyklisk? Det må unngås! Ved sykler i grafen vil blant annet verktøy som søker etter filer gå i det uendelige. Oppsummering Vi har sett på det logiske filgrepet og hvordan det kan implementeres på fysiske medier. Diskens oppdeling i plater, sylindre, sektorer og blokker. Filsystemets oppgaver og funksjonalitet Aksesstyper for filer: Sekvensiell Random Indeksert. Filhåndtering 38 Filhåndtering 40 10

11 Oppsummering forts. Håndtering av ledige blokker/allokering av plass Bittabell Kø/pekerkjede Katalogstrukturer Trestruktur Asykliske grafer linker Fysisk lagring tilordning av blokker til filer: Kontinuerlig Pekerkjede Indeksert Filhåndtering 41 11

Hva er en fil logisk sett?

Hva er en fil logisk sett? Filhåndtering Kjell Åge Bringsrud (Foiler fra Olav Lysne) INF 103 Filhåndtering 1 Hva er en fil logisk sett? En samling data til ett eller annet formål En kjørbar programfil En fil med kildekode til et

Detaljer

Generelt om permanent lagring og filsystemer

Generelt om permanent lagring og filsystemer Generelt om permanent lagring og filsystemer Filsystem Den delen av OS som kontrollerer hvordan data lagres på og hentes frem fra permanente media Data deles opp i individuelle deler, filer, som får hvert

Detaljer

Filer i Linux og Bourne-again shell

Filer 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

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

Filsystemet fra innsiden

Filsystemet fra innsiden Filsystemet i Linux Filsystemet fra innsiden Har tidligere sett kommandoer for håndtering av filer i Linux filsystemet sett fra utsiden Skal nå se på filsystemet fra innsiden : Hvordan er filsystemet i

Detaljer

Filer i Linux og Bourne-again shell

Filer 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) To hovedklasser

Detaljer

Filsystemet fra innsiden

Filsystemet fra innsiden Filsystemet i Linux Filsystemet fra innsiden Tidligere sett brukerkommandoer for håndtering av filer filsystemet i Linux sett fra utsiden Skal nå se på filsystemet fra innsiden : Hvordan er filsystemet

Detaljer

Tildeling av minne til prosesser

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

Detaljer

Håndtering av filer og kataloger

Håndtering av filer og kataloger Håndtering av filer og kataloger Filsystem-kommandoer i Linux Navigere i katalogstrukturen Lage, slette, kopiere, flytte og endre navn på filer og kataloger Lage linker til filer Finne/lokalisere filer

Detaljer

Håndtering av filer og kataloger

Håndtering av filer og kataloger Håndtering av filer og kataloger Fil- og katalognavn i Linux Filsystem-kommandoene bruker navn til å identifisere filer og kataloger Filnavn kan inneholde alle tegn untatt / og NULL-tegnet Lengde på filnavn

Detaljer

Tildeling av minne til prosesser

Tildeling 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

Detaljer

En harddisk består av et lite antall plater av et magnetisk materiale.

En harddisk består av et lite antall plater av et magnetisk materiale. , Master En består av et lite antall plater av et magnetisk materiale. Overflaten av en plate på innsiden av en. Lesehodet flyttet posisjon mens bildet ble tatt og kan derfor sees i to posisjoner. , Master

Detaljer

... Når internminnet blir for lite. Dagens plan: Løsning: Utvidbar hashing. hash(x) katalog. O modellen er ikke lenger gyldig ved

... Når internminnet blir for lite. Dagens plan: Løsning: Utvidbar hashing. hash(x) katalog. O modellen er ikke lenger gyldig ved Dagens plan: Utvidbar hashing (kapittel 5.6) B-trær (kap. 4.7) Abstrakte datatyper (kap. 3.1) Stakker (kap. 3.3) Når internminnet blir for lite En lese-/skriveoperasjon på en harddisk (aksesstid 7-12 millisekunder)

Detaljer

Tildeling av minne til prosesser

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

Detaljer

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen Innhold uke 10 Hva bruker vi klasser til? Objektorientert programmering i Python IN1000 Høst 2018 uke 10 Siri Moe Jensen Noen sentrale datastrukturer for programmering lenkede lister trær grafer Eksempler:

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum 1 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum 2 Læringsmål Mål Introduksjon til filer (som inndata og utdata) Å bruke

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

Flerveis søketrær og B-trær

Flerveis søketrær og B-trær Flerveis søketrær og B-trær Flerveis (multi-way, n-ært) søketre Generalisering av binært søketre Binært søketre: Hver node har maksimalt 2 barn og 1 nøkkelverdi. Barna ligger sortert på verdi i forhold

Detaljer

Filsystemer. Martin Gilje Jaatun. 30. april 2007

Filsystemer. Martin Gilje Jaatun. 30. april 2007 Filsystemer Martin Gilje Jaatun 30. april 2007 Sammendrag Dette dokumentet er et forsøk på å formidle noen velmenende formuleringer om filsystemer og deres implementasjon, dvs. kapittel 11 og 12 i [SGG02].

Detaljer

Dagens tema. Flere teknikker for å øke hastigheten

Dagens 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

Detaljer

Litt om Javas class-filer og byte-kode

Litt 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

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

Filbehandling. Begreper

Filbehandling. Begreper Filbehandling Her kan du lese om filbehandling, mappestruktur og betydningen av hvor vi lagrer filer (dokumenter). Tilslutt en gjennomgang av filbehandlingsprogrammet Windows Utforsker. Begreper Filer:

Detaljer

Læringsmål og pensum. Oversikt. Systemprogramvare Operativsystemer Drivere og hjelpeprogrammer. To hovedtyper programvare

Læ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

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

Programmeringsspråket C Del 3

Programmeringsspråket C Del 3 Programmeringsspråket C Del 3 Kjell Åge Bringsrud E-mail: kjellb@ifi.uio.no Dynamisk allokering Ofte trenger man å opprette objekter under kjøringen i tillegg til variablene. Standardfunksjonen malloc

Detaljer

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse Dessverre litt få figurer INF 5110, 10/5-2011, Stein Krogdahl Oversikt over Javas class-filer og byte-kode Disse formatene ble planlagt fra start

Detaljer

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak (exceptions) Utgave 3: Kap. 6. Terje Rydland - IDI/NTNU

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak (exceptions) Utgave 3: Kap. 6. Terje Rydland - IDI/NTNU 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak (exceptions) Utgave 3: Kap. 6 Terje Rydland - IDI/NTNU 2 Læringsmål og pensum Mål Lære bruk av inn- og ut-operasjoner

Detaljer

6105 Windows Server og datanett

6105 Windows Server og datanett 6105 Windows Server og datanett Leksjon 6b Filsystemet NTFS og rettigheter NTFS-rettigheter, ACl og eierskap til filer NTFS-rettigheter arves og kombineres Avanserte NTFS-rettigheter NTFS-rettigheter ved

Detaljer

6105 Windows Server og datanett

6105 Windows Server og datanett 6105 Windows Server og datanett Leksjon 6b Filsystemet NTFS og rettigheter NTFS-rettigheter, ACl og eierskap til filer NTFS-rettigheter arves og kombineres Avanserte NTFS-rettigheter NTFS-rettigheter ved

Detaljer

Funksjonalitet og oppbygning av et OS (og litt mer om Linux)

Funksjonalitet 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

Detaljer

C# (.Net) EE1212 Objektorientert programmering

C# (.Net) EE1212 Objektorientert programmering C# (.Net) EE1212 Objektorientert programmering Filhåndtering C# - Høsten 2018 (Olav Dæhli) 1 Prinsipp for filhåndtering Åpne fila (eventuelt først pakke inn i en stream) Lese fra fila eller skrive til

Detaljer

Generelt om operativsystemer

Generelt 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

Detaljer

Programmeringsspråket C Del 3

Programmeringsspråket C Del 3 Programmeringsspråket C Del 3 Kjell Åge Bringsrud E-mail: kjellb@ifi.uio.no 9/1/2005 inf1060 V05 1 Dynamisk allokering Ofte trenger man å opprette objekter under kjøringen i tillegg til variablene. Standardfunksjonen

Detaljer

UNIVERSITETET. Indeksering. Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Hashliknende strukturer.

UNIVERSITETET. Indeksering. Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Hashliknende strukturer. UNIVERSITETET IOSLO Indeksering Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Treliknende strukturer Hashliknende strukturer Bitmapindekser Institutt for Informatikk INF30 22.2.2011

Detaljer

Generelt om operativsystemer

Generelt 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

Detaljer

En harddisk består av et lite antall plater av et magnetisk materiale.

En harddisk består av et lite antall plater av et magnetisk materiale. , Master 3 og En består av et lite antall plater av et magnetisk materiale. Overflaten av en plate på innsiden av en. Lesehodet flyttet posisjon mens bildet ble tatt og kan derfor sees i to posisjoner.

Detaljer

Grunnkurs i. Windows Utforsker. Nordre Land kommune IKT-avdelingen

Grunnkurs i. Windows Utforsker. Nordre Land kommune IKT-avdelingen Grunnkurs i Windows Utforsker Nordre Land kommune IKT-avdelingen - 2 - Fil- og mappehåndtering med Windows Utforsker Innholdsfortegnelse Introduksjon...- 3 - Generelt om filbehandling...- 3 - Filbehandling...-

Detaljer

Hashing. INF Algoritmer og datastrukturer HASHING. Hashtabeller

Hashing. INF Algoritmer og datastrukturer HASHING. Hashtabeller Hashing INF2220 - Algoritmer og datastrukturer HØSTEN 200 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning : Hashing Hashtabeller (kapittel.) Hash-funksjoner (kapittel.2) Kollisjonshåndtering

Detaljer

Repetisjon: Binære. Dagens plan: Rød-svarte trær. Oppgave (N + 1)!

Repetisjon: Binære. Dagens plan: Rød-svarte trær. Oppgave (N + 1)! Repetisjon: Binære søketrær Dagens plan: Rød-svarte trær (kap. 12.2) B-trær (kap. 4.7) bstrakte datatyper (kap. 3.1) takker (kap. 3.3) For enhver node i et binært søketre gjelder: lle verdiene i venstre

Detaljer

Plan for dagen. Vprg 4. Dagens tema - filbehandling! Strømmer. Klassen FilLeser.java. Tekstfiler

Plan for dagen. Vprg 4. Dagens tema - filbehandling! Strømmer. Klassen FilLeser.java. Tekstfiler Plan for dagen Vprg 4 LC191D Videregående programmering Høgskolen i Sør-Trøndelag Avdeling for informatikk og e-læring Anette Wrålsen Del: Intro til tekstfiler Del II: Mer om tekstfiler, Scanner-klassen

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET 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

Detaljer

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse Dessverre litt få figurer INF 5110, 8/5-2012, Stein Krogdahl Byte-koden for Java og.nett (C#) http://en.wikipedia.org/wiki/java_bytecode_instruction_listings

Detaljer

Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode)

Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode) Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode) Disse foilene er pensum INF 5110, 30/4-2013, Stein Krogdahl Byte-koden for Java og.nett (C#) kan leses her: http://en.wikipedia.org/wiki/java_bytecode_instruction_listings

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6. Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6. Professor Alf Inge Wang 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6 Professor Alf Inge Wang 2 Læringsmål og pensum Mål Lære bruk av inn- og utoperasjoner i Python

Detaljer

Læringsmål og pensum. Inn- og utoperasjoner 21/10/16

Læringsmål og pensum. Inn- og utoperasjoner 21/10/16 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6 Professor Alf Inge Wang 2 Læringsmål og pensum Mål Lære bruk av inn- og utoperasjoner i Python

Detaljer

Programmeringsspråket C Del 3

Programmeringsspråket C Del 3 Programmeringsspråket C Del 3 Michael Welzl E-mail: michawe@ifi.uio.no 8/25/10 inf1060 1 Dynamisk allokering Ofte trenger man å opprette objekter under kjøringen i tillegg til variablene. Standardfunksjonen

Detaljer

INF Algoritmer og datastrukturer

INF Algoritmer og datastrukturer INF2220 - Algoritmer og datastrukturer HØSTEN 2017 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2017, forelesning

Detaljer

Det matematisk-naturvitenskapelige fakultet

Det 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

Detaljer

Alg. Dat. Øvingsforelesning 3. Grafer, BFS, DFS og hashing. Børge Rødsjø rodsjo@stud.ntnu.no

Alg. Dat. Øvingsforelesning 3. Grafer, BFS, DFS og hashing. Børge Rødsjø rodsjo@stud.ntnu.no Alg. Dat Øvingsforelesning 3 Grafer, BFS, DFS og hashing Børge Rødsjø rodsjo@stud.ntnu.no Dagens tema Grafer Terminologi Representasjon av grafer Bredde først søk (BFS) Dybde først søk (DFS) Hashing Hashfunksjoner,

Detaljer

Plan. Oppgaver og repetisjon Eksempler med fikspunkt og induksjon: 1. sortering 2. divisjon 3. Heis? IN 315: Foilsett 9: Unity: Arkitekturer

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

Detaljer

Effektiv eksekvering av spørsmål

Effektiv eksekvering av spørsmål UNIVERSITETET I OSLO Effektiv eksekvering av spørsmål Basert på foiler av Hector Garcia-Molina, Ragnar Normann Oversikt Spørsmålshåndtering Modell for kostnadsberegning Kostnad for basis-operasjoner Implementasjons-algoritmer

Detaljer

IN Algoritmer og datastrukturer

IN Algoritmer og datastrukturer IN2010 - Algoritmer og datastrukturer HØSTEN 2018 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 3: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2010 H2018, forelesning

Detaljer

Oppsummering av digitalteknikkdelen

Oppsummering 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

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

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

Detaljer

UNIVERSITETET. Indeksering. Hvordan finne et element raskt? Vera Goebel, Ellen Munthe-Kaas

UNIVERSITETET. Indeksering. Hvordan finne et element raskt? Vera Goebel, Ellen Munthe-Kaas UNIVERSITETET IOSLO Indeksering Hvordan finne et element raskt? Basert på foiler av Hector Garcia Molina Basert på foiler av Hector Garcia-Molina, Vera Goebel, Ellen Munthe-Kaas Oversikt Konvensjonelle

Detaljer

Oversikt. Beskrivelse Bash. 1 UNIX shell. 2 Kommandolinje som brukergrensesnitt. 3 Input og output. 4 Bash builtins. 5 Linux utilities.

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

Detaljer

Introduksjon til fagfeltet

Introduksjon til fagfeltet LC238D http://www.aitel.hist.no/fag/_dmdb/ Introduksjon til fagfeltet Datafiler side 2 Databasesystemer side 3-5 Databasearkitektur ANSI/SPARC side 6-7 Datamodeller side 8 Flerbruker databasesystem side

Detaljer

Filterprogrammer og redirigering av I/O

Filterprogrammer og redirigering av I/O Filterprogrammer og redirigering av I/O Linux filterprogrammer Mange kommandoer i Linux er tekstbaserte filtre Leser en strøm av tekst / tegn, linje for linje Gjør noe med ( filtrerer ) tekstlinjene Skriver

Detaljer

FYS3240/4240 Forslag til prosjektoppgave for Lab 4: DAQ-øvelse med LabVIEW

FYS3240/4240 Forslag til prosjektoppgave for Lab 4: DAQ-øvelse med LabVIEW FYS3240/4240 Forslag til prosjektoppgave for Lab 4: DAQ-øvelse med LabVIEW Jan Kenneth Bekkeng, 11.3.2013 Hensikten med denne øvelsen er å lære DAQ-programmering med utviklingsverktøyet LabVIEW. NB: se

Detaljer

Et eksempel: Åtterspillet

Et eksempel: Åtterspillet Trær Et eksempel: Åtterspillet To spillere som «trekker» annenhver gang I hvert trekk velges et av tallene 1, 2, 3, men ikke tallet som motspiller valgte i forrige trekk Valgte tall summeres fortløpende

Detaljer

Operativsystemer og grensesnitt

Operativsystemer 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

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

TDT4105 Informasjonsteknologi, grunnkurs

TDT4105 Informasjonsteknologi, grunnkurs 1 TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling Anders Christensen (anders@idi.ntnu.no) Rune Sætre (satre@idi.ntnu.no) TDT4105 IT Grunnkurs 2 Læringsmål/pensum Filbehandling Mål: Forstå

Detaljer

Programmeringsspråket C Del 3

Programmeringsspråket C Del 3 Programmeringsspråket C Del 3 Michael Welzl E-mail: michawe@ifi.uio.no 29.08.13 inf1060 1 Dynamisk allokering Ofte trenger man å opprette objekter under kjøringen i tillegg til variablene. Standardfunksjonen

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

Forskjeller mellom masselager og hovedminne. Permanent? Allokasjonstabell. Filer. Sekvensielle filer. Operativsystemets rolle

Forskjeller mellom masselager og hovedminne. Permanent? Allokasjonstabell. Filer. Sekvensielle filer. Operativsystemets rolle IT1101 Informatikk basisfag, dobbeltime 17/11 Sist uke: datastrukturer Tabell Lenket liste Stakk Kø inært tre Sammenhengende blokk vs pekermetoden I dag: Filstrukturer Forskjell hovedminne og masselager

Detaljer

Kurset består av to relativt uavhengige deler. Foreleser: Hårek Haugerud, rom PS431

Kurset består av to relativt uavhengige deler. Foreleser: Hårek Haugerud, rom PS431 gruppe Hva er? Operativsystemer Kurset består av to relativt uavhengige deler 1 /kommandolinje, Forelesning mandag 2 Operativsystmer(OS), Forelesning torsdag Foreleser: Hårek Haugerud, haugerud@hioa.no,

Detaljer

public static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren

public static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en

Detaljer

Filterprogrammer og redirigering av I/O

Filterprogrammer og redirigering av I/O Filterprogrammer og redirigering av I/O Linux filterprogrammer Mange kommandoer i Linux er tekstbaserte filtre Leser en strøm av tekst / tegn, linje for linje Gjør noe med ( filtrerer ) tekstlinjene Skriver

Detaljer

Andre sett obligatoriske oppgaver i INF3100 V2013

Andre sett obligatoriske oppgaver i INF3100 V2013 Andre sett obligatoriske oppgaver i INF3100 V2013 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser,

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

Filsystemer og gjennoppretning av data

Filsystemer og gjennoppretning av data Filsystemer og gjennoppretning av data Uten et filsystem blir det vanskelig å bruke en harddisk fornuftig, og uten BOOT sektorer kan ikke et OS hverken lese eller boote fra disken. BOOT sektorer er den

Detaljer

Sist gang (1) IT1101 Informatikk basisfag. Sist gang (2) Oppgave: Lenket liste (fysisk) Hva menes med konseptuelt og fysisk i forb med datastrukturer?

Sist gang (1) IT1101 Informatikk basisfag. Sist gang (2) Oppgave: Lenket liste (fysisk) Hva menes med konseptuelt og fysisk i forb med datastrukturer? IT1101 Informatikk basisfag Plan de siste ukene: I dag: siste om datastruktuter (kap. 7) Mandag 17/11: dobbel forelesning om filstrukturer (kap. 8) Torsdag 20/11: øvingsforelesning med Inge Mandag 24/11:

Detaljer

Innhold. Oversikt over hukommelseshierakiet. Ulike typer minne. Innledning til cache. Konstruksjon av cache. 26.03.2001 Hukommelseshierarki-1 1

Innhold. Oversikt over hukommelseshierakiet. Ulike typer minne. Innledning til cache. Konstruksjon av cache. 26.03.2001 Hukommelseshierarki-1 1 Innhold Oversikt over hukommelseshierakiet Ulike typer minne Innledning til cache Konstruksjon av cache 26.03.2001 Hukommelseshierarki-1 1 Hukommelseshierarki Ønsker ubegrenset mye minne som er like raskt

Detaljer

Linux distribusjoner

Linux distribusjoner Linux distribusjoner http://en.wikipedia.org/wiki/linux_distribution Ubuntu (kommer fra debian) Fedora (kommer fra Red Hat) CentOs (kommer fra Red Hat Enteprise) Hva er forskjellene? Kommersiell, ikke

Detaljer

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk ITPE/DATS 2400: Datamaskinarkitektur og Nettverk Forelesning Knut Nygaard / T. M. Jonassen Institute of Computer Science Faculty of Technology, Art and Design Oslo and Akershus University College of Applied

Detaljer

Linklaget - direkte forbindelser mellom noder

Linklaget - direkte forbindelser mellom noder Linklaget - direkte forbindelser mellom noder Foreleser: Kjell Åge Bringsrud E-mail: kjellb 2/11/2004 1 Tilbakeblikk Kursets fokus nett for generell bruk pakkebaserte nett A Noder 1 2 3 4 5 D 6 Link 2/11/2004

Detaljer

Operativsystemer og nettverk

Operativsystemer 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),

Detaljer

Dagens temaer. Cache (repetisjon) Cache (repetisjon) Cache (repetisjon)

Dagens temaer. Cache (repetisjon) Cache (repetisjon) Cache (repetisjon) Dagens temaer Cache (repetisjon) Mer om cache-hukommelse (kapittel 6.5 i Computer Organisation and Architecture ) Typer, bruksområder og oppbygging ROM Typer, bruksområder og oppbygging Hukommelsesbusser

Detaljer

TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose

TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose 1 TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose Anders Christensen (anders@ntnu.no) Rune Sætre (satre@ntnu.no) TDT4105 IT Grunnkurs

Detaljer

Dagens temaer. Mer om cache-hukommelse (kapittel 6.5 i Computer Organisation and Architecture ) RAM ROM. Hukommelsesbusser

Dagens temaer. Mer om cache-hukommelse (kapittel 6.5 i Computer Organisation and Architecture ) RAM ROM. Hukommelsesbusser Dagens temaer Mer om cache-hukommelse (kapittel 6.5 i Computer Organisation and Architecture ) RAM Typer, bruksområder og oppbygging ROM Typer, bruksområder og oppbygging Hukommelsesbusser 1 Cache (repetisjon)

Detaljer

Hva er en liste? Hvert element har en forgjenger, unntatt første element i listen. Hvert element har en etterfølger, unntatt siste element i listen

Hva er en liste? Hvert element har en forgjenger, unntatt første element i listen. Hvert element har en etterfølger, unntatt siste element i listen Lister Hva er en liste? Listen er en lineær datastruktur Hvert element har en forgjenger, unntatt første element i listen Hvert element har en etterfølger, unntatt siste element i listen I motsetning til

Detaljer

Indeksering. Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Treliknende strukturer Hashliknende strukturer Bitmapindekser

Indeksering. Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Treliknende strukturer Hashliknende strukturer Bitmapindekser UNIVERSITETET I OSLO Indeksering Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Treliknende strukturer Hashliknende strukturer Bitmapindekser Institutt for Informatikk INF30 3.3.2014

Detaljer

UNIVERSITETET I OSLO. Indeksering. Hvordan finne et element raskt? Institutt for Informatikk. INF Ellen Munthe-Kaas

UNIVERSITETET I OSLO. Indeksering. Hvordan finne et element raskt? Institutt for Informatikk. INF Ellen Munthe-Kaas UNIVERSITETET I OSLO Indeksering Hvordan finne et element raskt? Institutt for Informatikk INF3100 2.3.2010 Ellen Munthe-Kaas 1 Oversikt Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser

Detaljer

INF2220: Forelesning 3. Map og hashing Abstrakte datatyper (kapittel 3.1) Map (kapittel 4.8) Hashing (kapittel 5)

INF2220: Forelesning 3. Map og hashing Abstrakte datatyper (kapittel 3.1) Map (kapittel 4.8) Hashing (kapittel 5) INF2220: Forelesning 3 Map og hashing Abstrakte datatyper (kapittel 3.1) Map (kapittel 4.8) Hashing (kapittel 5) Map og hashing Ett minutt for deg selv: Hva vet du om maps/dictionarys og hashing fra tidligere?

Detaljer

Løsningsforslag Eksamen i TDT4190 Distribuerte systemer

Løsningsforslag Eksamen i TDT4190 Distribuerte systemer Institutt for datateknikk og informasjonsvitenskap Løsningsforslag Eksamen i TDT4190 Distribuerte systemer Faglig kontakt under eksamen: Norvald Ryeng Tlf.: 97 17 49 80 Eksamensdato: Fredag 6. juni 2014

Detaljer

INF2220: Forelesning 3

INF2220: Forelesning 3 INF2220: Forelesning 3 Map og hashing Abstrakte datatyper (kapittel 3.1) Map (kapittel 4.8) Hashing (kapittel 5) ABSTRAKTE DATATYPER 2 Abstrakte datatyper En ADT består av: Et sett med objekter. Spesifikasjon

Detaljer

Indeksering. Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Trestrukturer Hashliknende strukturer Bitmapindekser

Indeksering. Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Trestrukturer Hashliknende strukturer Bitmapindekser UNIVERSITETET I OSLO Indeksering Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Trestrukturer Hashliknende strukturer Bitmapindekser Institutt for Informatikk INF30 29.2.2016 Ellen

Detaljer

Hvordan lage en hjemmeside

Hvordan lage en hjemmeside Hvordan lage en hjemmeside En kort introduksjon til produksjon, editering og publisering av Torbjørn Meling Introduksjon Vi skal nå gå gjennom noen steg som forklarer med tekst hvordan man kan bruke Microsoft

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

IN1020. Minnehierarki

IN1020. Minnehierarki IN1020 Minnehierarki Hovedpunkter Bakgrunn Kort repetisjon Motivasjon Teknikker for hastighetsøkning Multiprosessor Økt klokkehastighet Raskere disker Økt hurtigminne Bruksområder Lagringskapasitet Aksesstider

Detaljer

TDT4160 Datamaskiner Grunnkurs 2008. Gunnar Tufte

TDT4160 Datamaskiner Grunnkurs 2008. Gunnar Tufte 1 TDT4160 Datamaskiner Grunnkurs 2008 Gunnar Tufte 2 Auka yting 3 Auka yting CPU 4 Parallellitet Essensielt for å øke ytelse To typer: 1) Instruksjonsnivåparallellitet Fleire instruksjonar utføres samtidig

Detaljer

Generiske mekanismer i statisk typede programmeringsspråk

Generiske mekanismer i statisk typede programmeringsspråk Generiske mekanismer i statisk typede programmeringsspråk Dette stoffet er Pensum, og det er bare beskrevet her Mye her er nok kjent stoff for mange INF5110 7. mai 2013 Stein Krogdahl 1 Hvordan kunne skrive

Detaljer

Oversikt. Historie Struktur Moderne UNIX systemer Moderne UNIX kernel struktur 1 UNIX. 2 Linux. 3 Process. 4 Process models

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

Detaljer

Testlig og binær form

Testlig og binær form 6 Filer: Motivasjon Kan ikke alltid gjenskape data eller regne ut ting på nytt Ofte behov for å lagre verdier som skal leses inn eller er beregnet i et program for senere bruk Data kan være av samfunnsmessig

Detaljer

Temaer til terminalserverinstallasjon

Temaer til terminalserverinstallasjon Temaer til terminalserverinstallasjon av JobOffice Momenter ved installasjon av JobOffice et klient -server miljø (mht database), og hvor klienten kjører på en eller flere terminalservere. JobOffice klient

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET 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

Detaljer

INF Algoritmer og datastrukturer

INF Algoritmer og datastrukturer INF2220 - Algoritmer og datastrukturer HØSTEN 2016 Ingrid Chieh Yu Institutt for informatikk, Universitetet i Oslo Forelesning 4: Prioritetskø og Heap Ingrid Chieh Yu (Ifi, UiO) INF2220 H2016, forelesning

Detaljer