Have one to sell? Sell yours here
Tell the Publisher!
Id like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Win32 System Programming (Advanced Windows) [Hardcover]

Johnson M. Hart
4.7 out of 5 stars  See all reviews (6 customer reviews)

Available from these sellers.

‹  Return to Product Overview

Table of Contents

1. Windows NT and Windows 95.

Windows 95 and Windows NT: Overview.

Operating System Essentials.

Win32, Windows NT, and Windows 95.

Win32, Standards, and Open Systems.

What You Need to Use This Book.

2. Getting Started with Win32.

Win32 Principles.

The Standard C Library: When to Use It.

Example: A Simple Sequential File Copy.



3. Using the Win32 File System and Character I/O.

The Win32 File Systems.

Win32 File Naming.

Opening, Reading, Writing, and Closing Files.

Interlude: Unicode and Generic Characters.

Unicode Strategies.

Standard Devices and Console I/O.

Example: Printing and Prompting.

Example: Error Processing.

Example: Copying Multiple Files to Standard Output.

Example: ASCII to Unicode Conversion.

File and Directory Management.

Example: Printing the Current Directory.



4. Direct File Access and File Attributes.

The 64-Bit File System.

File Pointers.

Getting the File Size.

Example: Viewing the Tail of a File.

File Attributes and Directory Searching.

Example: A File Delete Utility.

Example: Listing File Attributes.

Example: Setting File Times.

File Processing Strategies.



5. Structured Exception Handling.

Exceptions and Their Handlers.

Floating-Point Exceptions.

Errors and Exceptions.

Example: Treating Errors as Exceptions.

Termination Handlers.

Example: Processing Exceptions and Completion.

Console Control Handlers.

Example: A Console Control Handler.



6. Memory Management and Memory-Mapped Files.

Win32 Memory Management Architecture.


Managing Heap Memory.

Example: Sorting Files with a Binary Search Tree.

Memory-Mapped Files.

Example: Sequential File Processing with Mapped Files.

Example: Sorting a Memory-Mapped File.

Example: Using Based Pointers.



7. Security.

Security Attributes.

Security Overview: The Security Descriptor.

Security Identifiers.

Managing ACLs.

Example: UNIX-Style Permission for NTFS Files.

Example: Initializing Security Attributes.

Reading and Changing Security Descriptors.

Example: Reading File Permissions.

Example: Changing File Permissions.

Overview of Additional Security Features.



8. Process Management.

Win32 Processes and Threads.

Process Creation.

Process Identities.

Duplicating Handles.

Exiting and Terminating a Process.

Waiting for a Process to Terminate.

Environment Blocks and Strings.

Example: Parallel Pattern Searching.

Process Execution Times.

Example: Process Execution Times.

File Locking.

Generating Console Control Events.

Example: Simple Job Management.


Example: A Periodic Alarm.

Timed Waits.



9. Interprocess Communication.

Anonymous Pipes.

Example: I/O Redirection Using an Anonymous Pipe.

Named Pipes.

Named Pipe Convenience Functions.

Example: A Simple Client/Server Command Line Processor.

Comments on the Client/Server Command Line Processor.


Pipe and Mailslot Creation, Connection, and Naming.

Example: A Server That Clients Can Locate.



10. Threads and Scheduling.

Overview of Threads.

Thread Basics.

Thread Management.

Using the C Library in Threads.

Example: Multithreaded Pattern Searching.

Example: Merge-Sort/Divide and Conquer to Exploit SMP.

Thread Local Storage.

Process and Thread Priority and Scheduling.

Thread States.



11. Win32 Synchronization.

Thread-Safe Code.

Thread and Process Synchronization Objects.

Critical Sections.

Example: Protecting Shared Variables with Critical Sections.



Examples: Using Semaphores.


Example: A Connection-Oriented Client.

Example: The Threaded Server/Pipe and Thread Management.

Thread Security and Impersonation.

Comments on Thread Models.



12. Dynamic Link Libraries, In-Process Servers, and the ISAPI.

Dynamic Link Libraries.

Example: Explicitly Linking a File Conversion Function.

Example: An In-Process Command Server.

Example: A DLL Server.

The IIS and ISAPI.

Example: A Skeleton ISAPI DLL.



13. Asynchronous Input/Output.

Overview of Win32 Asynchronous I/O.

Overlapped I/O.

Example: Synchronizing on a File Handle.

Example: File Conversion with Overlapped I/O and Multiple Buffers.

Extended I/O with Completion Routines.

Example: File Conversion with Extended I/O.

Asynchronous I/O with Threads.

Overview of I/O Completion Ports.



14. Other Topics: Fibers, the Registry, and Beyond.


The Registry.

Beyond the System Services.



Appendix A. Using the Sample Programs.

Disc Organization.

Include File Listings.

Additional Utility Programs.

Appendix B. Win32, UNIX, and C Library Comparisons.

Chapters 3 and 4: File and Directory Management.

Chapter 5: Structured Exception Handling and Timers.

Chapter 6: Memory Management and Memory-Mapped Files.

Chapter 7: Security.

Chapter 8: Process Management.

Chapter 9: Interprocess Communication.

Chapter 10: Thread Management.

Chapter 11: Win32 Synchronization.

Chapter 13: Asynchronous I/O.

Appendix C. Performance Results.

Test Configurations.

Performance Measurements.

Running the Tests.


Index. 0201634651T04062001

‹  Return to Product Overview