This chapter explains the overall architecture of the system—the key components, how they interact with each other, and the context in which they run.
Requirements and Design Goals
The following requirements drove the specification of Windows NT back in 1989:
- Provide a true 32-bit, preemptive, reentrant, virtual memory operating system
- Run on multiple hardware architectures and platforms
- Run and scale well on symmetric multiprocessing systems
- Be a great distributed computing platform, both as a network client and as a server
- Run most existing 16-bit MS-DOS and Microsoft Windows 3.1 applications
- Meet government requirements for POSIX 1003.1 compliance
- Meet government and industry requirements for operating system security
- Be easily adaptable to the global market by supporting Unicode
According to the requirement, the following design goals are adopted:
- Extensibility
- Portability
- Reliability and robustness
- Compatibility
- Performance