CS 452/652 Assignment 1 (Familiarization)


    In this assignment you will familiarize yourselves with the basic functionalities of the Eos and the train controller while learning techniques for handling asynchronous events by polling. It is recommended that you first write, compile, and execute several simple programs on the Eos, and only then start working on the assignment.

    Write a program that runs on the Eos system. Your program interacts with the user via the WYSE terminal to control these independent real-time activities:     Use the built-in timer to implement the clock activity. Do not use interrupts. Do not use the graphics monitor, except for debugging. Hand in the following:
  1. a description of how to operate your program; the full pathname of your executable file that can be downloaded for testing;
  2. a description of the structure of your program; your program will be judged primarily on the basis of this description; describe the algorithms and data structures used; explain why your clock never loses ticks;
  3. the location of all source code submitted for the assignment; this code must remain unmodified after submission until the assignments are returned;
  4. a listing of all files submitted;
  5. answers to the following questions:
    1. Given that the current hardware and external devices remain the same, what is the finest resolution clock display which you can maintain on the terminal display? Justify your answer with an appropriate analysis. (Hint: consider the hardware devices themselves as well as any timings that you make.)
    2. How long does the train hardware take to reply to a status query?
    (Note: To answer these questions, you definitely need to do some timings.)