Operativsystem - Processkedulering

Storlek: px
Starta visningen från sidan:

Download "Operativsystem - Processkedulering"

Transkript

1 Operativsystem - Processkedulering Mats Björkman

2 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 Meddelandesystem n Skedulering/schemaläggning (föreläsning 4, den här) n n Kriterier för en skedulerare Skeduleringsalgoritmer Operativsystem, Mats Björkman, MDH 2

3 Lärandemål n Mål för en skedulerare n Preemptive, Icke-preemptive n Skeduleringsalgoritmer för- och nackdelar n Beräkning av medelomloppstid Operativsystem, Mats Björkman, MDH 3

4 Skedulering och kontextbyte 1. Spara den exekverande processens tillstånd i processens PCB 2. Låt skeduleraren välja en ny process för exekvering 3. Ladda den nya processens tillstånd i processorn 4. Starta processorn med den nya processen Operativsystem, Mats Björkman, MDH 4

5 Kontextbyten är kostsamma! n Den stora kostnaden för ett kontextbyte är inte själva exekveringen av kontextbytet (spara register etc.) n Den stora kostnaden kommer av att det blir en massa cachemissar i systemet Operativsystem, Mats Björkman, MDH 5

6 Lokalitet (Locality of Reference) n Programexekvering uppvisar ofta stor lokalitet i användandet av både kod och data n Sannolikheten är stor att kod som just exekverats kommer att exekveras igen n Likaså är sannolikheten stor att data som just accessats kommer att accessas igen Operativsystem, Mats Björkman, MDH 6

7 Cachning är effektivt n På grund av lokalitet är det effektivt med cachning, att spara kod och data som vi använder i ett snabbare minne närmare CPU:n n Cachning sker i flera nivåer: den mest intensivt använda datan ligger i register n Därefter i en liten snabb cache n Sedan i allt större och långsammare Operativsystem, Mats Björkman, MDH 7

8 Kontextbyten bryter lokaliteten n Vid ett kontextbyte tar man bort den process som precis har fyllt cacharna med kod och data som just den processen använde, och ersätter den processen med en annan process Operativsystem, Mats Björkman, MDH 8

9 Kontextbyten bryter lokaliteten n Den nya processen vill (troligen) använda helt annan kod och andra data n Den nya processen kommer att råka ut för en lång rad cachemissar eftersom den nya processens nyligen använda kod och data inte finns i cacharna Operativsystem, Mats Björkman, MDH 9

10 Kontextbyten bryter lokaliteten n Samma sak händer med minneshanteringen, den gamla processens använda sidor finns tillgängliga i primärminnet, men troligen inte den nya processens sidor n Detsamma drabbar cachar för sidtabeller Operativsystem, Mats Björkman, MDH 10

11 Kontextbyten bryter lokaliteten n Ett kontextbyte innebär alltså att cachar för kod och data och minnessidor och cachar för sidtabeller och annat behöver fyllas på med innehåll från långsammare minnen n Detta gör att den nya processen exekverar långsammare till dess allt är inläst Operativsystem, Mats Björkman, MDH 11

12 Kontextbyten och thrashing n Kontextbyten är även en viktig orsak till thrashing n Thrasing är ett oönskat tillstånd i operativsystemet när en process inte hinner få effektivt arbete gjort för att alltför stor del av tidskvantat går åt till att läsa in saker som ramlat ut ur cachar och primärminne Operativsystem, Mats Björkman, MDH 12

13 Kontextbyten och thrashing n Problemet bakom thrashing är ett för litet tidskvantum och för små minnesresurser i förhållande till processens working set, d.v.s. den uppsättning av kod och data som processen för närvarande behöver för att kunna arbeta Operativsystem, Mats Björkman, MDH 13

14 Kontextbyten och thrashing n För lite minnesresurser gör att processens kod och data inte finns kvar i cachar och/eller primärminnet när det är dags för processen att exekvera igen n För kort tidskvantum gör att processen får ägna en stor del av tidskvantat till att läsa in till primärminne och cachar Operativsystem, Mats Björkman, MDH 14

15 Kontextbyten och thrashing n En lösning på thrashing är att öka tidskvantat, det försämrar dock responstiden n En annan lösning är att minska graden av multiprogrammering, d.v.s. antalet processer som är aktiva samtidigt Operativsystem, Mats Björkman, MDH 15

16 Swapping n Minska graden av multiprogrammering görs genom att swappa ut ett antal processer, lägga dem åt sidan en stund (görs av medeltidsskeduleraren ) n Detta ökar förstås responstiden för de processer som blir utswappade Operativsystem, Mats Björkman, MDH 16

17 Swapping vs swapping n För att förvirra används begreppet swapping både om att tillfälligt flytta undan processer ur readykön, och om det som borde kallas paging, att flytta minnessidor mellan primärminne och disklagring Operativsystem, Mats Björkman, MDH 17

18 Skedulerare n Skeduleraren bestämmer vilken process som skall få exekvera, när och hur länge n Flyttar aktiva processer mellan READY och RUNNING (och ev. andra tillstånd) n Skeduleringen kan antingen vara n n Preemptive Icke-preemptive n Tidskvantum/timeslice Operativsystem, Mats Björkman, MDH 18

19 Vad gör idle-processen? n De flesta OS håller sig med en idle-process n Idle-processen gör ingenting n Idle-processen har lägst prioritet och exekveras endast om det inte finns någon annan process i ready-kön Operativsystem, Mats Björkman, MDH 19

20 Varför idle-process? n Det finns flera anledningar till att vilja ha en idle-process: n Förenklar implementationen av skeduleraren; det finns alltid en process att skedulera n Idle-processens förbrukade CPU-tid är ett mått på hur mycket underutnyttjad CPU:n är Operativsystem, Mats Björkman, MDH 20

21 När skall det skeduleras? n När en ny process skapas n När en process avslutas/termineras n När den exekverande processen blockerar exv. p.g.a. I/O eller väntan på en semafor n Ett I/O-interrupt inträffar n Vid preemption: när tidskvantat tagit slut Operativsystem, Mats Björkman, MDH 21

22 En ny process skapas n Någon (en process) har bett OS:et att skapa en ny process n När detta sker måste skeduleraren ta ställning till om den nya processen skall få exekvera direkt, eller om den skapande processen skall fortsätta exekvera (eller om en tredje process skall exekvera) Operativsystem, Mats Björkman, MDH 22

23 En process avslutas/ termineras n När den exekverande processen avslutas, antingen frivilligt genom att den är klar, eller genom att den termineras av en eller annan anledning, då måste en ny process väljas att exekvera Operativsystem, Mats Björkman, MDH 23

24 En process blockeras n När den exekverande processen blockerar exv. p.g.a. I/O eller väntan på en semafor måste skeduleraren välja en annan process som skall exekvera Operativsystem, Mats Björkman, MDH 24

25 Ett I/O-interrupt inträffar n När ett I/O-interrupt inträffar kan det betyda att en väntande process borde få exekvera n Exempel: fil-i/o klar, inläsnng p.g.a. sidfel i minnet klar, nätverks-i/o (exv. inkommande paket) n När något sådant inträffar finns det troligen en process i ett väntetillstånd som skall flyttas till ready-kön och som kan vara aktuell att få exekvera Operativsystem, Mats Björkman, MDH 25

26 När skall det skeduleras? n Sammanfattningsvis, skedulera: n När det blir färre processer att välja mellan (den exekverande processen är inte längre aktuell att exekvera) n När det blir fler processer att välja mellan (nytillkomna i ready-kön) n Vid preemption: När tidskvantat tagit slut Operativsystem, Mats Björkman, MDH 26

27 Tidskvantat n Tidskvantats storlek är viktigt vid skedulering med preemption n Varje processbyte p.g.a. att tidskvantat tar slut innebär ett kontextbyte n Kontextbyten är kostsamma n Alltså borde tidskvantat vara stort n men n då blir responstiden lidande Operativsystem, Mats Björkman, MDH 27

28 Tidskvantat n Vissa system (exv. Windows) har olika eller variabelt tidskvantum för olika processer n Syftet är att ge bättre responstid åt interaktiva processer utan att ha alltför små (genomsnittliga) tidskvanta Operativsystem, Mats Björkman, MDH 28

29 Tidskvantat - implementation n Tidskvantat implementeras som ett regelbundet klockavbrott till processorn n Variabla tidskvanta implementeras som att processer får exekvera en viss multipel av klockavbrott n Exempel Windows: interaktiva trådar får tredubbelt tidskvantum, tråden får då exekvera till det tredje klockavbrottet innan den byts ut Operativsystem, Mats Björkman, MDH 29

30 Tidskvantat - implementation n Klockavbrott utan omskedulering är inte alls lika kostsamma, därför funkar det att ge en process en multipel av klockavbrott som tidskvantum Operativsystem, Mats Björkman, MDH 30

31 Typer av system n Olika typer av system kräver olika typer av skedulerare n Boken ger följande tre kategorier: n Batchsystem (utan interaktion med användare) n Interaktiva system (med interaktion med användare) n Realtidssystem (förutsägbarhet viktigt) Operativsystem, Mats Björkman, MDH 31

32 Typer av jobb n Olika typer av jobb finns också, beroende på vilka resurser de använder mest n CPU-bundna jobb utför många tunga beräkningar, exv. bildbehandling, simulering n I/O-bundna jobb utför mycket I/O, exv. databassökningar, filkopieringar n Dessa olika typer av jobb är inte hårt kopplade till föregående olika typer av system Operativsystem, Mats Björkman, MDH 32

33 Batchsystem n Inte riktigt som gamla tiders batchsystem, men: n Liten eller ingen interaktion med användare n Ofta stora jobb (mycket data att processa) med lång körtid n Tidskvantat kan vara stort, responstiden är mindre viktig än att inte slösa systemresurser på ideliga kontextbyten Operativsystem, Mats Björkman, MDH 33

34 Batchsystem n Exempel I/O-bundna: lönekörning, bankränta, data mining n Exempel CPU-bundna: väderprognoser, rendrering av animeringar, simuleringar Operativsystem, Mats Björkman, MDH 34

35 Interaktiva system n System där en eller flera processer interagerar med en eller flera användare n Kort responstid viktigt för att användaren skall vara glad och nöjd n Tidskvantats storlek blir ett avvägande mellan kort responstid och overheadkostnad Operativsystem, Mats Björkman, MDH 35

36 Interaktiva system n I vanliga system (Windows, UNIX, ) ligger tidskvantat typiskt mellan 10ms och 100 ms n Vissa system anpassar tidskvantat efter processen. Exempelvis Windows håller reda på vilka processer/trådar som är interaktiva och ger dessa ett längre tidskvantum Operativsystem, Mats Björkman, MDH 36

37 Interaktiva system n Interaktionen innebär i sig mycket I/O, därför är många interaktiva processer I/O-bundna n Spel etc. kan vara CPU-bundna Operativsystem, Mats Björkman, MDH 37

38 Realtidssystem n System som utför uppgifter där tidsåtgången måste vara förutsägbar n Exempel: Styrsystem för bromsar och airbag i bilar, reglersystem för kärnkraftverk n Ovanstående är exempel på hårda realtidssystem, system där tidskraven bara måste hållas Operativsystem, Mats Björkman, MDH 38

39 Realtidssystem n Det finns även en klass som kallas mjuka realtidssystem n Mjuka realtidssystem har fortfarande strikta tidskrav, men konsekvenserna av att inte hålla tiden är mindre n Exempel på detta är uppspelning av video och audio Operativsystem, Mats Björkman, MDH 39

40 Realtidssystem n Det är svårt för ett operativsystem att ge hårda realtidsgarantier om inte väldigt många förutsättningar är kända n Exempel är att i ett hårt realtidssystem måste ofta alla processer vara kända från början och inget dynamiskt skapande av processer tillåts n Ofta finns också krav på att det finns kända gränser för utnyttjande av resurser, exv. känd exekveringstid för alla processer Operativsystem, Mats Björkman, MDH 40

41 Realtidssystem n Realtidssystem är I/O-bundna närmast som regel, de flesta styr- och reglertillämpningar har relativt enkla algoritmer och spenderar en stor del av tiden med att få in sensordata från omgivningen och skicka ut styrdata n Realtidssystem som hanterar video kan använda mycket processorkraft, ofta dock på separata grafikprocessorer (GPU:er) Operativsystem, Mats Björkman, MDH 41

42 Vart är vi på väg? n Notera gärna Tanenbaums notering att eftersom CPU-er blir snabbare snabbare än I/O blir snabbare, så blir fler och fler jobb I/O-bundna n Den gamla principen att optimera för att hålla CPU:n maximalt sysselsatt kan därför diskuteras Operativsystem, Mats Björkman, MDH 42

43 Vart är vi på väg? n En annan intressant notering (som inte är Tanenbaums utan min) är att tidskvantat inte blivit kortare i takt med att CPU:er har blivit snabbare n Om processorerna blivit typ 1000 gånger snabbare på 15 år, varför är inte tidskvantat 1000 gånger kortare idag? Operativsystem, Mats Björkman, MDH 43

44 Vart är vi på väg? n Varför? n Min gissning: människor har inte blivit 1000 gånger snabbare på 15 år n Den stora anledningen till korta tidskvanta är responstid för interaktiva processer n För oss människor räcker en responstid i området ms för att vi skall uppleva samtidighet Operativsystem, Mats Björkman, MDH 44

45 Olika skeduleringsalgoritmer n Eftersom olika typer av system har olika krav, så är det inte säkert att den skeduleringsalgoritm som är bra för en typ av system även passar till en annan typ av system Operativsystem, Mats Björkman, MDH 45

46 Mål för skeduleringsalgoritmer n Alla system: n Rättvisa alla processer med samma prioritet skall ges lika möjligheter att utnyttja systemets resurser n Policy Enforcement (exv. safety, security) n Balans i systemet alla delar skall vara så väl utnyttjade som möjligt Operativsystem, Mats Björkman, MDH 46

47 Mål för skeduleringsalgoritmer n Batchsystem n Minimera omloppstiden (turnaround time), dvs tiden för ett jobb att utföras n Maximera genomströmningen (throughput), dvs antalet jobb per tidsenhet n Maximera CPU-utnyttjandet (CPU utilization) Operativsystem, Mats Björkman, MDH 47

48 Mål för skeduleringsalgoritmer n Interaktiva system n Minimera svarstiden (Response Time), användaren skall inte behöva vänta i onödan n Proportionalitet, väntetiden skall stå i rimlig proportion till vad man väntar på Operativsystem, Mats Björkman, MDH 48

49 Mål för skeduleringsalgoritmer n Realtidssystem n Möta deadlines övergripande mål för realtidsskedulering n Förutsägbarhet ett mål för de flesta realtidssystem Operativsystem, Mats Björkman, MDH 49

50 Skeduleringsalgoritmer 50

51 Skeduleringsalgoritmer First come first served (FCFS) Interactive programs P1 P2 P3 P4 Starvation free Efficiency CPU Preemptive Operativsystem, Mats Björkman, MDH 51

52 Skeduleringsalgoritmer Round robin (Cirkulär kö) Interactive programs Quantum P2 Starvation free P1 CPU P3 Efficiency Preemptive Setting the Quantum? P4 Operativsystem, Mats Björkman, MDH 52

53 Skeduleringsalgoritmer Prioritetsbaserad Interactive programs P4 High P1 Medium P2 Low P3 Low Starvation free CPU Efficiency Preemptive Operativsystem, Mats Björkman, MDH 53

54 Skeduleringsalgoritmer Multipla köer Interactive programs High P4 P1 P1 Quantum = 1 unit Starvation free Medium P2 P4 Quantum = 2 units Efficiency Low P3 Quantum = 4 units Preemptive CPU Operativsystem, Mats Björkman, MDH 54

55 Skeduleringsalgoritmer Shortest job first (sjf) Interactive programs P4 P1 P2 P3 Starvation free Efficiency CPU Preemptive Operativsystem, Mats Björkman, MDH 55

56 Skeduleringsalgoritmer Lotteriskedulering Interactive programs P2? Starvation free P1 P3? Efficiency P4 Preemptive CPU Operativsystem, Mats Björkman, MDH 56

57 Skedulering i Windows n Prioritetsdriven n n Preemptive n n n Tråden (som är ready) med högst prioritet kommer alltid att skeduleras Trådar kan avbrytas av andra trådar Round robin inom varje prioritetsnivå Använder flera olika tidskvanta n Processor affinity n I multiprocessorsystem kan trådar bindas till ett subset av tillgängliga processorer Operativsystem, Mats Björkman, MDH 57

58 Prioritetsnivåer (interna) n 16 realtids -prioriteter (16-31) n 15 variabla prioriteter (1-15) Operativsystem, Mats Björkman, MDH 58

59 Prioritetsnivåer (Win32 API) Win32 definierar: n Fyra prioritetsklasser för processer: real-time, high, normal och idle n Sju prioritetsnivåer för trådar: time critical, highest, above normal, normal, below normal, lowest och idle Operativsystem, Mats Björkman, MDH 59

60 Mappning av Win32 API-prioriteter till interna prioriteter P R O C E S S Realtime Time critical Highest Above normal T H R E A D Normal Below normal High Normal Idle Lowest Idle Operativsystem, Mats Björkman, MDH 60

61 Justeringar i Windows av prioriteter och tidskvanta n Varför gör de på detta viset? n Bättre responstider n Bättre throughput n Exempel på justeringar n Öka tidskvantat för just nu interaktiva trådar n Öka prioriteten för nyss väckta trådar n Öka prioritet och tidskvanta för trådar som fått vänta ett tag på CPU:n Operativsystem, Mats Björkman, MDH 61

62 Beräkningar av egenskaper för skeduleringsalgoritmer 62

63 Medelomloppstid (Average turnaround time) n Ett mått på genomströmning R n n Var är den genomsnittliga omloppstiden för alla processer? p = = Turnaround Number of time Average turnaround for processes time = process n x= 1 R n x p = end start Operativsystem, Mats Björkman, MDH 63

64 Övning Beräkna medelomloppstiden för 5 batchjobb som alla vill starta vid tid=0 (i ordningen A, B, C, D, E), och som har exekveringstiderna A=10, B=6, C=2, D=4 respektive E=8. Beräkna medelomloppstiden för var och en av följande skeduleringsalgoritmer: 1. FCFS 2. SJF 3. Round Robin, kvanta = 1 enhet R n p = Turnaround time = Number Average turnaround processes time x= 1 Operativsystem, Mats Björkman, MDH 64 of for = process n R n x p

65 Lösning - FCFS Exekveringstider A=10, B=6, C=2, D=4 och E=8 A B C D E 0 R n p = 10 = Turnaround Number of 1618 time for processes process n R = x Average turnaround time x= 1 n Average turnaround time = 5 Operativsystem, Mats Björkman, MDH 65 p = 96 5 = 19.2

66 Lösning - SJF Exekveringstider A=10, B=6, C=2, D=4 och E=8 C D B E A 0 R n 2 p = = Turnaround Number of time Average turnaround Average turnaround for processes time time = process Operativsystem, Mats Björkman, MDH 66 = n x= 1 R n x 30 p = 70 5 = 14

67 Lösning - Round robin Execution times A=10, B=6, C=2, D=4 and E=8 A B C D E Average turnaround 3 8 time = Operativsystem, Mats Björkman, MDH = =

68 Lärandemål, igen n Mål för en skedulerare n Preemptive, Icke-preemptive n Skeduleringsalgoritmer för- och nackdelar n Beräkning av medelomloppstid Operativsystem, Mats Björkman, MDH 68

69 Processer, summering CPU PSEUDOPARALLELL MULTITASKING 00008abe <_E>: 8abe: mov.w #0x5 8ac2: bsr.+2 (8ac6) 00008ac4 <.ef>: 8ac4: rts 00008ac6 <_E_sub>: 8ac6: sub.w r1,r1 8ac8: 1d 01 1d 01 cmp.w r0,r1 8aca: 4e 20 4e 20 bgt.+32 (8aec) 00008acc <.L6>: 8acc: 0d 13 0d 13 mov.w r1,r3 8ace: add.w r3,r3 8ad0: 6b 02 a8 d4 6b 02 a8 d4 8ad4: add.w r3,r2 8ad6: 6b 82 a8 d4 6b 82 a8 d4 mov.w 8ada: add.w r1,r3 8adc: 6b 02 a8 d6 6b 02 a8 d6 8ae0: add.w r3,r2 8ae2: 6b 82 a8 d6 6b 82 a8 d6 mov.w 8ae6: 0b 01 0b 01 adds #0x1,er1 8ae8: 1d 01 1d 01 cmp.w r0,r1 PC SP REGS P R I O R I T Y I B A y++ y=0 8aea: 4f e0 4f e0 ble.-32 (8acc) 00008aec <.L5>: 8aec: rts t 0 t 1 t 2 t 3 t 4 T I M E KRAV KONTEXTBYTE SKEDULERARE SYNKRONISERING SEMAFORER EGENSKAPER MEDDELADESYSTEMN Operativsystem, Mats Björkman, MDH 69

Operativsystem - Processer I

Operativsystem - Processer I Operativsystem - Processer I Mats Björkman 2015-01-21 Innehåll n Processer (föreläsning 2, den här) n n n Processmodell Processtillstånd Trådar n Processkommunikation (föreläsning 3) n n n Semaforer Monitorer

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

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

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

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

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

Schemaläggningsmetodik för multi-core inom Windows 7 OS Vad är scheduling och hur schemalägger Windows OS sina processer?

Schemaläggningsmetodik för multi-core inom Windows 7 OS Vad är scheduling och hur schemalägger Windows OS sina processer? LUNDS TEKNISKA HÖGSKOLA Schemaläggningsmetodik för multi-core inom Windows 7 OS Vad är scheduling och hur schemalägger Windows OS sina processer? 2015-12-07 1. Inledning Det är ett faktum idag att multi-core

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

Minneshantering segmentering och virtuellminne. Föreläsning 3

Minneshantering segmentering och virtuellminne. Föreläsning 3 Minneshantering segmentering och virtuellminne Föreläsning 3 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

Läs mer

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

syftar till att förbättra prestanda. Den kan avse något eller flera av följande mått.

syftar till att förbättra prestanda. Den kan avse något eller flera av följande mått. 71 4. 4.1. Allmänt Vid multiprogrammering kan det vara önskvärt att anpassa systemets beteende till olika tillämpningars behov. En anledning till multiprogrammering var att man önskade öka genomströmningen.

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

Realtidssystem. - Schemaläggning - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 6

Realtidssystem. - Schemaläggning - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 6 Realtidssystem - Schemaläggning - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 6 Kursens innehåll motsvarar tidigare omgångar under beteckning EDA698 Stora delar baserad på: Föreläsningsmaterial

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

Några gamla tentamensuppgifter: Processer. 3. Antag givet ett system i vilket rent CPU-bundna processer med följande egenskaper exekveras.

Några gamla tentamensuppgifter: Processer. 3. Antag givet ett system i vilket rent CPU-bundna processer med följande egenskaper exekveras. 1 Tentamen 1992-08-26 1. Fyra processer ska synkroniseras så att A går före B och B och C går före D. Realisera denna ordning genom att använda (potentiellt blockerande) send- och receive- operationer

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

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 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 - Processkommunikation

Operativsystem - Processkommunikation Operativsystem - Processkommunikation Mats Björkman 2015-01-26 Innehåll Processer (föreläsning 2) Processmodell Processtillstånd Trådar Processkommunikation (föreläsning 3, den här) Semaforer Monitorer

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

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

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

Realtidssystem. - Schemaläggning - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 6

Realtidssystem. - Schemaläggning - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 6 Realtidssystem - Schemaläggning - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 6 Stora delar baserad på: Föreläsningsmaterial EDA040 (Klas Nilsson, Mathias Haage) samt EDA698 (Mats Lilja)

Läs mer

Hyper-Threading i Intelprocessorer

Hyper-Threading i Intelprocessorer Lunds Tekniska Högskola Campus Helsingborg DATORARKITEKTURER MED OPERATIVSYSTEM EITF60 RAPPORT Hyper-Threading i Intelprocessorer 4 december 2017 Rasmus Hanning IDA2 Sammanfattning Det har sedan den första

Läs mer

Operativsystem. Hierarkin för hårdvara läses nerifrån

Operativsystem. Hierarkin för hårdvara läses nerifrån Operativsystem DOS DiskOperatingSystem - ett jobb i taget. Dagens Operativsystem - prioriterar olika jobb. Om ett jobb pausas körs ett annat. Operativsystems viktigaste funktion är att bilda gränssnitt

Läs mer

Operativsystem. IS1350 7.5hp. Jim Dowling Docent, PhD jdowling@kth.se. [Bilder av Robert Rönngren]

Operativsystem. IS1350 7.5hp. Jim Dowling Docent, PhD jdowling@kth.se. [Bilder av Robert Rönngren] Operativsystem IS1350 7.5hp Jim Dowling Docent, PhD jdowling@kth.se [Bilder av Robert Rönngren] Innehåll Om kursen w w w. i t. k t h. s e / c o u r s e s / I S 1 3 5 0 Vad är ett operativsystem och varfö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

Realtidssystem HT03. Vad är realtidssystem? Inbyggda system. Att programmera, Tasks (Uppgifter) Realtidssystem kräver analys

Realtidssystem HT03. Vad är realtidssystem? Inbyggda system. Att programmera, Tasks (Uppgifter) Realtidssystem kräver analys Realtidssystem HT03 Vad är realtidssystem? Föreläsare: Wang Yi Rum: 1235, yi@it.uu.se, Tel: 471 3110 Assistent: Tobias Amnell Rum: 1216, tobiasa@it.uu.se, Tel: 4717122 Webbsida: www.it.uu.se/edu/course/homepage/realtid/h03

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

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

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

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

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

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

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

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

Översikt. Datorarkitekturer med operativsystem. Inledning. Inledning

Översikt. Datorarkitekturer med operativsystem. Inledning. Inledning Datorarkitekturer med operativsystem ERIK LARSSON Översikt Inledning Inledning Inledning En processor eller central processing unit (CPU) är enheten som exekverar program i en dator En dator är en maskin

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

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

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

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

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

Fö 5+6 TSEA81. Real-time kernel + Real-time OS

Fö 5+6 TSEA81. Real-time kernel + Real-time OS Fö 5+6 TSEA81 Real-time kernel + Real-time OS Stackens användningsområde * JSR / RTS : returadress * Temporärdata (push / pop) void myfunc(void) { int i; // hamnar nog i register int test[10]; // hamnar

Läs mer

Reservföreläsningen inställd

Reservföreläsningen inställd Reservföreläsningen inställd n Reservtiden (fredag 10 mars kl 13-15) är en reservtid, ställs nu in eftersom inte något oförutsett hänt Operativsystem, Mats Björkman, MDH 1 Labredovisningar n Labbar som

Läs mer

Operativsystem. Innehåll. Operativsystemets funktion. Vad är ett OS? Vart hittar men ett OS? OS hanterar processorns resurser

Operativsystem. Innehåll. Operativsystemets funktion. Vad är ett OS? Vart hittar men ett OS? OS hanterar processorns resurser Innehåll Operativsystem Vad är operativsystem och hur fungerar de Vad är ett OS? Syfte Att tillåta flera program att köra samtidigt Att fungera som ett abstraktionslager mot hårdvaran Att hantera olika

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

Trådar och Multiprocessorer. Föreläsning 6

Trådar och Multiprocessorer. Föreläsning 6 Trådar och Multiprocessorer Föreläsning 6 Trådar och multiprocessorer Hur skriver man program som hanterar många saker samtidigt, t.ex. en web-server som hanterar många samtidiga begäran från olika klienter?

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

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

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

Realtidsprogrammering Ordinarie tentamen

Realtidsprogrammering Ordinarie tentamen Tentamen i Realtidsprogrammering Ordinarie tentamen Datum: 2006-10-20 Tid: 08:00 13:00 Ansvarig lärare: Telefon: 1438 (kontor) Hjälpmedel: Miniräknare Poäng: Tentamen omfattar 40 poäng fördelade på 7 uppgifter.

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

Datakom II (MNP) ht 1998 Bengt Ahlgren 1. Vad är speciellt med implementering av kommunikationsprotokoll?

Datakom II (MNP) ht 1998 Bengt Ahlgren 1. Vad är speciellt med implementering av kommunikationsprotokoll? 1 Vad är speciellt med implementering av kommunikationsprotokoll? 2 Översikt Inledning Hårdvaru-vy och mjukvaru-vy Mjukvaruarkitektur Rules of thumb Minnesbandbredd TCP-implementering ILP Integrated Layer

Läs mer

Fö 7 TSEA81. Scheduling

Fö 7 TSEA81. Scheduling Fö 7 TSEA81 Scheduling Reflektion Lab 3 Operation Linux Simple OS * wait pthread_mutex_lock si_sem_wait * signal pthread_mutex_unlock si_sem_signal * await pthread_cond_wait si_ev_await * cause pthread_cond_broadcast

Läs mer

Öka prestanda i Shared-Cache multi-core processorer

Öka prestanda i Shared-Cache multi-core processorer Öka prestanda i Shared-Cache multi-core processorer 1. Abstract Många processorer har nuförtiden flera kärnor. Det är även vanligt att dessa kärnor delar på högsta nivås cachen för att förbättra prestandan.

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

Realtidssystem. - Semaforer, trådsynkronisering - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp 2015-09-02

Realtidssystem. - Semaforer, trådsynkronisering - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp 2015-09-02 Realtidssystem - Semaforer, trådsynkronisering - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp 2015-09-02 Stora delar baserad på: Föreläsningsmaterial EDA040 (Klas Nilsson, Mathias Haage) samt EDA698

Läs mer

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Dator Primärminne Instruktioner och data Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction Programexekvering

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

MESI i Intel Core 2 Duo

MESI i Intel Core 2 Duo MESI i Intel Core 2 Duo Sammanfattning Denna rapport beskriver en processor (Intel Core 2 Duo) vars cache coherence protokoll är MESI. Rapporten beskriver hur processorn är uppbyggd, hur många kärnor den

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

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Parallellberäkning Konstant behov av högre prestanda Prestanda har uppnåtts genom: Utveckling inom halvledarteknik Tekniker som:» Cacheminne» Flera bussar»

Läs mer

Aktivitetsschemaläggning för flerkärninga processorer

Aktivitetsschemaläggning för flerkärninga processorer Lunds Tekniska Högskola Datorarkitekturer med Operativsystem EDT621 Aktivitetsschemaläggning för flerkärninga processorer Tobias Lilja 5 december 2016 Innehåll 1 Inledning 3 1.1 Syfte................................

Läs mer

Föreläsning 15: Parallella subrutiner. Parallellitet. Varför parallella underprogram?

Föreläsning 15: Parallella subrutiner. Parallellitet. Varför parallella underprogram? Föreläsning 15: Parallella subrutiner Parallellitet Processer och trådar Semaforer, monitorer och synkroniseringsmeddelanden Parallellitet Ofta är det nödvändigt eller önskvärt att programdelar exekveras

Läs mer

Realtidssystem. - Dödläge - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 5

Realtidssystem. - Dödläge - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 5 Realtidssystem - Dödläge - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 5 Kursens innehåll motsvarar tidigare omgångar under beteckning EDA698 Stora delar baserad på: Föreläsningsmaterial

Läs mer

Cacheminne i en Intel Core 2 Duo-processor

Cacheminne i en Intel Core 2 Duo-processor Peter Hesslow EDT621 Cacheminne i en Intel Core 2 Duo-processor Abstrakt Det finns många olika sätt att bygga upp ett datorminne på, och med en flerkärnig processor så blir alternativen ännu fler. Denna

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

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

DVA315 Operativsystem. Mats Björkman Mälardalens högskola

DVA315 Operativsystem. Mats Björkman Mälardalens högskola DVA315 Operativsystem Mats Björkman Mälardalens högskola 1 Kursen i korthet n Föreläsningar: OS-koncept och teori n Ser på OS från OS- utvecklarens perspek4v n Labbar: Programmering med OS-support n Ser

Läs mer

FOTA - 3 COTS och objektorientering i realtidstillämpningar Annika Ohlsson Ericsson Microwave Systems

FOTA - 3 COTS och objektorientering i realtidstillämpningar Annika Ohlsson Ericsson Microwave Systems FOTA - 3 COTS och objektorientering i realtidstillämpningar 2000-05 - 03 Annika Ohlsson Ericsson Microwave Systems annika.h.ohlsson@emw.ericsson.se FOTA - 3 Deltagare Ericsson Microwave Systems (projektledning)

Läs mer

Datorsystem 2 CPU. Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur. Visning av Akka (för de som är intresserade)

Datorsystem 2 CPU. Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur. Visning av Akka (för de som är intresserade) Datorsystem 2 CPU Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur CPU Visning av Akka (för de som är intresserade) En dators arkitektur På en lägre nivå kan vi ha lite olika

Läs mer

Mål. Datorteknik. Repetition av avbrott. Innehåll. Mätning och styrning. Datorer för mätning och styrning. timer. Datorsystem A/D. Analog insignal D/A

Mål. Datorteknik. Repetition av avbrott. Innehåll. Mätning och styrning. Datorer för mätning och styrning. timer. Datorsystem A/D. Analog insignal D/A Mål Datorteknik Föreläsning 5 Att du ska förstå hur avbrott används för - Mätning - Styrning - Stöd för körning av fle processer Att du ska förstå begreppet tråd Att du ska veta hur odelba resurser kan

Läs mer

Undersökning av processorprestanda under arbetsbelastning

Undersökning av processorprestanda under arbetsbelastning Undersökning av processorprestanda under arbetsbelastning Linnea Strågefors Examensarbete i Datateknik, 15 hp Februari 2014 Handledare: Carina Nilsson Sektionen för teknik Examinator: Carina Nilsson Blekinge

Läs mer

DVA315 Operativsystem

DVA315 Operativsystem DVA315 Operativsystem Mats Björkman Mälardalens högskola 2017-01-16 1 Kursen i korthet n Föreläsningar: OS-begrepp och teori n Ser på OS från OS-utvecklarens synvinkel n Inlämningsuppgifter: Programmering

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

Datorsystem 5. På denna föreläsning skall vi prata om Operativsystem Exempel på tenta (typ fjolårets)

Datorsystem 5. På denna föreläsning skall vi prata om Operativsystem Exempel på tenta (typ fjolårets) Datorsystem 5 På denna föreläsning skall vi prata om Operativsystem Exempel på tenta (typ fjolårets) Vad är ett operativsystem (OS)? Syfte Att tillåta flera program att köra samtidigt Att fungera som ett

Läs mer

Datorteknik ERIK LARSSON

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

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

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

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

Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60. Superscalar vs VLIW. Cornelia Kloth IDA2. Inlämningsdatum:

Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60. Superscalar vs VLIW. Cornelia Kloth IDA2. Inlämningsdatum: Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60 Superscalar vs VLIW Cornelia Kloth IDA2 Inlämningsdatum: 2018-12-05 Abstract Rapporten handlar om två tekniker inom multiple issue processorer

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

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013 Rahim Rahmani (rahim@dsv.su.se) Division of ACT Department of Computer and Systems Sciences Stockholm University SVAR TILL TENTAMEN I DATORSYSTEM, VT2013 Tentamensdatum: 2013-03-21 Tentamen består av totalt

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

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

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

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

Pipelining i Intel 80486

Pipelining i Intel 80486 Lunds Universitet Pipelining i Intel 80486 EITF60 Datorarkitekturer med operativsystem Martin Wiezell 2017-12-04 Abstract This paper gives a brief description of the instruction pipeline of the Intel 80486

Läs mer

Realtidssystem, device drivers. Föreläsning 10

Realtidssystem, device drivers. Föreläsning 10 Realtidssystem, device drivers Föreläsning 10 Dagens föreläsning Realtidssystem Device drivers (Multimedia video) Realtidssystem Karakteristika Mjuka realtidssystem Hårda realtidssystem Schemaläggning

Läs mer

INSTITUTIONEN FÖR DATA- OCH INFORMATIONSTEKNIK

INSTITUTIONEN FÖR DATA- OCH INFORMATIONSTEKNIK INSTITUTIONEN FÖR DATA- OCH INFORMATIONSTEKNIK DIT162 Realtidssystem, 7,5 högskolepoäng Real-Time Systems, 7.5 credits Fastställande Kursplanen är fastställd av Institutionen för data- och informationsteknik

Läs mer

LUNDS UNIVERSITET. Parallell exekvering av Float32 och INT32 operationer

LUNDS UNIVERSITET. Parallell exekvering av Float32 och INT32 operationer LUNDS UNIVERSITET Parallell exekvering av Float32 och INT32 operationer Samuel Molin Kursansvarig: Erik Larsson Datum 2018-12-05 Referat Grafikkort utför många liknande instruktioner parallellt då typiska

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Program Abstraktionsnivå: Högnivåspråk» t ex C, C++ Assemblyspråk» t ex ADD R1, R2 Maskinspråk» t ex 001101.101 Semantiskt gap Alltmer avancerade programmeringsspråk tas fram för

Läs mer

Vad är en dator? Introduktion till datorer och nätverk. Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018

Vad är en dator? Introduktion till datorer och nätverk. Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018 . Vad är en dator? Introduktion till datorer och nätverk Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018 Översikt 2/23 Datorns historia von Neumann-arkitekturen Operativsystem Datornät

Läs mer

Multi-ported cache En rapport om några lösningar till att få flera minnesaccesser simultant.

Multi-ported cache En rapport om några lösningar till att få flera minnesaccesser simultant. Multi-ported cache En rapport om några lösningar till att få flera minnesaccesser simultant. Sammanfattning När processorns klockhastighet ökar medför det en ökning av instruktioner vilket såklart ökar

Läs mer

DIG IN TO Dator och nätverksteknik

DIG IN TO Dator och nätverksteknik DIG IN TO Dator och nätverksteknik CCNA 1 Operativsystem Agenda Datorsystemets struktur Vad är ett operativsystem? Minneshantering Threads och processer Threads eller exekveringstrådar Processhantering

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

Introduktion till programmering

Introduktion till programmering Introduktion till programmering Vad är programmering? Vad gör en dator? Vad är ett datorprogram? 1 (9) Vad är programmering? För att bestämma en cirkels area måste du: 1. Dividera diametern 5 med 2. 2.

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