General Information
My Information
Name: | Jonathan Misurda |
Office: | 6213 Sennott Square |
Phone: | (412) 624-8835 |
Email: | jmisurda@cs.pitt.edu |
Office Hours: | MW 1:00-3:00 TH 11:00-12:00 |
You can find a copy of the syllabus here.
Announcements
(12/07/07) — Quiz 5 Answers
(12/06/07) — The textbook is complete!
The Final Exam topics slides are up. Look for the newest edition of the book later tonight. I'll update the website when it is done
(12/05/07) — The newest edition of the textbook is now up, including a new first chapter on variable scope and lifetime, as well as a chapter 9 on pthreads, synchronization, and deadlocks.
Chapter 10: Networking will be up Thursday evening, so you may wish to wait to print it out (or just print a couple chapters until then).
(12/04/07) — The 10 am recitation will meet in 5502 instead of 5505 this week.
There was a silly bug in pi.h so please copy a new version from the shared directory. My apologies.
(11/29/07) — Project 5 is assigned, due Sunday, December 9 at midnight. The assignment sheet and QEMU are below.
(11/27/07) — Remember to check the return values of
send
andrecv
not just for errors but also for lengths. If you do arecv
and the amount of data you ask for is less than how much is waiting for you, the next time you call it you'll get the rest, not a new request. Additionally,send
may not be able to send all of the data you want it to in one call, you may need to call it more than once per data item.(11/20/07) — Some hints for project 4: do a
man
onasctime
for date displaying.ftell
andfseek
can be quickly used to determine a file's length.(11/14/07) — Project 4 is assigned, due Wednesday, November 28 at midnight. The assignment sheet and port assignments are below.
(11/09/07) — 9:18 AM - thot is back up, the crash seems to be related to AFS. Let me know if you experience any problems. Please take this as an opportunity to make sure you have backed up your files out of /u/ into your home directory.
12:06 AM - thot.cs.pitt.edu seems to have crashed, and will be rebooted in the morning. If you think you caused the machine to crash, send me an email and let me know what happened, I'm just curious. I'll post here when it is back online.
(11/06/07) — The test driver for your project is up. You can copy it to your current directory by:
cp /u/SysLab/shared/mallocdrv.c .
(11/02/07) — The answers to quiz three are available here
The latest revision of the book can be found here. It incorporates all the changes suggested thus far, and some that I did myself. It adds no new content. The original is still available.
(10/30/07) — It's here! The long awaited textpamphlet/textbook. Grab it from HERE! Find the ERRATA with the bugs already found.
The smaller PDF is now up.Later tonight I will optimize the PDF to be a smaller download, but I will not change the content
As I mentioned in class, there is a reward of 1 bonus point on the midterm if you are the first to find an error (typographical, factual, historical, grammatical, etc.) Up to 5 points total per person. Email me with your corrections.
The midterm has been pushed back to give you a chance to read! The midterm is now Tuesday, November 6, 2007 during class time
(10/24/07) — Project 3 is assigned, due Sunday, November 11 at midnight. The assignment sheet is below.
(10/18/07) — A sample write up for the second project can be found here (PDF).
(10/16/07) — Project 2 deadling has been extended to Wednesday, October 24, 2007 by 11:59pm.
(10/10/07) — You should have all 5 executables under your /u/SysLab/USERNAME directory now. Let me know if there are any issues.
(10/09/07) — Project 2 is assigned, due Sunday, October 21 at midnight. The assignment sheet is below. I've created the directories on thot, let me know if you are missing yours. They will have programs by tomorrow afternoon at the latest.
(09/24/07) — The answers to the sample midterm are now up. The answers are in red font. Try them on your own below first.
(09/24/07) — The sample midterm is now up. Bring any questions you have about it or the material to class tomorrow.
(09/16/07) — I am providing two OGG files (a form of music file) called with.ogg (that has a tag) and none.ogg (that has no tag) to test your project on. You can copy them to your directory from ~jrmst106/public/cs449/
(09/11/07) — Project 1 is assigned, due Sunday, September 23 at midnight. The assignment sheet is below.
(09/05/07) — My Office Hours for the term will be MW 1:00-3:00 and TH 11:00-12:00. Mohammed's will be MW 11:30-12:45, T 11:30-1:00, F 11:00-12:00 and 2:15-3:15
- (08/27/07) — Welcome to the Fall Term (2081)
Text, Slides, and Extra Materials
Topic | Slides | Links |
Binary Formats and Linking | Slides (PDF) | 20 part blog entry on linking As a PDF |
x86 Assembly | Slides (PDF) | AT&T Syntax |
Function Calls and Calling Convention | Slides Part 1 (PDF) Slides Part 2 (PDF) |
CS 447 Appendix A |
Processes and Memory Management | Slides (PDF) | |
System Calls | Slides (PDF) | |
Signals | Slides (PDF) | Signals |
Threads | Slides (PDF) |
Midterm 2
Topic | Slides | Links |
pthreads | Slides (PDF) | More on pthreads ALP chapter on pthreads (PDF) |
Synchronization | Slides (PDF) | Handout (PDF) |
Makefiles and Multi-file Development | Slides (PDF) | Chapter 18 in the C Textbook |
Networks and Berkley Sockets | Part 1 (PDF) Part 2 (PDF) |
Sockets |
Errors and Robust Programming | Slides (PDF) | Ten Commandments for C Programmers |
Conditional Compilation | Slides (PDF) | Chapter 10 in the C Textbook |
Device Drivers under Linux | Slides (PDF) | LLD Chapter 1 (PDF) |
Drivers and Buffering | Slides (PDF) | LLD Chapter 2 (PDF) |
Projects
-
Project 5:
/dev/pi
- Project 4: Multi-Threaded Web Server
- Project 3: A Custom malloc()
- Project 2: What's the password?
- Project 1: ID3 Tag Editor
Links
Reference Miscellaneous-
Download putty: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
-
Windows text editor with syntax highlighting: http://www.editplus.com
-
Unix Command Reference (from CSSD): Here