| Running on the bare metal with GeekOS |
| Full text |
Pdf
(103 KB)
|
| Source
|
Technical Symposium on Computer Science Education
archive
Proceedings of the 35th SIGCSE technical symposium on Computer science education
table of contents
Norfolk, Virginia, USA
SESSION: Operating systems
table of contents
Pages: 315 - 319
Year of Publication: 2004
ISBN:1-58113-798-2
Also published in ...
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 13, Downloads (12 Months): 45, Citation Count: 10
|
|
|
ABSTRACT
Undergraduate operating systems courses are generally taught using one of two approaches: abstract or concrete. In the abstract approach, students learn the concepts underlying operating systems theory, and perhaps apply them using user-level threads in a host operating system. In the concrete approach, students apply concepts by working on a real operating system kernel. In the purest manifestation of the concrete approach, students implement operating system projects that run on real hardware.GeekOS is an instructional operating system kernel which runs on real hardware. It provides the minimum functionality needed to schedule threads and control essential devices on an x86 PC. On this foundation, we have developed projects in which students build processes, semaphores, a multilevel feedback scheduler, paged virtual memory, a filesystem, and inter-process communication. We use the Bochs emulator for ease of development and debugging. While this approach (tiny kernel run on an emulator) is not new, we believe GeekOS goes further towards the goal of combining realism and simplicity than previous systems have.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
GNU Binutils: http://www.gnu.org/software/binutils, 2003.
|
| |
3
|
Bochs: http://bochs.sourceforge.net, 2003.
|
| |
4
|
W. A. Christopher, S. J. Procter, and T. E. Anderson. The Nachos Instructional Operating System. In Proceedings of the 1993 Winter USENIX Conference, pages 481--488, 1993.
|
 |
5
|
|
 |
6
|
|
| |
7
|
G. Fankhauser, C. Conrad, E. Zitzler, and B. Plattner. Topsy --- A Teachable Operating System: http://www.tik.ee.ethz.ch/~topsy/book/topsy_1.1.pdf, 2000.
|
| |
8
|
GCC Home Page: http://gcc.gnu.org, 2003.
|
| |
9
|
GDB: The GNU Project Debugger: http://www.gnu.org/software/gdb, 2003.
|
| |
10
|
GeekOS: http://geekos.sourceforge.net, 2003.
|
 |
11
|
|
| |
12
|
Intel. Intel Architecture Software Developer's Manual. Intel, 1997.
|
| |
13
|
Trevor Jim , J. Greg Morrisett , Dan Grossman , Michael W. Hicks , James Cheney , Yanling Wang, Cyclone: A Safe Dialect of C, Proceedings of the General Track: 2002 USENIX Annual Technical Conference, p.275-288, June 10-15, 2002
|
| |
14
|
The Netwide Assembler: http://nasm.sourceforge.net, 2003.
|
 |
15
|
|
 |
16
|
|
| |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
|
| |
21
|
Virtutech: Simulators for hardware and software engineering: http://www.virtutech.com, 2003.
|
|