The Student Room Group

Finding Algorithm Problem and Solution in Win7

So I'm asked to answer one of the questions in an assignment but the one that I face difficulty is with finding algorithm(scheduling) and the problem and what kind of solution has Microsoft done to fix the algorithm as they are using(pre-emptive). As far as my research goes, I noticed that the pre-emptive is the best algorithm for Windows while non pre-emptive for linux as Win 7 is designed for multi tasking. So is it correct if I answer that the algorithm doesn't necessarily have a problem, it's just that Windows chose the correct algorithm that fits it's OS
Reply 1
wotruon?
Windows is a preemptive operating system, it was designed to be, and is an excellent OS. Windows requires clock interrupts to keep track of logical and system time, which keeps tracks of timers, thread's quantum and the system clock. Without these features Windows would not be a preemptive operating system, timers would never get expired, thread quantum's would never expire, and no threads would be able to take control without acquiring a global lock.
Windows therefore uses algorithms which are preemptive, the entire interrupt functionality of Windows just proves that it is a preemptive operating system.
If you don't use a preemptive algorithm, it can cause a lot of problems, depending on the thread's priority and whether it is running in Kernel mode. A series of threads which aren't preemptive can cause deadlocks and race conditions, causing the system to grind to a halt.
I've not looking into thread's very much with Windows, so you might have to take some things I've said with a pinch of salt. I'm very busy as it is, so I haven't got much time at the moment to look into it.
I don't know much about Linux, so I couldn't tell you how it can handle algorithms, and which is best suited.

Quick Reply

Latest

Trending

Trending