Minneshantering segmentering och virtuellminne. Föreläsning 3

Storlek: px
Starta visningen från sidan:

Download "Minneshantering segmentering och virtuellminne. Föreläsning 3"

Transkript

1 Minneshantering segmentering och virtuellminne Föreläsning 3

2 Minneshantering forts. Hur kan man köra processer som är större än primärminnet? Hur kan man undvika att stack och heap växer ihop? Virtuellminne demand paging Segmentering Segmentering kombinerat med sidindelning Kap: Minneshantering forts. 2

3 Virtuellminne demand paging Virtuellminne: Hur man utnyttjar sekundärminne (skivminne) för att kunna köra processer som är större än primärminnet

4 Utnyttja mer av minneshierarkin Måste hela processen finnas i minnet? Utnyttja lokalitet: Bara de delar som för tillfället används av text, stack och heap behöver vara i minnet resten kan ligga på sekundärminne (disk) register cache primärminne elektronisk disk magnetisk disk Minneshantering forts. 4

5 Demand paging Addera information till sidtabellen som indikerar om sidan finns i primärminnet (i en ram) eller inte När en sida som inte finns i primärminnet refereras genreras ett sidfel (page fault) Vid sidfel hämtas sidan från sekundärminne (disk) till primärminnet och sidtabellen uppdateras Håll lista med lediga ramar Jfr. swapping men här hanteras inte nödvändigtvis hela processer utan sidor page-in och page-out Minneshantering forts. 5

6 Demand paging ett första exempel Virtuellt minne Sidtabell Primärminne Sekundärminne P1 1 Trap till OS sid nummer Var det ett sidfel? 3 Var det en legal adress? 4 Hitta en ledig ram SIDFEL ram 5 Starta I/O av sidan till ramen 6 Processen blockeras i väntan på I/O I/O klar 7 Processen läggs i ready kö present/absent (valid/invalid) i v v i v P1-2 P1-0 P1-1 ram nummer Minneshantering forts. 6

7 När laddas en process sidor? Ren demand paging Vid behov Första sidan laddas när första instruktionen skall exekveras Pre-paging Försök räkna ut vilka sidor som behövs och ladda in dem i förväg - Hur räknar man ut vilka sidor som behövs? Minneshantering forts. 7

8 Vad vet vi och vad vet vi inte? Allt vi sagt om paging på förra föreläsningen gäller även för demand paging som t.ex: Implementation av sidtabell TLB Val av sidstorlek Blir det inte långsamt speciellt vid sidfel? Hur hittar man lediga ramar? Hur många ramar får/behöver en process allokera? Minneshantering forts. 8

9 Minnesaccesstid vid demand paging p = sannolikhet för sidfel vid en minnesreferens m = minnesaccesstid om sidan är i primärminnet d = tid för page-in, dvs att läsa in en sida från minnet till en ram Effektiv minnesaccesstid = (1-p)m + pd Typiska tider: m = 100 ns, d = 25 ms För mindre än 10% långsammare minnessaccesstid krävs: p < Dvs mindre än ett sidfel per 2.5 M minnessaccesser Minneshantering forts. 9

10 Att skapa lediga ramar Vad gör man när alla ramar är fyllda? Sidutbytesalgoritmer (page-replacement)

11 Sidutbytesalgoritmer Om ingen tom ram finns töm en ram för att skapa utrymme Men vilken ram tömmer man? Två mål: 1. Minimera antalet sidfel 2. Minimera I/O Minneshantering forts. 11

12 I/O-kostnad Det kostar mindre att byta ut en sida som inte är modifierad (dirty) än en som är modifierad Om en sida i en ram är ren finns en kopia på disk, dvs. man behöver inte skriva ut innehållet i ramen till disk > 1 I/O operation Om en sida i en ram är modifierad måste den skrivas ut till disk innan man kan läsa in en ny sida till ramen > 2 I/O operationer Bra är att ha en modifierad/( dirty ) bit i sidtabellen som sätts då någon byte i sidan skrivs Minneshantering forts. 12

13 Sidutbytesalgoritmer Teori Referenssträng Working set Algoritmer Optimal FIFO LRU Least Recently Used FIFO-varianter: Second Chance, Clock Förbättrad Clock Aging WSClock Working Set Clock Minneshantering forts. 13

14 Referenssträng Antalet sidfel bestäms av i vilken ordning vi accessar olika sidor (och antal tillgängliga ramar och sidutbytesalgoritmen) En sträng av sidnummer i den ordning de refererats kallas referenssträng Ex: 1,4,7,3,5,3,8,9,0,2,1 OBS! Att om vi refererar en sida flera gånger i rad kommer det (normalt) inte att kunna generera mer än maximalt ett sidfel > inga upprepningar av samma sidnummer i referenssträngen Referenssträngar används för att utvärdera sidutbytesalgoritmer Kan skapas genom trace från verkliga processer eller med stokastiska modeller Minneshantering forts. 14

15 Working set - ett mått på lokalitet Informellt den uppsättning sidor en process refererar (behöver för sin exekvering) under en viss (liten) tidsrymd T stack heap text tid T Minneshantering forts. 15

16 Working set - vad kan vi använda det till? Working set för en process förändras över tiden Det mest intressanta måttet på working set är dess storlek Om en process inte har tillgång till så många ramar som storleken på dess working set kommer den att generera många sidfel! Sidutbytesalgoritmen bör sträva after att hålla processens/ernas working set i minnet Minneshantering forts. 16

17 Den Optimala sidutbytesalgoritmen Byt ut den sida som det kommer att dröja längst innan den refereras igen Optimal med avseende på antal sidfel Omöjlig att implementera i praktiska system Kan användas som jämförelse om man har tillgång till referenssträngar Minneshantering forts. 17

18 FIFO Om inga lediga ramar finns - byt den sida som legat längst i primärminnet Enkel men vi vet inget om den sida som slängs ut (victim-page) används eller ej! Kan ge fler sidfel om man ökar antalet tillgängliga ramar!? (Belady s anomali) Använt i VAX/VMS, Windows NT Minneshantering forts. 18

19 Belady s anomali Ex. referenssträng: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5 # sidfel FIFO OPT # ramar Minneshantering forts. 19

20 Teori - stackalgoritmer Sidutbytesalgoritmer med egenskapen att de ger färre sidfel med ökat antal ramar Karaktärisering av sidutbytesalgoritm som är en stackalgoritm: För varje referens i en referenssträng är den mängd sidor som finns i primärminnet givet m ramar en delmängd av den mängd sidor som finns i minnet givet m+1 ramar Minneshantering forts. 20

21 Uppskatta framtiden med historia - Least Recently Used LRU byt ut den sida som det var längst sedan den användes Så bra approximation av OPT som vi enkelt kan göra Dyrbar att implementera Implementation med räknare för varje instruktion som exekverats - räknaren skrivs in i sidtabellentryt när sidan refereras Kräver sökning för att hitta sida att slänga ut NxN bitmatris Se till att en sida som nyligen lästs in inte slängs ut innan den använts (generellt problem) Vanligare att approximera Minneshantering forts. 21

22 Clock Enkel approximation av LRU genom en utvidgning av FIFO Idé: Second-chance med cirkulär lista Inför en referens-bit i sidtabellen Nollställd då sidan laddas in Ett-ställs då någon byte i sidan adresseras Algoritm Ha en cirkulär lista med alla sidor i primärminnet ordnad i FIFO ordning När en sida behöver slängas ut sök i listan Om sidans referensbit är satt, nollställ den och sök vidare Första sidan med nollställd referensbit är den som ska slängas ut till sekundärminnet Minneshantering forts. 22

23 Clock - exempel sida referensbit B 0 Page-in av sidan Y H 1 G 10 A D E 1 X 10 1 F Y K L 0 K Y 0 M 1 Minneshantering forts. 23

24 Förbättring av Clock Kombinera med NRU för att minska I/O Inför en modifierad-bit i sidtabellen Initialt nollställd då sidan laddas in Ett-ställs då man skriver till någon byte i sidan Algoritm: Som Clock men välj sida att slänga ut efter värdet på paret (referensbit, modified-bit) 1. (0,0) varken refererad eller modifierad 2. (0,1) inte nyligen använd men modifierad 3. (1,0) nyligen använd men inte modifierad 4. (1,1) både nyligen använd och modifierad Används i Macintosh Minneshantering forts. 24

25 Aging En hyfsad approximation av LRU Uppskatta när sidan senast refererades genom att: Till varje entry i sidtabellen läggs en n-bitars räknare (t.ex. n = 8) Regelbundet, t.ex vid varje klockavbrott, för alla sidor i minnet: Skifta räknaren ett steg åt höger Addera referensbiten för sidan i den vänstra biten i räknaren Vid sidfel väljs sidan med lägsta värde på räknaren att flyttas ut till sekundärminne Kräver sökning Minneshantering forts. 25

26 WSClock en uppskattning av working set Bestäm en tidsrymd T för vilket working set uppskattas Organisera data om sidor i primärminnet pss. som för Clock-algoritmen Algoritm: Lägg till en tidsstämpel i varje entry i sidtabellen 1 Uppdatering av referensbit: Regelbundet, t.ex. vid varje klockavbrott - nollställ alla referensbitar Minneshantering forts. 26

27 WSClock forts. 2 Vid sidfel: Gå igenom alla entryn för sidor i minnet Om referensbiten är satt: nollställ och uppdatera tidsstämpeln Om en sida med nollställd referensbit hittas och den refererats längre tillbaka i tiden än T tidsenheter, dvs. den är inte längre i working set: Om modifierad-biten är satt schemalägg att sidan skall skrivas till disk leta vidare Om sidan är ren läs in den nya sidan till denna ram Om man inte hittat en ren sida som inte ligger i working set på ett varv finns två möjligheter: En skrivning har schemalagts fortsätt leta till slut blir en sida ren! Annars ersätt en godtycklig ren sida om ingen sådan finns ta en godtycklig sida och släng ut (systemet är nog överlastat...) Minneshantering forts. 27

28 Summering av sidutbytesalgoritmer Algoritm Optimal FIFO LRU Clock Clock med NRU Aging WSClock Kommentar Inte implementerbar, användbar som jämförelse Kan slänga ut sidor som används! Bra, men svår att implementera! Realistisk, går att använda Används Effektiv approximation av LRU, används Bra och effektiv Minneshantering forts. 28

29 Sidbufferalgoritm - renhållning För att ett sidindelat virtuellminnessystem skall fungera bra bör det finnas relativt gott om lediga, eller åtminstonde rena ramar, för att snabbt kunna ta hand om sidfel! Hur ordnar vi det? Minneshantering forts. 29

30 paging deamon Process som går i bakgrunden När I/O-enheten för att skriva sidor till sekundärminnet är ledig: skriv modifierade sidor till minnet Om det finns för få lediga ramar släng ut en del sidor kom ihåg vilken sida som låg i ramen så att den vid behov (om den refereras innan ramen återanvänts) kan tas tillbaka utan att man behöver läsa den från disk Många system håller en separat lista med lediga ramar att användas vid sidfel Minneshantering forts. 30

31 Praktiska funderingar Hur många ramar får en process? Överlast thrashing Lokal eller global sidutbytesalgoritm?

32 Antal ramar (multiprogrammering) - hur många ramar ska en process få använda? Vad är minsta antal ramar en process måste ha? Minst det antal sidor som kan accessas i en enda instruktion! Ex: en instruktion med 3 st indirektadresserade operander Antag instruktionen ligger på en sida, varje adress på varsin sida och att det de pekar ut ligger på ytterligare varsin sida -> Minst 7 ramar (14 om instruktion och operander kan ligga över sidgränser) Minneshantering forts. 32

33 Vad gör man om man får sidfel mitt i en instruktion? Man måste kunna starta om instruktionen när den saknade sidan laddats in Hur gör man om instruktionen delvis utförts? Kan vara fallet vid automatisk increment/decrement på register Har man tur finns hårdvarustöd för Sparande av programräknare, information om automatisk increment/decrement som ev. har utförts etc. Om inte så får operativsystemskoden klara det Minneshantering forts. 33

34 Hur undviker man att en sida som håller på att läsas in kastas ut? Vad hindrar sidutbytesalgoritmen från att kasta ut en sida som håller på att läsas in? Skulle kunna ge allvarliga problem om man fortsätter skriva i ramen och skriver sönder en annan process sida Dessutom är en sida som håller på att läsas in inte en bra sida att välja att kasta ut eftersom den läses in för att den behövs Måste kunna låsa sidor i minnet sk. pinning eller I/O-interlock till dess inläsningen är klar Används också för OS-kod/data från att pageas ut Normalt får användarprocesser inte låsa sidor i minnet Minneshantering forts. 34

35 Hur många ramar ska en process få allokera? Minst så många som krävs för att kunna exekvera! Några alternativ Proportionellt mot processtorlek Min och max Minneshantering forts. 35

36 Global eller lokal sidutbytesalgoritm Ska sidutbytesalgoritmen vara: Lokal bara leta efter sidor att slänga ut hos processen som fick sidfel Global sidutbytesalgoritmen kan välja vilken sida som helst att slänga ut Globala algoritmer är oftast effektivast Minneshantering forts. 36

37 Thrashing Lokal sidutbytesalgoritm: Om en process inte får allokera tillräckligt många ramar för att hålla hela sitt working set i minnet kommer den att generera många sidfel! Om processen spenderar mer tid på sidbyten än på exekvering thrashar den Global sidutbytesalgoritm Har vi för många aktiva processer kan vi få problem med att alla processer thrashar Minneshantering forts. 37

38 Thrashing - exempel Sidfelsfrekvens Utfört arbete Multiprogrammeringsgrad Minneshantering forts. 38

39 Motverka thrashing Lokal sidutbytesalgoritm Om en process får för hög sidfelsfrekvens - Om det finns lediga ramar: låt den allokera flera - Om det inte finns lediga ramar: swappa ut den Global sidutbytesalgoritm Om systemet får för hög sidfelsfrekvens - Försök frigöra ramar - Går det inte att frigöra ramar:swappa ut processer Om en process får låg sidfelsfrekvens - ta ifrån den ramar Minneshantering forts. 39

40 Användning av sidfelsfrekvens sidfelsfrekvens öka antalet ramar övre gräns minska antalet ramar undre gräns antal ramar Minneshantering forts. 40

41 Sidtabellspost (page table entry) Sid/Ramnummer Minneshantering forts. 41

42 Några kvarstående frågor fork(), exec() Några fallstudier Hantering av sekundärminne

43 fork() & exec() Systemanropet fork() skapar en kopia av processen som exekverar fork() En process som exekverar fork() byter oftast direkt program med systemanropet exec() Normalt sett kopieras föräldraprocessens adressrymd till barnprocessen Kan man vara effektivare? Minneshantering forts. 43

44 fork() & exec() forts. För att spara tid kan man gör så här: Kopiera inte föräldraprocessens sidor bara sidtabellen Markera sidorna som copy-on-write Om en sida skrivs av någon process kopiera den I många UNIX system finns ett systemanrop vfork() där barnprocessen delar föräldraprocessens sidor vfork() är ett effektivt systemanrop avsedd för barnprocesser som omedelbart exekverar exec() Minneshantering forts. 44

45 Windows NT Demand paging med clustering clustering: flera omgivande sidor läses in vid sidfel När processen skapas får den allokera ramar efter: working-set-minimum: minsta tilldelning av ramar working-set-maximum: maximalt antal ramar som får allokeras Virtuellminneshanterare som håller en lista med lediga ramar Om systemet har för få lediga ramar tar minnehanteraren ramar från processer som har allokerat fler än working-set-minimum ramar Sidutbytesalgoritmer: En-processors x86: variant av Clock Alpha, multi-processor x86: variant av FIFO Minneshantering forts. 45

46 Solaris 2 Har en process pageout som frigör minne pageout har fri-lista av lediga ramar som skall vara minst desfree stor i medel över 30 s Om inte swappa ut processer Två-visares second-chance algoritm för att frigöra ramar Första visaren nollställer referensbit Om referensbiten är nollställd när andra visaren når sidan frigörs ramen (modifierade sidor skrivs till disk) 8KB sidor för användare, 4MB sidor för OS och priviligierade användare Minneshantering forts. 46

47 Solaris 2 forts. pageout frigör sidor med nollställd referensbit handspred (typiskt 1024 sidor) # sidor som scannas/s 8192 fastscan nollställer referensbiten 100 slowscan mängd ledigt minne Minneshantering forts. 47

48 Hantering av sekundärminne (disk) Kontinuerlig allokering på disk + enkel adressöversättning - svårt att hantera ökande datastorlek Möjlig utvidgning - allokera olika utrymmen för text, heap och stack + avhjälper (bara) i viss mån allokeringsproblematiken Dela upp disken i delar (lika stora som sidorna) Ha en tabell motsvarande sidtabellen för var sidor på disken lagras Minneshantering forts. 48

49 Sekundärminneshantering ex. Primärminne Sidor A B Disk C D Swap area Sidtabell Disk map Minneshantering forts. 49

50 Segmentering Det som en gång var alternativet till sidindelad minneshantering men som nu oftast kombineras med sidindelning.

51 Att hantera olika logiska delar av adressrymden STACK HEAP Allokera olika minnessegment för olika delar av processen Olika delar av data kan växa oberoende Adressöversättning med bas och gräns för varje segment Varje segment kan ges olika skydd (RWX) TEXT TEXT HEAP STACK Segment Minneshantering forts. 51

52 Adressöversättning enkel segmentering s Segment tabell gräns bas CPU s d < nej ja + TRAP: adresseringsfel Minneshantering forts. 52

53 Segmentering Ren segmentering: Fördel: Naturlig uppdelning av minnesrymden Nackdelar: - Kontinuerlig allokering är svårt - Kan kräva att programmeraren är mer medveten om minneshanteringsmodellen för att kunna utnyttja den Segmentering kombineras numera oftast med sidindelning Minneshantering forts. 53

54 Segmentering med sidindelning i 386i (Pentium) logisk adress selektor offset Segmenten sidindelade i 4KB sidor En sidtabell upp till 4MB Segment deskriptor yttre sidtabell = directory linjär adress + yttre sidtabell sida offset descriptortabell fysiskt minne sid tabell ram nummer ram offset page directory OS Föreläsning sidtabell 3, Minneshantering forts. 54

55 När fungerar virtuellt sidindelat minne dåligt? Om vi har dålig lokalitet så kan det ge följande problem: Många TLB-missar ger sämre prestanda (varje minnesaccess som ger upphov till en TLB-miss tar ~ dubbelt så lång tid som om vi får en träff) Kan också ge stort working-set vilket kan leda till många sidfel som tar lång tid att hantera (längre än en TLB miss) Om man överlastar maskinen så att working-set inte ryms i minnet Thrashing CPU:n och disk används mest för att göra pageout page-in Minneshantering forts. 55

56 Summering vad vi pratat om idag Virtuellminne med demand paging Sidutbytesalgoritmer Skapa lediga ramar paging deamon Hur allokera ramar Thrashing Exempel Segmentering Enkel segmentering Segmentering och sidindelning 386i Minneshantering forts. 56

57 Kommande föreläsningar C och Filsystem Minneshantering forts. 57

Operative system. LRU-algoritm (2 p) Svar: 7 fel. c) Optimal algoritm (2 p) Svar: 6 fel

Operative system. LRU-algoritm (2 p) Svar: 7 fel. c) Optimal algoritm (2 p) Svar: 6 fel Uppgift 3 Till en process som kräver 8 sidor allokeras 4 sidoramar. Antag följande referenssträng: 1,2,8,3,4,3,8,2,1,4 Hur många sidofel kommer att genereras (demand paging) med en a) FIFO-algoritm (2

Läs mer

4 grundregler. Minneshantering. Problemet. Windows minkrav

4 grundregler. Minneshantering. Problemet. Windows minkrav 4 grundregler 1. Man kan aldrig få för mycket minne 2. Minnet kan aldrig bli för snabbt Minneshantering 3. Minne kan aldrig bli för billigt 4. Programmens storlek ökar fortare än minnet i datorerna (känns

Läs mer

Fö 8: Operativsystem II. Minneshantering. Minneshantering (1) Minneshantering (2) Minneshantering och Virtuelltminne.

Fö 8: Operativsystem II. Minneshantering. Minneshantering (1) Minneshantering (2) Minneshantering och Virtuelltminne. Fö 8: Operativsystem II Minneshantering och Virtuelltminne. Virtuella I/O enheter och Filsystemet. Flerprocessorsystem. Minneshantering Uniprogrammering: Minnet delas mellan operativsystem och användarprogrammet.

Läs mer

Några gamla tentamensuppgifter: Minneshantering

Några gamla tentamensuppgifter: Minneshantering 1 Tentamen 1992-08-26 5. I ett virtuellt minne med skiva är primärminnets accesstid 1 mikrosekund, sidstorleken 1 K, skivans rotationstid 10 millisekunder, inställningstiden för skivans arm 5 millisekunder

Läs mer

Flera processer. Minneshantering. Trashing kan uppstå ändå. Ersätta globalt

Flera processer. Minneshantering. Trashing kan uppstå ändå. Ersätta globalt Flera processer Minneshantering Operativsystem lektion 6 Potentiellt problem: Den sida som plockas bort behöver inte vara den sida som används minst!! Det kan finnas andra processer som inte körs eller

Läs mer

Minnet från processorns sida Datorteknik

Minnet från processorns sida Datorteknik Minnet från processorns sida Datorteknik ERIK LARSSON Processorn ger kommandon/instruktioner med en adress och förväntar sig data. Exempel: READ(ADR) -> DATA Fysisk adress Logisk adress READ 00001000 READ

Läs mer

Dagens OS. Unix, Linux och Windows. Unix. Unix. En översikt av dagens OS Titt på hur de gör. Många varianter Mycket gemensamt. En del som skiljer

Dagens OS. Unix, Linux och Windows. Unix. Unix. En översikt av dagens OS Titt på hur de gör. Många varianter Mycket gemensamt. En del som skiljer Dagens OS En översikt av dagens OS Titt på hur de gör Unix, Linux och Windows Unix Många varianter Mycket gemensamt Unix En del som skiljer Vanliga program, shell, etc System calls Interupts and traps

Läs mer

Systemanropp kontrollen övergår från userspace till kernelspace ca 100 i UNIX, många fler i NT

Systemanropp kontrollen övergår från userspace till kernelspace ca 100 i UNIX, många fler i NT Leason 1 ============================================ Vad är ett operativsystem *Det program som implmenterar allasystemanropp. *Det / de program som köri kernel-mode Datahistoria: * Mekaniska reläer,

Läs mer

En processor kan ha en klockfrekvens på flera GHz. Det går alltså a9 exekvera en instruk=on väldigt for, givet a9 instruk=onen finns i processorn.

En processor kan ha en klockfrekvens på flera GHz. Det går alltså a9 exekvera en instruk=on väldigt for, givet a9 instruk=onen finns i processorn. 1 2 En processor kan ha en klockfrekvens på flera GHz. Det går alltså a9 exekvera en instruk=on väldigt for, givet a9 instruk=onen finns i processorn. Instruk=onerna =ll programmet som exekveras finns

Läs mer

Minneshantering - grunderna. Föreläsning 2

Minneshantering - grunderna. Föreläsning 2 Minneshantering - grunderna Föreläsning 2 Minneshantering Hur hantera grundfallet med endast en process? Hur kan flera processer vara aktiva, dvs vara i minnet, samtidigt? Adressrymden Kontinuerlig allokering

Läs mer

Tentamen i ID2206, ID2200 samt IS1350 Operativsystem

Tentamen i ID2206, ID2200 samt IS1350 Operativsystem Tentamen i ID2206, ID2200 samt IS1350 Operativsystem Tisdagen 2014-03-18 kl 09:00-13:00 Examinator: ID2206, ID2200 Robert Rönngren, IS1350 Jim Dowling Hjälpmedel: Inga Tentamensfrågorna behöver inte återlämnas

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Laborationer Gå bara på tillfällen där du är anmäld. Moment svarar mot 1.5hp, dvs 40 timmar arbete Schemalagd tid: 4*2 (lektioner)+4*4(laborationer)=20 timmar Material: Finns på

Läs mer

Operativsystem ID2206 Tentamen TEN1 4.5 hp :00-18:00

Operativsystem ID2206 Tentamen TEN1 4.5 hp :00-18:00 Operativsystem ID2206 Tentamen TEN1 4.5 hp 2018-04-03 14:00-18:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Svaren skall lämnas på dessa

Läs mer

Operativsystem (IS1350) :00-12:00

Operativsystem (IS1350) :00-12:00 Operativsystem (IS1350) 2017-03-15 08:00-12:00 Namn: Instruktioner Betyg Du får endast ha med dig skrivmateriel. Mobiler etc skall lämnas till tentamensvakterna. Svaren skall lämnas på dessa sidor, använd

Läs mer

Operativsystem ID2200 Tentamen TEN1 3.8 hp :00-18:00

Operativsystem ID2200 Tentamen TEN1 3.8 hp :00-18:00 Operativsystem ID2200 Tentamen TEN1 3.8 hp 2018-04-03 14:00-18:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Svaren skall lämnas på dessa

Läs mer

Digitala System: Datorteknik ERIK LARSSON

Digitala System: Datorteknik ERIK LARSSON Digitala System: Datorteknik ERIK LARSSON Översikt Minnets komponenter Minneshierarkin Cacheminne Paging Virtuellt minne Minnets komponenter Enhet för indata Primärminne (CPU) Enhet för utdata Sekundärminne

Läs mer

Tentamen den 18 mars svar Datorteknik, EIT070

Tentamen den 18 mars svar Datorteknik, EIT070 Lunds Universitet LTH Tentamen den 18 mars 2015 - svar Datorteknik, EIT070 Skrivtid: 14.00-19.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng För betyg 4 krävs 30

Läs mer

Fö 7: Operativsystem. Vad är ett operativsystem? Målsättning med operativsystem. Styr operativsystemet datorn?

Fö 7: Operativsystem. Vad är ett operativsystem? Målsättning med operativsystem. Styr operativsystemet datorn? Fö 7: Operativsystem Introduktion. Klassificering. Vad är ett operativsystem? Program som kontrollerar andra andra program. Gränssnitt mellan användare och hårdvaran. Kärnan. Historisk översikt. Typeset

Läs mer

Svar till tentamen den 16 december 2013 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng

Svar till tentamen den 16 december 2013 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng Lunds Universitet LTH Ingenjörshögskolan, Helsingborg Svar till tentamen den 16 december 2013 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng Skrivtid: 08.00-13.00 Tillåtna hjälpmedel: Inga. Maximalt

Läs mer

Föreläsningsanteckningar 5. Cacheminnen

Föreläsningsanteckningar 5. Cacheminnen Föreläsningsanteckningar 5. Cacheminnen Olle Seger 2012 Anders Nilsson 2016 1 Inledning Bakgrunden till att cacheminnen behövs för nästan alla datorer är enkel. Vi kan kallt räkna med att processorn är

Läs mer

Vad är viktigast? Sammanfattning. Processer och trådar. Processer och trådar. Flerprocessorsystem. Schemaläggning. Interprocesskommunikation.

Vad är viktigast? Sammanfattning. Processer och trådar. Processer och trådar. Flerprocessorsystem. Schemaläggning. Interprocesskommunikation. Vad är viktigast? Sammanfattning Processer och trådar Avbrottshantering Vad det är och hur det fungerar (på låg nivå) Vilka problem finns Schemaläggning Flerprocessorsystem Varianter, problem Interprocesskommunikation

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Inledning Ken Thompson och Dennis M. Ritchie utvecklade C Turingpriset( Nobelpris i datavetenskap ), 1983 Alan Turing (1912-1954) För deras utveckling av generell OS teori och

Läs mer

Innehåll. Minneshantering. Systemet hivlls... Föreläsning 1. Problemformuleringar. Problem a[ lösa idag (...)

Innehåll. Minneshantering. Systemet hivlls... Föreläsning 1. Problemformuleringar. Problem a[ lösa idag (...) Innehåll Minneshantering (...) Föreläsning 1 bakgrund och mobvabon conbnous allocabon, fixed allocabon, buddy, segmentabon paging Föreläsning 2 pagetable bitar, prestanda, TLB virtuellt minne page replacement

Läs mer

Schemaläggning Unix. Minneshantering etc. Linux. Schemaläggning av trådar (kernel threads) Detaljer. Operativsystem - Lektion 7

Schemaläggning Unix. Minneshantering etc. Linux. Schemaläggning av trådar (kernel threads) Detaljer. Operativsystem - Lektion 7 Schemaläggning Unix 20 priority = CPU_usage + nice + base Minneshantering etc Operativsystem - Lektion 7-20 Linux Schemaläggning av trådar (kernel threads) Real-time FIFO Real-time round robin Timesharing

Läs mer

TDDIU81. Processer och trådar. Andreas Dahlberg, Jonathan Doherty, Tony Magnusson, Patrik Ottosson, Rasmus Siljedahl

TDDIU81. Processer och trådar. Andreas Dahlberg, Jonathan Doherty, Tony Magnusson, Patrik Ottosson, Rasmus Siljedahl TDDIU81 Processer och trådar Andreas Dahlberg, Jonathan Doherty, Tony Magnusson, Patrik Ottosson, Rasmus Siljedahl Sammanfattning Den här rapporten innehåller en kort genomgång av allmän process och trådhantering

Läs mer

Minnets komponenter. Digitala System: Datorteknik. Programexekvering. Programexekvering. Enhet för utdata. Enhet för indata CPU.

Minnets komponenter. Digitala System: Datorteknik. Programexekvering. Programexekvering. Enhet för utdata. Enhet för indata CPU. Digitala System: Datorteknik Minnets komponenter ERIK LARSSON Enhet för indata CPU Enhet för utdata Sekundärminne Programexekvering Program i högnivåspråk.. Z:=(Y+X)*3. Kompilator Exekverbart program i

Läs mer

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Lösningsförslag för 725G45-tentan 3/11-10 1. Vad menas med Von Neumann-arkitektur? (2p) En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Data och instruktioner lagras i samma

Läs mer

Olika OS. Unix, Linux och Windows. Unix. Unix. En översikt av ett par OS. Titt på hur de gör. Många varianter. Mycket gemensamt. En del som skiljer

Olika OS. Unix, Linux och Windows. Unix. Unix. En översikt av ett par OS. Titt på hur de gör. Många varianter. Mycket gemensamt. En del som skiljer Olika OS En översikt av ett par OS Titt på hur de gör Unix, Linux och Windows Unix Många varianter Mycket gemensamt Unix En del som skiljer Begrepp Hur skapas en process Deamon rocess Föräldrar & barn

Läs mer

Jämförelse av skrivtekniker till cacheminne

Jämförelse av skrivtekniker till cacheminne Jämförelse av skrivtekniker till cacheminne 1 Innehåll 1. Sammanfattning 2. Inledning 3. Diskussion 4. Referenslista 1. Sammanfattning En rapport innehållande jämförelser av olika skrivtekniker till minnen

Läs mer

Operativsystem (ID2200/06) XX XX:00-XX:00

Operativsystem (ID2200/06) XX XX:00-XX:00 Operativsystem (ID2200/06) 2017-01-XX XX:00-XX:00 Namn: Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4-sida med anteckningar. Mobiler etc skall lämnas till

Läs mer

Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621

Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621 Lunds Universitet LTH Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621 Skrivtid: 8.00-13.00 Inga tillåtna hjälpmedel Uppgifterna i tentamen ger maximalt 60 poäng. Uppgifterna är

Läs mer

Lösningsförslag till tentamen i IS1350 Operativsystem

Lösningsförslag till tentamen i IS1350 Operativsystem sförslag till tentamen i IS1350 Operativsystem Måndagen 2015-03-16 kl 09:00-13:00 Examinator: IS1350 Jim Dowling Hjälpmedel: Inga Tentamensfrågorna behöver inte återlämnas efter avslutad tentamen. Ange

Läs mer

Närliggande allokering Datorteknik

Närliggande allokering Datorteknik Närliggande allokering Datorteknik ERIK LARSSON TID Problem: Minnet blir fragmenterat Paging Demand paging Sida (S) Dela upp primärminnet i ramar (frames) och program i sidor (pages) Program 0 RD.0 1 RD.1

Läs mer

Grundläggande datavetenskap, 4p

Grundläggande datavetenskap, 4p Grundläggande datavetenskap, 4p Kapitel 2 Datamanipulation, Processorns arbete Utgående från boken Computer Science av: J. Glenn Brookshear 2004-11-09 IT och Medier 1 Innehåll CPU ALU Kontrollenhet Register

Läs mer

Filsystem - Inode. Datorteknik. Minnets komponenter. Programexekvering. Enhet för indata. Enhet för utdata CPU. Primärminne.

Filsystem - Inode. Datorteknik. Minnets komponenter. Programexekvering. Enhet för indata. Enhet för utdata CPU. Primärminne. Datorteknik Filsystem - Inode ERIK LARSSON ABBA: Dancing Queen Minnets komponenter Programexekvering Enhet för indata CPU Enhet för utdata Program i högnivåspråk.. Z:=(Y+X)*3. Kompilator Exekverbart program

Läs mer

Hjälpmedel: Inga hjälpmedel förutom penna, suddgummi och glatt humör.

Hjälpmedel: Inga hjälpmedel förutom penna, suddgummi och glatt humör. Tentamen Inst. för Informationsteknologi Avdelningen för Datorteknik Herbert P Sander Tel: 070 376 06 87 Ämne: Operativsystem Lokal: Post Scriptum, sal 2 Datum: Måndagen den 13 maj 2002 Tid: Kl 09.00-14.00

Läs mer

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00 Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen 2019-04-16 14:00-18:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Anteckningarna lämnas

Läs mer

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Översikt Minnets komponenter Minneshierarkin Cacheminne Paging Virtuellt minne Minnets komponenter Enhet för indata Primärminne (CPU) Enhet för utdata

Läs mer

Datorsystem. Laboration 3: Operativsystem Senast uppdaterad: 14 oktober 2012 Version 1.3. Student: Underskrift: Underskrift: Datum:

Datorsystem. Laboration 3: Operativsystem Senast uppdaterad: 14 oktober 2012 Version 1.3. Student: Underskrift: Underskrift: Datum: Datorsystem Laboration 3: Operativsystem Senast uppdaterad: 14 oktober 2012 Version 1.3 Student: Lärare: Underskrift: Underskrift: Datum: Datorsystem Laboration 3 1 Innehåll 1 Inledning 2 1.1 Introduktion...........................................

Läs mer

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00 Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen 2019-04-16 14:00-18:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Anteckningarna lämnas

Läs mer

Design och trender. Föreläsning 12

Design och trender. Föreläsning 12 Design och trender Föreläsning 12 Design och trender Varför är det svårt att skriva OS? Vad ska man tänka på när man implementerar OS? Vart är utvecklingen på väg? Fortsättningskurser för den som vill

Läs mer

Operativsystem ID1200/06 Tentamen :00-18:00

Operativsystem ID1200/06 Tentamen :00-18:00 Operativsystem ID1200/06 Tentamen 2018-01-12 14:00-18:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Svaren skall lämnas på dessa sidor,

Läs mer

Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621

Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621 Lunds Universitet LTH Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621 Skrivtid: 08.00-13.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng

Läs mer

Kapitel 4 (DeBlanche) Datorarkitektur

Kapitel 4 (DeBlanche) Datorarkitektur Kapitel 4 (DeBlanche) Datorarkitektur Faktiskt är mycket av det som står i detta kapitel mer på sin plats i parallellkursen i mikrodatorteknik. Men kurserna och ämnena går förstås i varandra. Skissen på

Läs mer

Uppgift 1: a) u= a c + a bc+ ab d +b cd

Uppgift 1: a) u= a c + a bc+ ab d +b cd Uppgift 1: a) u= a c a bc ab d b cd b) a b c d u 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1

Läs mer

Tentamen den 17 mars 2016 Datorteknik, EIT070

Tentamen den 17 mars 2016 Datorteknik, EIT070 Lunds Universitet LTH Tentamen den 17 mars 2016 Datorteknik, EIT070 Skrivtid: 14.00-19.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng För betyg 4 krävs 30 poäng

Läs mer

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen 68000 Arkitektur F2: Motorola 68000 I/O signaler Processor arkitektur Programmeringsmodell Assembler vs. Maskinkod Exekvering av instruktioner i 68000 Instruktionsformat MOVE instruktionen Adresseringsmoder

Läs mer

Digitalteknik och Datorarkitektur 5hp

Digitalteknik och Datorarkitektur 5hp Digitalteknik och Datorarkitektur 5hp Minnes-hierarkier och Cache 12 maj 2008 karl.marklund@it.uu.se issa saker använder vi ofta Dessa saker vill vi ha nära till hands Storleken har betydelse Litet är

Läs mer

Operativsystem - input/output, skydd, virtualisering

Operativsystem - input/output, skydd, virtualisering Operativsystem - input/output, skydd, virtualisering Mats Björkman 2015-03-12 Lärandemål, I/O n Typer av I/O-enheter n Character, Block & Special n Minnesmappad I/O n Typer av I/O-programmering n Programmerad,

Läs mer

Pipelining i Intel Pentium II

Pipelining i Intel Pentium II Pipelining i Intel Pentium II John Abdulnoor Lund Universitet 04/12/2017 Abstract För att en processor ska fungera måste alla komponenter inuti den samarbeta för att nå en acceptabel nivå av prestanda.

Läs mer

Tentamen den 9 januari 2018 Datorarkitekturer med operativsystem (EITF60)

Tentamen den 9 januari 2018 Datorarkitekturer med operativsystem (EITF60) Lunds Universitet LTH Tentamen den 9 januari 2018 Datorarkitekturer med operativsystem (EITF60) Skrivtid: 08.00-13.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng

Läs mer

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp Tentamen i Digitala system EITA5 5hp varav denna tentamen 4,5hp Institutionen för elektro och informationsteknik Campus Helsingborg, LTH 289 8. 3. (förlängd 4.) Uppgifterna i tentamen ger totalt 6 poäng.

Läs mer

Operativsystem. Informationsteknologi sommarkurs 5p, 2004. Agenda. Slideset 7. Exempel på operativsystem. Operativsystem

Operativsystem. Informationsteknologi sommarkurs 5p, 2004. Agenda. Slideset 7. Exempel på operativsystem. Operativsystem Informationsteknologi sommarkurs 5p, 2004 Mattias Wiggberg Dept. of Information Technology Box 337 SE751 05 Uppsala +46 18471 31 76 Collaboration Jakob Carlström Slideset 7 Agenda Exempel på operativsystem

Läs mer

System S. Datorarkitektur - en inledning. Organisation av datorsystem: olika abstraktionsnivåer. den mest abstrakta synen på systemet

System S. Datorarkitektur - en inledning. Organisation av datorsystem: olika abstraktionsnivåer. den mest abstrakta synen på systemet Datorarkitektur - en inledning Organisation av datorsystem: olika abstraktionsnivåer System S den mest abstrakta synen på systemet A B C Ett högnivåperspektiv på systemet a1 b1 c1 a2 b3 b2 c2 c3 En mera

Läs mer

CE_O3. Nios II. Inför lab nios2time

CE_O3. Nios II. Inför lab nios2time IS1200 Exempelsamling till övning CE_O3, 2015 CE_O3. Nios II. Inför lab nios2time 3.1. Logiska operationer (se uppgift 1.2 c) Repetera (eller lär dig) innebörden av de logiska operationerna "bitvis AND",

Läs mer

Definition DVG A06. Varför operativsystem? Operativsystem. Översikt. - Vad är ett operativsystem?

Definition DVG A06. Varför operativsystem? Operativsystem. Översikt. - Vad är ett operativsystem? DVG A06 Operativsystem, mm Definition Den del av systemet som hanterar all hårdvara och all mjukvara. Kontrollerar: -alla filer -alla enheter -varje del av minnet -varje ögonblick av processortiden (-nätverk

Läs mer

Snapdragon 810: Cacheminnet

Snapdragon 810: Cacheminnet Snapdragon 810: Cacheminnet Daniel Eckerström dat14dec@student.lu.se Sammanfattnig Snapdragon 810 innehåller två olika processor arkitekturer, ARM Cortex-A53 samt Cortex-A57. Detta för att kunna på ett

Läs mer

Vad händer när man kör ett program? Program och processer. Funktionsanrop. Avsluta programmet

Vad händer när man kör ett program? Program och processer. Funktionsanrop. Avsluta programmet Vad händer när man kör ett program? Program och processer När man kompilerar ett program och sedan länkar ihop det så stoppar länkaren in lite extra kod i programmet. Det är denna kod som i sin tur anropar

Läs mer

Operativsystem ID2200/06 omtentamen :00-18:00

Operativsystem ID2200/06 omtentamen :00-18:00 Instruktioner Operativsystem ID2200/06 omtentamen 2017-12-18 14:00-18:00 Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Svaren skall lämnas på dessa sidor,

Läs mer

Synkronisering. Föreläsning 8

Synkronisering. Föreläsning 8 Synkronisering Föreläsning 8 Synkronisering Så stort, intrikat och viktigt att det finns hela kurser om det i parallellprogrammering. Vi fuskar lite med några av de viktigaste bitarna! Synkronisering Vad

Läs mer

Fö 2: Minnen. Introduktion. Primärminnet. Interna och externa minnen. Introduktion, Klassificiering

Fö 2: Minnen. Introduktion. Primärminnet. Interna och externa minnen. Introduktion, Klassificiering Fö 2: Minnen Introduktion, Klassificiering Primärminne Sekundärminne Minneshiearki Cache-minne Introduktion Primärminnet används för att lagra program och data som är aktuella att använda. Sekundärminnet

Läs mer

Digitala System: Datorteknik ERIK LARSSON

Digitala System: Datorteknik ERIK LARSSON Digitala System: Datorteknik ERIK LARSSON Huvudled (H) Trafikljus för övergångsställe Trafikljus för huvudled (H) Trafikljus: Sväng vänster (H->T) Gående - vänta Trafikljus för tvärgata (T) Tvärgata (T)

Läs mer

CE_O5. Cacheminne. Hemlaboration 2.

CE_O5. Cacheminne. Hemlaboration 2. IS1500 Exempelsamling till övning CE_O5, 2014 CE_O5. Cacheminne. Hemlaboration 2. 5.1. Medeltidshistoria Diskutera förloppet då CPU:n gör en läsreferens i huvudminnet dvs information kopieras från huvudminne

Läs mer

Operativsystem - Processkedulering

Operativsystem - Processkedulering Operativsystem - Processkedulering Mats Björkman 2015-02-02 Innehåll n Processer (föreläsning 2) n n n Processmodell Processtillstånd Trådar n Processkommunikation (föreläsning 3) n n n Semaforer Monitorer

Läs mer

119 Minnesallokering. Detta kapitel behandlar kort, som vanligt, dessa 'policies' och avslutas med ett avsnitt om 'caches'.

119 Minnesallokering. Detta kapitel behandlar kort, som vanligt, dessa 'policies' och avslutas med ett avsnitt om 'caches'. 119 7. 7.1. Allmänt För att realisera ett virtuellt minne behövs minst två nivåer i minneshierarkin och dessutom 1. En virtuell adressrymd som är större än den fysiska,. En adressavbildningsmekanism och

Läs mer

Dugga 1 status 41 godkända 39 ej godkända ERIK LARSSON

Dugga 1 status 41 godkända 39 ej godkända ERIK LARSSON Datorteknik Dugga 1 status 41 godkända 39 ej godkända ERIK LARSSON e.g. Harvard or Boston Home About Rankings Survey Universities GRUP Initiative Conference Study in China Advertise with Us Home>> Global

Läs mer

Operativsystem Lektion 1. Lärare. Schema. Kurssajten Finns på adressen. Jan Erik Moström. Set Norman

Operativsystem Lektion 1. Lärare. Schema. Kurssajten Finns på adressen. Jan Erik Moström. Set Norman Operativsystem Lektion 1 1 Lärare jem@cs.umu.se, B449 Lektioner etc Set Norman set@cs.umu.se, NAdv105 Labbar, labhandledning 2 Schema Notera att det finns ändringar i schemat!! Under perioden 1-8 mars

Läs mer

Operativsystem ID1200/06 Tentamen :00-18:00

Operativsystem ID1200/06 Tentamen :00-18:00 Operativsystem ID1200/06 Tentamen 2018-01-12 14:00-18:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Svaren skall lämnas på dessa sidor,

Läs mer

Filsystem användarvy och implementering. Föreläsning 4

Filsystem användarvy och implementering. Föreläsning 4 Filsystem användarvy och implementering Föreläsning 4 Filsystem De abstrakta datatyperna fil och directory Hur implementerar man filsystem? Användarvyn av filsystem Implementering av filsystem Exempel

Läs mer

Operativsystem - Minneshantering I

Operativsystem - Minneshantering I Operativsystem - Minneshantering I Mats Björkman 2016-02-11 Översikt Grundläggande minneshantering (Föreläsning MM I, idag) Problem inom minneshantering Minneshantering och multitasking Hantering av ledigt

Läs mer

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00 Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen 2019-01-11 14:00-18:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Anteckningarna lämnas

Läs mer

Deluppgift 17 Processhantering: exec, sleep, exit, plist

Deluppgift 17 Processhantering: exec, sleep, exit, plist Linköpings Tekniska Högskola Institutionen för Datavetanskap (IDA), Software and Systems (SaS) (c) Klas Arvidsson Deluppgift 17 Processhantering: exec, sleep, exit, plist Inledning För att få ett praktiskt

Läs mer

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 6 Jonas Lindgren, Institutionen för Datavetenskap, LiU

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 6 Jonas Lindgren, Institutionen för Datavetenskap, LiU TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 6 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Sortering Selectionsort, Bubblesort,

Läs mer

Exempeltentamen Datorteknik, EIT070,

Exempeltentamen Datorteknik, EIT070, Lunds Universitet LTH Exempeltentamen Datorteknik, EIT070, Skrivtid: xx.00-xx.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng För betyg 4 krävs 30 poäng För betyg

Läs mer

Databaser - Design och programmering. Minnesteknik. Minnesteknik, forts. Hårddisk. Primärminne (kretsteknik) Fysisk design av databasen

Databaser - Design och programmering. Minnesteknik. Minnesteknik, forts. Hårddisk. Primärminne (kretsteknik) Fysisk design av databasen Databaser Design och programmering Fysisk design av databasen att ta hänsyn till implementationsaspekter minnesteknik filstrukturer indexering Minnesteknik Primärminne (kretsteknik) Flyktigt Snabbt Dyrt

Läs mer

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Pipelining Tid SSA P Pipelining FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO Superscalar pipelining FI DI CO FO EI WO FI DI

Läs mer

Cache-koherens protokoll MESI och MOSI

Cache-koherens protokoll MESI och MOSI Handledare: Erik Larsson Lunds Tekniska Högskola HT2016 Cache-koherens protokoll MESI och MOSI Författare: Adnan Mohamed Abstrakt Cache koherens protokoll hanterar cacheminnet i ett multiprocessor system,

Läs mer

Cacheprobe: programbibliotek för extrahering av cacheminnesparametrar

Cacheprobe: programbibliotek för extrahering av cacheminnesparametrar Cacheprobe: programbibliotek för extrahering av cacheminnesparametrar Gabriel Gerhardsson Cacheprobe p.1/38 Abstract Kan analytiskt ta reda på associativitet, line storlek och storlek på processorns cacheminnen

Läs mer

DVG A06. Operativsystem, mm. Karlstads universitet Datavetenskap. DVG A06 Johan Eklund. Datavetenskap, Karlstads universitet 1

DVG A06. Operativsystem, mm. Karlstads universitet Datavetenskap. DVG A06 Johan Eklund. Datavetenskap, Karlstads universitet 1 DVG A06 Operativsystem, mm DVG A06 Johan Eklund, 1 2 DVG A06 Johan Eklund, 2 Operativsystem - Vad är ett operativsystem? - Hur fungerar det..? - Vad använder vi operativsystemet till? - Vilka olika operativsystem

Läs mer

Fallstudier. Föreläsning 11

Fallstudier. Föreläsning 11 Fallstudier Föreläsning 11 Fallstudier Vi synar sömmarna på några vanliga OS med våra nyvunna kunskaper? UNIX, LINUX och Microsofts Windows familj Kap: 10, 11 OS Föreläsning 11, Fallstudier 2 Fallstudier

Läs mer

Datorhistorik. Föreläsning 3 Datorns hårdvara EDSAC. Eniac. I think there is a world market for maybe five computers. Thomas Watson, IBM, 1943

Datorhistorik. Föreläsning 3 Datorns hårdvara EDSAC. Eniac. I think there is a world market for maybe five computers. Thomas Watson, IBM, 1943 Datorhistorik Föreläsning 3 Datorhistorik Datorns uppbyggnad, komponenter Processor, primärminne, sekundärminne Minneshierarkier Inbyggda system, stora datorer I think there is a world market for maybe

Läs mer

Databaser Design och programmering. Fysisk design av databasen att ta hänsyn till implementationsaspekter: minnesteknik filstrukturer indexering

Databaser Design och programmering. Fysisk design av databasen att ta hänsyn till implementationsaspekter: minnesteknik filstrukturer indexering Databaser Design och programmering Fysisk design av databasen att ta hänsyn till implementationsaspekter: minnesteknik filstrukturer indexering 2 Programdesign, databasdesign Databasdesign Kravspecifikation

Läs mer

Dagens föreläsning. Diverse Common Lisp. Konstanter, parametrar, globala variabler

Dagens föreläsning. Diverse Common Lisp. Konstanter, parametrar, globala variabler 21-1-2 1 Dagens föreläsning Hur fungerar ett Lisp system intern struktur av symbolen, tal, listan pekare - delade strukturer - eq minneshantering fri lista - sophämtning/garbage collection stack Diverse

Läs mer

Program kan beskrivas på olika abstrak3onsnivåer. Högnivåprogram: läsbart (för människor), hög abstrak3onsnivå, enkelt a> porta (fly>a 3ll en annan ar

Program kan beskrivas på olika abstrak3onsnivåer. Högnivåprogram: läsbart (för människor), hög abstrak3onsnivå, enkelt a> porta (fly>a 3ll en annan ar 1 Program kan beskrivas på olika abstrak3onsnivåer. Högnivåprogram: läsbart (för människor), hög abstrak3onsnivå, enkelt a> porta (fly>a 3ll en annan arkitektur), hårdvara osynlig Assembly- och maskinprogram:

Läs mer

Databaser Design och programmering Minnesteknik Minnesteknik, forts Utvecklingen Hårddisk Hårddisk, forts

Databaser Design och programmering Minnesteknik Minnesteknik, forts Utvecklingen Hårddisk Hårddisk, forts Databaser Design och programmering Fysisk design av databasen att ta hänsyn till implementationsaspekter minnesteknik filstrukturer indexering 1 Minnesteknik Primärminne (kretsteknik) Flyktigt Snabbt Dyrt

Läs mer

Mer datorarkitektur. En titt I datorn Minnen

Mer datorarkitektur. En titt I datorn Minnen Mer datorarkitektur En titt I datorn Minnen von Neumann-modellen von Neumann-modellen CPU (Central Processing Unit) Styrenhet hämtar programinstruktioner ALU (Arithmetic and Logical Unit) utför beräkningar

Läs mer

Filsystem. Varför? Hur? För att kunna lagra data mer permanent än i RAM. Vettig organisation Vettiga namn

Filsystem. Varför? Hur? För att kunna lagra data mer permanent än i RAM. Vettig organisation Vettiga namn Varför? För att kunna lagra data mer permanent än i RAM Hur? Vettig organisation Vettiga namn Stora/små bokstäver 8-bitars tecken (teckenkodning) File extensions Längd Struktur på filerna Byte efter byte,

Läs mer

Institutionen för elektro- och informationsteknologi, LTH

Institutionen för elektro- och informationsteknologi, LTH Datorteknik Föreläsning 5 Realtidssystem och realtidsprogrammering Mål Att du ska förstå hur avbrott används för - Mätning - Styrning - Stöd för körning av flera processer Att du ska förstå begreppet tråd

Läs mer

Datorteknik. Föreläsning 5. Realtidssystem och realtidsprogrammering. Institutionen för elektro- och informationsteknologi, LTH.

Datorteknik. Föreläsning 5. Realtidssystem och realtidsprogrammering. Institutionen för elektro- och informationsteknologi, LTH. Datorteknik Föreläsning 5 Realtidssystem och realtidsprogrammering Mål Att du ska förstå hur avbrott används för - Mätning - Styrning - Stöd för körning av flera processer Att du ska förstå begreppet tråd

Läs mer

Datorsystemteknik D. Lösningar till tentamen i kursen EDA330 14/1 2000

Datorsystemteknik D. Lösningar till tentamen i kursen EDA330 14/1 2000 1(6) Lösningar till tentamen i kursen EDA330 Datorsystemteknik D 14/1 2000 Följande är skisser till lösningar av uppgifterna. Full poäng på en uppgift kräver i de flesta fall en något fylligare motivering.

Läs mer

SQLs delar. Idag. Att utplåna en databas. Skapa en databas

SQLs delar. Idag. Att utplåna en databas. Skapa en databas Idag SQLs delar Hur skapar vi och underhåller en databas? Hur skapar man tabeller? Hur får man in data i tabellerna? Hur ändrar man innehållet i en tabell? Index? Vad är det och varför behövs de? Behöver

Läs mer

Operativsystem ID2206 7.5hp, ID2200 6hp

Operativsystem ID2206 7.5hp, ID2200 6hp Operativsystem ID2206 7.5hp, ID2200 6hp Robert Rönngren Innehåll Om kursen www.it.kth.se/courses/id2206 ID2200 Vad är ett operativsystem och varför ser de ut som de gör? kap. 1.1-1.3, 1.6-1.7 Processer

Läs mer

Operativsystem - Filsystem

Operativsystem - Filsystem Operativsystem - Filsystem Mats Björkman 2015-03-09 Administrativt n Extraföreläsning istället för den inställda: torsdag 12/3 kl 8-10 i Pi n Seminarier preliminärt schema ute n 15 minuter per grupp lämna

Läs mer

Tentamen den 14 januari 2015 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng

Tentamen den 14 januari 2015 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng Lunds Universitet LTH Ingenjörshögskolan, Helsingborg Tentamen den 14 januari 2015 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng Skrivtid: 08.00-13.00 Tillåtna hjälpmedel: Inga. Maximalt antal

Läs mer

Datorarkitekturer med Operativsystem

Datorarkitekturer med Operativsystem Lunds Tekniska Högskola Campus Helsingborg Datorarkitekturer med Operativsystem EDT621 Rapport Cacheminneshantering för ARM3-processorer 7 december 2015 Pierre Aupeix dat11pau@student.lu.se 1 Abstract

Läs mer

Operativsystem ID2200/06 tentamen och omtentamen :00-12:00

Operativsystem ID2200/06 tentamen och omtentamen :00-12:00 Operativsystem ID2200/06 tentamen och omtentamen 2017-01-14 08:00-12:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Mobiler etc skall

Läs mer

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data. 1 3 4 Antag a' processorn ska exekvera instruk3onen ADD R1, R3. När instruk3onen är exekverad så a' processorn tagit innehållet i R1 och R3 och med hjälp av ALU:n är värdena adderade och resultatet är

Läs mer

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data. 1 2 3 Antag a' processorn ska exekvera instruk3onen ADD R1, R3. När instruk3onen är exekverad så a' processorn tagit innehållet i R1 och R3 och med hjälp av ALU:n är värdena adderade och resultatet är

Läs mer

Outline. Datorsystemtekni. Kravspecifikation. Kravspecifikation (forts.)

Outline. Datorsystemtekni. Kravspecifikation. Kravspecifikation (forts.) Outline för D2, ICT2, E3 och Mek3 Nicholas Wickström Högskolan i Halmstad Sverige p.1/18 Förra föreläsningen Specifikation -Kravspecifikation -Funktionsspecifikation -Blockdiagram Operativsystem -Grunder,

Läs mer

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00 Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen 2019-01-11 14:00-18:00 Instruktioner Du får, förutom skrivmateriel, endast ha med dig en egenhändigt handskriven A4 med anteckningar. Anteckningarna lämnas

Läs mer