The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

May 5, 2026
Post comments count 6
Post likes count 2

A dispute over the TAB key highlights a mismatch between Microsoft and IBM organizational structures

Raymond Chen

I want to speak to your manager.

May 4, 2026
Post comments count 1
Post likes count 2

How do I inform Windows that I’m writing a binary file?

Raymond Chen

You don't. All files are binary at the file system level.

May 1, 2026
Post comments count 0
Post likes count 1

Developing a cross-process reader/writer lock with limited readers, part 4: Abandonment

Raymond Chen

Recovering from death of the owner.

Apr 30, 2026
Post comments count 3
Post likes count 2

Developing a cross-process reader/writer lock with limited readers, part 3: Fairness

Raymond Chen

Let the exclusive acquisition have a fair chance against shared acquisitions.

Apr 29, 2026
Post comments count 1
Post likes count 2

Developing a cross-process reader/writer lock with limited readers, part 2: Taking turns when being grabby

Raymond Chen

Please, not everybody, everything all at once.

Apr 28, 2026
Post comments count 11
Post likes count 2

Developing a cross-process reader/writer lock with limited readers, part 1: A semaphore

Raymond Chen

A pot of tokens.

Apr 27, 2026
Post comments count 9
Post likes count 2

Looking at consequences of passing too few register parameters to a C function on various architectures

Raymond Chen

It's bad news no matter how you slice it, but Itanium makes it even worse.

Apr 24, 2026
Post comments count 3
Post likes count 2

Defending against exceptions in a scope_exit RAII type

Raymond Chen

But maybe it's not worth it.

Apr 23, 2026
Post comments count 12
Post likes count 2

Another crash caused by uninstaller code injection into Explorer

Raymond Chen

Inadvertently destroying a staircase while standing on it.