 Processer og tråde  Implementation af tråde  Trådinterferens  Synkronisering  Atomare aktiviteter.

Slides:



Advertisements
Lignende præsentationer
Throw a die Read the current value of index Add 1 Return the new value to index IndexIndex Create an empty array to count the number of dice throws Initialize.
Advertisements

1 • Best practice for exception handling • Exception klasser • Division med nul uden exception handling • Division med nul med exception handling •. NET.
KPLL minisymposium 2012 HbA1c udført i almen praksis til diagnostik? Peter Felding.
Overskrift her Navn på oplægsholder Navn på KU- enhed For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved / Sidefod”.
Usability ITU, efterår Usability metoder 2. oktober 2008 Usability, IT-Universitetet Ole Gregersen.
Semaforer Hvordan virker semop() hvis der er flere operationer ? I hvilken rækkefølge vækkes blokerede semaforer ? man semop.. The system call semantic.
Overskrift her Navn på oplægsholder Navn på KU- enhed For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved / Sidefod”.
VOOP, 8 april Refleksion i objekt orienterede programmeringssprog Mandag 8/ Kasper Østerbye.
Tråde og synkronisering. Tråde To typer tråde Dedikerede tråde -programmør opretter og tilknytter metode -”kører tråd-metoden (job) én gang” Tråd pulje.
Datalogi 1F: Multiprogrammering[4] 1 Planen for i dag Repetition af kerner med afbrydelser Kerner med tvungent processkift Præsentation af K1.
Hvorfor trådning? Performance Responsivness. Succeskriterier Forbedring af performance –Opgaverne skal være uafhængige –Jo flere afhængige opgaver, jo.
VPG/Otto Knudsen1 VPR - Repetition Trådning Distribueret Programmering Sprogteori Grafer.
VPG/Otto Knudsen1 VPR - Repetition Trådning Distribueret Programmering Sprogteori Grafer.
Agenda 1.Informationer 1.Excel i fb.m. projekt 2 2.Reserver tid til projekt 2 3.Øvelse: a / b = c 2.Opsamling fra sidst 3.Estimation (konfidensintervaller)
KLAR TIL NYE MULIGHEDER
Documentation methods
Slide 1 of 11 © Ingeniørhøjskolen i Århus Presentation 14: Callbacks Objektorienteret Middleware (TIOOMI)
1 Tråde 2 Plan Trådbegrebet Synkronisering Koordinering Eksempel: et flertrådet spil.
To måder at overføre objekt- referencer mellem processer (1) Via naming service - interface RMISolver (2) Som parametre til fjernprocedurekald - interface.
Aspekt-orienteret programmering (AOP) Lars Christensen Daniel Simonsen.
JavaScript i externe filer JavaScript gemmes i en ekstern fil (myscripts.js ) og så hentes ind i dokument hvor de skal bruges med, svarende at koden var.
Simulering af spisende filosoffer
1 While Tæller-kontrolleret (eng.: counter-controlled) repetition For Steen Jensen, efterår 2013.
Transaktioner og ACID Spørgsmål 8. Transaktioner og ACID ACID (Atomicity, Consistency, Isolation, Durability) ACID-egenskaber er sæt egenskaber, der garanterer.
11 - Exceptions. 2 NOEA2009Java-kursus – Exceptions Hvad er en exception? En undtagelse. Typisk en fejl der opstår runtime Afbryder det normale programflow.
Distribuerede objekter og RMI. Disposition Hvad er RMI? Semantikker Transparens Implementation.
Nedarvning.
Per P. MadsenStyresystemer og tjenester1 Indhold: 1.Introduktion til styresystemer. 2.Processer og tråde. 3.Synkroniseringsmetoder og InterProcesCommunikation.
C#: Udtryk og metoder Kilde: Joe Hummel. 2 Nordjyllands Erhvervakademi – 2008 Indhold “With regards to programming statements and methods, C# offers what.
03 – Udtryk og metoder. 2 NOEA2009Java-kursus – Udtryk og metoder Udtryk i Java Java har standard udtrykene… Værditildeling Subrutiner og funktionskald.
Operativsystemer, processor og tråde. Disposition Operativsystem Kerne funktionalitet Presser og adresserum Tråde.
Process Control Hardware baggrund Process begrebet i et OS Process tilstande Context switching.
Per Printz Madsen 1 Linux kernen Monolithic kernel Support for dynamiske moduler Få kerne tråde Preemptive.
ØSTAFRIKA Fremtidens Vækstmarked 14. april 2011, Hotel Hvide Hus Køge.
9. Interfaces. 2 Nordjyllands Erhvervakademi Objectives “Good class design starts with good application design — how many classes, do they relate.
Blå gruppe: Søren, Alexander, Torben, Lasse. De 4 vigtige items: - Singelton - Override clone judiciously - Use interfaces only to define type - Prefer.
GP9, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 11 Slides ligger på nettet. Du er velkommen til at printe dem nu. Vi begynder.
Forelæsning 7.1 – repetition
Per P. MadsenStyresystemer og tjenester1 Threads.
Tekst filer Tekstfiler opbygges normalt af linier, hvor disse ikke behøver at være samme længde. Når man skal arbejde med tekstfiler, ønsker man metoder.
DB analyse og modellering Jesper Tørresø DAB1 F Februar 2008.
Deadlock Definition deadlock (baglås) er en tilstand som en mængde af processer kan være i en mængde processer er i deadlock hvis alle processerne står.
8. Transaktioner og låsning/låse. Herunder ACID egenskaberne.
1 Processer. 2 fork int fork(); Danner en ny proces med samme indhold som forældre processen. I begge processer er programtælleren placeret lige efter.
Samtidighed. Disposition Formål med tråde Eksempel på fordel ved tråde Thread-pooling Livscyklus Problemstillinger Algoritmer ◦Dekkers ◦Peterson Opsumering.
Project Management Managing The Progress of Projects.
Implementation i Software Hvad skal implementeres? Abstraktionsniveauer Assembler- og Højniveausprog Udveksling af Parametre Anvendelse af højniveausprog.
 Jens Bennedsen, 2003Introducerende objektorienteret programmering MVC Et mønster for grænseflader.
DAIMIProgrammering af Store Systemer1 Concurrency i Java – Samarbejdende tråde.
 Jens Bennedsen 2001Multimedie programmering MVC Et mønster for grænseflader.
Et Audio/ Video Framework Et framework for en audio/video applikation baseret på lokale og kilder tilgængelige på 1394 via AV/C protokollen.
 Jens Bennedsen, 2003, revideret af EE Introducerende objektorienteret programmering MVC Et mønster for grænseflader.
Hvad er en inkrementel og iterativ process?
Deadlock Definition deadlock (baglås) er en tilstand som en mængde af processer kan være i en mængde processer er i deadlock hvis alle processerne står.
Parallel programming Rasmus D. Lehrmann DM
RMS - Record Management System Record Store En Record er et bytearray af vilkårlig størrelse En RecordStore er et antal Records nummerede.
ISO standard for personvurdering v/Cand.psych. Anne Thrane VPP og Dansk Psykologforening.
Omsætning af en model til en RDB Jesper Tørresø DAB1 F Marts 2008.
Skift Typografi Marker tekst og klik TAB for at hoppe til næste typografi Klik SHIFT + TAB for at hoppe tilbage i typografierne 1. OVERSKRIFT 2. UNDEROVERSKRIFT.
Per Gandrup, Dansk Kirurgisk Selskab
Web- og serverprogrammering
Dorte, Ida, Janne, Nikolaj, Alexander og Erla
Gruppe 3 Case l: Versionsopdatering af Medcom standard
DB analyse og modellering
Kontraktstyring og resultatløn - muligheder og begrænsninger
Software Testing Software testing.
Killer Brand Killer Content Killer Leads!
Tråde og synkronisering
Bordbøn Så skal da min Gud So, now shall my God
1.11 – NOTES Dimensional Analysis
Præsentationens transcript:

 Processer og tråde  Implementation af tråde  Trådinterferens  Synkronisering  Atomare aktiviteter

 Proces: ◦ Knyttet til et execution enviroment ◦ Har én eller flere tråde  Tråd: ◦ Eksisterer i en proces Processer og tråde

Implementation af tråde 2

 Sleep()  Interrupt() try { Thread.sleep(4000); } catch (InterruptedException e) { “InterruptedException have been caught” }

Trådinterferens Memory Consistency Error Thread A: Retrieve c Thread B: Retrieve c Thread A: Increment retrieved value Thread B: Decrement retrieved value Thread A: Store result in c, is now 1 Thread B: Store result in c, is now -1 Should have been : 0  Når to tråde arbejder med samme objekt på én gang

 Happens-before relationship ◦ Ex. Join()  Brug af lås Trådinterferens

 Synchronized Method  Synchronized Statement  Kritiske regioner ◦ Deadlock ◦ Starvation- udsultning ◦ Livelock  Nyttige metoder ◦ wait(), notify(), notifyAll() Synkronisering

Atomare aktiviteter

 Processer og tråde  Implementation af tråde  Trådinterferens  Synkronisering  Atomare aktiviteter