Check out the new USENIX Web site.

Arthur Kreitman, Congruent

Abstract:
NT multi-user support with a minimum of source code changes

Multi-user support for Windows NT means supporting multiple users simultaneously logged on, each having an independent interactive graphics desktop. Adding this to Windows NT involves a number of challenges. Some of these challenges are operating system related. Much of the window system and graphics support uses caches that were never designed to be shared among several users. When user applications make calls into the kernel, there is no way a "user logon session" can be identified. Other problems are application related. Applications also have no concept of "user logon session". They will frequently update data files without any multiaccess locking and create named objects in NT common name space.

The objective of this research was to determine if Windows NT could be extended include multiuser support by adding a small set of hook out modifications to the kernel. No kernel data structures would be changed. The multiuser hooks would only be enabled in the presence of a multiuser support driver.