Edouard Bugnion, Stanford University

Ben Werther
Ph.D. Student
Stanford Computer Systems Laboratory
350 Gates Building 3A
Stanford University
Stanford, CA 94305-9030

Tel: (650) 725-7354
Fax: (650) 725-6949
Email: benw@cs.stanford.edu
URL: http://www-flash.Stanford.EDU/~benw

Edouard Bugnion
Ph.D. Student
Stanford Computer Systems Laboratory
348 Gates Building 3A
Stanford University
Stanford, CA 94305-9030

Tel: (650) 725-2926
Fax: (650) 725-6949
Email: bugnion@cs.stanford.edu
URL: http://www-flash.Stanford.EDU/~bugnion


As members of Stanford's Operating Systems group, our work has focussed on enhancing the performance of operating systems to allow them to scale to more processors and more radical architectures. Our main experimental tool is a complete machine simulation environment, called SimOS, which we have built over the past few years. SimOS simulates the computer hardware in enough detail that we are able to boot and run commercial operating systems. It allows us to non-intrusively monitor the subtle interactions between hardware and OS that would not be visible otherwise. The simulator allows the user to explicitly choose the most appropriate speed/detail behavior for different parts of the run. In its fastest mode, the simulator uses dynamic binary translation to provide slowdowns on the order of 10x.

The initial SimOS implementation supported the MIPS R4000 and R10000 processors, and currently boots both 32-bit and 64-bit versions of SGI's IRIX. More recently, our simulator of the DEC Alpha architecture has been reaching maturity, and has successfully run the TPC-B database benchmark with Oracle on the Digital Unix operating system. Our next step is to use the Alpha platform to boot Windows NT 4.0. We are well into this process, and we anticipate that we will have results soon.

With NT running on our simulator, this will allow studies of its behavior at levels ranging from microbenchmarks (block copy, etc) to large-scale database and web-server workloads. We will be able to see how NT behaves as we try to scale it to more processors, but more importantly, we will be able to see exactly where the bottlenecks lie. This will open the door to a host of other exciting areas of exploration.