Filhåndtering. Fysisk organisering av filer. Hva er en fil logisk sett? Eksempel: Post (record) orientert fil. Kjell Åge Bringsrud INF 103
|
|
- Olav Christoffersen
- 6 år siden
- Visninger:
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?
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
DetaljerGenerelt 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
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
DetaljerOppgave 2: Gå til roten (/) av systemet. Finn minst tre forskjellige måter å gå tilbake til hjemmekatalogen din på.
Løsningsforslag for oppgavene i operativsystemer, uke 43 (18.10-22.10) På terminalstue: Oppgave 1: List alle filer og kataloger under XVUELQ som har filnavn som begynner på b. OVXVUELQE Oppgave 2: Gå til
DetaljerFilsystemet 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
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) To hovedklasser
DetaljerFilsystemet 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
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å
DetaljerHå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
DetaljerHå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
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
DetaljerEn 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
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)
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:
DetaljerInnhold 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:
DetaljerTDT4110 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
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
DetaljerFlerveis 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
DetaljerFilsystemer. 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].
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
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
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
DetaljerFilbehandling. 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:
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
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
DetaljerProgrammeringssprå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
DetaljerNOTAT (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
DetaljerMå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
Detaljer6105 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
Detaljer6105 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
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
DetaljerC# (.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
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
DetaljerProgrammeringssprå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
DetaljerUNIVERSITETET. 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
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
DetaljerEn 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.
DetaljerGrunnkurs 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...-
DetaljerHashing. 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
DetaljerRepetisjon: 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
DetaljerPlan 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
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
DetaljerNOTAT (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
DetaljerJavas 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
DetaljerTDT4110 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
DetaljerLæ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
DetaljerProgrammeringssprå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
DetaljerINF 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
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
DetaljerAlg. 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,
DetaljerPlan. Oppgaver og repetisjon Eksempler med fikspunkt og induksjon: 1. sortering 2. divisjon 3. Heis? IN 315: Foilsett 9: Unity: Arkitekturer
Plan Tema: Ulike arkitekturer og avbildninger 1. asynkron arkitektur med felles variable 2. synkron arkitektur med felles variable 3. distribuert arkitektur med kanal-kommunikasjon 4. program-skjemaer
DetaljerEffektiv 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
DetaljerIN 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
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
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
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
DetaljerUNIVERSITETET. 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
DetaljerOversikt. Beskrivelse Bash. 1 UNIX shell. 2 Kommandolinje som brukergrensesnitt. 3 Input og output. 4 Bash builtins. 5 Linux utilities.
Oversikt UNIX shell 1 UNIX shell Beskrivelse Bash 2 Kommandolinje som brukergrensesnitt 3 Input og output 4 Bash builtins 5 Linux utilities Lars Vidar Magnusson () Forelesning i Operativsystemer 30.08.2011
DetaljerIntroduksjon 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
DetaljerFilterprogrammer 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
DetaljerFYS3240/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
DetaljerEt 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
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
DetaljerEksamen DAT 103. Oppgave 2. Kandidatnr.: 145 1) B 2) B 3) A 4) A 5) D 6) C 7) B 8) A 9) A 10) D
Eksamen DAT 103 Kandidatnr.: 145 Oppgave 1 1) B 2) B 3) A 4) A 5) D 6) C 7) B 8) A 9) A 10) D Oppgave 2 a) Et OS er den administrerende softwaren i en datamaskin. Den bygger på prinsippene om filhåndtering,
DetaljerTDT4105 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å
DetaljerProgrammeringssprå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
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
DetaljerForskjeller 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
DetaljerKurset 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,
Detaljerpublic 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
DetaljerFilterprogrammer 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
DetaljerAndre 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,
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
DetaljerFilsystemer 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
DetaljerSist 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:
DetaljerInnhold. 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
DetaljerLinux 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
DetaljerITPE/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
DetaljerLinklaget - 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
DetaljerOperativsystemer og nettverk
Løsningsforslag til eksamen i Operativsystemer og nettverk 04.06.2015 Oppgave 1: Generelt om Linux a) Det grunnleggende brukergrensesnittet i Linux er et tastaturbasert CUI (Commandline User Interface),
DetaljerDagens 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
DetaljerTDT4105 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
DetaljerDagens 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)
DetaljerHva 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
DetaljerIndeksering. 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
DetaljerUNIVERSITETET 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
DetaljerINF2220: 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?
DetaljerLø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
DetaljerINF2220: 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
DetaljerIndeksering. 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
DetaljerHvordan 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
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
DetaljerIN1020. Minnehierarki
IN1020 Minnehierarki Hovedpunkter Bakgrunn Kort repetisjon Motivasjon Teknikker for hastighetsøkning Multiprosessor Økt klokkehastighet Raskere disker Økt hurtigminne Bruksområder Lagringskapasitet Aksesstider
DetaljerTDT4160 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
DetaljerGeneriske 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
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
DetaljerTestlig 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
DetaljerTemaer 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
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1060 Introduksjon til operativsystemer og datakommunikasjon Eksamensdag: 8. desember 2004 Tid for eksamen: 14.30 17.30 Oppgavesettet
DetaljerINF 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