De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

ICT Infrastructuren 26 november 2007 David N. Jansen.

Verwante presentaties


Presentatie over: "ICT Infrastructuren 26 november 2007 David N. Jansen."— Transcript van de presentatie:

1 ICT Infrastructuren 26 november 2007 David N. Jansen

2 Hoofdstukken 2–4 Hoofddoelen en -functies van besturingssystemen Processen Threads Procesalgebra

3 Doelen van Besturingssystemen het OS bemiddelt tussen gewone programma’s en de hardware gebruiksgemak efficiëntie ontwikkeling faciliteren

4 Bemiddeling processor: OS = een soort programma  kernel = deel van OS dat altijd in RAM blijft gebruiker/andere programma’s: OS = (bijna) deel van hardware  OS beheert de hardware

5 Diensten voor gewone programma’s programma’s ontwikkelen programma’s starten abstractie van hardware  toegang tot in- en uitvoer  toegang tot bestanden  foutafhandeling gebruikersbeheer  toegangsrechten  boekhouding

6 Beheer van bronnen de computer bestaat uit bronnen  processor  hoofdgeheugen (RAM)  secundair geheugen  in- en uitvoer van gegevens het OS bepaalt wie die bronnen mag gebruiken

7 Evolutie van Besturingssystemen handbediening / geen OS batch processing  single  multiprogrammed interactief timesharing

8 Single batch processing gebruiker levert een stapel ponskaarten in beheerders voegen wat extra kaarten toe (Job Control Language)  markeren begin en einde van de stapel  geven de soort van programma aan „besturingssysteem” leest JCL-kaarten en beslist wat te doen OS bewaakt correctheid en voortgang

9 Multiprogrammed batch processing in- en uitvoer is langzaam = veel wachttijd als een job wacht, kan een andere draaien betere afscherming tussen jobs vereist  ingewikkelder geheugenbeheer  verdeling van processortijd  gelijktijdig gebruik van in- en uitvoer  elk proces denkt dat het alleen is

10 Multiprogrammed batch processing

11 Interactief timesharing één interactieve centrale computer met meerdere terminals

12 Interactief en één gebruiker achteruitgang of vooruitgang? iedere gebruiker zijn eigen computer MS-DOS: uitgekleed OS  geen multiprogramming/multitasking  geen gebruikersbeheer

13 Proces belangrijkste thema vandaag hoofdstukken 3+4 in Stallings’ boek

14 Wat is een proces? een programma dat wordt uitgevoerd onder beheer van het besturingssysteem een samenstel van  activiteiten  status van die activiteiten  bronnen Het OS laat het proces denken dat het alleen is

15 Toestand van een proces besturingssysteem houdt toestand bij één proces is actief (running), de andere processen wachten

16 Completer toestandenmodel Proces ontstaat en eindigt Proces wacht om specifieke reden Veel processen... te veel voor het RAM

17 Proces ontstaat en eindigt Proces ontstaat  login  OS biedt dienst in de vorm van proces aan  proces start een nieuw proces Proces eindigt  normaal einde  niet voldoende bronnen  proces doet iets illegaals  in- of uitvoer kan niet  buitenstaander verzoekt om einde

18 Redenen voor wachten proces is niet aan de beurt in- of uitvoer duurt langer buitenstaander onderbreekt het proces niet voldoende RAM: proces wordt op harde schijf opgeslagen

19 Completer toestandenmodel

20 Informatie over het proces Het besturingssysteem houdt bij:  identiteit van het proces  processor-registers en geheugen  toestand van het proces (actief / blocked /...)  bronnen die het proces gebruikt  details in tabellen 3.4 en 3.5 Process Control Block bevat deze informatie

21 Process Control / Procesaansturing hoofdstuk 3.4 in het boek: zelfstudie belangrijk verschil:  process switch = één proces onderbreken, een ander activeren  mode switch = de processor springt van een modus in een andere (kernel / user mode)

22 Threads een lichte variant van processen processen gebruiken twee soorten bron:  processortoegang  geheugen, bestanden etc. threads gebruiken slechts één bron:  processortoegang eenvoudiger dan proces   beheer is sneller

23 Proces vs. thread

24 Procesinformatie  geheugen  bronnen (bestanden, in- en uitvoer) Threadinformatie  toestand van de thread (running / blocked /...)  programmateller  stack

25 Waarvoor? verschillende taken in één programma  reageren op gebruiker  commando’s uitvoeren  achtergrondtaken  sommige taken kunnen doorgaan terwijl het programma op OS wacht  multicore

26 OS-ondersteuning Sommige OSen bieden geen threads aan  dan zijn toch “user level threads” mogelijk wel ondersteuning: “kernel level threads”  langzamer, maar flexibeler

27 Procesalgebra wiskundig model van processen proces = mogelijkheid tot acties wiskundige notatie:  stopgeen actie  a  Peerst a, dan P  P + Qóf P óf Q

28 Voorbeelden van PA-termen Lamp:L = aan  uit  L ((kopiëren uit FMSE))

29 Parallele processen in PA extra operator P || Q voert P en Q parallel uit  interleaving van aparte acties  synchronisatie van gemeenschappelijke acties voorbeelden  a  stop || b  stop  a  c  stop || b  c  stop  a  b  stop || b  a  stopDeadlock

30 Gebruik van PA zijn twee programma’s equivalent? interleavings van parallele processen? ... komt overeen met parallelisme in een OS!

31 Voorbeeld van PA Sender = in  send  getack  Sender Receiver = recv  ack  out  Receiver Sendbuf = send  recv  Sendbuf Ackbuf = ack  getack  Ackbuf Sender || Receiver || Sendbuf || Ackbuf

32 Traces Een trace is een reeks van acties mogelijk gedrag van een proces P en Q zijn trace-equivalent als ze dezelfde traces hebben

33 Beperkingen van trace-equivalentie P = b  (k + t) Q = (b  k) + (b  t) zijn trace-equivalent maar er is wel verschil:  P maakt keuze in samenwerking met omgeving  Q trekt zich niets van de omgeving aan

34 Bisimulatie een betere definitie van equivalentie volgende week gaan we verder met procesalgebra...


Download ppt "ICT Infrastructuren 26 november 2007 David N. Jansen."

Verwante presentaties


Ads door Google