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.

Summary.

Exercises.



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.

Summary.

Exercises.



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.

Summary.

Exercises.



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.

Summary.

Exercises.



6. Memory Management and Memory-Mapped Files.

Win32 Memory Management Architecture.

Heaps.

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.

Summary.

Exercises.



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.

Summary.

Exercises.



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.

Timers.

Example: A Periodic Alarm.

Timed Waits.

Summary.

Exercises.



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.

Mailslots.

Pipe and Mailslot Creation, Connection, and Naming.

Example: A Server That Clients Can Locate.

Summary.

Exercises.



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.

Summary.

Exercises.



11. Win32 Synchronization.

Thread-Safe Code.

Thread and Process Synchronization Objects.

Critical Sections.

Example: Protecting Shared Variables with Critical Sections.

Mutexes.

Semaphores.

Examples: Using Semaphores.

Events.

Example: A Connection-Oriented Client.

Example: The Threaded Server/Pipe and Thread Management.

Thread Security and Impersonation.

Comments on Thread Models.

Summary.

Exercises.



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.

Summary.

Exercises.



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.

Summary.

Exercises.



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

Fibers.

The Registry.

Beyond the System Services.

Summary.

Exercises.



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.



Bibliography.


Index. 0201634651T04062001

‹  Return to Product Overview