本书包括windows基于windows NT 编码的最近的三个版本:Windows 2000, Windows XP (32-bit and 64-bit versions), and Windows Server 2003 (32-bit and 64-bit versions).本书的内容适用于这三个版本,除了特殊的说明下面是这三个版本的具体描述:
Table 1-1. Windows Operating System Releases
产品名称
内部版本号
发布日期
Windows NT 3.1
3.1
July 1993
Windows NT 3.5
3.5
September 1994
Windows NT 3.51
3.51
May 1995
Windows NT 4.0
4.0
July 1996
Windows 2000
5.0
December 1999
Windows XP
5.1
August 2001
Windows Server 2003
5.2
March 2003
下面是windows NT 和 windows 95的对比
Windows NT vs. Windows 95
下面列出了windows NT 和windows 95及后继版本(Windows 98 and Windows Millennium Edition)的不同之处,及windows NT 的改进:
· Windows NT 支持多处理器—Windows 95 doesn't.
· The Windows NT 文件系统支持安全机制(such as discretionary access control). The Windows 95 file system doesn't.
· Windows NT 是完全的32位(and now 64-bit) 操作系统—不再包含16位的编码, 然而它提供16位应用程序的运行环境. Windows 95 继承了Windows 3.1 和 MS-DOS得很大一部分16 位编码.
Windows NT 是完全可重入的———在windows 95中大部分的图形设备接口(管理显示器,为USER与应用程序提供与硬件设备独立的接口
)和用户接口(窗口和消息管理,以及菜单、控制、对话框、定时器等
· )函数(GDI and USER)都是不可重入. (主要是继承与Windows 3.1的16位代码). 当windows 95 上的应用程序试图调用不可重入的16位代码来实现系统服务时,应用程序必须先要加上一个系统范围内的“锁“(system-wide lock or mutex)来阻止其他线程进入不可重入代码库(nonreentrant code base)。更糟糕的是16位的应用程序将在运行期间一直持用这个互斥体。尽管windows 95是一个32位的抢占式多线程操作系统,但因为太多的系统服务执行不可重入的代码所以大部分的应用程序还是单线程运行的。
· Windows NT 提供了一个选项用来在它自己的地址空间内运行16为应用程序—Windows 95 在共享地址空间内运行16为应用程序, 有可能导致系统和应用程序的瘫痪。
· 在windows NT中进程共享内存只能对于映射了此共享内存段的进程可见. 在 Windows 95, 共享内存对所有的进程可见并且可写入. 因此,共同运行的任何其他进程都可以对共享内存进行写入或者错用。
· Windows 95 中内核分区是不受保护的。任何应用程序都可以从该分区读取数据,也可以写入数据,因此有可能破坏操作系统。
有一件事是windows 95胜过windows NT 的:windows 95可以运行所有的MS-DOS and Windows 3.1 应用程序甚至是16位的MS-DOS 的设备驱动程序(windows 95的设计目标就是100%兼容MS-DOS and Windows 3.1但是windows NT的目标是能运行大多数现存的16位应用程序的同时确保系统的完整性和健壮性)