By Johnson M. Hart
Addison-Wesley, ISBN 0-321-25619-0, $59.99

In this present era of .NET programming, it's good to see that some people remember that Windows is itself still a COM-based entity with all its C++\C-based pointers, posers and problems. This series of books has always had just the one objective - to expose the Windows APIs so that those who have the need can access them directly and work with the Windows operating system itself rather than with an application sitting on top of it. This objective it achieves, and whether you're a newcomer to system-level programming or the book's intended audience - a grizzled veteran of some other OS such as UNIX - there's a good amount of information here you'll find yourself referring to again and again.

The new additions to the book such as coverage of the Win64 API, and dealing with Windows 2003, XP, 2000 and Windows Mobile (there are many more) are integrated into the book as a whole where possible although the unique aspects of Win64 programming are kept in a chapter by themselves. It's a curiosity as to how much, if at all, the Win64 API will have changed between the time this was written and the x64 editions of Windows XP and Win2k3 are released, but I suspect, given that the Itanium workstation editions of Windows already exist, very little. Each chapter is well structured and facts and code are presented simply and well. As I've never been a UNIX programmer I can't say how useful this is a to the book's target audience, but the text is well-written and easy to follow. It even makes you smile once in a while when the newer Windows versions as referred to as NT5 systems.A book like this is like one that Don Box would write. It's at such a low-level that you might never need it except for that one instant when you need to know why the performance of your SMP-based app sucks and nothing else goes that deep. A kwisatz haderach for Windows programmers (and a reference for Dune programmers then). Look deep enough and you'll find it staring back.

Buy Windows System Programming from the following outlets