Besturingssystemen 1 (TINBES01-1)

Slides:



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

Programmeren met Alice
Vervolgbijeenkomst 2 Procesfasering bij Leren Leren.
BESTURINGS SYSTEMEN Vincent Naessens.
bewerkingen in programmeeromgevingen
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen College 5.
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen (II) College 6.
De processor.
1212 /n Metingen aan de hoogte van een toren  D  wordt gemeten met onzekerheid S  =0.1 o. Vraag 1: Op welke afstand D moet je gaan staan om H zo nauwkeurig.
Portfolio
Inleidend probleem Data structuur (hiërarchie van classes)
Inleiding tot management en organisaties
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.
Functioneel Ontwerp.
Module 7 – Hoofdstuk 3 Unified Modeling Language.
SOCIALE COMPETENTIE Jacqueline Blaak-Venneman.
Samenwerking tussen processor, registers en RAMgeheugen
Concurrency en Deadlock ICT Infrastructuren David N. Jansen Stallings hoofdstukken 5 en 6.
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Context switching Heidi Snoek. Het proces Twee applicaties: A en B CPU voert de instructies van programma A uit. Op een bepaald moment wordt er data weggeschreven.
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Basisfuncties Operating System.
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Context switching Naomi Baggelaar. Het proces Twee applicaties: A en B CPU voert de instructies van programma A uit. Op een bepaald moment wordt er data.
Torens van Hanoi ● Uitgevonden door Franse Wiskundige Edouard Lucas in ● Beschreven in zijn wiskundig “spelletjesboek” Récréations Mathématiques.
Instructie Programmeren Task 7
Grafentheorie Graaf Verzameling knopen al dan niet verbonden door takken, bijv:
Hoorcollege 1: efficiëntie en complexiteitsontwikkeling.
Hoorcollege 1: efficiëntie en complexiteitsontwikkeling.
Huisregels opstellen en handhaven
Periode 3 Verzorgen van de winkel en/of opslagruimte Kerntaak: verzorgen ontvangst en verwerking van goederen Hoofdstuk: Verbeteringen en personeel Par:
Module code: Scheduling Het verdelen van processortijd onder processen en threads 1.
PLANNING MAKEN Stap één bij projecten. HOE MAAK JE EEN ANALYSE? Wat is het verschil tussen een planning en een plan?
8 Samengestelde Redeneringen identificeren
Computersystemen 2 (TIRCCMS02 - Operating systems)
De vraag is je beste vriend
Computersystemen 2 (TIRCCMS02 - Operating systems)
Computersystemen 2 (TIRCCMS02 - Operating systems)
Welkom Havo 5..
Virusuitbraak modelleren
Computersystemen 2 (TIRCCMS02 - Operating systems)
Paragraaf 2.3 Wat willen zij dat je koopt?.
Computersystemen 2 (TIRCCMS02 - Operating systems)
Feedback Goed feedback kunnen geven is belangrijk
Een vergadering organiseren
Lotgenoten Bijeenkomst 2.
Welkom Havo 5..
Wij zijn FLEX Finn Megan Anouk Nina
Welkom VWO 5..
3 Hardware 3.1 De processor en intern geheugen
Significante cijfers © Johan Driesse © 2013 – Johan Driesse.
Sleutels, codes en aanwijzingen
ASAP-TIPS VOOR DE HR-PROFESSIONAL
Informatieverwerkende systemen
Vergadering Personeelsdienst
Zeeslag Bron: csunplugged.org / csunplugged.nl.
OPENINGSCASE: De Victoria Country Fire Authority in Australië geeft hulp met nieuwe informatiesystemen.
Goederenstroom Voorraad.
Besturingssystemen Ga verder met een muisklik..
Excursiedidactiek Radboud Docenten Academie
3 vmbo-KGT Samenvatting Hoofdstuk 10
Titel van wetenschappelijk project
Tellen met kaarten.
Communiceren met knipperen
Tellen met kaarten.
Stap drie bij projecten
Software Development fundamentals
Python – For loop + strings
Transcript van de presentatie:

Besturingssystemen 1 (TINBES01-1) L.V.de.Zeeuw@HR.NL

2 Processen Opgaven

Vraag 2.1 Stel dat je een geavanceerde computer architectuur zou ontwerpen die 'process switching' in hardware deed i.p.v. op interrupt basis. Welke informatie zou de cpu nodig hebben ? Leg uit hoe de hardware process switching zou kunnen werken . L.V. de Zeeuw Besturingssystemen 1

Vraag 2.2 Wat verstaan we onder een race condition? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.3 Als twee processen op twee CPU’s worden uitgevoerd, kan dan de busy waiting oplossing worden toegepast? Neem aan dat gebruik wordt gemaakt van de variabele turn en de twee processen een gemeenschappelijk deel van het geheugen gebruiken. L.V. de Zeeuw Besturingssystemen 1

Vraag 2.4 Stel dat we een computer hebben die de instructie TEST AND SET LOCK niet heeft, maar daarvoor in de plaats een instructie heeft die de inhoud van een register en een geheugenplaats verwisselt in één ondeelbare opdracht kunnen we deze dan gebruiken zoals in de hier naast staande figuur staat beschreven? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.5 Schets de implementatie van semaforen voor een operating system dat in staat is het interrupt mechanisme buitenwerking te stellen. L.V. de Zeeuw Besturingssystemen 1

Vraag 2.6 Laat zien hoe counting semaphores (dit zijn semaphores die een willekeurig grote waarde kunnen hebben) kunnen worden geimplementeerd door alleen binaire semaphoren en gewone machine instructies te gebruiken. L.V. de Zeeuw Besturingssystemen 1

Vraag 2.7 In paragraaf 2.2.4 werd een situatie beschreven, waarbij een proces H met hoge prioriteit in een oneindige loop bleef wachten op een proces L met een lage prioriteit. Zou dit probleem ook optreden als niet priority scheduling, maar round robin scheduling wordt toegepast? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.8 Synchronisatie in monitors gebeurt met conditionele variabelen en speciale operaties wait en signal. Een meer universele vorm van synchronisatie zou zijn door gebruik te maken een enkele operatie waituntil met een booleaanse expressie als parameter. Zo zou men bijvoorbeeld kunnen zeggen: WAITUNTIL x<0 or y+z<n De operatie signal zou dan niet meer nodig zijn. Desondanks wordt deze methode toch niet gebruikt waarom niet? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.9 Een afhaalrestaurant heeft vier categorieën personeel: Bedienden die een bestelling opnemen Koks die het eten koken. Inpak specialisten die het bestelde voedsel inpakken. Kassiers die het ingepakte voedsel aan de klant overhandigen en het geld in ontvangst nemen. Iedere bediende kan worden opgevat als een sequentieel proces dat met de andere processen communiceert. Welke manier van interproces communicatie wordt hier gebruikt? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.10 Stel we beschikken over een message passing systeem dat gebruik maakt van postbussen. Een proces blokkeert niet als een boodschap naar een volle postbus wordt gestuurd of als geprobeerd wordt een boodschap uit een lege postbus te accepteren. In zulke gevallen ontvangt het proces een foutmelding. De actie die het proces op het ontvangen van een foutmelding onderneemt, bestaat uit het steeds opnieuw proberen tot de actie slaagt. Leidt deze aanpak tot een race-condition? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.11 Leg uit waarom niet gebruik werd gemaakt van een lineaire lijst van geblokkeerde processen bij de implementatie van monitoren met semaforen. Dit was wel het geval toen semaforen werden geïmplementeerd met monitoren. (Aanwijzing: denk aan het verschil tussen semaforen en conditie variabelen.) L.V. de Zeeuw Besturingssystemen 1

Vraag 2.12 Waarom wordt in de oplossing van het dining philosophers probleem de state variabele gelijk aan hungry? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.13 Laten we kijken naar de procedure put_forks. Stel dat de variabele state[i] gelijk wordt aan THINKING na de twee aanroepen van test in plaats van voor de aanroepen van test. Hoe zou dit het effect van de eindresultaat veranderen in het geval van drie filosofen? En voor 100 filosofen? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.14 Het lezers en schrijvers probleem kan op verschillende manieren worden geformuleerd. Die manieren hebben betrekking op welke processen op welk moment kunnen worden gestart. Beschrijf nauwkeurig drie verschillende varianten van het probleem waarbij in elke variant een andere categorie processen wordt bevoordeeld (of juist niet). Geef aan wat er gebeurt als een lezer of schrijver klaar is om een database te benaderen. Beschrijf ook wat er gebeurt als een proces klaar is met de database. L.V. de Zeeuw Besturingssystemen 1

Vraag 2.15 De CDC 6600 computers konden zo'n 10 I/O processen tegelijk aan door gebruik te maken van een interessante vorm van round robin schedulling: Processor scharing. Een process wissel vond plaats na iedere instructie, zo kwam instructie 1 van process 1, instructie 2 van process 2, enz De process wissel vond plaats door speciale hardware met een overhead nul. Als een process nu T sec nodig had om een opdracht te voltooien, hoeveel tijd zou het dan nodig hebben als er processor sharing werd gebruikt met n processen? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.16 Round Robin schedulers houden normaal een lijst van alle processen bij, waarin elk proces één keer voorkomt. Wat zou er gebeuren indien een proces tweemaal voorkomt in de lijst ? Kunt je een reden bedenken om dit toe te staan ? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.17 Metingen aan een bepaald systeem laten zien dat een gemiddeld proces T seconden loopt voordat er I/O gepleegd wordt en het proces blokkeert. Een proces wisseling duurt S seconden. Dit is overhead. Geef voor round robin scheduling met een quantum van Q seconden een formule voor de CPU efficiëntie voor elk van de volgende gevallen. Q =  Q > T S < Q < T Q = S Q bijna 0 L.V. de Zeeuw Besturingssystemen 1

Vraag 2.18 Vijf batch jobs A tot en met E worden vrijwel tegelijkertijd bij het computercentrum aangeboden. De geschatte executie tijden zijn respectievelijk 10, 6, 2, 4 en 8 minuten. De (door een externe bron) aangegeven prioriteiten zijn achtereenvolgens 3, 5, 2, 1 en 4. De hoogste prioriteit is dan 5. Bepaal de gemiddelde doorlooptijd van de processen bij ieder van de volgende scheduling algoritmen. Verwaarloosde overhead ten gevolge van het wisselen van processen. Round robin. Priority scheduling. FIFO (First‑in first out) Taken komen binnen in volgorde: A,B,C,D en E. Shortest job first. L.V. de Zeeuw Besturingssystemen 1

Vraag 2.19 Een process dat onder CTSS loopt, heeft 30 quanta nodig om te worden uitgevoerd. Hoeveel keer moet het proces in executie toestand worden gebracht, met in begrip van de eerste keer (voordat het proces is voltooid)? Gegeven: Bij dit besturingssysteem krijgt een proces initieel 1 quantum toegewezen. De volgende keer dat dit proces wordt uitgevoerd, mag het 2 quanta uitvoeren voordat het wordt gewisseld. Bij volgende runs krijgt het proces achtereenvolgens 4, 8, 16, 32 en tenslotte 64 quanta toegewezen. CTSS (acroniem van Compatible Time-Sharing System) is een besturingssysteem voor computers dat in 1961 werd ontwikkeld door M.I.T.. Het was het eerste succesvolle timesharing-systeem, en voorloper van Multics. Laatste was minder succesvol, maar heeft wel bijgedragen aan de geboorte van Unix. L.V. de Zeeuw Besturingssystemen 1

Vraag 2.20 Vijf taken wachten op verwerking. Hun verwachte executie‑tijden zijn 9, 6, 3, 5, en X seconden. In welke volgorde moeten deze jobs worden uitgevoerd om de responstijd te minimaliseren? (Het antwoord is afhankelijk van X.) L.V. de Zeeuw Besturingssystemen 1

Vraag 2.21 Het aging algorithme met a=0.5 wordt gebruikt om executie tijden te voorspellen. De vorige vier executie tijden bedroegen respectievelijk 40, 20, 40 en 15 msec. Wat is de voorspelling voor de volgende executie tijd? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.22 Leg uit waarom scheduling op twee niveau’s vaak wordt gebruikt? L.V. de Zeeuw Besturingssystemen 1

Vraag 2.x L.V. de Zeeuw Besturingssystemen 1