Inleiding Informatica, 2000-2001 College 9, H 8, sheetnr. 113 March, 2001 Basiscursus Informatica 98/991 Inleiding Informatica College 9, Brookshear hoofdstuk.

Slides:



Advertisements
Verwante presentaties
PROS2 Les 13 Programmeren en Software Engineering 2.
Advertisements

Geheugencapaciteit
Informatica klas 4 Hoofdstuk 1
Module 7 – Hoofdstuk 5 (1) SQL – een begin.
Informatieverwerkende systemen
Basiscursus Informatica SWI Theoriegedeelte Overzicht en H0 Richard Benjamins.
Kennismaking met de computerconfiguratie
Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 1.
Par. 3.3 Het geheugen.
Extern Geheugen Lol.
Hoofdstuk 8: Recursie.
Basiscursus Informatica, College 7, H 7 1 Basiscursus Informatica 98/991 Basiscursus Informatica College 7, Data Structures Brookshear H7 Richard.
PROS2 Les 11 Programmeren en Software Engineering 2.
OPSLAGMEDIA Evy Van Cleemputte.
1 Hashtabellen Datastructuren. 2 Dit onderwerp Direct-access-tabellen Hashtabellen –Oplossen van botsingen met “ketens” (chaining) –Analyse –Oplossen.
Base: bewerkingen 2 soorten - Oplopend- Aflopend.
Hashing Inhoud Hashing Hashtable Hash function Collision Toepassing van klassieke ADT’s, algoritmes en runtime overwegingen.
Datastructuren Analyse van Algoritmen en O
‘Inleiding programmeren in Java’ SWI cursus: ‘Inleiding programmeren in Java’ 4e college Woe 19 januari 2000 drs. F. de Vries.
Hoofdstuk 6: Controle structuren
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen College 5.
1 Datastructuren Zoekbomen II Invoegen en weglaten.
Visibility-based Probabilistic Roadmaps for Motion Planning Tim Schlechter 13 februari 2003.
 Ongeveer auto’s in Nederland  Query: zoek op kenteken  Aannames ◦ Een tuple (record) kost ongeveer 400 bytes ◦ Een disk block bevat 8.
De computer: Hardware Het beeldscherm Het toetsenbord De muis
De grafiek van een lineair verband is ALTIJD een rechte lijn.
Oefeningen F-toetsen ANOVA.
Geheugenbeheer ICT Infrastructuren hoofdstukken 7 en 8.1.
Computers en Visueel Gehandicapten
Verdieping Programmeren in Java - deel 1 college 6 mei 2001.
Opleiding ICT © J.W. Jonker Dia 1/16 Systemen Besturingssoftware Windows XP Mark van Heck.
Numerieke Natuurkunde
MICPRG Les 11 Microcontroller Programmeren in C. 112 Datastructuren in C Werkgeheugen (PC en microcontroller): Statische datastructuren (vaste grootte):
Basiscursus Informatica, College 3, H 3 1 Basiscursus Informatica 98/991 Basiscursus Informatica College 3, Operating Systems and Networks Brookshear.
Optuigen van datastructuren
Bluetooth Communicatie tussen computer en Brick Computer zet de connectie op, Brick wacht Enkel communicatie van de Brick naar de computer Lejos API: NXTConnecion.
Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 3.
Presentatie Het BIOS (wat is dat) Rondkijken in het BIOS
Inleiding Informatica, College 6, H 6 – sheet nr. 117 October :27 Basiscursus Informatica 98/991 Inleiding Informatica College 7, Brookshear.
Inleiding Informatica
Inleiding Informatica, College 5, H 5- sheet nr. 117 October :19 Basiscursus Informatica 98/991 Inleiding Informatica College 6, Brookshear.
Inleiding Informatica, College 4, H 4 – sheet nr. 117 October :17 Basiscursus Informatica 98/991 Inleiding Informatica College 5 Brookshear.
Basiscursus Informatica, College 8, H 8 1 Basiscursus Informatica 98/991 Basiscursus Informatica College 8, File Structures Brookshear H8 Richard.
Basiscursus Informatica, College 5, H 5 1 Basiscursus Informatica 98/991 Basiscursus Informatica College 5, Programming Languages Brookshear H5 Richard.
Basiscursus Informatica, College 6, H 6 1 Basiscursus Informatica 98/991 Basiscursus Informatica College 6, Software Engineering Brookshear H6 Bob.
Power PC Assembler. Assembler toolkit bevat Assembler zelf Linkerlibrarian.
paragraaf 4a Tekst in ASCII
Hashtabellen Datastructuren. 2 Dit onderwerp Direct-access-tabellen Hashtabellen –Oplossen van botsingen met “ketens” (chaining) –Analyse –Oplossen van.
CLOUD COMPUTING Wat is het? Wie zijn de aanbieders? Is het veilig? Wat kun je er mee? Robert K Bol PVGE Best.
01/10/2013. Veel voorkomende soorten:  Big header: een grote, opvallende header, die +/- 1/3 van pagina inneemt  Minimale header: een sobere header,
Schijvenbeheer Disk Management t/m
Basiscursus Informatica, College 9, H 9 1 Basiscursus Informatica 98/991 Basiscursus Informatica College 9, Database Structures Brookshear H9 Richard.
Basiscursus Informatica, College 4, H 4 1 Basiscursus Informatica 98/991 Basiscursus Informatica College 4, Algoritmes Brookshear H4 Richard Benjamins.
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 9(1): Virtual.
Inhoud college Lijnbalancering Comsoal Random Sequence Generation
Tircms02-p les 4 Preprocessor In- en uitvoer Diversen.
Geheugencapaciteit
H51PHOTOSHOP 1 Les 4 Hagar: Vullen. audiovisueel centrum meise 2 Overzicht Elementaire handelingen  Vullen  Patronen.
Win XP alternatieven Nieuwe Laptop of PC Win 8 installeren op oude computer Tablet of i-pad Apple Macintosh Blijven werken met Win XP Linux.
Computervaardigheden Hoofdstuk 4 — Databank (Basis)
© imec 2000 © imec 2001 MAX+PLUS II Installatieprocedure.
Welkom! maandag 16 November 2015 Les B-2.
Wat is SQL (1)? SQL (Structured Query Language):  is een zeer krachtige taal met een beperkt vocabulaire (aantal ‘woorden’)  is declaratief (‘WAT’ niet.
Digitale gegevens Drs. Ing. Rainier Kock 1. Vorige les 2 Computers werken met elektrische schakelingen Schakelaar aan = 1, uit = 0 Tekst, geluid en beeld.
Huiswerkcontrole tabel 3
3 Hardware 3.1 De processor en intern geheugen
LauwersCollege Buitenpost Informatica
Informatieverwerkende systemen
© 2001, SJB Mol Walter Baeckelmans
Python – For loop + strings
Transcript van de presentatie:

Inleiding Informatica, College 9, H 8, sheetnr. 113 March, 2001 Basiscursus Informatica 98/991 Inleiding Informatica College 9, Brookshear hoofdstuk 8: File Structures

Inleiding Informatica, College 9, H 8, sheetnr. 213 March, 2001 Basiscursus Informatica 98/992 Overzicht college 9 n 1. Rol van besturingsysteem n 2. Sequentiele files n 3. Text files (sequentieel) n 4. Indexed files n 5. Hashed files

Inleiding Informatica, College 9, H 8, sheetnr. 313 March, 2001 Basiscursus Informatica 98/993 Volgorde van behandeling n Hoofdstuk 7: organisatie van gegevens in vluchtige werkgeheugen, gezien als interne programma datastructuren n hoofdstuk 8: organisatie van gegevens op de harde schijf, gezien als de normale programma I/O n hoofdstuk 9: organisatie van complexe gegevenstructuren, met speciale software, gezien als data modellen

Inleiding Informatica, College 9, H 8, sheetnr. 413 March, 2001 Basiscursus Informatica 98/994 OS en harde schijf n Opslag op HD in eenheden ä logische versus fysieke eenheden (zie: disk dokter) n OS organiseert deze opslag ä bestandsgegevens in tabel: file descriptor (fcb) ä aanmaak, openen, afsluiten, verwijderen n OOP: bestand wordt gezien als object ä methoden voor aanmaak, toegang, etc.

Inleiding Informatica, College 9, H 8, sheetnr. 513 March, 2001 Basiscursus Informatica 98/995 Abstractie n Voor gebruiker is kennis over fysieke opslag van bestand niet nodig ä standaard procedures, commando’s n OS communiceert met programma procedures en moet weten waar het overgaat ä structuur van file, keyfield, huidige positie, soort toegang (read, write), etc. n Beperkte resources ä vrijgeven van bestanden van belang

Inleiding Informatica, College 9, H 8, sheetnr. 613 March, 2001 Basiscursus Informatica 98/996 B.v. vanuit progr. taal open (unit=10, file=‘abcd’, status=old, access=sequential) vraagt aan OS om file descriptor te maken voor de file ‘filename’ om iets met de file te doen close (unit=10) file ‘10’ is bijgewerkt en wordt afgesloten Verschil interne en externe file naam: unit=10 versus abcd Komt door verschillende syntax programmeertalen en OS

Inleiding Informatica, College 9, H 8, sheetnr. 713 March, 2001 Basiscursus Informatica 98/997 Overzicht college 9 n 1. Rol van besturingsysteem n 2. Sequentiële files n 3. Text files (sequentieel) n 4. Indexed files n 5. Hashed files

Inleiding Informatica, College 9, H 8, sheetnr. 813 March, 2001 Basiscursus Informatica 98/998 Sequential file n Gegevensopslag in serie n bv audio, video, teksten, programmacode ä volgorde wordt afgedwongen n een veel voorkomende organisatie n slecht voorbeeld: personeelsbestand n (waarom?)

Inleiding Informatica, College 9, H 8, sheetnr. 913 March, 2001 Basiscursus Informatica 98/999 Sequential file: opbouw n personeels-administratie-systeem ä personeelsgegevens voor alle medewerkers ä loop een voor een af en zoek informatie op ä sequentiële file n File = Record1, Record2,..., Recordn, EOF ä Andersen, Benjamins, Brouwer,... n Record = Field1, Field2,..., Fieldn ä Achternaam, adres, personeelsnr, dienstjaren

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9910 Sequential file: visueel n Conceptueel ä toegang tot informatie in file is sequentieel n Fysiek ä records kunnen verspreid over disk zijn Rec #1 Rec #2 Rec #3 Rec #4 EOF disk sector 1: rec#1, #2 sector 2: rec#3, #4 FILE INFO 1-2 sector1 3-4 sector

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9911 Sequential files: bewerken n Personeels-administratie updaten: ä zoek een medewerker in de file ä werk gegevens bij ä zoek een andere medewerker n Niet erg efficiënt ä elke keer opnieuw zoeken vanaf begin n Beter: bij te werken gegevens in zelfde volgorde als records in sequential file

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9912 Keyfield n Sequentiele files kunnen zijn geordend volgens een keyfield ä alphabetisch ä numeriek (bv. personeelsnummer) n Sorteer bij te werken gegevens volgens zelfde keyfield ä gegevens bijgewerkt zonder te zoeken van begin

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9913 Toegang sequentiele files n Elke programmeertaal komt met primitieven voor sequential files ä Pascal: read(File, Record), write(File, Record) n Lokatie informatie is impliciet ä record dat gelezen wordt, is het volgende record Rec #1 Rec #2 Rec #3 Rec #4 EOF

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9914 Merging van seq. files n Gegeven: studenten file (master file), sorted sorted nieuwe studenten (transaction file) Keyfield: collegekrtno n Gevraagd: nieuwe studenten-file merge eof eof eof mastertransaction

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9915 FAT n FAT = File Allocation Table n link tussen clusters en bestandsnamen ä in directory: koppeling bestandsnaam en nummer eerste cluster ä in FAT-tabel: clusternummers van vervolg ä clusters: groepen van sectoren ä 16bits FAT = 2 16 clusters = max 128 Mb ä 32 bits FAT = 2 32 clusters = max 9 Terabytes

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9916 Overzicht college 9 n 1. Rol van besturingsysteem n 2. Sequentiele files n 3. Text files (sequentieel) n 4. Indexed files n 5. Hashed files

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9917 Tekstbestanden n Minimaal logisch record van 1 teken = 1 byte n Record = 1 Field = 1 Byte ä 1 byte = 1 tekstsymbool of 1 controle teken (^m) n Alternatieve conceptualisatie: 1 record = 1 regel (eol) A B C ….. eol

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9918 ASCII - Unicode n ASCII bestand = 1 byte per symbool, max 256 verschillende tekens n Unicode = 2 bytes per symbool, max verschillende tekens n Tekst in Java gebaseerd op Unicode: alle talen representeerbaar

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9919 Binary file n Elk bestand dat geen tekstbestand is ä goed overdraagbaar tussen verschillende OSs n Einde regel code voor tekstbestanden per OS verschillend: ä Unix: line feed + carriage return ä Windows: alleen linefeed ä Apple: alleen carriage return

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9920 Manipulatie van text files n In massa-opslag: tekstfile verdeeld in multiple-byte eenheden die fysieke records vormen n Manipulatie (read/write) door software dmv buffer in centrale geheugen ä read van bytes: -retrieve aantal fysieke records -stop in buffer ä write van text file: -verzamel bytes in buffer - als fysiek record gevuld - schrijf weg naar disk

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9921 Buffer disk read write programma buffer File Info..... sector sector Wat gebeurt er als we om een stuk tekst vragen en - zit al in buffer? - zit niet in buffer? Wat gebeurt er als een bestand meerdere keren geopend wordt?

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9922 Abstracties n In programeertalen niet alleen input/output op basis van tekens van tekstbestanden: ä readChar ä readLine ä readInteger ä readFloat ä readBoolean n tekenconversie door programmeertaal

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9923 Overzicht college 9 n 1. Rol van besturingsysteem n 2. Sequentiele files n 3. Text files (sequentieel) n 4. Indexed files n 5. Hashed files

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9924 Geïndexeerde files n Sequentieel: als je een willekeurig record wilt, is het erg tijdrovend om alle records af te lopen n Idee geïndexeerde files: ä voeg aan het bestand een zoeklijst toe ä plaats alle recordsleutels in die lijst ä voorzie elke sleutel van de recordlocatie n Bv muziek CD met nummer index

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9925 Index fundamentals n Index is lijst van paren: zoeksleutel - positie n Index evt los van bestand n meerdere indexen mogelijk n sequentieel zoeken blijft mogelijk n partiële index: getrapte benadering n inverted file

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9926 (Multiple) index disk key: collegekrtno File met twee indexen: inverted file secondary key: naam Andersen Brouwer Colijn Fortuin..... primary

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9927 Andere kant medaille n Geïndexeerde bestanden hebben voordeel van directe (en sequentiële) toegang, maar... n nadeel als records toegevoegd en verwijderd worden ä updaten index, kost tijd ä multiple indexes kost nog meer tijd n Merk op: directory structuur in OS is ook index

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9928 Index organisatie n Index komt in centraal geheugen (vanaf disk) n Moet niet te groot zijn, anders past er niet in n Als te grote index ä partial index –keyfield wijs naar segment met aantal records ipv naar 1 record ä hiërarchische index –keyfield verwijst naar andere index (vgl directory stucture in OS)

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9929 Partial index Waarom gebruik je de grootste key om een segment te repre- senteren? Index keysegment locatie File opgedeeld in segmenten

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9930 Hierarchische index K U Z key subindex File opgedeeld in segmenten D G K O R U X Y Z key subindex Index B C D E F G H I J K L M N O

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9931 Overzicht college 9 n 1. Rol van besturingsysteem n 2. Sequentiele files n 3. Text files (sequentieel) n 4. Indexed files n 5. Hashed files

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9932 Hashed files n Sequential files hebben sequentiële toegang n Indexed files hebben zowel directe (random) als sequentiële toegang ä overhead van bijhouden index n Hashed files hebben alleen directe toegang (random access) ä zonder overhead van index ä locatie bepaald mbv hash algoritme

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9933 Hash principe n Bestandsruimte ingedeeld in “buckets” n Zoekruimte beperkt tot 1 bucket n Hash-algorimte rekent recordsleutel om naar bucket-nummer n Meerdere records in 1 bucket Key Hash algoritme {0,..., n} bucket#0 bucket#1 bucket#n.....

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9934 Hashing: key % 40 Keys : 14, 39, 93, 94, 133, %40= 14 39%40= 39 93%40= 13 94%40= %40= %40= 15 remainders = buckets #12#13#14#15# hash algoritme 39

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9935 Sleutelwaarde conversie Key field waarde:23x3z ASCII: Equivalent in 10-basis: Remainder na % 40: 2 Bucket nummer:2

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9936 Distributie-problemen n Als keys een bepaald patroon vertonen: ä bv. 5, 10, 20,... n En ze hebben een factor gemeenschappelijk met het aantal buckets ä bv. 5 n Dan worden alleen bepaalde buckets gevuld ä bucket 0 n Keys clusteren in bepaalde buckets ä retrieval binnen bucket is sequentieel

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9937 Clusteren n Een priemgetal als deler geeft een evenwichtiger resultaat, waarom? n Clusteren kan wel verminderd worden, maar niet voorkomen ä bij 8 x insert en 41 buckets kans op leeg bucket: (41/41)(40/41)(39/41)...(34/41) =.482 ä dus: kans op twee keys in zelfde bucket is al groter dan 0.5 bij 8 keys ä meerdere keys naar zelfde bucket: collision

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9938 Priemgetal deler ä 10%40=10 ä 50%40=10 ä 90%40=10 ä 130%40=10 ä 170%40=10 ä 210%40=10 ä 250%40=10 ä 290%40=10 ä 330%40=10 ä 370%40=10 ä 10%41=10 ä 50%41=9 ä 90%41=8 ä 130%41=7 ä 170%41=6 ä 210%41=5 ä 250%41=4 ä 290%41=3 ä 330%41=2 ä 370%41=1

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9939 Section overflow n Grote kans op collisions ä dus altijd rekening houden met clustering ä maatregelen voor mogelijke problemen n Overflow: ä bucket is vol, maar er wordt nog een key bij gehashed n Oplossing: overflow sectie gelinked aan bucket n Nadeel: efficiëntie gaat naar beneden ä sequentiële toegang in overflow sectie

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9940 Overflow #0 #1 #2 #3 #4 NIL Overflow opslaggebied Overflow pointers Opslag buckets

Inleiding Informatica, College 9, H 8, sheetnr March, 2001 Basiscursus Informatica 98/9941 Nadelen hashed files n Organisatie van buckets n vinden van goed algoritme n weinig flexibele, gefixeerde oplossing n onhandig bij hoge record-turn-around