Safari, the world’s most comprehensive technology and business learning platform.

Find the exact information you need to solve a problem on the fly, or go deeper to master the technologies and skills you need to succeed

Start Free Trial

No credit card required

O'Reilly logo
Windows System Programming, Fourth Edition

Book Description

“If you’re writing a native Win32 program or just want to know what the OS is really doing underneath, you need John’s book. He covers the stuff that real systems programmers absolutely must know. Recommended.”

–Chris Sells, Microsoft Corporation

“This fourth edition does a great job of incorporating new features in the Vista, Windows 2008, and Windows 7 API, but also stays true to teaching the foundational elements of building applications that target the Windows OS.”

–Jason Beres, Product Management, Infragistics

The Definitive Guide to Windows API Programming, Fully Updated for Windows 7, Windows Server 2008, and Windows Vista

Windows System Programming, Fourth Edition, now contains extensive new coverage of 64-bit programming, parallelism, multicore systems, and many other crucial topics. Johnson Hart’s robust code examples have been updated and streamlined throughout. They have been debugged and tested in both 32-bit and 64-bit versions, on single and multiprocessor systems, and under Windows 7, Vista, Server 2008, and Windows XP. To clarify program operation, sample programs are now illustrated with dozens of screenshots.

Hart systematically covers Windows externals at the API level, presenting practical coverage of all the services Windows programmers need, and emphasizing how Windows functions actually behave and interact in real-world applications. Hart begins with features used in single-process applications and gradually progresses to more sophisticated functions and multithreaded environments. Topics covered include file systems, memory management, exceptions, processes, threads, synchronization, interprocess communication, Windows services, and security.

New coverage in this edition includes

  • Leveraging parallelism and maximizing performance in multicore systems

  • Promoting source code portability and application interoperability across Windows, Linux, and UNIX

  • Using 64-bit address spaces and ensuring 64-bit/32-bit portability

  • Improving performance and scalability using threads, thread pools, and completion ports

  • Techniques to improve program reliability and performance in all systems

  • Windows performance-enhancing API features available starting with Windows Vista, such as slim reader/writer locks and condition variables

  • A companion Web site,, contains all sample code, Visual Studio projects, additional examples, errata, reader comments, and Windows commentary and discussion.