Lageradministration Paging og segmentering
|
|
- Marie Hedegaard
- 6 år siden
- Visninger:
Transkript
1 Lageradministration Paging og segmentering 1
2 Re: Logiske/fysiske adresser... Proces-struktur = kode og data for en proces 4G En proces tilgår sin proces-struktur via et logisk/virtuelt adresserum, fx 0, 1,..., 4G OS administrerer placering af processtrukturer i det fysiske lager 0 OS og MMU administrerer oversættelse af logiske adresser til fysiske adresser 2
3 OS som virtuel maskine Hardwareresurser deles mellem programmer under afvikling, herunder lageret: Hvordan stilles et virtuelt lager til rådighed for hver proces? 3
4 Virtuel hukommelse (1) Virtuelt adresserum 4G 1G 0 Fysisk lager 0 Administration af afbildning: Programmør, bibliotek, OS, eller hardware? Overlays, segmenter eller paging? 4
5 Virtuel hukommelse (2) Målsætning For hver proces skabes en illusion af et stort lineært virtuelt lager... Relevante dele af det virtuelle adresserum afspejles automatisk og transparent i det fysiske lager OS og MMU oversætter virtuelle adresser til fysiske adresser 4G 0 4G 0 4G 0 5
6 Paging Det virtuelle adresserum opdeles i pages med fast størrelse... Fysisk lager opdeles i page frames af samme størrelse... Pages indlæses i page frames... OS og MMU skal administrere en effektiv oversættelse mellem virtuelle og fysiske adresser... 6
7 Adresseoversættelse LD AC, 0 LD AC, 8192 LD AC, 8192 LD AC, LD AC, LD AC, LD AC, Page fault Virtuel_adresse = page pagesize + offset Fysisk_adresse = pageframe pagesize + offset page = va div pagesize offset = va mod pagesize 7
8 Paging og adresseformater Page No. Address map Frame No. Adresseoversættelse: Virtuel adresse: va = (p,w) Fysisk adresse: pa = (f,w) Virtual memory Physical memory p f w antal pages i VM, 2 p antal frames i PM, 2 f page/frame size, 2 w 8
9 Adresseoversættelse med frame-tabel En global frame-tabel FT angiver for hver page frame hvilken proces der ejer den og hvilket page-nummer det er for den proces Hvis FT[f]=(ID,p) er frame f ejet af proces ID som page nummer p. Omregning: address_map(id, p, w) { pa = UNDEF; for (f=0; f<f; f++) if (FT[f].ID==ID && FT[f].page==p) { pa = (f+w); return pa; } return pa; } 9
10 [Click] Hvorfor er dette helt tosset? Eller er det? A. Det virker ikke hvis to processer bruger samme virtuelle adresse B. Det kører alt for langsomt C. Det tager alt for meget plads D. Ved ikke 10
11 Adresseoversættelse med page-tabel En page-tabel PT er tilknyttet til hvert virtuelt adresserum; PT for den kørende proces angives af et register PTR PT[p] er frame som side p er indlæst i, hvis indlæst... Givet (p,w) slås op i den aktuelle page-tabel: address_map(p, w) { pa = *(PTR+p)+w; } return pa; 11
12 Adresseoversættelse med page-tabel En page-tabel PT er tilknyttet til hvert virtuelt adresserum; PT for den kørende proces angives af et register PTR PT[p] er frame som side p er indlæst i, hvis indlæst... Givet (p,w) slås op i den aktuelle page-tabel: address_map(p, w) { pa = *(PTR+p)+w; } return pa; Effektivt, men bruger meget plads... 11
13 [Q/A] Hvorfor skal PTR være et register? 12
14 Page-tabel og effektivitet Problem: Hvert opslag i page-tabellen skal være effektivt Løsning: Gem data i det hurtigst mulige lager:... i MMU'en og specialiseret cache... så selve tabellerne i kernen kun sjældent læses 13
15 MMU og mini-page-tabel Virtuel_adresse = page pagesize + offset Fysisk_adresse = frame pagesize + offset page = va div pagesize offset = va mod pagesize 14
16 Translation Lookaside Buffers Pagetabellen lagres i OS-delen af det fysiske lager men udvalgte dele gemmes i et hurtigere associativt lager 15
17 Translation Lookaside Buffers Pagetabellen lagres i OS-delen af det fysiske lager men udvalgte dele gemmes i et hurtigere associativt lager Hurtig adgang til de senest brugte indgange i page-tabel 15
18 Page-tabel og plads Problem: Pagetabellen kan blive stor... et 2 32 =4 GB lager, opdeles i 2 20 = KB sider... altså indgange, fylder mindst 4 MB... per proces! Løsning: Niveaudeling, med mulighed for at lade dele være udefinerede, plus cache 16
19 Page-tabel i flere niveauer (1) 4GB opdeles i 2 10 page-tabeller, som hver har KB pages 4096M Virtuelt adresserum 0M 17
20 Page-tabel i flere niveauer (1) 4GB opdeles i 2 10 page-tabeller, som hver har KB pages 4096M Virtuelt adresserum NB: undgå at gemme tomme niveau 2 tabeller i fysisk lager... 0M 17
21 Page-tabel i flere niveauer (2) 4GB opdeles i 2 10 page-tabeller, som hver har KB pages Paging af page-tabeller: Hver tabel fylder 4KB, så den kan være på en enkelt side Top-level page-tabel fastholdes i OS-delen af fysisk lager, mens second-level tabeller pages ind efter behov 4096M 0M Virtuelt adresserum 18
22 Placering af sider i fysisk lager Statisk: Page-tabellen initialiseres ved programstart; giver en statisk indlejring af dele af stort virtuelt adresserum... Dynamisk Demand Paging: Sider skabes/indlæses efter behov; hvis der spørges efter en side der ikke p.t. er i lageret fås en page fault... address_map(p, w) { if (resident(*(ptr+p))) { } pa = *(PTR+p)+w; return pa; } else page_fault; 19
23 Placering af sider i fysisk lager Statisk: Page-tabellen initialiseres ved programstart; giver en statisk indlejring af dele af stort virtuelt adresserum... Dynamisk Demand Paging: Sider skabes/indlæses efter behov; hvis der spørges efter en side der ikke p.t. er i lageret fås en page fault... address_map(p, w) { if (resident(*(ptr+p))) { pa = *(PTR+p)+w; return pa; } else page_fault; } Hvad sker der ved et page fault...? 19
24 Håndtering af page fault LD AC, Page fault MMU laver trap til OS Gem processens tilstand Bestem page der ønskes Find ledig pageframe Indlæs ønsket page fra disk Opdater pagetabel Proces kan køre igen 20
25 Håndtering af page fault LD AC, Page fault MMU laver trap til OS Gem processens tilstand Bestem page der ønskes Find ledig pageframe Ingen ledig frame Indlæs ønsket page fra disk Opdater pagetabel Proces kan køre igen 20
26 Håndtering af page fault LD AC, Page fault MMU laver trap til OS Gem processens tilstand Bestem page der ønskes Find ledig pageframe Indlæs ønsket page fra disk Opdater pagetabel Ingen ledig frame Bestem page der skal ud Skriv denne page til disk Proces kan køre igen 20
27 spørgsmål omkring virtual memory? 21
28 Page replacement algoritmer Skal vælge en page uden at kende fremtiden... Global replacement Betragter alle sider i lageret - Optimal (MIN) - Random - First-In/First-Out (FIFO) - Least recently used (LRU) - Second-chance - Third-chance... Local replacement Betragter kun sider for den aktuelle proces - Optimal (VMIN) - Working set replacement... 22
29 Page replacement algoritmer Skal vælge en page uden at kende fremtiden... Global replacement Betragter alle sider i lageret - Optimal (MIN) - Random - First-In/First-Out (FIFO) - Least recently used (LRU) - Second-chance - Third-chance... Local replacement Betragter kun sider for den aktuelle proces - Optimal (VMIN) - Working set replacement hvis working set kan være i fysisk lager så ok, ellers thrashing... 22
30 Page replacement, eksempel (1) Optimal (MIN): Fjern side som tilgås om længst tid... Time t RS c a d b e b a b c d Frame 0 a a a a a a a a a a d Frame 1 b b b b b b b b b b b Frame 2 c c c c c c c c c c c Frame 3 d d d d d e e e e e d IN e d OUT d a... bruges som reference ved analyse af andre algoritmer... 23
31 Page replacement, eksempel (1) Optimal (MIN): Fjern side som tilgås om længst tid... Time t RS c a d b e b a b c d Frame 0 a a a a a a a a a a d Frame 1 b b b b b b b b b b b Frame 2 c c c c c c c c c c c Frame 3 d d d d d e e e e e d IN e d OUT d a... bruges som reference ved analyse af andre algoritmer... Problem: Reference sekvens er ukendt... 23
32 Page replacement, eksempel (2) FIFO: Fjern den ældste side, meget simpel... Time t RS c a d b e b a b c d Frame 0 >a >a >a >a >a e e e e >e d Frame 1 b b b b b >b >b a a a >a Frame 2 c c c c c c c >c b b b Frame 3 d d d d d d d d >d c c IN e a b c d OUT a b c d e 24
33 Page replacement, eksempel (2) FIFO: Fjern den ældste side, meget simpel... Time t RS c a d b e b a b c d Frame 0 >a >a >a >a >a e e e e >e d Frame 1 b b b b b >b >b a a a >a Frame 2 c c c c c c c >c b b b Frame 3 d d d d d d d d >d c c IN e a b c d OUT a b c d e Problem: tager ikke hensyn til hvis gamle sider bruges... 24
34 Page replacement, eksempel (3) LRU: Fjern den side som er brugt for længst tid siden... Time t RS c a d b e b a b c d Frame 0 a a a a a a a a a a d Frame 1 b b b b b b b b b b b Frame 2 c c c c c e e e e e d Frame 3 d d d d d d d d d c c IN e c d OUT c d e Q.end d c a d b e b a b c d c d c a d b e b a b c b b d c a d d e e a b Q.head a a b b c a a d d e a 25
35 Page replacement, eksempel (4) VMIN: Fjern side som ikke skal bruges i 'vinduet' (3)... Time t RS d c c d b c e c e a d Page a Page b Page c Page d Page e IN c b e a d OUT d b c e a Problem: Reference sekvens er ukendt... 26
36 Page replacement, eksempel (5) WS: Fjern side som ikke er brugt i 'vinduet' (-3).. Time t RS a c c d b c e c e a d Page a Page b Page c Page d Page e IN c b e a d OUT e a d b 27
37 Page replacement, eksempel (5) WS: Fjern side som ikke er brugt i 'vinduet' (-3).. Time t RS a c c d b c e c e a d Page a Page b Page c Page d Page e IN c b e a d OUT e a d b Problem: Vanskelig at implementere effektivt... 27
38 [Click] (WS) Og hvorfor var det lige vi havde + og her? A. Fordi + angiver at en side bliver allokeret og at en side bliver frigivet B. Fordi det er ligegyldigt hvilke frames der er tale om C. Fordi + angiver at en frame bliver allokeret og at en frame bliver frigivet D. Ved ikke 28
39 [Click] (WS) Og hvorfor var det lige vi havde + og her? Time t RS a c c d b c e c e a d Page a Page b Page c Page d Page e IN c b e a d OUT e a d b A. Fordi + angiver at en side bliver allokeret og at en side bliver frigivet B. Fordi det er ligegyldigt hvilke frames der er tale om C. Fordi + angiver at en frame bliver allokeret og at en frame bliver frigivet D. Ved ikke 28
40 spørgsmål omkring page replacement? 29
41 Lageret er måske stort, men... Problem: Placering og beskyttelse af uafhængige data i et stort lager Løsning: Eksplicit opdeling af lageret i områder: Segmenter... jvf. JVM's lager: (constant pool, 12), (stack, 24),... 30
42 Segmentering (1) Opdeling af lageret i uafhængige adresserum, segmenter: Virtuel_adresse = (segmentnummer, offset) = (s,w) OS administrerer placering af segmenter i lageret 31
43 Segmentering (2) Et segment er en sammenhængende blok i det fysiske lager... En segment-tabel udpeger startadresse for de enkelte segmenter. Den aktuelle segmenttabel udpeges af et register STR... Adresseoversættelse: address_map(s, w) { if (resident(*(str+s))) { pa = *(STR+s)+w; return pa; } else segment_fault; } 32
44 Segmentering (2) Et segment er en sammenhængende blok i det fysiske lager... En segment-tabel udpeger startadresse for de enkelte segmenter. Den aktuelle segmenttabel udpeges af et register STR... Adresseoversættelse: address_map(s, w) { if (resident(*(str+s))) { pa = *(STR+s)+w; return pa; } else segment_fault; } Ekstern fragmentering 32
45 Segmentering med paging Hvert segment opdeles i sider... Virtuel adresse: va = (s,p,w) Fysisk adresse: pa = *(*(STR+s)+p)+w s p w antal segmenter antal pages pr. segment sidestørrelsen 33
46 Segmentering med paging Hvert segment opdeles i sider... Virtuel adresse: va = (s,p,w) Fysisk adresse: pa = *(*(STR+s)+p)+w s p w antal segmenter antal pages pr. segment sidestørrelsen To tabelopslag ved adresseoversættelse... 33
47 Store segment- og page-tabeller Tabellerne kan blive ret store Opdel ST/PT i pages Hold styr på disse via en ekstra page-tabel Fx paging af segment-tabel Opdel segment-tabel i sider Segment directory udpeger ST pages va = (s1,s2,p,w) pa = *(*(*(STR+s1)+s2)+p)+w 34
48 Store segment- og page-tabeller Tabellerne kan blive ret store Opdel ST/PT i pages Hold styr på disse via en ekstra page-tabel Fx paging af segment-tabel Opdel segment-tabel i sider Segment directory udpeger ST pages va = (s1,s2,p,w) pa = *(*(*(STR+s1)+s2)+p)+w 3 tabelopslag ved adresseoversættelse... 34
49 Resume - Paging og segmentering 35
50 spørgsmål omkring segmentering? 36
51 Deling af lager mellem processer (1) Hvorfor? (1) reduceret lagerforbrug, (2) interproces-kommunikation Kan f.eks. gøres vha. relokerings-registre... 37
52 Deling af lager mellem processer (1) Hvorfor? (1) reduceret lagerforbrug, (2) interproces-kommunikation Kan f.eks. gøres vha. relokerings-registre... Vigtigt: Programkode må ikke modificeres under afvikling... 37
53 Deling af lager mellem processer (2) Hvorfor? (1) reduceret lagerforbrug, (2) interproces-kommunikation Eller ved at flere page-tabeller udpeger samme page-frame... 38
54 Deling af lager mellem processer (2) Hvorfor? (1) reduceret lagerforbrug, (2) interproces-kommunikation Eller ved at flere page-tabeller udpeger samme page-frame... Tidskrævende når en delt side swappes ud af lageret... 38
55 Opsummering Virtuel hukommelse Virtuelle vs. fysiske adr., paging, page/frame tables MMU, TLB, page faults Page replacement algoritmer Globale/lokale alg., MIN, FIFO, LRU, VMIN, WS Segmentering Segmenter, segmenter med paging Deling af lager Pas på pointere fra delt område 39
56 Opsummering Virtuel hukommelse Virtuelle vs. fysiske adr., paging, page/frame tables MMU, TLB, page faults Page replacement algoritmer Globale/lokale alg., MIN, FIFO, LRU, VMIN, WS Segmentering Segmenter, segmenter med paging Deling af lager Pas på pointere fra delt område... samspil mellem hardware (MMU) og software (OS)... 39
Lageradministration. dopsys
Lageradministration 1 Lageret i maskinarkitekturen Beregningsenhed, lagre (registre, RAM, disk), ydre enheder 2 Abstraktion over typerne: et hierarki En maskine har flere forskellige lagre Operativsystemet
Læs mereSider og segmenter. dopsys 1
Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den
Læs mereLageret i maskinarkitekturen. Beregningsenhed, lagre (registre, RAM, disk), ydre enheder
Lageradministration Lageret i maskinarkitekturen Beregningsenhed, lagre (registre, RAM, disk), ydre enheder Abstraktion over typerne: et hierarki En maskine har fl ere forskellige lagre Operativsystemet
Læs mereSider og segmenter. dopsys 1
Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den
Læs mereLageradministration Intel Pentium og Unix/Linux
Lageradministration Intel Pentium og Unix/Linux 1 Lageradministration Multiprogrammering Håndtering af flere procesbilleder i lageret Virtuelt lager og swapping Gennemsigtig udnyttelse af disk som udvidelse
Læs mereStyresystemer og tjenester
Styresystemer og tjenester Indhold: 1. Introduktion til styresystemer. 2. Processer og tråde. 3. Synkroniseringsmetoder og InterProcesCommunikation. 4. Memory management. 5. I/O og devicedrivere. 6. Filsystemer.
Læs mereVirtuel Hukommelse. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet
Virtuel Hukommelse 1 Niels Olof Bouvin Institut for Datalogi Aarhus Universitet Oversigt Formålet med virtuel hukommelse Organisering af virtuel hukommelse Håndtering af virtuel hukommelse 2 Minimal computerarkitektur
Læs mereOperativsystemer of C Efterår 2013 Virtuel hukommelse (kap. 9)
Operativsystemer of C Efterår Virtuel hukommelse (kap. 9) 8// Planen for idag q Virtuel hukommelse. q Demand paging / page faults. q Sideudskiftningsalgoritmer. q Rammeallokering til processer. Ø Øvelser:
Læs mereOversigt. Operativsystemer [6]: Virtuelt lager. Virtuel lager. Virtuelt lager. Virkemåde. Virtuelt lager eksempel virtuelt lager
Operativsystemer [6]: Virtuelt lager Datalogi 1F Forår 2003 Jørgen Sværke Hansen cyller@diku.dk Oversigt Hvad er virtuelt lager Mekanismen bag tvungent sideskift Politikker (strategier) for tvungent sideskift:
Læs mereDATALOGI 1F. Skriftlig eksamen tirsdag den 10. juni 2003 1 25 % 2 10 % 3 25 % 4 10 % 5 30 %
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1F Skriftlig eksamen tirsdag den 10. juni 2003 Opgave Vægtning 1 25 % 2 10 % 3 25 % 4 10 % 5 30 % Alle de sædvanlige hjælpemidler må benyttes,
Læs mere1 Operativsystemer oversigt
1 Operativsystemer oversigt Hvorfor OS virtualisering Abstraktion (processer, virtual hukommelse, filer) Kernel mode og user mode Systemkald (slide 31) Interrupts At levere en simplere model af computeren
Læs mereFilsystemer: Implementation. dopsys
Filsystemer: Implementation 1 Hvor lagres filer?... filer lagres typisk på en harddisk...... head, track, sector, cylinder... Rotationshastighed fx 10000 RPM, Læse/skrivehast. 50 MB/s 2 Adgang til harddisken
Læs merePlanen for i dag. Logiske og fysiske adresser. Systemarkitektur. Binding af programkode til lager. Hardware understøttelse af lageradministration
Planen for i da Bindin af proramkode til laer Laerallokerin Sidebaseret laeradministration Sementer Sementer kombineret med sider Bindin af proramkode til laer De relative adresser i proramkoden kan bindes
Læs mereAlgorithms & Architectures II
Algorithms & Architectures II Algorithms & Architectures II Jens Myrup Pedersen Hans Peter Schwefel Kursusholdere Dagens lektion Overordnet mål: At etablere en forståelse for hvordan hardware og hardwarearkitekturer
Læs mereInterconnect. Front end interface
Direct Remote Access to Devices (DREAD) Introduktion These Metode Baggrund Prototypen Resultater Konklusioner Kritik og fremtidigt arbejde 5. december 2000 Direct Remote Access to Devices slide 1 Klynger
Læs mereDesign Systemkald. User-mode Linux, The Linux kernel/325-2004
Tracing tråden afbryder systemkaldet via ptrace Systemkaldet til værten ændres til getpid Processens stak manipuleres til at kalde kernen Kernen returnerer til processen Design Systemkald Design Startup/shutdown
Læs mereFilsystemer. dopsys. fredag den 26. november 2010
Filsystemer 1 Lageret er hierarkisk - Fokus: disk Sekundært lager er nødvendigt: Data i RAM forsvinder når processer terminerer o.lign. Og der er også brug for pladsen 2 Lageret er hierarkisk - Fokus:
Læs merePrincipper for Samtidighed og Styresystemer
Principper for Samtidighed og Styresystemer kursusintroduktion og Introduktion til Styresystemer René Rydhof Hansen Februar 2008 PSS 08 (Forelsning 00) Kursus intro./intro. styresystemer Februar 2008 1
Læs mereProcesser og tråde. dopsys 1
Processer og tråde dopsys 1 Motivation.. parallelle processer udnytter hardwaren bedre: Batch operativsystemer (50 erne) hhv. små systemer: Multiprogrammering og time-sharing (fra 60 erne og frem): dopsys
Læs mereLageret er hierarkisk fokus nu: disk
Filsystemer Lageret er hierarkisk fokus nu: disk Sekundært lager er nødvendigt: Data i RAM forsvinder når processer terminerer o.lign. Og der er også brug for pladsen Top-down: Hvad er en fi l? Er en fi
Læs mereDatabase "opbygning"
Database "opbygning" Dette områder falder mest under en DBA's ansvarsområde. Det kan sagtens tænkes at en database udvikler i nogle situationer vil blive nød til at oprette produktions og test) databaser,
Læs mereKoordinering. dopsys
Koordinering At indføre flertrådethed (1) når tråde tages i brug opstår typisk konflikter (et velkendt eksempel er errno ) 2 At indføre flertrådethed (2) en del konflikter kan afhjælpes med thread-local
Læs mereNiveauer af abstrakte maskiner
Mikroarkitektur Niveauer af abstrakte maskiner Spørgsmål... Hvordan realiseres IJVM maskinen (lev. 2), eller hvordan ser en IJVM-CPU ud? Opbygning (mikroarkitekturen Mic-1) Anvendelse (mikroprogrammet
Læs mereVLAN - Virtual Local Area Network
VLAN - Virtual Local Area Network - opdeling af LAN i mindre broadcast zoner Hvad er et VLAN? Virtuel switch, bestående af port 2, 5, 8 og 11 på fysisk switch VLAN s er en logisk opdeling af enheder eller
Læs mereDATALOGI 1F. Skriftlig eksamen mandag den 11. juni % 2 15 % 3 35 % 4 20 % 5 15 %
DATALOGI 1F Skriftlig eksamen mandag den 11. juni 2001 Opgave Vægtning 1 20 % 2 15 % 3 35 % 4 20 % 5 15 % Alle de sædvanlige hjælpemidler må benyttes, dvs. alt skriftligt materiale, lydløse lommeregnere
Læs mereKernealphaerne Indhold af G1
Kernealphaerne Indhold af G1 3 små opgaver: 1. Oversæt en kerne og afvikl den på en kernealpha 2. Håndoversæt en C/C++ funktion til alpha assembler 3. Implementer procedurer til dynamisk lagerallokering
Læs mereInput/Output: Disk & Clock. dopsys
Input/Output: Disk & Clock dopsys Magnetiske diske Spiller en vigtig rolle for mange typer computere Persistens, lagringstæthed, pris, hastighed, holdbarhed, fejltyper,...: OK! Afgørende for opstart (tungt
Læs mereOperativsystemer. Tobias Brixen Q2-2012
Operativsystemer Tobias Brixen Q2-2012 1 Contents 1 Operativsystermer - oversigt 4 1.1 OS som abstrakt og virtualiseret maskine, og som resurseadministrator................................ 4 1.2 Systemkald..............................
Læs mereBits DM534. Rolf Fagerberg, 2012
Bits DM534 Rolf Fagerberg, 2012 Resume af sidst Overblik over kursus Introduktion. Tre pointer: Datalogi er menneskeskabt og dynamisk. Tidslinie over fremskridt mht. ideer og hardware. Algoritme er et
Læs merePointers. Programmering i C. 11. december Lektion 5. Eksempel: denne plads. Getting the address of a variable:
Programmering i C Lektion 5 11. december 2008 Pointers 1 Pointers 2 Referenceparametre 2 / 23 Husk: En variabel er en navngiven plads i computerens lager. En pointer er en pegepind der peger på denne plads.
Læs mereDATALOGI 1E. Skriftlig eksamen fredag d. 16. januar 2004
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen fredag d. 16. januar 2004 Opgaverne vægtes i forhold til tidsangivelsen herunder, og hver opgaves besvarelse bedømmes
Læs mereRouting tables Processer Tråde Hukommelse. Operativsystemer og netværk Lektion 5. I/O Linux Debian Webserver
Routing tables Processer Tråde Hukommelse Operativsystemer og netværk Lektion 5 I/O Linux Debian Webserver Routing tables Den vej noget tager gennem netværket Routing tables Som en netværksadministrator,
Læs mereVLAN. - mange logiske net på ét fysisk! Netteknik 1
VLAN - mange logiske net på ét fysisk! Netteknik 1 Hvad er et VLAN? Virtual Local Area Network s er en logisk opdeling af enheder eller brugere og teknikken resulterer i et system der minder om IP adressering;
Læs mereRouteren. - og lag 3 switchen! Netteknik 1
Routeren - og lag 3 switchen! Netteknik 1 Routeren en introduktion NETVÆRK 10.0.0.0 NETVÆRK 192.168.1.0 E1 Router E0 S0 NETVÆRK 194.182.2.0 Grundlæggende LAN teknologi består af Ethernet switche der flytter
Læs mereAbstrakte datatyper C#-version
Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Abstrakte datatyper C#-version Finn Nordbjerg 1/9 Abstrakte Datatyper Denne note introducerer kort begrebet abstrakt datatype
Læs mereLærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner
Virtuel PC Fordele/ulemper Fordele: Lærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner Ulemper: Reserverer RAM (Windows 7) Problemer med at ureglementeret lukke ned Mister
Læs mereTCP & UDP. - de transportansvarlige på lag 4. Netteknik 1
TCP & UDP - de transportansvarlige på lag 4 Netteknik 1 TCP & UDP TCP og UDP er begge netværksprotokoller til transport, med hver deres header-information i pakken (segmentet): TCP: 0 8 16 31 bit Sequence
Læs mereProgrammering i C. Lektion september 2009
Programmering i C Lektion 4 18. september 2009 Pointers Referenceparametre 2 / 19 Pointers 1 Pointers 2 Referenceparametre Pointers Referenceparametre 3 / 19 Husk: En variabel er en navngiven plads i computerens
Læs mereuprocessorens hardware
uprocessorens hardware 8080 Architecture Kernen i en processor er ALUen. Det er den som kan udfører simple regne operationer. De tal den arbejdermed gemmes i en række registre. Når et tal skal hentes eller
Læs mereInnovative Business Software A/S
Innovative Business Software A/S Technical Note Klienter - Installation og opdatering 26. november 2014 ii MEDDELELSE OM OPHAVSRET Copyright 2014 Innovative Business Software A/S. Alle rettigheder forbeholdt.
Læs mereSchedulering. dopsys 1
Schedulering dopsys 1 Re: Schedulering af processer.. administration af CPU-resursen. Ready List (RL) processer i ready_a, ready_s, eller running tilstand. dopsys 2 Re: Schedulering af processer.. administration
Læs mereMIPS, registerallokering og MARS
MIPS, registerallokering og MARS Torben Mogensen 2011 Resumé Vi beskriver modulerne Mips.sml og RegAlloc.sml, samt hvordan de bruges sammen med MIPS-emulatoren MARS. 1 MIPS modulet Modulet Mips.sml indeholder
Læs mereOperativsystemer - dopsys
Operativsystemer - dopsys Erik Ernst eernst@cs.au.dk dopsys 1 Q/A Mange deltagere er nu på 2. år af datalogistudiet, med dcomnet 1 for år siden Er din baggrund anderledes? dopsys 2 Praktiske oplysninger
Læs mereNår du køber hukommelse til printeren, skal du sikre dig, at SDRAM DIMMhukommelseskortet
Printerhukommelse 1 Printeren leveres med mindst 64 MB hukommelse. Du kan konstatere størrelsen på den hukommelse, der aktuelt er installeret i printeren, ved at vælge Udskriv menuer i Testmenu. Den samlede
Læs mereVLAN. - mange logiske net på ét fysisk! Netteknik 1
VLAN - mange logiske net på ét fysisk! Netteknik 1 Hvad er et VLAN? Virtual Local Area Network s er en logisk opdeling af enheder eller brugere og teknikken resulterer i et system der minder om IP adressering;
Læs merePlanen for idag. Synkroniseringsmekanismer. Krav til løsning. Kritiske regioner. Bagerens algoritme. Kritisk region via delt lager.
Planen for idag Synkroniseringsmekanismer Kritiske regioner Semaforer: Binære semaforer Tællesemaforer Beskedsemaforer Prioritetsinvertering Låse (spinlocks) sikrer udelelig adgang Barrierer synkroniseringspunkt
Læs mere1. Generelt om denne brugervejledning
Pro-Sec ApS. Yderholmvej 59. 4623 Lille Skensved. Version 02-2007 Indholdsfortegnelse 1. GENERELT OM DENNE BRUGERVEJLEDNING... 2 2. BRUGERE... 3 3. BRUGERE PROGRAMMERINGSTILSTAND... 4 4. ALARM-INDIKERING
Læs mereLageradministration. Paging og segmentering
Lgrministrtion Pging og sgmntring R: Logisk/fysisk rssr... Pros-struktur = ko og t for n pros 4G En pros tilgår sin pros-struktur vi t logisk/virtult rssrum, fx 0, 1,..., 4G OS ministrrr plring f prosstrukturr
Læs mereIPv6 sameksistens med IPv4. af Laurent Flindt Muller & Jakob Pedersen
IPv6 sameksistens med IPv4 af Laurent Flindt Muller & Jakob Pedersen Gennemgangsplan: Network Address Translation Protocol Translation (NAT-PT) - Motivation - IPv4 NAT - NAT-PT - Stateless IP/ICMP Translation
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur (struktur opbygget af et endeligt antal enkeltdele) blandt mange mulige. Eksempler:
Læs mereMultiprogrammering og operativsystemer i Danmark 1967-75
Multiprogrammering og operativsystemer i Danmark 1967-75 Søren Lauesen IT-University of Copenhagen E-mail: slauesen@itu.dk http://www.itu.dk/people/slauesen/ Marts 2010 2. Interrupt - multiprogrammering
Læs mereSchedulering. dopsys 1
Schedulering dopsys 1 Re: Schedulering af processer.. administration af CPU-resursen. Ready List (RL) list af processer i ready_a tilstand. dopsys 2 Re: Schedulering af processer.. administration af CPU-resursen.
Læs mereDATALOGI 1F. Vejledende løsninger til Skriftlig eksamen torsdag den 30. maj 2002
Københavns Universitet Naturvidenskabelig Bacheloreksamen i Datalogi DATALOGI 1F Vejledende løsninger til Skriftlig eksamen torsdag den 30. maj 2002 Opgaverne vægtes i forhold til tidsangivelsen, og hver
Læs mereDATALOGI 1E. Skriftlig eksamen fredag den 7. juni 2002
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen fredag den 7. juni 2002 Opgaverne vægtes i forhold til tidsangivelsen, og hver opgaves besvarelse bedømmes som en helhed.
Læs mereVLAN, Trunk & VTP. VLAN: Virtual Local Area Network
(C) EC MID 2005 VLAN, runk & VP 2003 EC MID, Heh 1 VLAN: Virtual Local Area Network VLAN s er en logisk opdeling af enheder eller brugere VLAN s fungerer på OI lag 2 ( og 3 ) Opbygget af witche ( og Routere
Læs mereEksamen dcomnet Q2/2010. Navn
2582 Eksamen dcomnet Q2/2010 ID Navn Example I A32-prg1 Betragt følgende program skrevet i IA-32 symbolsk maskinsprog:.section.data x:.long 2 r:.long 27.section.text.globl _start _start: pushl x movl $0,%ebx
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur blandt mange mulige. Dynamisk programmering Optimeringsproblem: man ønsker at finde
Læs mereMålet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.
Merging og hashing Mål Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer (2. semester). Mål
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Har en hvis lighed med divide-and-conquer: Begge opbygger løsninger til større problemer
Læs mereDATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen torsdag den 3. juni 2004 Opgaverne vægtes i forhold til tidsangivelsen herunder, og hver opgaves besvarelse bedømmes
Læs mereDM13-3. Obligatorisk opgave E.05 Håndoptimering af SPARC assembler-kode
- 3. Obligatorisk opgave E.05 Håndoptimering af SPARC assembler-kode Jacob Aae Mikkelsen - 191076 12. december 2005 1 Indhold 1 Opgave beskrivelse 2 2 Muligheder for optimering 2 2.1 efter branch.........................
Læs mere24-03-2009. Problemstilling ved DBK integration i BIM Software Hvad skal der til. Nicolai Karved, Betech Data A/S
24-03-2009 Problemstilling ved DBK integration i BIM Software Hvad skal der til. Nicolai Karved, Betech Data A/S Problemstilling ved DBK integration i BIM Software Domæner og aspekter Det domæne, der primært
Læs mereHvad er SkyDrive Pro og hvordan bruges det?
Hvad er SkyDrive Pro og hvordan bruges det? Et SkyDrive Pro bibliotek kan anses som en brugers personlige drev i organisationens SharePoint Online (SPO) løsning. Når dokumenter gemmes på SkyDrive Pro er
Læs mereUniversity of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3
DM502 Forelæsning 3 Indlæsning fra tastatur Udskrift til skærm Repetition Beregning af middelværdi Gentagelse med stop-betingelse (while) Heltalsdivision Division med nul Type-casting ( (double) ) Betinget
Læs mereBlockprog Rev1.0. Block programmering CS1/CJ1. Qiuck guide OMRON
Blockprog Rev1.0 Block programmering CS1/CJ1 Qiuck guide OMRON Indholdsfortegnelse 1. SPECIFIKATION... 3 2. PROGRAMMERINGS INSTRUKTIONER.... 4 3. BLOK PROGRAMMERING... 5 3.1. BPRG OG BEND... 5 4. BETINGELSES
Læs mereNorddjurs Kommune har et moderne IT drift miljø, der ønskes styrket med 4 yderligere servere samt 2 yderligere diskhylder.
Norddjurs Kommunes driftsmiljø. Norddjurs Kommune har et moderne IT drift miljø, der ønskes styrket med 4 yderligere servere samt 2 yderligere diskhylder. Drift miljøet er fordelt på 3 lokationer, SITE
Læs mereVigilante: End-to-End Containment of Internet Worms. OS Seminar, DIKU efterår 2005. Præsentation af Troels Larsen.
Vigilante: End-to-End Containment of Internet Worms OS Seminar, DIKU efterår 2005. Præsentation af Troels Larsen. Generelt om ormebekæmpelse Ormebekæmpelse skal automatiseres, fordi orme spreder sig hurtigere
Læs mereRuko SmartAir. Updater installation
Ruko SmartAir Updater installation Introduktion. Updateren er en speciel enhed som giver os mulighed for at tilføje, læse og skrive funktioner i en offline installation. Med læse og skrive funktionen kan
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs merePlanen for idag. Indhold af G1. Kernealphaerne. Alpha erne. Datalogi 1F Forår 2003
Planen for idag Datalogi 1F Forår 2003 G1 Et gensyn med KFirst G1 Jørgen Sværke Hansen cyller@diku.dk 2 Sidst så vi hvordan man starter den første proces KCurProc = KWaitQ.Get(); KFirst(KCurProc->sp);
Læs mereComputerens Anatomi. Af Martin Arnetoft
Computerens Anatomi Af Martin Arnetoft Moores lov Moores lov siger, at antallet af transistorer på et stykke hardware over 18 eller 24 måneder fordobles. Denne lov bruges til at beskrive udviklingen indenfor
Læs mereSkriftlig eksamen i Datalogi
Roskilde Universitetscenter side 1 af 9 sider Skriftlig eksamen i Datalogi Modul 1 Vinter 1999/2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 5% Opgave 2
Læs mereTeamShare 3.0 Forbedringer til TeamShare Office
TeamShare 3.0 Forbedringer til TeamShare Office Kære TeamShare bruger, I min løbende orientering om alle de nye ting der kommer i TeamShare 3.0, vil jeg her give en beskrivelse af de forbedringer vi laver
Læs mereDeadlocks dopsys 1 onsdag den 8. december 2010
Deadlocks dopsys 1 En deadlock! When two trains approach each other at a crossing, both shall come to a full stop and neither shall start up again until the other has gone. Lov - the Kansas Legislature
Læs mereEt generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel:
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel: Opbyg løsningen skridt for skridt ved hele tiden af vælge lige
Læs mereGIS-OIS INTEGRATION BRUGERMANUAL, VERSION 2 I G I S 2 0 0 8
GIS-OIS INTEGRATION BRUGERMANUAL, VERSION 2 I G I S 2 0 0 8 GIS-OIS integration BRUGERMANUAL Udarbejdet for: Titel: Dokumenttype: I GS GIS-OIS integration Brugermanual Software manual Udgave: 1 Dato: 20-05-2008
Læs mereIntroduktion til datastrukturer. Introduktion til datastrukturer. Introduktion til datastrukturer. Datastrukturer
Introduktion til datastrukturer Introduktion til datastrukturer Philip Bille Datastrukturer Datastruktur. Metode til at organise data så det kan søges i/tilgås/manipuleres effektivt. Mål. Hurtig Kompakt
Læs mereELCANIC A/S. ENERGY METER Type ENG110. Version 3.00. Inkl. PC program: ENG110. Version 3.00. Betjeningsvejledning
ELCANIC A/S ENERGY METER Type ENG110 Version 3.00 Inkl. PC program: ENG110 Version 3.00 Betjeningsvejledning 1/11 Generelt: ELCANIC A/S ENERGY METER Type ENG110 er et microprocessor styret instrument til
Læs mere132-400 kv AC Station. Kontrolanlæg Relæbeskyttelse. Dataudveksling med SIMEAS SAFIR. ETS-52-01-04 Rev. 1
132-400 kv AC Station Kontrolanlæg Relæbeskyttelse Dataudveksling med SIMEAS SAFIR ETS-52-01-04 Rev. 1 teknisk standard Dokument nr. 60386/10, sag 10/5371 - ETS-52-01-04 v. 0 1/10 REVISIONSOVERSIGT Dokumentnummer:
Læs merePlanen for idag. Datalogi 1F Forår 2003. Hvad er en proces? Livscyklus for en proces. Hvad består en proces af?
Datalogi 1F Forår 2003 OS[2]: Processor, tråde og skedulering Jørgen Sværke Hansen Planen for idag Processer: Procesbegrebet Processkift Processers familieliv Kommunikerende processer Tråde En lettere
Læs mereDigitale billeder i slægtsforskning
Digitale billeder i slægtsforskning Som slægtsforsker tænker vi ustandselig på at samle informationer fra højre og venstre, sætte det i systemer for derefter at gemme det. Formidlingen af vores forskning,
Læs mereVEDLIGEHOLDELSE OG SIKKERHED PÅ DIN COMPUTER.
VEDLIGEHOLDELSE OG SIKKERHED PÅ DIN COMPUTER. HARDDISKEN Harddisken er den enhed der bruges til at lagre operativsystemet (Windows), programmer og egne filer i din computer. Egne filer kan være dokumenter,
Læs mereImplementation af Koordinering. dopsys 1
Implementation af Koordinering dopsys 1 Oversigt: Impl. af koordinering Begreber: Kritiske regioner Gensidig udelukkelse Synkroniseringsprimitiver: Binære semaforer / mutexes Tællesemaforer Betingelsesvariabler
Læs mereProgrammering i C. Lektion 4. 5. december 2008
Programmering i C Lektion 4 5. december 2008 Funktioner Eksempel Fra sidst 1 Funktioner 2 Eksempel Funktioner Eksempel Eksempel: 1 / f u n k t i o n s p r o t o t y p e r / i n t i n d l a e s ( void )
Læs mereIntroduktion til datastrukturer. Introduktion til datastrukturer. Introduktion til datastrukturer. Datastrukturer
Introduktion til datastrukturer Introduktion til datastrukturer Philip Bille Datastrukturer Datastruktur. Metode til at organise data så det kan søges i/tilgås/manipuleres effektivt. Mål. Hurtig Kompakt
Læs merePlanen for idag. Opdatering af delt lager
Planen for idag Synkronisering: Tidsafhængighed i multiprogrammer Semaforer: Binære semaforer Tælle semaforer Grænseflader: Hvordan implementeres systemkald Tidsafhængighed i multiprogrammer proces læser
Læs mereRuntime-omgivelser Kap 7 - I
Runtime-omgivelser Kap 7 - I Generelt Språk som bare trenger statiske omgivelser Språk som trenger stakk-orienterte omgivelser Språk som trenger mer generelle omgivelser Vel så riktig å si at forskjellige
Læs mereProgrammering i maskinkode på AMIGA
Programmering i maskinkode på AMIGA A.Forness & N.A.Holten Copyright 1989 ARCUS Copyright 1989 DATASKOLEN Hæfte 10 Indhold Operativsystemet Library Hukommelses-allokering Læsning og skrivning af filer
Læs mereNT PDC Udarbejdet af Kenneth Dalbjerg
NT PDC Udarbejdet af Kenneth Dalbjerg Titelblad Denne rapport er udarbejdet af Kenneth Dalbjerg, med det formål at lære noget omkring, NT PDC Server. Side 2 af 13 Indholdsfortegnelse Forside Titelblad
Læs mereIntroduktion til datastrukturer
Introduktion til datastrukturer Datastrukturer Stakke og køer Hægtede lister Dynamiske tabeller Philip Bille Introduktion til datastrukturer Datastrukturer Stakke og køer Hægtede lister Dynamiske tabeller
Læs mereInstallation og konfiguration
Dometic Communication Unit Version 0.37 820 9505 18 - ed0110 Installation og konfiguration INDHOLDSFORTEGNELSE 1. Generelt 1.1. DCU som standardudstyr 4 1.2. DCU som eftermonteringssæt 4 1.3. Modeloversigt
Læs mereHvordan griber du moderniseringsprocessen an? Peter Janum Sode Senior Security Consultant pso@dubex.dk
Hvordan griber du moderniseringsprocessen an? Peter Janum Sode Senior Security Consultant pso@dubex.dk Overordnet fremgangsmåde Identificér områder der hører under fundamental sikkerhed i risikovurderingen.
Læs mereDIGITAL KULTURARV. Jens Henrik Leonhard Jensen, Storagemanager Statsbiblioteket
DIGITAL KULTURARV Jens Henrik Leonhard Jensen, Storagemanager Statsbiblioteket 1 Agenda Digital kulturarv Hvad gemmer vi? Radio/TV Netarkivet.dk Aviser Rippede CD ere og DVD ere Andre samlinger Digital
Læs mereDelfi Connect / Delfi Com
Scanning med Delfi scanner Ved hjælp af Delfi scanner (ex memor, Delfi Nova eller Lynx) er det muligt at scanne reservedele til: Serviceordrer Salgsordrer Indkøbskladde Lageroptælling/status Tidsregistrering
Læs mereHåndtering af prisfiler fra Mekonomen
Håndtering af prisfiler fra Mekonomen Når der er prisopdateringer fra Mekonomen, vil du modtage en mail med prisfilerne vedhæftet. I denne modtagne mail fra Mekonem vil der være en kort beskrivelse af,
Læs mereHyper-V på Windows 8 64 Bit. Indhold. Vejledning i brug af Hyper-V på en Windows 8 maskine
Hyper-V på Windows 8 64 Bit Vejledning i brug af Hyper-V på en Windows 8 maskine Indhold Hyper-V på Windows 8 64 Bit... 1 Installation... 2 Vejledning trin for trin... 2 Etablering af Netværk... 5 Opret
Læs mereMANUAL TIL. OptitecRS CIPHERLAB 8000 - SCANNER
MANUAL TIL OptitecRS CIPHERLAB 8000 - SCANNER INDHOLDSFORTEGNELSE 1 SAMLING OG TILKOBLING AF SCANNER... 1 1.1 STRØM TIL SCANNER... 2 1.2 TILKOBLING TIL COMPUTER... 2 1.2.1 Tilkobling med Seriel Stik...
Læs merePROFI BRUGER manual Til daglig betjening af systemet
PROFI BRUGER manual Til daglig betjening af systemet Indhold: 1 Lysdioder og symboler...3 2 Betjening af systemet...5 2.1 Tilkobling...5 2.2 Frakobling...5 2.3 Overfaldsalarm...6 2.4 Alarmstop...6 2.5
Læs mereSikkerhedskopiering. Sikkerhedskopiering til harddisk.
. Generelt I det følgende beskrives det, hvordan du sikkerhedskopierer dine kortdata. Sikkerhedskopifunktionen kopierer alle data i kortmodulet for alle høstår for den aktuelle database. Sikkerhedskopien
Læs mereVLAN. VLAN og Trunks. Region Syd Grundlæggende netværk
VLAN VLAN og Trunks Region Syd Grundlæggende netværk VLAN: Virtual Local-Area-Network VLAN s er en logisk opdeling af enheder eller brugere VLAN s fungerer på OSI lag 2 ( og 3 ) Opbygget af Switche ( og
Læs mere