Windows NT Systems Programming: Spring 2000

[ Home | Syllabus | Course Notes | Assignments | Search]


Introduction


Systems Programming in WindowsNT/9X (Win32)

From the programming point of view (ours in this course) Windows 9x == Windows NT Lite


What this Course is NOT!

 


Comparison Unix and Windows NT/9x

Text

Function UNIX Windows NT/9x
Basic OS Stuff (files/processes) Section 2 of Unix Programming Guides (UNIX Systems Calls) WIN32
Network Primitives UDP TCP/IP Sockets UDP TCP/IP Sockets
Named Pipes, Mailslots
GUI primitives none (use X windows) WIN32/MFC
Network Object Architecture none (use CORBA) DCOM (activeX)
Scripting Shell/Perl WSH

 


Teaching Project

NOMS (Network Object-Message Server)

Network: Because the world is becoming increasingly networked
Object: object-oriented implementation
Message: messages can be anything
Server: well - client server is OK

This project is to implement a message handling system with the following operations.


Dimensions of Complexity

User Interface:

Messages:

Network:

 


NOMS Versions

Version Number Properties Teaching Objectives
Version 0
  • No objects
  • No network
  • No editing
  • One file solution
  • Command line interface
  • Simple File Handling
Version 1
  • Message/folder objects
  • Object persistence
  • Multiple file solution
  • OO design/programming
  • Self-archiving objects
Version 2
  • Single Client/Server solution
  • TCP/IP sockets
Version 3
  • Multiple Clients
  • Threads
  • Synchronization
  • File Locking
Version 4
  • GUI interface
  • no network
  • MFC programming
  • edit objects
Version 5*
  • Menus
  • Dialogs
  • Explain the usual set of
    GUI design primitives
Version 6
  • reintroduce network
  • Document/View Architecture
Version 7
(time permitting)
  • Non-text messages
  • Multi-media support
Version 8
  • Distributed COM solution
    aka Active-X
  • RPC
  • MIDL
  • COMS
  • DCOM

 

NOTE: In this course, the NOMS project will not central to the lectures but is available mostly as a set of study examples to reinforce the concepts covered.

 


Student Projects

I want you to help me and the class explore Windows NT/9x environment.

 


A Brief History of Windows NT.

 


Windows NT Architecture

NTarch.jpg (13530 bytes)

User Mode

Kernel Mode

SMP = Symmetric MultiProcessing. NT can run on a single workstation with multi-processors, any thread any processor, shared memory and fine grained synchonization.


Operating Systems Essentials

 


 

Some Programming Conventions

 

 

 


Copyright chris wild 1999/2000.
For problems or questions regarding this web contact [Dr. Wild].
Last updated: January 10, 2000.