The Impact of Operating System Structure on Personal Computer Performance Toby Jackson
The Impact of Operating System Structure
on Personal Computer Performance
This paper presents a comparative study of the performance of three operating systems that run on the personal computer architecture derived from the IBM-PC. The operating systems, Windows for Workgroups (tm), Windows NT (tm), and NetBSD (a freely available UNIX (tm) variant) cover a broad range of system functionality and user requirements, from a single address space model to full protection with preemptive multi-tasking. Our measurements were enabled by hardware counters in Intel’s Pentium (tm) processor that permit measurement of a broad range of processor events including instruction counts and on-chip cache miss rates. We used both microbenchmarks, which expose specific differences between the systems, and application workloads, which provide an indication of expected end-to-end performance. Our microbenchmark results show that accessing system functionality is more expensive in Windows than in the other two systems due to frequent changes in machine mode and the use of system call hooks. When running native applications, Windows NT is more efficient than Windows, but it does incur overhead from its microkernel structure. Overall, system functionality can be accessed most efficiently in NetBSD; we attribute this to its monolithic structure, and to the absence of the complications created by backwards compatibility in the other sys- tems. Measurements of application performance show that the impact of these differences is significant in terms of overall execution time. 1. Introduction
While most current operating systems research takes place using a variant of UNIX, the vast majority of main- stream computing occurs on personal computer (PC) systems (those derived from the IBM-PC architecture) running Microsoft Windows. The differences between the OS platforms used in research and mainstream OS products makes some systems research irrelevant with respect to the current needs of the software industry. At the same time, researchers ignore important problems in non-UNIX systems. The most common operating system used on PC platforms is Microsoft Windows. Windows lacks many fea- tures the OS research community consider mandatory, most notably preemptive multitasking and protected address spaces. New operating systems for the PC market like Windows NT and OS/2(tm) incorporate the timesharing sup- port found in modern UNIX systems while also supporting the Windows operating system interface. Though the operating systems community is familiar with the benefits of features such as separate protected address spaces, we don’t know that much about systems without them. Our goal is to address this shortcoming by illuminating the impor- tant differences between UNIX and commodity systems and measuring their impact on application performance. As a first step towards understanding this issue, we present a quantitative comparison of three operating systems all of which run on the same PC hardware: Microsoft Windows for Workgroups(tm); NetBSD, a freely distributed version of UNIX; and Microsoft Windows NT (tm), a system which combines support for Windows applications with operating system features found in UNIX systems. There are important similarities in how the systems are used. All are used in personal (i.e. single-user) computing. All are used to load multiple applications into memory and switch between them. All are used with an interactive, window-based interface. These similarities give us a basis for com- parison. This is an extended version of a paper to appear in the 15th ACM Symposium on Operating System Principles. This paper is also available from the Center for Research in Computing Technology, Division of Applied Sciences, Harvard University as technical report TR-09-95. 1
Although the three systems support personal computing, they use...
Bibliography: Adobe Systems Incorporated, Postscript Reference Manual. Addison-Wesley, Reading, Mas- sachusetts, 1985.
[Berners-Lee et al. 92] T. Berners-Lee, R. Cailliau, J-F. Groff, and B. Pollermann. World-wide web: The information universe. Electronic Networking Research, Applications and Policy, Volume 2, Number 1, pages 52-58, 1992.
Geoff Chappell, DOS Internals, Addison-Wesley, Reading, Massachusetts, 1994.
Helen Custer, Inside Windows NT, Microsoft Press, Redmond, Washington, 1993. Ray Duncan. Advanced MSDOS Programming. Microsoft Press, Redmond, Washington, 1986.
Ben Ezzell, “The Power Under the Hood; Preview: Windows NT,” PC Magazine, Volume 12, Number 11, June 15, 1993, pp 219-263.
Gary Gunnerson, “Network Operating Systems: Playing The Odds,” PC Magazine, Volume 12, Number 18, October 26, 1993, pp 285-336.
Intel Corporation, Pentium Family User’s Manual, Volume 3: Architecture and Programming Manual, Intel Corporation, 1994.
Samuel J. Leffler, Marshall Kirk McKusick, Michael J. Karels, and John S. Quarterman, The Design and Implementation of the 4.3 BSD UNIX Operating System, Addison-Wesley, Read- ing, Massachusetts, 1989.
David S. Linthicum, “Life After DOS,” PC Magazine, May 31, 1994, pages 203-237.
[Linthicum & Vaughan-Nichols 93] David S. Linthicum and Steven J. Vaughan-Nichols, “The Beast Turns Beauty; Unix on Intel,” PC Magazine, Volume 12, Number 11, June 15, 1993, pp 219-263.
Microsoft Corporation, Microsoft Windows Guide to Programming, Microsoft Press, Red- mond, Washington, 1990.
Microsoft Corporation, Microsoft Windows NT Resource Kit. Microsoft Press, Redmond, Washington, 1993.
John K. Ousterhout. Tcl and the Tk Toolkit. Addison-Wesley, Reading, Massachusetts, 1994. Matt Pietrek, Windows Internals, Addison-Wesley, Reading Massachusetts, 1993.
Murray Sargent III and Richard L. Shoemaker, The IBM PC, Addison-Wesley, Reading Massa- chusetts, 1986.
Andrew Schulman, David Maxey, and Matt Pietrek, Undocumented Windows, Addison-Wes- ley, Reading Massachusetts, 1992.
Please join StudyMode to read the full document