1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 8(2): Multi-processing.

Slides:



Advertisements
Verwante presentaties
Hoe zet ik een LP over op een CD? Presentatie voor de CWG op 16 augustus 2007 door Herman van der Lelie.
Advertisements

HM-ES-th1 Les 9 Hardware/Software Codesign with SystemC.
>>0 >>1 >> 2 >> 3 >> 4 >> Adobe Premiere CS4 – Edius 5.5 – Adobe Elements 7.
PROS2 Les 9 Programmeren en Software Engineering 2.
PROPRIETARY & CONFIDENTIAL This technology is protected by a number of US patents :: Numecent in Educatie::
Inleiding computersystemen en netwerken deel 3 Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 6.1.
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 8(1): Het Operating.
Thursday, 10 July 2014 donderdag 10 juli 2014 Click Klik.
JAVA1 H 16. MULTITHREADING. 1. INLEIDING. Threads: delen van het programma die in concurrentie met elkaar gelijktijdig in executie gaan. Thread is een.
Cloud Computing woensdag 20 november Wat is Cloud Computing ? Cloud Computing.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Backtracking: –Permutaties –Koninginnen.
Frédérique Harmsze - Macaw 22 juni Wie ben ik?  Frédérique Harmsze  Information Worker Consultant bij Macaw sinds 2004  Intranet-projecten met.
Business Productivity Online Suite
ICT Infrastructuur.
1/1/ / faculty of Electrical Engineering eindhoven university of technology 5JJ20:Computerarchitectuur EIT OGO-1.2 addendum (2): Geheugens en timing in.
PROS2 Les 14 Programmeren en Software Engineering 2.
Network Address Translation
en ‘If-zinnen’ (klik hier als je meteen naar If-zinnen wilt.)
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 7(1): Flow of.
1/1/ / faculty of Computer Science eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 7(2): Vertalen.
Agenda Programma Update Nieuwe Technologie –Windows Vista –Demonstratie Packaging Robot (VAI-BRAINFORCE) –Microsoft ISA Server 2006 –Windows Virtual Server.
IOP and Vrije Universiteit1 Example of bad interface  Windows: Use Start to Stop.
3.6 Architecture of HIS. 3.7 Integrity & Integration within HIS Suraja Padarath /10/2007.
Real-Time Systems (RTSYST) Week IPC inter process communication Shared variabele based (H5) Message based (H6) Kan ook gebruikt worden in systemen.
Simatic Update on tour November/December 1 Migratie Overzicht Nieuw WinAC/MP Multipanels WinCC V6 Mobile 170 SIMATIC HMI Bedienen,
Sunday, 03 August 2014 zondag 3 augustus 2014 Click Klik.
Utrecht University Centre for Science and Mathematics Education Wat doen NIOO – onderzoekers? Vergaderen Vergaderen Onderzoek doen: meten in de Oosterschelde.
From computer power and human reason. Joseph Weizenbaum.
Computerarchitectuur
Computertechniek 2 – ARM assembler Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  D3EEMS1  programmed I/O: de.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 3 - onderwerpen Het.
KPRES1 : C vervolg Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology Les 2 sheet 1 Wat gaan we doen:  Een (vaste) melodie.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 4 - onderwerpen DB038 hardware : LEDs en displays.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 4 - onderwerpen DB038 hardware : LEDs en displays.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 3 - onderwerpen Instruction timing Shadow.
Security Technology PICT les 1
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Wouter van Ooijen Mail:
Computertechniek 2 – ARM assembler Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  herhaling ARM assembler instructies.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag GUI  command line redirection.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 6 - onderwerpen seriele interface (UART -
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Wouter van Ooijen Mail:
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 5 - onderwerpen Errata.
1/1/ / faculty of Electrical Engineering eindhoven university of technology PGO opdracht trim. 1.2, week 1: Digitaal/Analoog, maar dan digitaal… A.C. Verschueren.
Reducing memory penalty by a programmable prefetch engine for on-chip caches Presentatie voor het vak computerarchitectuur door Armin van der Togt.
De PROFIBUS, PROFINET & IO-Link dag 2011 Share our Vision for Automation.
Overzicht  Is een kennissysteem een oplossing?  Probleem- en domeinmodel  Methodologie.
Collegezalen W&N MediaSite Integratie
Hoofdstuk 2 Java. Soorten Java-programma’s nJava Applet programma “leeft” op een WWW-pagina nJava Application programma heeft een eigen window nJavascript.
Dutch Automatic Speech Recognition Using Kohonen Neural Networks Delft University of Technology Faculty of Information Technology and Systems Knowledge-Based.
Copyright 2005 Stg Wireless Leiden Huub Schuurmans mede-oprichter en bestuurslid van Stichting Wireless Leiden (2002) WiFi.
Future (toekomst) Je krijgt 2 verschillende vormen van Future.
Referenties. Visualisatie Bitumentransport – Opbouw Ethernet Data High Way Allen Bradley Level Meting Omvormer Visualisatie.
Woorden als or, and, but, when, because, so en since gebruiken we om twee zinsdelen te koppelen. Voorbeeld in het Nederlands: De dvd was erg duur maar.
 vertaal:  Ik ga elke dag naar de universiteit  Ik ga naar de universiteit in London.
Freek Dijkstra - Planning Tool | 17 maart 2009SARA Reken- en Netwerkdiensten Innovatie Planning Tool Freek Dijkstra Netwerkonderzoeker.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 6 - onderwerpen Code paging Switch bounce.
Computertechniek 2 – ARM assembler Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  herhaling ARM assembler instructies.
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 9(2): Virtual.
Taaltheorie en Taalverwerking Parsing Continued. Totnutoe: Top-Down-Parser.
1Security Technology PICT les 1 ICT Techniek - les 7 - onderwerpen Operating Systems n Waarom een OS? n Soorten n Taken n Opbouw n Processen.
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 9(1): Virtual.
Psalm 63:1-2 Een psalm van David, toen hij in de woestijn van Juda was. O God, Gij zijt mijn God, U zoek ik, mijn ziel dorst naar U, mijn vlees smacht.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 C programmeren voor niet-C programmeurs les 7 onze.
C++ C++ als een verbetering van C Abstracte datatypen met classes Constructoren en destructoren Subklassen binding van functies 1.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 C programmeren voor niet-C programmeurs les 2 definitie.
Ant Systems for dynamic problems. Ants caught in a traffic jam Casper Joost Eyckelhof.
Inleiding computersystemen en netwerken deel 3 Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 3.1 Peter Kramer Mail:
Besturingssysteem Vaak wordt de Engelse term gebruikt: Operating System ( OS ) Plaats van het OS in een computersysteem: Hardware Applicatie Operating.
3 Hardware 3.1 De processor en intern geheugen
Besturingssystemen Ga verder met een muisklik..
Transcript van de presentatie:

1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 8(2): Multi-processing

1/1/ / faculty of Computer Science eindhoven university of technology Wat is multiprocessing: Meerdere programma’s (processen) ‘tegelijk’ uitvoeren. Bij professionele apparatuur door meerdere processoren. Multitasking op de PC: Multiprocessing door Time-Sharing.

1/1/ / faculty of Computer Science eindhoven university of technology Multiprocessing >1 CPU écht sneller vaak voor 1 gedistribueerde taak technieken vaak voor processorbeheer 1 CPU met name makkelijk om meerdere taken uit te voeren technieken voor proces beheer

1/1/ / faculty of Computer Science eindhoven university of technology Multiprocessing door de µsec heen: Tijd P1 P2 Tijd PC1 PC2 Tijd P1 P2 Tijd PC1 PC2 > 1 CPU 1 CPU

1/1/ / faculty of Computer Science eindhoven university of technology Implementatie van Multitasking: Meerdere CPU’s 1/ voorbeeld: –Netwerk van 400 processoren (T800/T805) –Elk 25 MHz met 1 tot 4 Mb lokaal geheugen –Elke CPU heeft 4 asynchrone communicatiekanalen (± RS232) voor 1,5Mb/sec elk. Bij 1 CPU: –Coroutines (slecht) –Via Interrupt 1/1/

1/1/ / faculty of Computer Science eindhoven university of technology Voorbeeld met Communicatie: Producer: Bereken waarde als buffer vol is, wacht Zet waarde in buffer als buffer leeg was, start C Volgende waarde Consumer: als buffer leeg is, wacht Lees waarde uit buffer Verwerkt waarde als buffer vol was, start P Volgende waarde MP3-decoder CD-writer software MP3-decoder CD-writer software Audio driver CD-writer Audio driver CD-writer

1/1/ / faculty of Computer Science eindhoven university of technology FIFO buffer: buf 0s-1 in = volgende vrije plaats out= volgende te lezen waarde in=out  buffer leeg in=(out-1)mod s  buffer vol [if (k<s-1) return k+1;else return 0;  return (k+1)%s]

1/1/ / faculty of Computer Science eindhoven university of technology Werking FIFO-buffer: IN OUT

1/1/ / faculty of Computer Science eindhoven university of technology Producer/Consumer in PasC: while true { x:=berekening if ((in+1)%s=out) wait; buf[in]:=x; in:=(in+1)%s; if ((out+1)%s=in) start C } Producer while true { if (in=out) wait; x:=buf[out]; verwerk(x); out:=(out+1)%s if (out=(in+2)%s) start P } Consumer if (in=out) x:=berekening while true { x:=buf[out]; verwerk(x); out:=(out+1)%s if (out=(in+2)%s) start P } if ((in+1)%s=out) wait; Situatie: (in+1)%s=out

1/1/ / faculty of Computer Science eindhoven university of technology Race Condities: Voorgaand effect noemen we een Race- conditie, omdat na het vrijmaken van een buffercel er een ‘race’ onstaat over wie de nieuwe waarde als eerste test! Probleem is dat de programma’s op ieder moment kunnen worden onderbroken. Dijkstra’s oplossing: Semaforen! (zijn onderdeel van Operating Systeem)

1/1/ / faculty of Computer Science eindhoven university of technology Semaforen: Een semafoor is een geheel getal dat niet negatief mag worden. Er zijn twee operaties mogelijk op semaforen: –Verhogen –Verlagen Deze operaties zijn atomair (dus kunnen niet worden onderbroken) Als verlagen niet kan (semafoor is 0), dan blokkeert het ‘verlagende’ proces.

1/1/ / faculty of Computer Science eindhoven university of technology Acties op Semaforen (S): ActieS = 0S > 0 S:=S+1; Als er processen ‘slapen’ op de semafoor; maak deze wakker S:=S+1Verhoog Ga slapenS:=S-1Verlaag

1/1/ / faculty of Computer Science eindhoven university of technology Gebruik van Semaforen: In plaats van in en out gebruiken we semaforen filled en available. –filled=0 ; dan buffer leeg; Consumer blokkeert –available=0 ; dan buffer vol; Producer blokkeert. Omdat er tussen het testen van de semafoor en het blokkeren van het proces geen onderbreking plaatsvindt, gaat dit goed.

1/1/ / faculty of Computer Science eindhoven university of technology Semaforen erg flexibel: Semaforen lossen niet alleen het race- condition probleem op. Ze zijn ook heel goed bruikbaar voor Mutual exclusion voor een willekeurig aantal processen! Wat is mutual exclusion? –Van een aantal ‘parallelle processen’ mag er telkens maar één tegelijk een bepaald gedeelte uitvoeren. –Bijvoorbeeld het gedeelte dat een database update uitvoert.

1/1/ / faculty of Computer Science eindhoven university of technology Mutual exclusion met Semafoor: S=1 S=0 S=1 S=0