[This outline is from Learning Tree.]

Windows NT Developers Course

Objectives

In this course, you will learn how to:

Utilize Visual C++, VTune and UNIX-style tools to build and analyze applications on Windows NT
Understand the main architectural differences between UNIX and Windows NT
Obtain first hand experience with Win32 systems programming in Windows NT
Evaluate the options available and issues involved when porting UNIX systems code to Windows NT or developing code required to run on both platforms

Overview

Chapter 1 An Architectural Comparison of UNIX and Windows NT

Chapter 2 Development Environments, including MKS Toolkit, Visual C++ and VTune

Chapter 3 Files and File Systems. Includes references to C Run-Time libraries and Win32 subsystem programming

Chapter 4 Processes. Includes NT threads.

Chapter 5 Daemons. Includes NT Services

Chapter 6 Pipes

Chapter 7 Shared Memory and Semaphores. Includes UNIX file mappings, NT File Mappings and Mutexes

Chapter 8 Signals. Includes NT events, waitable timers and overlapped I/O

Chapter 9 Course Completion Certificate Request and Course Evaluation

Chapter 10 Course Summary

Prerequisites

Experience with the C programming language is essential
The UNIX and NT code covered in class is all written in C - you need to be able to read and write C programs (C++ experience is not required)
Familiarity with general operating system concepts is assumed
Systems programming experience with UNIX is helpful
Ideally, you should have knowledge of UNIX systems calls -- such as fork(), exec(), and pipe()
A brief recap is provided for those with a limited UNIX background
No Windows programming experience is required