hoe werkt het windows 7 multitask systeem?

Ik weet dat het preemitive multitasking gebruikt en dat een process dus een timeslice krijgt van bijv. 20ms.
Maar wat als een task iets belangrijks doet dat niet onderbroken mag worden zoals communiceren met een apparaat dat een antwoord elke 10ms wil hebben anders loopt het apparaat vast?
hoe lost windows dit op?


Alvast bedankt

Weet jij het antwoord?

/2500

Het beste antwoord

Het idee van preemptive (niet preemitive) multitasking in verband met I/O bound processen (de processen die met hardware devices willen praten) is juist dat een task in de wacht gezet wordt en geen aandacht CPU krijgt, totdat er een zekere hardware interrupt request (IRQ) plaatsvindt waardoor het betreffende wachtende proces per direct geactiveerd kan worden. Daardoor hoeft I/O bound processing dus niet op timeslices te wachten Maar als je bedoelt een software-proces dat EXACT elke 10 milliseconden (of vaker) met een apparaat moet praten: dit gaat lastig worden om softwarematig met de huidige generatie besturingssystemen te bereiken, daarom beschikt de meeste moderne moederborden over een HPET (high precision event timer), en voor 2005 had je daar eerdere varianten op, die geprogrammeerd kan worden om elke X tijdseenheden een hardware interrupt te genereren om zo een preemitive multitasking OS met meer timing precision aan te sturen.

Bronnen:
https://en.wikipedia.org/wiki/High_Precisi...
https://en.wikipedia.org/wiki/Preemption_(...

Stel zelf een vraag

Ben je op zoek naar het antwoord die ene vraag die je misschien al tijden achtervolgt?

/100