2019-01-10 Final Project

posted Jan 10, 2019, 5:46 AM by Konstantinovich Samuel
Documentation Specifications
In addition to your code files, you will have to include the following documents:
  • The design document (You should have handed it in already)
  • makefile 
    • This should build the project when I type make, you can provide instructions on how to run the project if "make run" is not sufficient
  • README.md 
    • This should be the main README.md for your repository
    • It should have the following information in the following order:
      • Project Name
      • Team Members
      • Broad description of project
      • List of any required libraries
        • Include apt-get instructions on how to install the libraries
      • Instructions on how to use your project ( e.g. make server then make client args="IP_OF_SERVER" )
    • DEVLOG - Both Partners: Write a sentence or two every day that you work on the project about what you personally accomplished.

The final project is to be a significant piece of work that illustrates many of the ideas and techniques studied in the class. Highlights include:
  • Allocating memory.
  • Working with files.
  • Finding information about files (stat and such).
  • Processes (fork, exec etc.).
  • Signals
  • Pipes (named and unnamed).
  • Shared memory, 
  • Semaphores.
  • Networking.

  • Make sure to mention any libraries in the README where you describe compiling instructions.
  • Check with me to make sure we can install them.
  • Make sure your program will run in the cs lab computers.
  • Make sure they don't trivialize a systems programming aspect of the project.
  • If you are doing networking, make sure to specify the IP address and port via the command line. You should test with That's the "loopback" address, it connects to itself. You can use that to test even if your machine isn't connected to the internet.
Final Commit (Jan 15th 8am)
Project Presentations (Jan 15th - Jan 18th)
Remaining Time: voluntary shell presentations