论文标题
博览会:一个简单的教学操作系统,用于本科教学
eXpOS: A Simple Pedagogical Operating System for Undergraduate Instruction
论文作者
论文摘要
提出了适合本科计算/电气科学专业学生的操作系统项目。该项目可以在一个学期课程中用作课程项目,也可以用作有动力的学生的自学项目。该课程的组织使得具有编程和计算机组织基本背景的学生可以遵循在线可用的实施路线图,并在其个人机器/笔记本电脑上从头开始构建操作系统,并在最低限度的指导性监督下。为学生提供了模拟的抽象机,应用程序接口规范,OS的规范和设计以及逐步的项目实施路线图。操作系统的功能包括多任务,虚拟内存,信号量,共享内存,基本文件系统,中断驱动的磁盘和控制台I/O以及有限的多用户支持。该项目的最后阶段涉及将操作系统移植到两核机器上。一个独立的一个学期编译器设计项目,该项目在其中还简要讨论了OS可以加载和执行的针对目标代码的小型对象编程语言的编译器。
An operating system project suitable for undergraduate computing/electrical sciences students is presented. The project can be used as a course project in a one semester course, or as a self-study project for motivated students. The course is organized such that a student with a basic background in programming and computer organization can follow the implementation road map available online, and build the OS from scratch on her personal machine/laptop, with minimal instructional supervision. The student is provided with a simulated abstract machine, an application interface specification, specification and design of the OS, and a step by step project implementation road map. The functionalities of the OS include multitasking, virtual memory, semaphores, shared memory, an elementary file system, interrupt driven disk and console I/O, and a limited multi-user support. The final stage of the project involves porting the OS to a two-core machine. An independent one semester compiler design project, where the student builds a compiler for a tiny object oriented programming language that generates target code that can be loaded and executed by the OS is also briefly discussed.