Tagged articles
3 articles
Page 1 of 1
Liangxu Linux
Liangxu Linux
Jun 29, 2025 · Fundamentals

From FCFS to Preemptive Multitasking: Lessons from 1960s IBM Scheduling

The article recounts a 1960s IBM system engineer’s struggle with process scheduling, tracing the evolution from simple First‑Come‑First‑Served queues through cooperative multitasking with a yield() call, to timer‑driven preemptive round‑robin and priority‑based algorithms, highlighting each method’s strengths and pitfalls.

FCFSOperating SystemsPriority Scheduling
0 likes · 7 min read
From FCFS to Preemptive Multitasking: Lessons from 1960s IBM Scheduling
Programmer DD
Programmer DD
Aug 1, 2023 · Fundamentals

Why Thread.Sleep(0) Can Change Your App’s Responsiveness – The Real Reason

Thread.Sleep pauses a thread for a specified time, but its behavior depends on OS scheduling; Sleep(0) yields the CPU to let other threads run, while Sleep(1000) doesn’t guarantee immediate wake‑up, illustrating how time‑slice and priority‑based scheduling affect thread execution.

CCPU schedulingpreemptive multitasking
0 likes · 10 min read
Why Thread.Sleep(0) Can Change Your App’s Responsiveness – The Real Reason
macrozheng
macrozheng
Jun 10, 2020 · Fundamentals

What Does Thread.Sleep(0) Actually Do? Unveiling Thread Scheduling Basics

This article explains the purpose of Thread.Sleep, clarifies common misconceptions about its timing behavior, compares Unix time‑slice and Windows preemptive scheduling using a cake‑eating analogy, and shows why Thread.Sleep(0) can trigger an immediate CPU‑competition reschedule to improve responsiveness.

CPU schedulingOperating Systempreemptive multitasking
0 likes · 10 min read
What Does Thread.Sleep(0) Actually Do? Unveiling Thread Scheduling Basics