General Information
My Information
Name: | Jonathan Misurda |
Office: | 6203 Sennott Square |
Phone: | (412) 624-8408 |
Email: | jmisurda@cs.pitt.edu |
Office Hours: | Mon, Wed: 2:15–2:45pm Tue, Thu: 1:00–2:15pm Mon–Thu: mornings by appointment |
Syllabus
You can find a copy of the syllabus here.
Announcements
(12/06/17) — The project 5 assignment sheet has been updated to point to a mirror of the article since the second page link wasn't working.
(11/28/17) — Project 5 is assigned, due Sunday, December 10, 2017, by midnight. The assignment sheet and associated files can be found below.
(11/13/17) — Project 4 is assigned, due Monday, November 27, 2017, by midnight. The assignment sheet can be found below.
(11/06/17) — The test driver for your project is up. You can copy it to your current directory by:
cp /u/SysLab/shared/mallocdrv.c .
Make sure to include the dot at the end.
(10/30/17) — All of the slides are up for the second midterm. A few sample problems for the second midterm exam can be found here. After you try it, you can find the answers here.If you have questions, ask me or the TA.
(10/26/17) — Project 3 is assigned, due Thursday, November 9, 2017, by midnight. The assignment sheet can be found below.
(10/10/17) — Project 2 is assigned, due Sunday, October 22, 2017, by midnight. The assignment sheet can be found below.
(09/25/17) — A sample midterm exam can be found here. After you try it, you can find the answers here. This is from a slightly different course that I taught so some topics may have been emphasized differently.
(09/11/17) — Project 1 is assigned, due Sunday, October 1, 2017, by midnight. The assignment sheet can be found below.
(08/29/17) — We will start up recitations next week. In the meantime, the first lab is online. There is some additional setup to do first to make the
man
command work. Please do it as well.If you are not registered for the class yet, you will be unable to log into the machine. If you have problems using the credentials you use to log into my.pitt.edu, send me an email.
(08/28/17) — Welcome to CS 449 Fall Term (2181)
Text, Slides, and Extra Materials
Topic | Slides (PDF) | Links |
Binary Formats and Linking | Slides | 20 part blog entry on linking (PDF) |
x86 Assembly | Slides | AT&T Syntax |
Function Calls and Calling Convention | Slides 1 Slides 2 |
CS 447 Appendix A |
Processes and Memory Management | Slides | Linux Address Space Layout |
Conditional Compilation Makefiles and Multi-file Development |
Slides | Chapter 18 in the C Textbook Chapter 10 in the C Textbook |
Midterm 2
Topic | Slides (PDF) | Links |
System Calls & Signals | Slides (PDF) | Signals |
Device Drivers under Linux | Slides (PDF) | LDD Chapter 1 (PDF) LDD Chapter 2 (PDF) |
Threads | Slides (PDF) | |
pthreads | Slides (PDF) | More on pthreads ALP chapter on pthreads (PDF) |
Synchronization | Slides (PDF) | Handout (PDF) |
Networks and Berkeley Sockets | Slides (PDF) | Sockets |
Buffers, Errors and Robust Programming | Errors Slides (PDF) | Ten Commandments for C Programmers |
Final Exam (review slides PDF)
Projects
-
Project 5:
/dev/e
- Project 4: A Shell
- Project 3: A custom malloc()
- Project 2: What's the password?
- Project 1: Mastermind & EXIF Viewer
Links
Reference- C Language
- x86 Instruction Set
-
Download PuTTY (SSH client for Windows)
-
Unix Command Reference (from CSSD): Here