🦜 The Old New Thing
@devblogs.microsoft.com.oldnewthing@rss-parrot.net
I'm an automated parrot! I relay a website's RSS feed to the Fediverse. Every time a new post appears in the feed, I toot about it. Follow me to get all new posts in your Mastodon timeline!
Brought to you by the RSS Parrot.
---
Your feed and you don't want it here? Just
e-mail the birb.
Developing a cross-process reader/writer lock with limited readers, part 4: Abandonment
https://devblogs.microsoft.com/oldnewthing/20260501-00/?p=112291
Published: May 1, 2026 14:00
Recovering from death of the owner.
The post Developing a cross-process reader/writer lock with limited readers, part 4: Abandonment appeared first on The Old New Thing.
Developing a cross-process reader/writer lock with limited readers, part 3: Fairness
https://devblogs.microsoft.com/oldnewthing/20260430-00/?p=112288
Published: April 30, 2026 14:00
Let the exclusive acquisition have a fair chance against shared acquisitions.
The post Developing a cross-process reader/writer lock with limited readers, part 3: Fairness appeared first on The Old New Thing.
Developing a cross-process reader/writer lock with limited readers, part 2: Taking turns when being grabby
https://devblogs.microsoft.com/oldnewthing/20260429-00/?p=112286
Published: April 29, 2026 14:00
Please, not everybody, everything all at once.
The post Developing a cross-process reader/writer lock with limited readers, part 2: Taking turns when being grabby appeared first on The Old New Thing.
Developing a cross-process reader/writer lock with limited readers, part 1: A semaphore
https://devblogs.microsoft.com/oldnewthing/20260428-00/?p=112278
Published: April 28, 2026 14:00
A pot of tokens.
The post Developing a cross-process reader/writer lock with limited readers, part 1: A semaphore appeared first on The Old New Thing.
Looking at consequences of passing too few register parameters to a C function on various architectures
https://devblogs.microsoft.com/oldnewthing/20260427-00/?p=112271
Published: April 27, 2026 14:00
It's bad news no matter how you slice it, but Itanium makes it even worse.
The post Looking at consequences of passing too few register parameters to a C function on various architectures appeared first on The Old New Thing.
Defending against exceptions in a scope_exit RAII type
https://devblogs.microsoft.com/oldnewthing/20260424-00/?p=112266
Published: April 24, 2026 14:00
But maybe it's not worth it.
The post Defending against exceptions in a <CODE>scope_exit</CODE> RAII type appeared first on The Old New Thing.
Another crash caused by uninstaller code injection into Explorer
https://devblogs.microsoft.com/oldnewthing/20260423-00/?p=112261
Published: April 23, 2026 14:00
Inadvertently destroying a staircase while standing on it.
The post Another crash caused by uninstaller code injection into Explorer appeared first on The Old New Thing.
Mapping the page tables into memory via the page tables
https://devblogs.microsoft.com/oldnewthing/20260422-00/?p=112255
Published: April 22, 2026 14:00
So-called "fractal page mapping".
The post Mapping the page tables into memory via the page tables appeared first on The Old New Thing.
Sure, xor’ing a register with itself is the idiom for zeroing it out, but why not sub?
https://devblogs.microsoft.com/oldnewthing/20260421-00/?p=112247
Published: April 21, 2026 14:00
Somehow xor became the most popular version.
The post Sure, xor’ing a register with itself is the idiom for zeroing it out, but why not sub? appeared first on The Old New Thing.
How did code handle 24-bit-per-pixel formats when using video cards with bank-switched memory?
https://devblogs.microsoft.com/oldnewthing/20260420-00/?p=112245
Published: April 20, 2026 14:00
You still have to use aligned accesses, even though the pixels might not be aligned.
The post How did code handle 24-bit-per-pixel formats when using video cards with bank-switched memory? appeared first on The Old New Thing.
Forgotten message from the past: LB_INITÂSTORAGE
https://devblogs.microsoft.com/oldnewthing/20260417-00/?p=112243
Published: April 17, 2026 14:00
Preallocating memory to avoid quadratic behavior.
The post Forgotten message from the past: <CODE>LB_<WBR>INITÂSTORAGE</CODE> appeared first on The Old New Thing.
What’s up with window message 0x0091? We’re getting it with unexpected parameters
https://devblogs.microsoft.com/oldnewthing/20260416-00/?p=112240
Published: April 16, 2026 14:00
Trespassing on system messages.
The post What’s up with window message <CODE>0x0091</CODE>? We’re getting it with unexpected parameters appeared first on The Old New Thing.
Why is there a long delay between a thread exiting and the WaitÂForÂSingleÂObject returning?
https://devblogs.microsoft.com/oldnewthing/20260415-00/?p=112235
Published: April 15, 2026 14:00
Maybe it didn't really exit.
The post Why is there a long delay between a thread exiting and the <CODE>WaitÂForÂSingleÂObject</CODE> returning? appeared first on The Old New Thing.
Why was there a red telephone at every receptionist desk?
https://devblogs.microsoft.com/oldnewthing/20260414-00/?p=112231
Published: April 14, 2026 14:00
Not a direct line to Bill Gates's office.
The post Why was there a red telephone at every receptionist desk? appeared first on The Old New Thing.
Finding a duplicated item in an array of N integers in the range 1 to N − 1
https://devblogs.microsoft.com/oldnewthing/20260413-00/?p=112227
Published: April 13, 2026 14:00
Taking advantage of special characteristics of the array.
The post Finding a duplicated item in an array of <VAR>N</VAR> integers in the range 1 to <VAR>N</VAR> − 1 appeared first on The Old New Thing.