CS-384 Lab 4: Embedded System OS, Phase 2

Dr. Mark J. Sebern

Version 1.1 update.gif (168 bytes) (1/24/1999)


CS-384 main page Schedule

Overview

The purpose of this lab is to further increase understanding of operating system design by adding high-level language support to the 68HC11 real-time operating system implemented in the previous lab.

Lab activity

Building on the existing 68HC11 operating system kernel, add the capability to support processes written in C and create processes to demonstrate this facility.

In this lab you will use the GNU HC11 C compiler, which is available on the solar domain and also for download. If you are not familiar with the operation of this compiler, please ask your instructor. Note that we will use the new AS6811 assembler and linker, as in the previous lab.

Your finished system should implement at least the minimum functions from the previous lab, using C code to write the user processes. (You may implement delays using the "sleep" call only; the "busy waiting" option is not required.) Note that there may be additional process state that must be preserved on a context switch; consult the C compiler output and configuration files for details. Two lab periods are allocated for this project.

Acknowledgements

The WinBug11 debugger was developed as a senior design project by Jason Gaedtke, Matt Vandenbush, and Phil Van Helden.

The Wookie 68HC11 simulator was developed as a senior design project by Kalle Anderson, Jason Buttron, Paul Clarke, and Matt Enwald.

The GNU C compiler was ported to the 68HC11 by Oliver Kraus (oliver@cip.e-technik.uni-erlangen.de) and others.

AS6811 and ASLINK were developed by Alan R. Baldwin, Kent State University, Kent, Ohio. They have been modified slightly at MSOE to support Microsoft Visual C++ version 5.0.

Report

Prepare a text file containing a brief report (one report per group) describing your design, including any modifications needed to support C processes. Also detail any problems you encountered and any questions that remain about the lab material. Attach the report file and your program source file(s) (in a ZIP or tar archive) to a mail message, and send it to your instructor. Do not discard your original files, in case anything gets lost in the email system. Each section of the source code should list the author(s) and reviewer(s) of the code segment; each portion must be reviewed by a team member other than the author(s).

The report is due two hours before the following lab.


This page was last updated on January 24, 1999; send comments to Mark Sebern.