The Old New Thing

Stephen Tolouse's reminiscences of Windows 95 RTM day

Stephen Tolouse (known around Microsoft as "stepto", pronounced "step-toe") from the Microsoft Security Response Center reminisces about Windows 95 RTM. Stephen mentions that "the build numbers were artificially inflated to reach 950". There's actually a technical reason for this inflation, which I intend to write about when I have the ...

Pumping messages while waiting for a period of time

We can use the function (or its superset ) to carry out a non-polling "sleep while processing messages". This function pumps messages for up to milliseconds. The kernel of the idea is merely to use the function as a surrogate for , pumping messages until the cumulative timeout has been reached. There are a lot of small details to pay ...

Welcome to the United States, unless you're a Canadian technologist who is an invited guest at a Microsoft conference, in which case, keep out

Vancouver technologist Darren Barefoot was invited to Redmond by the MSN Search team but was stopped by Immigration and denied entry. Ultimately, the customs agents concluded that because Microsoft was covering my flight and accommodation, I was being compensated for consulting activities. In order to enter the country, I'd need a work ...

You can call MsgWaitForMultipleObjects with zero handles

There is no function, but you can create your own with the assistance of the function. To wait for a message with timeout, we use the in a vacuous sense: You pass it a list of objects you want to wait for, as well as a timeout and a set of queue states, asking that the function return when any of the objects is signalled or when a ...

Performance consequences of polling

Polling kills. A program should not poll as a matter of course. Doing so can have serious consequences on system performance. It's like checking your watch every minute to see if it's 3 o'clock yet instead of just setting an alarm. First of all, polling means that a small amount of CPU time gets eaten up at each poll even though there is ...