This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
haas:spring2014:sysprog:projects [2013/12/25 10:59] – wedge | haas:spring2014:sysprog:projects [2014/04/18 14:57] (current) – [Projects] wedge | ||
---|---|---|---|
Line 6: | Line 6: | ||
======Projects====== | ======Projects====== | ||
- | Matrix Multiplier: | ||
- | * [[SYSPROG/ | + | * [[/ |
- | * [[SYSPROG/ | + | * [[/ |
- | * [[SYSPROG/ | + | * [[/ |
+ | |||
+ | ======Week 6====== | ||
+ | * Terminal device interaction | ||
+ | * stty | ||
+ | * playing with echo and canonical mode | ||
+ | * termios struct | ||
+ | |||
+ | ======Week 5====== | ||
+ | |||
+ | * Due to the shorter week, we're just going to continue working on our matrix multiplier: | ||
+ | * basic/core functionality | ||
+ | * start implementing command-line arguments | ||
+ | |||
+ | ======Week 4====== | ||
+ | |||
+ | * Chapter 4 | ||
+ | * Possibly start on Matrix Multiplier | ||
+ | |||
+ | ======Week 3====== | ||
+ | |||
+ | * chmod / chown implementations | ||
+ | * observe how simple/ | ||
+ | * observe how relatively small the core operations are (most of the code is error checking) | ||
+ | * ls implementation | ||
+ | * opendir(), readdir() | ||
+ | * dirent.h manual page | ||
+ | * stat() | ||
+ | * some talk on inodes, superblocks, | ||
+ | * Be sure to have read up through Chapter 3, and read Chapter 4 for next week | ||
+ | * Try and have the chapter sample code for pwd already typed in so we can go over it. | ||
+ | |||
+ | ======Week 2====== | ||
+ | |||
+ | * files | ||
+ | * command-line arguments | ||
+ | * directly accessing argc, argv | ||
+ | * parsing with getopt | ||
+ | * started and worked on groupOf tool | ||
======Week 1====== | ======Week 1====== | ||
+ | * Welcome! Be sure to: | ||
+ | * Read over the syllabus | ||
+ | * Subscribe to the class mailing list | ||
+ | * Using the [[/ | ||
+ | * Get familiar with logging into the pod systems, and once there: | ||
+ | * opening up a terminal | ||
+ | * logging that terminal onto Lab46 for class work and attendance | ||
+ | * Familiarize yourself with your Opus, and once there: | ||
+ | * customize it (title/ | ||
+ | * add an introduction | ||
+ | * create your first week content | ||
+ | * Reading: | ||
+ | * Chapters 1 and 2 | ||
+ | * be sure to implement some of the sample programs, and discuss revelations in the journal on your Opus. | ||
+ | * On Tuesday we started writing a program that dealt with files. I put a copy in the SYSPROG public directory on lab46. | ||
+ | * Our first two programs will be: | ||
+ | * groupof program: a review / intro program, hopefully fun, that will work like the **wtf** tool: | ||
+ | * written in C | ||
+ | * parses command-line arguments | ||
+ | * displays usage information by default | ||
+ | * when given a word, looks for it in a file, displaying what a "group of" those is called | ||
+ | * for example, a "group of" crows is a murder. | ||
+ | * a "group of" fish is a school. | ||
+ | * display an error message on lack of a match | ||
+ | * matrix multiplier: likely the theme for the semester, we'll be adding new functionality to it |