Besturingssystemen
Wat is een OS?
Een besturingssysteem dirigeert alles.
Het is de manager van resources
• Verschillende soorten threads (taken)
• Toegang tot geheugen/ bestanden/ hardware
Een OS geeft aan een programma het gevoel dat het alleen is (virtualisatie en abstractie).
Zo’n applicatie (programma, proces) bestaat uit:
• Een eigen adres ruimte
• 1 of meerdere threads of execution
• Verschillende statussen
Een Thread van een proces bestaat uit:
• execution of instructions
• Heeft zijn eigen stack
• Ook zijn eigen PC (Program Counter) en andere registers
Een OS acts as glue. Het combineerd verschillende services zoals: Networking, Storage, Window
management, …).
We kunnen stellen dat een OS = Een programma dat andere programmas uitvoerd.
Zo zijn de 4 grote pilaren:
• Execution Manager
• Memory Manager
• Protection Manager
• Input/output and persistence Manager
4-Computerarchitectuur en Besturingssystemen 1 53
,Execution Manager (pilar 1)
Een EM (Execution Manager) beheert de processen (Een process kan 1 of meerdere
threads hebben). Een proces wordt uitgevoerd door de CPU.
Als het proces niet bezig is met uitvoeren, slagen we de context op, op de stack. De
stack groeit van boven naar onder.
Een executable heeft volgende segmenten:
• BSS
Een adres ruimte voor niet geïnitialiseerde variabelen
• DATA
Een adres ruimte voor geïnitialiseerde variabelen
• INSTRUCTIONS
een adres ruimte voor de geschreven code
In een CPU hebben we data paden (die de data transporteren) en control paden (die zorgen dat de
data getransporteerd kan worden en dat de data verwerkt wordt).
Execute cycle
1. Load the instruction
1. if needed, load the rest of the instruction
- Wanneer de instructie groter is dan bv. 8-bit
2. Perform the instruction
- Do ALU operation
- JUMP by changing the PC
- Write to register
- Write/ read from memory
-…
Instruction set
Een instructie bestaat uit een opcode en een source en/of target register en kan ook een immediate
register bevatten.
De instructie set (wat de CPU allemaal kan uitvoeren) is platform (RISC/ CISC) afhankelijk.
4-Computerarchitectuur en Besturingssystemen 1 54
, Basic CPU
Een basic CPU bestaat uit enkele
registers die de state bijhouden en
de volgende instructie definiëren.
Ook een RAM geheugen die het
proces heeft opgeslagen.
Er zijn ook controle registers om
alles in goede banen te lijden en
ervoor te zorgen dat de CPU doet
wat die moet doen.
Basic OS
Basic Process
We willen natuurlijk niet 1 proces runnen, maar veel meer. Elk proces moet wel het
gevoel hebben dat deze alleen bezig is (virtualisatie).
Wanneer we maar 1 CPU hebben en meerdere processen die allemaal iets moeten
verwerken, moeten we ze 1 voor 1 door de CPU laten verwerken. Vaak zal een proces
onderbroken worden zodat andere processen ook iets kunnen uitvoeren. Uiteraard mag
een proces hier niets van gewaar worden. We noemen dit Context Switching.
We kunnen stellen dat een proces (voor nu) 2 states heeft:
• running
• not running
4-Computerarchitectuur en Besturingssystemen 1 55