a full system x86 simulator for teaching computer organization
This paper describes a new graphical computer simulator developed for computer organization students. Unlike other teaching simulators, our simulator faithfully models a complete personal computer, including an i386 processor, physical memory, I/O ports, floppy and hard disks, interrupts, timers, and a serial port. It is capable of running PC software such as FreeDOS, Windows, and Minix, and can run as a Java applet. Graphical user interfaces allow students to view and modify the processor, memory, disks, and hardware devices at runtime. The simulator includes a processor development utility that allows students to design their own datapath and control units, and run their custom processor alongside the x86 processor. The paper describes labs where students use the simulator to write x86 assembly programs, device drivers, hardware controllers; and design both simple and pipelined processors.
x86 simulator