Planen for i dag. Logiske og fysiske adresser. Systemarkitektur. Binding af programkode til lager. Hardware understøttelse af lageradministration



Relaterede dokumenter
Lageradministration. dopsys

Sider og segmenter. dopsys 1

Oversigt. Operativsystemer [6]: Virtuelt lager. Virtuel lager. Virtuelt lager. Virkemåde. Virtuelt lager eksempel virtuelt lager

Sider og segmenter. dopsys 1

Lageradministration Paging og segmentering

Styresystemer og tjenester

DATALOGI 1F. Skriftlig eksamen tirsdag den 10. juni % 2 10 % 3 25 % 4 10 % 5 30 %

Operativsystemer of C Efterår 2013 Virtuel hukommelse (kap. 9)

Lageradministration Intel Pentium og Unix/Linux

Virtuel Hukommelse. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

Lageret i maskinarkitekturen. Beregningsenhed, lagre (registre, RAM, disk), ydre enheder

Kernealphaerne Indhold af G1

Planen for idag. Kontrol af ydre enheder. Systemarkitektur. Synkronisering ved aktiv venten. Multiprogrammering[1]: Ydre enheder og multiprogrammer

Fedtstoffer. Kemi B - Dansk A. Navne: Ugur Kitir, Devran Kucukyildiz og Mathias Turac. Vejleder: Anja Bochart og Birgitte Madsen. Skole: HTX Roskilde

Computer Literacy. En stationær bordmodel. En Bærbar Notebook, Labtop, Slæbbar, Blærebar mm.

Resultat af spørgeskema til Friskolens elever

Algorithms & Architectures II

Planen for idag. Datalogi 1F Forår Hvad er en proces? Livscyklus for en proces. Hvad består en proces af?

Bridgit 4.6. Brugervejledning

Interconnect. Front end interface

Oversigt. Operativsystemer [5]: Filsystemer. Hvad er en fil? Hvor er en fil? Strukturen af en fil. Beskrivelse af en fil

Computerens Anatomi. Af Martin Arnetoft

Principper for Samtidighed og Styresystemer

ABCDEFGHIJKLMNOPQRSTUVXYZÆØÅ. abcdefghijklmnopqrstuvxyzæøå ABCDEFGHIJKLMNOPQRSTUVXYZÆØÅ. abcdefghijklmnopqrstuvxyzæøå ABCDEFGHIJKLMNOPQRSTUVXYZÆØÅ

3. Kontor. Repræsentationsudgifter afgrænses af to overordnede kriterier:

Mindstekrav til udstyr (fase 1) Løsningsbeskrivelse

SMART Notebook 3Dværktøjer. Brugervejledning

Vejledning til brug af skolens IT for nye elever/studerende.

SMART Ink. Windows operativsystemer. Brugervejledning

Lærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner

Typisk PC arkitektur. Synkronisering ved aktiv venten

1 Operativsystemer oversigt

Standardserverkonfiguration i Statens It s standarddriftsplatform. Aftalekompleksets bilag 11 Statens It s standarddriftsplatform Underbilag B

Baggrundsnotat: Estimation af TFP og sammenhæng til uddannelse

Vejledning til brug af skolens IT for nye elever/studerende.

\ \ Computerens Anatomi / /

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.

Lonbox PCM2001 betjeningsenhed

Vejledning til brug af skolens IT for nye elever/studerende.

Vejledning til brug af skolens IT for nye elever/studerende.

Øvelse 4.1 1/3 KemiForlaget

Vejledning til brug af skolens IT for nye elever/studerende.

REACH - for brugere af kemikalier

SMART Ink. Mac OS X-operativsystemsoftware. Brugervejledning

Uddannelsesplan Praktik 4.årgang

Høreområdet: hørevejledning/rådgivning

BILAGSRAPPORT. Mou Skole Aalborg Kommune. Termometeret

Hvordan måler man præcist?

SMART Ink. Mac OS X-operativsystemsoftware. Brugervejledning

DATALOGI 1E. Vejledende løsninger til Skriftlig eksamen mandag den 28. maj min min min min.

Design Systemkald. User-mode Linux, The Linux kernel/

DATALOGI 1E. Skriftlig eksamen fredag d. 16. januar 2004

Filsystemer: Implementation. dopsys

OpenTele Server Performance Test Rapport

Lærebog. Datalogi 1F Forår Hvad sker hvornår? Kursusbøger. Planen for idag. Hvad er et operativsystem

BILAGSRAPPORT. Mou Skole Aalborg Kommune. Termometeret

Fysiske krav, løft og arbejdsstillinger

Vejledning til brug af skolens IT for nye elever/studerende.

I lærervejledningen har vi formuleret læringsmål, som i det følgende er omsat til en række tegn på læring:

3. Computerens opbygning.

Aalborg Universitet. Sigteanalyse. Nielsen, Benjaminn Nordahl; Nielsen, Søren Dam. Publication date: Document Version Også kaldet Forlagets PDF

TILLÆG INSTALLATIONS- OG BETJENINGSVEJLEDNING. Ekstraudstyr inverter-ventilatorer

IPv6 sameksistens med IPv4. af Laurent Flindt Muller & Jakob Pedersen

PHA-DATA. Tilbud i marts / april. Pentium 4 Delta+ serie. Totalpris Kr ,00

Fremstilling af pokal

Computerens Anatomi. Kom/IT C - Computer Anatomi - Daniel og Fie - 3/ Planlægning af kommunikationsvalg og medieprodukt.

SMART Table -software og SMART Table Værktøj. Brugervejledning

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt.

DBU Aldersrelateret træning - for 9-14 årige

Opslagsbog om computer. Af Erik Veidorf og Mike T. Krogh.

Fendt Squadra 1290 UD

Se hvad Dell tilbyder. på SKI Dell.dk

Tjekliste. Til brug ved anskaffelse af nye systemer og/eller programmer

COMPUTER ANATOMI klasse 23. FEBRUAR 2015 HTX - ROSKILDE

HP anbefaler Windows. Slip kreativiteten løs.

Micro-pixel Neopixel til micro:bit

Database "opbygning"

Vejledning til brug af skolens IT for nye elever/studerende.

4. Semesterprojekt System Arkitektur. MyP3000 I4PRJ4 E2004

Forklarin g. Beskrivelse. i dominansrækkefølge. Farvegenerne Pigmenteri ngsgen

-Krav til klinikkens udstyr (hardware/netværk mm.)

ARP og ICMP. - service protokoller, som vi ikke kan undvære! Netteknik 1

Programmering i C. Lektion december 2008

Søren Guldbrand Pedersen Diverse noter til PC & Net Side 2 af 8. TYPE - viser fil eller program på skærmen.

Lærevejledning. - en introduktion til maskinarkitektur. faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen

Udbud af IT-udstyr i Helsingør Kommune

AVR MP Ingeniørhøjskolen i Århus Michael Kaalund

Freez-It(R) Anti-Stat. : Freez-It(R) Anti-Stat. : Cooling agents - (not for metal processing) - Cooling agents

Computerens Anatomi KOM/IT

Ydeevne og kapacitet. Indholdsfortegnelse

Konfigurationsguide. Krav til hardware og software for SonWin og SonWins moduler. Side 1 af 17

Skitsering og rendering med Revit - BIM workflow fra skitse til præsentation

ALM / QualityCenter 11 Opgradering

Brug af dvd-ram-diske

Tilgang til data. To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer.

Routing tables Processer Tråde Hukommelse. Operativsystemer og netværk Lektion 5. I/O Linux Debian Webserver

Rolf Fagerberg. Forår 2013

OPFØLGNINGSREDEGØRELSE 2011/2012 & MÅL 2012/2013 KVALITETSKONTRAKT - SUNDHEDSFORVALTNINGEN

Hashing. Ordbøger Hægtet hashing Hashfunktioner Lineær probering. Philip Bille

Udledning af formel for pyramidestubbens rumfang

Transkript:

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 til laeret på tidspunkter: Oversættelsestidspunkt: hvis startadressen er kendt på oversættelsestidspunktet kan oversætter o lænker enerere faste adresser Proramstart: hvis startadresse bestemmes ved proramstart skal oversætter producere relokerbar kode. loader omformer kode til at brue absolutte adresser. Køretid: bindinerne kan opdateres på køretidspunkt. Materiellet understøtter afbildnin mellem loisk adresserum o fysisk adresserum Loiske o fysiske adresser Opdelinen i loiske o fysiske adresserum danner basis for laeradministration i de fleste er i da: loiske adresser: de adresser, CPU en arbejder med (kaldes oså virtuelle adresser) fysiske adresser: de laerreferencer, laersystemet arbejder med, f.eks. på systembussen Kun ved bindin på køretidspunktet er der forskel på loiske o fysiske adresser Hardware understøttelse af laeradministration Laeradministration varetaes af en Memory Manaement Unit (MMU): Intel x8 familien introducerede protected mode til 88 (98), men først fra 88 var der en riti MMU med sidebaseret laeradm. (98- ) Motorola 8 familien havde en MMU fra 8 o frem (98 - ) I indlejrede systemer anvendes ofte CPU er uden MMU MMU en håndterer oversættelse fra loiske til fysiske adresser, f.eks.: base o rænsereistre Eksempel: omrenin fra loiske til fysiske adresser CPU MMU cache Systemarkitektur systembus laer I/O bro I/O bus I/O styreenhed disk I/O styreenhed netkort I/O styreenhed skærm

Overlays Hvad ør man når proramstørrelsen er større end det tilænelie laer? Proramkoden kan splittes op i forskellie faser, hvor kun en fase ad anen opholder si i laeret Koden til en fase placeres i et overlay. Dette sker som reel i et samarbejde mellem prorammør o oversætter Kompleks opave for store prorammer Eksempel: oversætter med overlay 8 Swappin I multiprorammerinssystemer kan det blive nødvendit at fjerne en proces fra arbejdslaeret o emme den på sekundært laer. Hele processens tilstand emmes overførsel af arbejdslaer til sekundært laer dominerer omkostninerne En variant af swappin i moderne systemer er flytnin af processer, hvor en proces overføres fra en maskine til en anden Swappin kræver at processen har simple eksterne bindiner 9 Sammenhænende laerallokerin Systemer, hvor laer til processer allokeres i en sammenhænende blok System- o bruerarbejdslaer: operativsystemet er typisk placeret i den nederste (laveste) ende af det fysiske adresserum sammen med afbrydelsesvektoren bruerprorammerne placeres i den øvre del af laerområdet Afrænsnin af bruerens laerområde: et forskydninsreister, der aniver bruerprocessens startadresse et rænsereister, der aniver den maksimale størrelse på bruerprocessens laerområde Grænse- o basereister Laerallokerin med flere partitioner laeradministration uddeler blokke af laer til processerne, når en proces startes holder rede på allokerede o frie områder proces proces proces proces proces proces 9 proces 9 proces 8 proces proces proces proces proces proces proces proces

Ekstern framenterin Opdelinen af arbejdslaeret efterlader huller mellem allokerede blokke: Måske ikke er store nok til at tilfredsstille forespørsler efter yderliere laer Ekstern framenterin kan afhjælpes: omoraniserin af laer på køretidspunkt: sammenlænin af frie blokke til en stor blok kræver at laerafbildnin kan ændres på køretidspunkt laerområder kan være bundet af I/O aktivitet (I/O enheder arbejder typisk med fysiske adresser) Sidebaseret laeradministration proces proces : proces : proces : sider sidepladser proces proces proces Intern framenterin Intern framenterin: pa. effektivitetshensyn uddeles arbejdslaeret kun i blokke af en vis størrelse S. I værste fald spildes S- bytes hver an der allokeres laer Typiske sidestørrelser er KB/8KB proces Sidebaseret laeradministration Processens laer består af ikke sammenhænende laerblokke Det fysiske laer opdeles i et antal sidepladser (typisk er størrelsen en er potens: alm. 89 bytes) Det loiske adresserum opdeles i sider med samme størrelse som sidepladsstørrelsen laeradministration holder rede på frie sidepladser Hvis en proces har bru for n sider i det loiske adresserum, forsøer et at finde n frie sidepladser i det fysiske adresserum Hver proces har en, der beskriver afbildnin fra sider (loiske) til sidepladser (fysiske) Afvejnin: jo mindre sidestørrelse jo større, men samtidi mindre intern framenterin Opbynin af adresser En loisk adresse består af to dele: et sidenummer (p) (den mest betydende del af adressen) en forskydnin (d) indenfor siden Afbildnin af adresser p d Adressen findes ved at omsætte sidenummeret til den fysiske adresse (f) på en sideplads o læe forskydninen til f d 8

Eksempel: sideafbildnin side side side side loisk adresserum Liste af frie sidepladser: side side side side 9 Eksempel: sideafbildnin a b c d e f h 8 i 9 j k l m n o p loisk adresserum m n o p e f h 8 a b c d i j k l Hvor lier len? Sidetabellen lier i arbejdslaeret CPU reistre holder styr på hvor len for en proces lier, f.eks.: Pae-table base reister (PTBR) peer på len Pae-table lenth reister (PTLR) aniver lænden på tabellen En laerreference kræver nu to laeroperationer: opsla i tilan til sideplads Sideopsla caches i en Translation Lookaside Buffer (TLB) TLBs rolle Hvad koster det at tilå laeret? TLB opsla (tlb): klokcykel Laeradan (la): klokcykler Hitrate (h): typisk omkrin 98% En laerreference (lr) koster: K(lr) = (K(tlb)+K(la))*h + (K(tlb) + *K(la))*(-h) = ( + )*,98 + ( + *)*, =,8 +,8 =, klokcykler (% dyrere) Men en kan satens lie i CPU cache (.,. eller måske. niveau) Beskyttelse i sidebaserede systemer Beskyttelse sker på sideniveau - hver side er tilknyttet et antal statusbit En yldi/uyldi bit i len aniver: yldi: siden er en del af processens loiske adresserum uyldi: siden er ikke en del af processens loiske adresserum Andre former for statusbit: side er tildelt sideplads side er skrivebeskyttet

Eksempel: sideafbildnin med statusbit side side side side side loisk adresserum u u u side side side side side Hvad fylder en? GB laer, KB sider iver en med 8 indane af f.eks. byte, dvs i alt MB allokeret til len Hvis der brues base + lænde reister skal hver proces have allokeret MB sammenhænende laer I stedet brues: hierarkiske ler hashbaserede ler inverterede ler Hierarkiske med niveauer niveau niveau Adressernes opbynin i hierarkisk En loisk adresse på en bit maskine med KB sider opdeles i bit sidenummer o bit forskydnin Sidenummeret underopdeles (det er jo hierarkisk): bit aniver hvilken niveau, der skal anvendes bit aniver fysisk adresses forskydnin i niveau 8 Adresseafkodnin i hierarkisk Loisk adresse: p p p niveau niveau f p sideplads i fysisk laer f 9 Hashbaserede ler I arkitekturer med bit adresserum bliver hierarkiske ler upraktiske: 8KB sider iver niveauer I stedet kan man brue sidehashtabeller: en virtuel side hashes ind i en indan i len hver indan er tilknyttet en hætet liste, der søes iennem for at finde sidepladsen

Eksempel: hashbaseret Inverterede ler En anden løsnin på størrelsesproblemet er inverterede ler En indan i for hver sideplads Tabelindhold specificere virtuel side samt ejende proces Sideopsla: lineær sønin hashtabel over virtuelle sider Eksempel: Inverteret Variabel sidestørrelse Nole processorer understøtter supersider dvs. sider af meet stor størrelse, f.eks. op til MB (alpha, pentium) eller MB (itanium) TLB ens dækninsområde forøes Men hvordan skabes supersiderne: overvånin af processers ressourceallokerin reserverin af områder til supersider eller omoraniserin af fysiske sider Operatin System Desin & Implementation: Practical, transparent operatin system support for superpaes viser at flere applikationer opnår forbedriner på % til % ved dynamisk tilpasnin af sidestørrelser Delin af sider/data Ikke-selvmodificerende kode kan deles mellem processer, der benytter samme kode: applikationer, f.eks. en editor systembiblioteker, f.eks. libc Koden placeres på samme sted i de forskellie processers loiske adresserum eller Delt kode bruer kun relativ adresserin libc libc libc data app app Eksempel: delin af data applikation libc libc libc data app 8 applikation libc libc libc data app app app 9 applikation data libc data libc ap. ap. libc ap. data ap. ap. ap.

Sementerin Sementerin afbilder større proramdele (afhæni af bruerapplikationen) ind i det fysiske adresserum Bruer opfatter prorammer som bestående af større enheder end sider, nemli sementer f.eks: hovedproram objekter funktioner lobale variable stak Eksempel: strukturerin af applikation i sementer main stak findmin trædata loisk opbynin main trædata findmin stak 8 Sementerin hvordan? Loiske adresser består af to dele: <sementnummer, forskydnin> Sementtabel aniver afbildnin fra sementnummer til fysisk adresse. Hver indan har: base: sementets startadresse lænde: sementets lænde statusbit: hele sementet dækkes (oftest det naturliste) Eksempel: sementerinshardware 9 Eksempel: sementerinstabel Delin af sementer

Sidebaseret sementerin i8 sidebaseret sementerin Sementerin lider af ekstern framenterin Derudover kan der være andre runde til at ville splitte et sement op: dele af sementet brues sjældent o skal swappes ud Opsummerin Opdelin i et loisk o fysisk adresserum Afbildnin af loisk adresser til fysiske adresser: sidebaseret (størrelse af, intern framenterin): TLB hierarkiske ler hashbaserede ler inverterede ler sementbaseret (ekstern framenterin, sementstørrelse) Kilder Disse slides er baseret på SG samt de af forfatterne udviklede slides 8