Schemaläggningsmetodik för multi-core inom Windows 7 OS Vad är scheduling och hur schemalägger Windows OS sina processer?
|
|
- David Åkesson
- för 7 år sedan
- Visningar:
Transkript
1 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?
2 1. Inledning Det är ett faktum idag att multi-core processorarkitektur tillhör nästa generations mikroprocessorarkitektur. Antalet kärnor per processor ökar än ständigt, det är inte ovanligt idag med fyra, kanske till och med i vissa fall upp till 12 kärnor per processor i marknadens konsumentdatorer. Flera kärnor förknippas ofta med desto bättre men applikationernas prestanda kommer alltmer förlita/bli begränsad av processorns minnesbandbredd. Att fördela arbetet parallellt mellan de olika kärnorna är en förutsättning för att få den förväntade prestandaökningen från multicore-system. Denna rapport kommer belysa hur realtidsssytemet Windows OS schemalägger sina processer för att göra cacheminnen mer effektiva inom multicore processorarkitektur. Arbetsområdet kommer att avgränsas och fokus kommer att ligga på homogenous multicore-processorarkitektur, d.v.s. att alla kärnor i en processorer är likadana. 2. Sammanfattning I ett enkelt system med en process körandes går tiden åt att vänta på I/O förlorad, föralltid. Ett system med någon sorts schemaläggningsmetod/algoritm tillåter t.ex. att en process använder en kärna, medans nästa kärna väntar på I/O och kan därmed utnyttja och ta tillvara den annars förlorade tidsåtgången i en klockcykel. Det är CPU scheduler ns uppgift att se till att tilldela nya uppgifter, från ett färdigt schema, till CPU:n att exekversa närhelst processorn blir ledig. I schemat finns alla instruktionerna lagrade för vad som skall tilldelas/exekveras härnäst av de olika CPU-kärnorna. I vilken ordning som instruktionerna skall hämtas från schemat behöver inte nödvändigtvis vara FIFO, utan kan vara en komplex algoritm med flera valmöjligheter och med olika justerbara parametrar för varje algoritm. Det är här de olika schemaläggningsmetoderna kommer in i bilden och möjliggör bl.a. kortare tidsåtgång vid exekevering av processer i bl.a. multicore-arkitekturer. Det kommer ständigt nya algoritmer för olika miljöer och situationer för att effektivisera systemet så mycket som möjligt. En kort översiktlig genomgång av två vanligt förekommande schemaläggninsmetoder inom multipleprocessor gås igenom härunder; Asymmetric multiprocessing; Där en kärna är såkallad master och kontrollerar alla aktiviteter och sköter all kernel-kod (kod som är inladdat i ett skrivskyddat område i minnet), medans resterande kärnor kör användar-kod. Detta tillvägagångsätt är relativt simpelt då ingen kritisk data delas sinsemellean kärnorna.
3 Symmetric multiprocessing (SMP); Här sköter och tilldelar varje kärna sitt eget jobb, antingen från ett delat schema bland kärnorna eller från ett separat schema för varje enskild kärna. I stort sett så stödjer samtliga dagens operativsystem SMP, varav bl.a. Linux, Mac OSX och Windows. SMP-system försöker kontinuerligt hålla processer inom samma processor och dess tillhörande cache med hjälp av affinitet (processor affinity) för att slippa behöva gå till primära minnet som kostar tid. En viktigt aspekt att ej glömma bort är att fördelningen mellan processorerna bör vara balanserad så att inte en kärna körs tomt (idle) medans andra är överbelastade. Då många av dagens system använder sig utav separata scheman för varje enskild processor så behöver dessa tas hänsyn till så att bördan fördelas ( load sharing ) balanserat i de olika scheman. Detta görs antingen med; Push migration; Denna metod flyttar processer periodiskt från överbelastade processorer till mindre belastade. Pull migration; Här tar de processorer som körs på idle processer från andra processorers scheman. Man bör vara observant på att flytta processer sinsemellan olika processorer är emot affinitets-principen och om de inte hanteras varsamt så kan tiden för att balansera systemet gå till spillo då cacheminen måste byggas om på nytt. Ett sätt att komma runt detta problem är att endast tillåta migration av arbetet då det råder en obalans som överstigit en viss tillåten gräns. Att utvärdera olika schemaläggningsmetoder må i vissa fall kräva lite arbete men lönar sig genast i form av ett effektivare system. Första steget är att bestämma sig för en algoritm, samt vilka parameter inställningar är lämpliga för den algoritmen, som är lämplig för en viss driftmiljö och dess kriterier som behöver uppfyllas. När kriterier väl har fastställts kan man börja utvärdera och kolla på olika algoritmer och vilken som är bäst. Hur vet man vilken är bäst? Det är inte alltid självtalande att en metod är bättre än den andra, för att underlätta arbetet bör man använda sig något utav följande metoder; Deterministic modeling; Om arbetsbelastningen ( workload ) är känd så kan man t.ex. beräkna genomsnittliga väntetiden etc. För att sedan jämföra vilken algoritm som är
4 bäst. Deterministisk modellering går snabbt att använda sig utav, men kräver särskilda kända input -värden. Ej glömma att att resultatet endast gäller för just det fallet med den givna indatan. Queuing models; I många fall finns ingen given data tillgängligt, däremot kan man dra nytta av historisk prestanda-värden som i sin tur kan användas för att beskriva vissa parametrar, bl.a. ankomstintensitet, betjäningsprocess, medelvärde för betjäning etc. Med hjälp av dessa och bl.a. Little s sats kan köteori modelleras och därmed möjliggörs det att beräkna vissa egenskaper hos enskilda scheman/köer. Tyvärr är många av dagens moderna realtidssystem såpass komplexa att även med hjälp av matematiken är det svårt att konstruera formler som tar hänsyn till alla aspekter. Simulations; Ett sätt är att köra datorsimuleringar av de utvalda algoritmerna under olika belastningsförhållande för att avgöra vilken som presterar bäst. Implementation; Det enda sättet att egentligen avgöra hur en utvald schemaläggningsalgoritm presterar är genom att implementera den i ett verkligt system. Denna metod må anses vara bäst i första anspråk det är dock inte alltid möjligt att kunna implementera i en färdig produkt. Även om så skulle vara fallet ska man inte glömma att ett systems arbetsbelastning inte är statisk, utan dynamisk och påverkas t.ex. av nya installerade program, ny hårdvara men även sociala beteenden. Senaste åren har användningen av internet ökat explosionsartat vilket har medfört en vikt av att kunna hantera den ökade trafiken med snabba svarstider. 1 2 Nu vidare till rapportens syfte; Dagens mest använda operativsystem med nära 80% 3 av marknaden är Windows Men hur går Windows 7 tillväga för att schemalägga sina processer inom multi-core system? Windows använder sig utav round robin teknik med multilevel feedback-queue scheduling för att schemalägga prioritet av processer i scheman. Schemaläggaren ändrades i Windows Vista med införandet av ett prioriterad schemaläggare och även ett cycle counter register för moderna processorer för att hålla reda på exakt hur många processorcykler en tråd har exekverat. 1 UIC Department of Computer Science: CPU scheduling, hämtat: Wikipedia: Scheduling (computing), hämtat: W3schools: OS Platform Statistics, hämtat:
5 Round Robin scheduling påminner till en viss grad om First-Come First-Serve scheduling (FCFS) med skillnaden att CPU bursts är tilldelade med en gräns, såkallat time quantum. När processorn har blivit tilldelad en process så sätts en timer (till det värde som time quantum är inställd på). Om processen har hunnit bearbetas innan timern löper ut så lämnar processen CPU:n precis som vid FCFS. Om timern skulle hinna utlösas innan processen ej hunnit bearbetas färdigt så läggs processen sist i det färdiga schemat. Därmed bibehålls schemat/kön cirkulär enligt Figur 1 nedanför. Figure 1: Round Robin scheduling example Multilevel feedback-queue innebär att separate kön/scheman kan etableras där varje kö kategoriseras in i olika schemaläggnings-algoritmer, där de olika processerna sedan läggs in beroende på vilken algoritm som lämpar sig för just den. Processerna kan även flyttas från en kö till en annan beroende på om processens egenskaper har förändrats och/eller hur länge processen har legat i kön. Multilevel feedback-queue är en av de mest flexibla schemaläggningsmetoderna tillgängliga med anledning av att den går att anpassa efter situation. Dess flexibilitet innebär även en hake metoden är en av de mest komplexa att implementera just på grund av av alla parametrar som går att justera. Även priority preemptive scheduling används flitigt i realtidssystem, och så även i Windows 7. Med denna metod har processer med högre prioritet förtur (preemptive) när schemaläggaren säkerställer vid varje given tidpunkt att processorn verkligen exekverar den process som har högst prioritet bland de processer som ligger i det färdiga schemat. Detta går hand i hand med affinitet som tidigare belystes i denna rapport då man eftersträvade att hålla processer med hög prioritet inne i cacheminnet för att slippa gå till primärminnet. Det är alltså
6 inte nödvändigt att en process för köras färdigt tills timern (time quantum) har löpt ut då Windows implementerar en preemptive schemaläggare vilket med andra ord innebär att om en process med högre prioritet hamnar i det färdiga schemat, över processer som är redo att exekveras, så kan den befintliga pågående processen avbrytas och processen med högre prioritet exekveras istället innan ens dess tidskvanta har börjat. Gällande prioritetsnivåer så använder Windows 32 olika nivåer (som sträcker sig från 0 t.om. 31 enligt Figur 2 nedanför). Figur 2: Thread priority levels De olika prioritetsnivåerna sätts utifrån två perspektiv; Windows API (Application Programming Interfaces) och Windows kernel. API:n kategoriserar först processerna enligt det väde som processen initiellt har tilldelats. I kernel-koden konverteras processens prioritetsklass till en såkallad base priority enligt en fastställd mapping som inte kan ändras. Slutligen är det värt att påpekas att all schemaläggnings-kod är implementerad i kernel-koden hos Windows operativsystem. Med detta sagt kring vad scheduling är och hur Windows 7 schemalägger sina processer är det uppenbart att val av schemaläggningsmetod spelar en stor avgörande roll på hur t.ex. tidseffektivt ett system är. Vid implementation av verkliga realtidssystem bör man noga utvärdera val av algoritm för just de kriterier som sitt system skall upfylla Russinovich Mark, Solomon, David, Ionescu, Alex, 2012: s
7 3. Referenslista Russinovich, Mark, Solomon, David, Ionescu, Alex (2012). Windows Internals Part 1 (6 th edition). Redmond, Washington: Microsoft Press UIC Department of Computer Science: CPU scheduling (hämtat: ) Wikipedia (2015) Scheduling (computing) (hämtat: ) W3schools.com (2015) OS Platform Statistics (hämtat: )
Schemaläggnings metoderna AMP & SMP i en Multiprocessor
EDT621 Datorarkitekturer med operativsystem 7,5 HP 2015-12-05 Schemaläggnings metoderna AMP & SMP i en Multiprocessor Författare: Simon Plato Sammanfattning Rapporten beskriver två schemaläggnings metoder.
Läs merHyper-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 merMulti-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 merLunds 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 merTDDIU81. 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Ö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 merDatorteknik 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 merOperativsystem. 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 merAktivitetsschemalä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 merCache-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 merHyper Threading Intels implementation av SMT. Datorarkitekturer med operativsystem - EITF60. Felix Danielsson IDA2
Hyper Threading Intels implementation av SMT Datorarkitekturer med operativsystem - EITF60 Felix Danielsson IDA2 Sammanfattning Simultaneous multithreading (SMT) är en teknik som används i processorer
Läs merPipelining 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 merOperativsystem DVG A06. Definition. Varför operativsystem? - Vad är ett operativsystem?
Operativsystem DVG A06 Operativsystem, mm - Vad är ett operativsystem? - Hur fungerar det..? - Vad använder vi operativsystemet till? - Vilka olika operativsystem finns? 2 Definition Den del av systemet
Läs merDagens 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 merOperativsystem. 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 merHantering av hazards i pipelines
Datorarkitektur med operativsystem Hantering av hazards i pipelines Lisa Arvidsson IDA2 Inlämningsdatum: 2018-12-05 Abstract En processor som använder pipelining kan exekvera ett flertal instruktioner
Läs merEmil Kristiansson Kurs: EDT621 Delmoment: Rapport. En introduktion till Smart cache
En introduktion till Smart cache 1 Sammanfattning Syftet med den här rapporten är att ge en introduktion till tekniken smart cache för läsaren. Smart cache är en teknik som låter de olika cacheminnena
Läs merJä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 merRealtidssystem 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 merCacheminne Intel Core i7
EDT621 Datorarkitekturer med operativsystem 7,5 hp 2015-12-07 Cacheminne i Intel Core i7 Författare: Adnan Karahmetovic Handledare: Erik Larsson Innehåll 1. Inledning... 1 1.1 Syfte... 1 1.2 Frågeställning...
Läs merDVG 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 merOperativsystem. 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 merSchemalä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 merMinnesisolering för virtuella maskiner en hypervisorstudie
1.Introduktion 1.1 Inledning Den senaste trenden inom IT-världen är cloud computing (molntjänster). Molntjänster har uppnått stor popularitet både hos IT-chefer och ekonomichefer inom stora företag. Molntjänster
Läs merDatorsystem 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 merOperativsystem - 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 merDefinition 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 merMESI 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 merOlika 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 merLUNDS 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 merSVAR 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 merParallellism i CDC 7600, pipelinens ursprung
Lunds universitet Parallellism i CDC 7600, pipelinens ursprung Henrik Norrman EITF60 Datorarkitekturer med operativsystem Kursansvarig: Erik Larsson 4 december 2017 INNEHÅLL Parallellism i CDC 7600 Innehåll
Läs merDIG 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 mer32 Bitar Blir 64 Sammanfattning
32 Bitar Blir 64 Sammanfattning Syftet med rapporten är att ge en insyn i det tillvägagångssätt och problem som uppstod i utvecklingen från 32 bitars CPUs till 64 bitars CPUs samt inblick i skillnaden
Läs merFö 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 merPipelining 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 merParallellism i NVIDIAs Fermi GPU
Parallellism i NVIDIAs Fermi GPU Thien Lai Phu IDA2 Abstract This report investigates what kind of computer architecture, based on Flynn s taxonomy, is used on NVIDIAs Fermi-based GPU to achieve parallellism
Läs merFö 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 merProcesser och trådar. Rasmus Cronstrand Per Jonsson Ante Wall Fabian Åberg
Linköpings universitet Institutionen för datavetenskap TDDI81 Hemuppgift Processer och trådar av Rasmus Cronstrand Per Jonsson Ante Wall Fabian Åberg rascr534 / perjo927 / antwa730 / fabab714 2014-02-24
Läs merProcessor pipelining genom historien (Intel i9-intel i7)
Processor pipelining genom historien (Intel i9-intel i7) Besnik Redzepi Lunds Universitet Abstrakt/Sammanfattning Syftet med denna uppsats är att jämföra Intels nya generation processorer och deras pipelining.
Läs merMultithreading in Intel Pentium 4 - Hyperthreading
Multithreading in Intel Pentium 4 - Hyperthreading Sammanfattning Hyper-threading är en implementation av SMT(Simultaneous Multithreading) teknologi som används på Intel processorer. Implementationen användes
Läs merRapport (1,5 HP) Lunds Universitet HT15
Rapport (1,5 HP) Lunds Universitet HT15 Cache-koherens protokoll i Intel Core i7 En rapport om cache-koherens och protokollet som används i Intel Core i7 processorer för att hålla minnet koherent Författare:
Läs merFö 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 merHjä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 merSvar 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 merOutline. 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 merRealtidssystem. - 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 merDiskprestanda Tester
Linnéuniversitetet Projektrapport Grundläggande Operativsystem 1DV415 Diskprestanda Tester Matteus Gilis, Linus Fogelström 9 januari 2014 Sammanfattning Vi ville utföra läs och skrivhastighets tester mellan
Läs merDatorsystem 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 merVad ä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 merHannes Larsson - IDA 2, LTH Campus Helsingborg. NEC V R 4300i. Interlock-handling EDT621
Hannes Larsson - IDA 2, LTH Campus Helsingborg NEC V R 4300i Interlock-handling EDT621 Läsperiod 2, 2017 Innehållsförteckning s.2 - Förord s.2 - Inledning s.2 - NEC VR-4305 s.3 - Pipeline s.4 - Interlocks
Läs merHF0010. Introduktionskurs i datateknik 1,5 hp
HF0010 Introduktionskurs i datateknik 1,5 hp Välkommna - till KTH, Haninge, Datateknik, kursen och till första steget mot att bli programmerare! Er lärare och kursansvarig: Nicklas Brandefelt, bfelt@kth.se
Läs merIntroduktion till hårdvara, mjukvara och operativsystem
Introduktion till hårdvara, mjukvara och operativsystem Grundläggande operativsystem 1DV415 1 1 Lärare Marcus Wilhelmsson Universitetsadjunkt i datavetenskap Linux, UNIX (Solaris, OpenSolaris, Mac OS X),
Läs merRealtidsstöd i Minix. En laborationrapport. Oktober 2012
Realtidsstöd i Minix En laborationrapport Karl Zylinski Hampus Gustafsson Oktober 2012 1 Innehåll 1 Introduktion 3 1.1 Problem................................ 3 1.1.1 Skapa ett testprogram....................
Läs merRealtidsprogrammering 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 merCacheminne i en AMD Opteron Processor
Handledare: Erik Larsson Lunds Tekniska Högskola HT15 Cacheminne i en AMD Opteron Processor En rapport om cacheminne och dess struktur, i en 12 kärnig AMD Opteron Magny-Cours processor. Författare: Hamza
Läs merDatorhårdvaruteknik 1DV426 - Seminarie 1
Datorhårdvaruteknik 1DV426 - Seminarie 1 Marcus Wilhelmsson marcus.wilhelmsson@lnu.se 19 mars 2014 Introduktion Detta seminarie behandlar följande: 1. Processorer 2. Minne 3. Chipset 4. BIOS 5. Moderkort
Läs merCDC en jämförelse mellan superskalära processorer. EDT621 Campus Helsingborg av: Marcus Karlsson IDA
CDC6600 - en jämförelse mellan superskalära processorer av: Marcus Karlsson Sammanfattning I denna rapport visas konkret information om hur den första superskalära processorn såg ut och hur den använde
Läs merMinnet 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 merCache coherence hos multicoreprocessorer
Cache coherence hos multicoreprocessorer Benjamin Holmqvist, EDT621 December 5, 2016 1 Contents 1 Inledning 3 2 Syfte 3 3 Cache Coherence 3 3.1 Implementering.......................... 4 3.2 Snoop baserade..........................
Läs merVad ä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 merKUNDCASE. Inovia gjorde sin AI-utveckling 10 gånger snabbare med Power-plattformen
KUNDCASE Inovia gjorde sin AI-utveckling 10 gånger snabbare med Power-plattformen MÖT INOVIA Inovia är ett marknadsledande bolag som är specialiserade på Big Data och AI där lösningarna utvecklas av ett
Läs merDatorarkitekturer med operativsystem ERIK LARSSON
Datorarkitekturer med operativsystem ERIK LARSSON Semantic gap Alltmer avancerade programmeringsspråk tas fram för att göra programvaruutveckling mer kraftfull Dessa programmeringsspråk (Ada, C++, Java)
Läs merFOTA - 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 merMESI protokollet och dess derivater
LTH LUNDS TEKNISKA HÖGSKOLA MESI protokollet och dess derivater Peter Persson 2015-12-08 Sammanfattning Dagens multicore processorer använder sig av ett flertal cacheminnen. Därför behövs det metoder för
Läs merCacheminne 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 merTentamen 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 merDatorarkitekturer 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 merSnapdragon 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 merDatorsystem. Tentamen 2011-10-29
Datorsystem Tentamen 2011-10-29 Instruktioner Samtliga svar skall vara motiverade och läsbara. Eventuella tabeller och beräkningar som används för att nå svaret ska också finnas med i lösningen. Ett svar
Läs merDatorsystem. Tentamen
Datorsystem Tentamen 2012-03-17 Instruktioner Samtliga svar skall vara motiverade och läsbara. Eventuella tabeller, illustrationer och beräkningar som används för att nå svaret ska också finnas med i lösningen.
Läs merParallellprogrammering i C++ 17 EDT621 Datorarkitekturer med Operativsystem Viktor Lindgren
Parallellprogrammering i C++ 17 EDT621 Datorarkitekturer med Operativsystem Viktor Lindgren 2016-12-05 Sammanfattning I följande rapport introduceras de tillägg som planeras genomföras i kommande C++ 17
Läs merTentamen 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 merSVAR TILL TENTAMEN I DATORSYSTEM, HT2013
Rahim Rahmani (rahim@dsv.su.se) Division of SAS Department of Computer and Systems Sciences Stockholm University SVAR TILL TENTAMEN I DATORSYSTEM, HT2013 Tentamensdatum: 2013-10-30 Tentamen består av totalt
Läs merSIMD i Intel s P5- baserade Pentium MMX
SIMD i Intel s P5- baserade Pentium MMX Maurits Gabriel Johansson - IDA2 Datorarkitekturer med operativsystem - 4 december 2016 SIMD I INTEL S P5-BASERADE PENTIUM MMX 1 Abstrakt Moderna CPU s (Central
Läs merMetoder och verktyg för funktionssäkerhet
Metoder och verktyg för funktionssäkerhet Projektstart 1. Hantera kraven En bra process är grunden för att hantera kraven i ett säkerhetsprojekt. Det krävs att du har en tydlig spårbarhet mellan krav och
Läs merObjektorienterad Programkonstruktion. Föreläsning 11 6 dec 2016
Objektorienterad Programkonstruktion Föreläsning 11 6 dec 2016 Föreläsningen 13/12 Halvtidsrepetition Maila frågor som ni vill att jag tar upp! ccs@kth.se Processer Vad vi i dagligt tal menar när vi pratar
Läs merTentamen 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 merLogging Module into the PRIME Core
Datavetenskap Opponent: Andreas Lavén Respondenter: Anders Ellvin, Tobias Pulls Implementing a Privacy-Friendly Secure Logging Module into the PRIME Core Oppositionsrapport, E-nivå 2005:xx 1 Sammanfattat
Läs merArm Cortex-A8 Pipeline
Marcus Havrell Dahl - 941206 Arm Cortex-A8 Pipeline Sammanfattning Arm Cortex-A8 processorn är en energisnål men samtidigt kraftfull enhet. Beroende på implementationen kan den ha en klockhastighet på
Läs merImproved-MOESI Cache koherens Protokoll
Improved-MOESI Cache koherens Protokoll Abstrakt I en multicore, flerkärninga processor med delat minne kan koherens problem förekomma. En lösning till detta är att implementera cache koherens protokoll.
Läs merTentamen 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 merCacheprobe: 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 merPrestandapåverkan på databashanterare av flertrådiga processorer. Jesper Dahlgren
Prestandapåverkan på databashanterare av flertrådiga processorer av Sammanfattning Behandling av information bli vanligare i dagens samhälle och för att klara denna uppgiften används ofta en databashanterare
Läs merFlera 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 merWhat Is Hyper-Threading and How Does It Improve Performance
What Is Hyper-Threading and How Does It Improve Performance Ali Muthanna, Lunds Universitet, IDA2, EDT621 Abstract Hyper-Threading (HT) is Intel s version of simultaneous multi-threading (SMT). Hyper-Threading
Läs merOperativsystem 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 merPARALLELLISERING AV ALGORITMER PROCESSORER FÖR FLERKÄRNIGA
PARALLELLISERING AV ALGORITMER FÖR FLERKÄRNIGA PROCESSORER 870928 3017 Johan Gustafsson 870303 4952 Gustaf David Hallberg 880525 8210 Per Hallgren 801117 0597 Wuilbert Lopez 1/7 Innehållsförteckning Table
Läs merFördelning. Fördelningsprinciper. Lastbalansering
Fördelning Föreläsning : Lastbalansering MIMD-parallellt program Ett antal tasks som exekverar seriellt eller parallellt Fördelningsproblemet NP-komplett problem (i generella fallet) Fördela tasks på processorer
Läs merGrundlä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 merSAS Grid Computing. Kent Odelli, IT Architect SAS Institute. Copyright 2010, SAS Institute Inc. All rights reserved.
SAS Grid Computing Kent Odelli, IT Architect SAS Institute Vad är Grid? En samling av resurser som är samordnade för att lösa ett gemensamt problem. Varför Grid? Märkbar ökning i data. Märkbar ökning
Läs merIntroduktion 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 merDatorarkitekturer 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Ö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 merMESI-Protokollet. Richard Elvhammar. Lund Universitet 4/12-16
MESI-Protokollet Richard Elvhammar Lund Universitet 4/12-16 Abstract För att ett system snabbt ska kunna hantera information så används, å sidan åt primärminnet och sekundärminnet, ett cacheminne. I modern
Läs merGrafiska pipelinens funktion
LUNDS TEKNISKA HÖGSKOLA CAMPUS HELSINGBORG Grafiska pipelinens funktion Ludvig von Sydow EDT62, HT17 Datorarkitekturer med Operativsystem Sammanfattning Denna rapport syftar till att beskriva hur en graphics
Läs merOperative 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 merRealtidssystem. - 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 merProgrammeringsteknisk översiktskurs för yrkeshögskoleprogram
Programmeringsteknisk översiktskurs för yrkeshögskoleprogram Föreläsning 8 Våren 2005 Innehåll Vad är operativsystem, hur fungerar de? Självtest kapitel 1-10 Läsanvisningar: 1-10 + dessa OH-bilder F7 Lena
Läs merDatorsystem. 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