CIMSOLUTIONS B.V. CIMSOLUTIONS Automation for Industry & Business SIG Embedded “Proces Ellende” André Vink CDP real-time embedded 28 september 2005.

Slides:



Advertisements
Verwante presentaties
LEERKRACHT MIJN SPREEKBEURT LAURENT GOEMAN.
Advertisements

Averechtse selectie & marktfalen “Een Experiment”
Time management in het onderwijs

Missie Omgeving Identiteit Waarden & Overtuigingen Vaardigheden
BESTURINGS SYSTEMEN Vincent Naessens.
Topic: elektronica algemeen Wat ? elektronika: verwerken en overdragen van informatie vervat in elektromagnetische grootheden –verwerken: uitvoeren algoritme.
Base: bewerkingen 2 soorten - Oplopend- Aflopend.
De emmer die overloopt met stress
Statistiek Verzamelen Voorstellen Beschrijven Interpreteren
Parallelle Algoritmen String matching. 1 Beter algoritme patroonanalyse Bottleneck in eenvoudig algoritme: WITNESS(j) (j = kandidaat in eerste i-blok)
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 7(1): Flow of.
Real-Time Systems (RTSYST) Week 2. Process/Thread states Scheduler = deel van OS dat de toestanden van processen/threads bepaald. OS gebruikt timerinterrupt.
Real-Time Systems (RTSYST) Week Priority inheritance voorbeeld taakprioexecutionrelease time d4EEQVE4 c3EVVE2 b2EE2 a1EQQQQE0.
Jezelf bewegen…… De ander bewegen……
Hogere wiskunde Limieten college week 4
Computer blijft “hangen” woensdag 11 januari 2012.
Event Handling in Embedded Systems.  Wat is een event?  Welke events zijn het meest “time-critical”?  Welke toestand wordt door de CPU opgeslagen?
Van Valckenborgh Dirk Februari Definitie “optie op aandelen” : Recht / Verplichting om een standaardhoeveelheid aandelen te kopen (call-optie –
Ik wil de goedkoopste hypotheek! Op onze uitgebreide en informatieve hypotheek en hypotheekrente site kunt u onder andere berekenen hoeveel hypotheek u.
MET DANK AAN COLLEGA’S IN DEN LANDE ! vee 2012
De Paradox van onze Tijd
Hoofdaannamen van Appreciative Inquiry
Concurrency en Deadlock ICT Infrastructuren David N. Jansen Stallings hoofdstukken 5 en 6.
DepanneBlogt 29/06/06 Informatievergadering 1 Huidige situatie.
Unity Real time Service Pack 10 update Installatie opties.
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Hacken Gabriela & Shivam.
Slot 4Hc.
Personeelsessie LOKO.
Zet de telefoon aan en voer je pincode in.
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Hoofdstuk 7 ERP-systemen: human resources Enterprise Resource Planning © Pearson Education, 2007; Enterprise Resource Planning door Mary Sumner.
Basisfuncties Operating System.
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Handleiding LoGiApp tbv Riwo Transport
Polymorphisme en Interfaces: inleiding
Techniekanalyse Wat kun je verwachten na 4 keer op het ijs te hebben gestaan. Persoonlijk had ik al 7 jaar niet meer op de schaats gestaan. Maar na een.
De grote heide-KLASSE-quiz
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Zaalbriefing
H9 Sturen. Bewaking scope Door scope verandering is er kans dat er meer geleverd wordt dan afgesproken Meer leveren betekent meer kosten Meer leveren.
Noodoproep.
God maakte in het begin alles.
H11 Afronden. Opleveren Opdrachtgever vroegtijdig betrekken bij opleveren. Zo voorkom je verrassingen Opleveren van deelprojecten sluit ‘hoofdstukken’
Les 3 - Operators Workshop Php Basic. ICT Academy Php Basic Content Operators Wiskundig Toewijzing Vergelijking.
 Bepaald?  Bepaald:De het  Bepaald: de het  Onbepaald?
De hoge lat Een lezing voor mensen die moe worden van hun eigen eisen.
Zaken die ervoor zorgen dat je kosten maakt tijdens ontwikkeling van mobiele apps.
Taak Bouwpathologie, Renovatie en Onderhoud Charlotte Swertvaegher 2MAK Dirk Gijsemans.
PERSONEELSMANAGEMENT PPT 3 Onderdeel : LEIDING GEVEN.
De hoge lat Een lezing voor mensen die moe worden van… zichzelf.
Module code: Scheduling Het verdelen van processortijd onder processen en threads 1.
…..LET OP…………. Deze powerpoint gaat over het onderwerp: “Voor de rechter”. De powerpoint bevat de basisstof die je moet kennen om het centraal schriftelijk.
…..LET OP…………. Deze powerpoint gaat over het onderwerp: “Voor de rechter”. De powerpoint bevat de basisstof die je moet kennen om het centraal schriftelijk.
Computersystemen 2 (TIRCCMS02 - Operating systems)
Executieve functies Marije Ruben.
TranSearch Real Time Document & Asset Management Web Client
…..LET OP…………. Deze powerpoint gaat over de Politieke besluitvorming.
Havo 4 Lesbrief Vervoer.
Havo 4 Lesbrief Vervoer.
Havo 4 Lesbrief Vervoer.
Havo 4 Lesbrief Vervoer.
Nee Zeggen!.
Jongeren en seks Plaatje.
Indexcijfers Vaak moet je een reeks getallen (bijvoorbeeld de omzet van een bedrijf in de periode 2008 t/m 2011) met elkaar vergelijken.
Unified Modeling Language
Schoolwide Positive Behavior Support (SWPBS)
Besturingssystemen Ga verder met een muisklik..
Reinigen & ontsmetten.
Transcript van de presentatie:

CIMSOLUTIONS B.V. CIMSOLUTIONS Automation for Industry & Business SIG Embedded “Proces Ellende” André Vink CDP real-time embedded 28 september 2005

CIMSOLUTIONS B.V. CIMSOLUTIONS Automation for Industry & Business STARVATION

CIMSOLUTIONS B.V. n Starvation is het verschijnsel dat een thread of proces geen tijd krijgt om uitgevoerd te worden n Mogelijke oorzaken: • Scheduling algoritme is slecht (geconfigureerd) • Geen toegang tot bepaalde resources • Denial Of Service aanval Wat is starvation?

CIMSOLUTIONS B.V. Starvation: scheduling n Het algoritme van een scheduler kan zwakke punten bevatten. n Waarschijnlijker is het dat prioriteiten of de configuratie verkeerd zijn ingesteld • Vuistregel: geef taken die veel processortijd nodig hebben een lage prioriteit en taken die weinig tijd nodig hebben een hoge

CIMSOLUTIONS B.V. Starvation: scheduling n Optie 1: Taak met veel processortijd heeft hoge prioriteit n Optie 2: Taak met weinig processortijd heeft hoge prioriteit Taak met weinig processortijd Taak met veel processortijd

CIMSOLUTIONS B.V. Starvation: toegang tot resources n Toegang tot een resource kan geblokkeerd worden wanneer de resource veel/vaak gebruikt wordt door processen met hogere prioriteit n Geen universele oplossing: de ontwerper of programmeur moet een dergelijke situatie proberen te voorkomen

CIMSOLUTIONS B.V. Starvation: Denial Of Service n Denial Of Service: de processor is zo druk bezig met het afhandelen van berichten of interrupts dat andere taken niet aan bod komen. n Voorbeeld 1: aanval op een webserver met honderden connecties per minuut n Voorbeeld 2: een haperende digitale input zorgt voor een continue stroom interrupts op een systeem n Oplossing: inbouwen van een detectie met bijbehorende maatregelen

CIMSOLUTIONS B.V. CIMSOLUTIONS Automation for Industry & Business DEADLOCK

CIMSOLUTIONS B.V. n Deadlock is een status waarin de processen van een systeem het niet eens kunnen worden over hoe ze verder moeten, waardoor (een gedeelte van) het systeem stil valt. Meestal gaat het om het bezit van resources. Wat is deadlock?

CIMSOLUTIONS B.V. Deadlock: ingrediënten n Er zijn drie ingrediënten nodig voor een deadlock situatie: • Mutual exclusion: op elk moment kan er maar één proces gebruik maken van een bepaalde resource • Vasthouden en wachten: een proces kan/zal resources vasthouden tijdens het wachten op andere resources • Geen preemption: een resource zal alleen vrijgegeven worden als een proces dat vrijwillig doet. Het vrijgeven forceren is niet mogelijk

CIMSOLUTIONS B.V. Deadlock: Situatie n Wanneer de drie ingrediënten aanwezig zijn, zal een deadlock optreden in deze (of een vergelijkbare) situatie:

CIMSOLUTIONS B.V. Deadlock: voorkomen n Deadlock kan voorkomen worden door: • Minstens één van de ingrediënten te verwijderen • Zorgen dat de geschetste situatie nooit kan voorkomen • Nooit toegang tot een resource verlenen als dit tot een deadlock kan leiden • Detectie: regelmatig op deadlocks controleren en gepaste maatregelen nemen indien gevonden Het succes van de laatste drie opties hangt af van of er aan alle situaties is gedacht

CIMSOLUTIONS B.V. CIMSOLUTIONS Automation for Industry & Business PRIORITY INVERSION

CIMSOLUTIONS B.V. n Priority inversion is het verschijnsel dat een taak met hogere prioriteit geblokkeerd wordt, door een taak met een lagere prioriteit n Dit kan gebeuren wanneer de lagere prioriteit taak een gedeelde resource gebruikt die de hogere prioriteit taak nodig heeft Wat is priority inversion?

CIMSOLUTIONS B.V. Een voorbeeld met twee taken Task L “lockt” gedeelde resource Task H moet wachten op gedeelde resource Task L is klaar met gedeelde resource en Task H kan eindelijk verder Task H onderbreekt Task L

CIMSOLUTIONS B.V. Een voorbeeld met drie taken Task L “lockt” gedeelde resource Task H onderbreekt Task L task H moet wachten op gedeelde resource Taks M onderbreekt Task L task L is klaar met gedeelde resource en task H kan verder

CIMSOLUTIONS B.V. n elke gedeelde resource krijgt een “priority ceiling” n als een taak een gedeelde resource gebruikt, dan wordt de prioriteit van de taak tijdelijk verhoogd tot de priority ceiling van de resource n als de taak klaar is met de gedeelde resource, dan krijgt de taak weer zijn oorspronkelijke prioriteit terug n priority ceilings moeten hoger zijn dan de hoogste prioriteit van de taken die de resource kunnen gebruiken n lost alleen “unbounded” priority inversion probleem op n “bounded” priority inversion probleem blijft bestaan Oplossing 1: priority ceilings

CIMSOLUTIONS B.V. Een voorbeeld met priority ceilings Task L “lockt” gedeelde resource en prioriteit wordt verhoogd tot boven prioriteit van Task H Task H kan Task L nu niet onderbreken Taks M kan Task L nu niet onderbreken task L is klaar met gedeelde resource en task H kan verder Prioriteit Task L zakt terug naar oorspronkelijke waarde

CIMSOLUTIONS B.V. Oplossing 2: priority inheritance n Is eigenlijk een variant op priority ceilings n Lage prioriteit taak gebruikt gedeelde resource n Als hogere prioriteit taak dezelfde gedeelde resource wil gebruiken, dan “erft” de lage prioriteit taak de prioriteit van de hogere prioriteit taak n Lost alleen “unbounded” priority inversion probleem op n “Bounded” priority inversion probleem blijft bestaan

CIMSOLUTIONS B.V. Een voorbeeld met priority inheritance Task L “lockt” gedeelde resource en prioriteit wordt verhoogd tot boven prioriteit van Task H Task H kan Task L nu wel onderbreken Task M kan Task L nu niet onderbreken Task L is klaar met gedeelde resource en Task H kan verder Prioriteit Task L zakt terug naar oorspronkelijke waarde Task H moet wachten op gedeelde resource Hierdoor erft Task L de prioriteit van Task H

CIMSOLUTIONS B.V. Oplossing 3: voorkom priority inversion n Voorkomen is vaak makkelijker dan genezen n Voorkom dat taken met verschillende prioriteiten resources delen n Manage gedeelde resources

CIMSOLUTIONS B.V. CIMSOLUTIONS Automation for Industry & Business SIG Embedded Einde “Proces Ellende” André Vink CDP real-time embedded 28 september 2005