Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Windows NT 3.1
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== Architecture === While Windows NT 3.1 uses the same graphical user interface as Windows 3.1, it was developed anew. The operating system is not DOS-based, but an independent 32-bit operating system; many concepts were taken from Cutler's previous operating system, [[OpenVMS|VMS]].<ref name="russinovich" /> The [[architecture of Windows NT]] takes some ideas of the [[client–server model]], like the modular structure and the communication between the modules.<ref name="Custer1993"/>{{rp|page=20}} System resources like memory, files or devices are viewed as [[Object (computer science)|object]]s by the operating system, which are all accessed in the same way through [[Handle (computing)|handles]] and which can in this way be secured against unauthorized access.<ref name="Custer1993"/>{{rp|pages=22–23}} The operating system was designed for multiprocessor systems; it supports [[preemptive multitasking]]<ref name="Custer1993"/>{{rp|page=92}} and can make use of [[Thread (computing)|threads]] to run multiple processes in parallel.<ref name="Custer1993"/>{{rp|page=94}} Using [[symmetric multiprocessing]], the processing usage is evenly distributed among all available processors.<ref name="Custer1993"/>{{rp|page=24}} The [[inter-process communication]] in Windows NT 3.1 is designed around networks; two newly introduced functions, [[Remote Procedure Call]] (RPC) and [[Network DDE]], an extension of [[Dynamic Data Exchange]] (DDE), facilitate the access and data exchange between processes running on different computers inside a network.<ref name="PCMag28Sep1993_S211">{{cite journal| last1=Ayre | first1=Rick | last2=Raskin | first2=Robin | title=Windows NT: See how it runs | journal=PC Magazine | volume=12 | issue=16 | date=1993-09-28 | pages=211–231 |issn=0888-8507 | url= https://books.google.com/books?id=5KSmAXszIQYC}}</ref> The operating system is designed to combine certain elements of a [[monolithic kernel]] and a microkernel;<ref name="Custer1993"/>{{rp|page=20}} nowadays this is most often referred to as a [[hybrid kernel]].<ref name="mskernel">{{cite web |date=February 20, 2014 |title=MS Windows NT Kernel-mode User and GDI White Paper |url=https://technet.microsoft.com/library/cc750820.aspx |access-date=2012-06-07 |website=Microsoft}}</ref> The [[hardware abstraction layer]] represents the lowermost layer and isolates the operating system from the underlying hardware to make it easy to port the operating system to other platforms.<ref name="Custer1993"/>{{rp|page=30}} The kernel running atop only has very basic functions like [[interrupt]] management and processor synchronization. All other functions of the operating system core are handled by modules<ref name="Custer1993"/>{{rp|page=20}} which operate independently from one another and can be swapped without affecting the rest of the operating system.<ref name="Custer1993"/>{{rp|page=28}} Positioned above the operating system core are the subsystems. There are two types of subsystems: one are the ''integral subsystems'', which perform important operating system functions. One such subsystem is the security subsystem, which handles the logon process and monitors the security of the system. The other type of subsystem is the ''environment subsystem'', which exposes the operating system functions to applications via [[application programming interface]]s.<ref name="Custer1993"/>{{rp|page=27}} The base subsystem is the 32-bit subsystem which runs 32-bit applications written for Windows NT. Windows NT applications can only run on one platform, and must be recompiled for every platform. The 32-bit subsystem also contains all [[output (computing)|output]] functions, including the [[Graphics Device Interface]] (GDI),<ref name="ct1993">{{cite journal | last=Siering | first=Peter | title=Paarige Premiere: Microsoft Windows NT 3.1 und Advanced Server | journal=C't | issue=11 | year=1993 | pages=142 ff}}</ref> so all other subsystems have to call the 32-bit subsystem to be able to output text or graphics.<ref name="Custer1993"/>{{rp|page=33}} Other subsystems contained in Windows NT 3.1 are the POSIX subsystem, which supports POSIX-compatible applications built for Windows NT, and, in the x86 version only, the OS/2 subsystem, which allows command-line based OS/2 1.x applications to run.<ref name="ct1993" /> The [[Virtual DOS Machine]] (VDM) is sometimes also viewed as a subsystem, but is, strictly speaking, a normal 32-bit Windows application. It manages applications originally built for DOS. Built on top is [[Windows on Windows]] (WoW), which allows applications built for 16-bit Windows operating systems like Windows 3.1 to run. On x86 computers, the virtual DOS machine uses the [[virtual 8086 mode]] to run DOS applications directly,<ref name="ct1993" /> on RISC computers, an emulator licensed from ''Insignia Solutions'' is used which emulates a [[80286]] processor. However, not all DOS and 16-bit Windows applications can be run on Windows NT 3.1 due to various limitations,<ref name="ct1994">{{cite journal |last=Siering |first=Peter |year=1994 |title=Lizenz-Rezepte: Windows NT 3.5 Workstation und Server |journal=C't – Magazin für Computertechnik |issue=12 |pages=266}}</ref> one of them being the inability of applications to directly access the hardware. As well, [[VxD]] files sometimes needed by applications cannot be used with Windows NT 3.1.<ref name="msq103012">{{Cite web|url=http://support.microsoft.com/kb/103012/en-us|title=Virtual Device Drivers (VXDs) Do Not Work in Windows NT|date=April 8, 2004|website=Microsoft Support|archive-url=https://web.archive.org/web/20130227071247/http://support.microsoft.com/kb/103012/en-us|archive-date=February 27, 2013|access-date=May 9, 2019}}</ref> While pure DOS applications are run in separate memory spaces, 16-bit Windows applications have to share one memory space. While this is done due to compatibility reasons with applications which depend on this ability, like [[Schedule+]] and [[Microsoft Mail]], it also means that 16-bit Windows applications only run in [[cooperative multitasking]]. A faulty 16-bit Windows application is in this way able to cause all other 16-bit Windows applications (but not Windows NT itself) to crash.<ref name="ct1993" /> [[Image:NT 3.1 layers.png|thumb|center|600px|Graphical view of the architecture of Windows NT 3.1. Shown are the following components of the operating system core: I/O Manager, Object Manager, Security Reference Monitor, Process Manager, Local Procedure Call Facility, Virtual Memory Manager.<ref name="Custer1993"/>{{rp|pages=26–33}}]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)