MulticoreInfo.com header image 2

Advanced .NET Debugging: Synchronization

December 21st, 2009 · No Comments




by Mario Hewardt
The Windows operating system is a preemptive and multithreaded operating system. Multithreading refers to the capability to run any number of threads concurrently. If the system is a single processor machine, Windows creates the illusion of concurrent thread execution by allowing each thread to run for a short period of time (known as a “time quantum’). When that time quantum is exhausted, the thread is put to sleep and the processor switches to another thread (known as a “context switch”), and so on. On a multiprocessor machine, two or more threads are capable of running concurrently (one thread per physical processor).

By being preemptive, all active threads in the system must be able to yield control of the processor to another thread at any point in time. Given that the operating system can take away control from a thread, developers must take care to always be in a state where control can safely be taken away.

Full Story

  • Share/Save/Bookmark

Tags: MulticoreInfo · Programming · Tools

Like what you're reading? Come back every day for multicore news, or subscribe to RSS updates.



Stumble It!