EECS 213: Introduction to Computer Systems, Spring, 2015
Instructor: | Peter A. Dinda (Office Hours: Thursdays, 9-11am or by appointment, Tech L463) |
Teaching Assistants: |
Kaicheng Zhang (Office Hours: Wednesdays 2-5pm or by appointment, Tech L476)
James Whang (Office Hours: Tuesdays 5-8pm or by appointment, Wilkinson Lab)
Adel Lahlou (Office Hours: Mondays, 3:30-6:30pm or by appointment, Wilkinson Lab) |
Lecture Time: | Tuesdays and Thursdays, 2-3:20pm |
Lecture Location: | Tech M345 |
Recitation Time: | Fridays, 3-5pm |
Recitation Location: | Frances Searle 2407 (Except 6/12, which is in Tech L440) |
Enrollment Limit: | 70 |
The class enrollment is limited to 70 students. There are currently 64 enrolled. The high water mark was 73 with 28 on the waiting list.
Due to limited resources, this course will not get any larger. If/when students currently in the course drop, we will let in students from the waiting list with priority for CS majors and minors. Additionally, homework has been cut. We are still determining whether the 4th lab will be feasible.
EECS 213 is a required core course in the Computer Science
curriculum in both McCormick and Weinberg. It is also a required
course for CS minors in both schools. 213 can also be taken for
credit within the Computer
Engineering curriculum.
Communication
We may use Canvas to report grades, but for nothing else. For
critical announcements, we will send email to the addresses that
CAESAR maintains.
For discussions this quarter, we will use Piazza: EECS 213
Piazza Site. Directing your questions to Piazza will likely
produce the fastest response, and everyone else in the class will also
benefit.
Accounts, Remote Access, Getting Started with Unix
Handouts
Syllabus (pdf)
Physics To Logic (pdf)
Unix Systems Programming In A Nutshell (pdf)
Sockets In A Nutshell (pdf)
Concurency (pdf)
Programming Assignments
Data Lab (pdf) (Out: 3/31, In: 4/17)
Bomb Lab (pdf) (Out: 4/16, In:
5/5)
Buffer Lab (pdf) (Out: 5/5, In: 5/19)
SETI Lab (or Parallelism Lab) (pdf) (out: 5/19, In: 6/4)
Homework Assignments
Due to the lack of resources, homework assignments have been eliminated for this instance of the course.
Exams
Midterm: Wednesday, May 6, 6pm
Covers lectures 1-9 and related reading/materials in syllabus
Final: Friday, June 12, 9am, Tech M345
Covers lectures 10-20, and related reading/materials in syllabus
Lecture-related pointers
My Lecture Slides
I am not using slides all that much. Nonetheless, the lectures for which I have used slides will appear below. You may also find the CMU lecture slides (see below) to be useful.
General lecture slides for the CMU version of the class
Java applets showing how gates are built from CMOS transistors
Java simulators of logic and more complex circuits
Resources
The Book's Student Site
Contains many useful FAQs, Primers, etc.
The Book's Code
Make Introduction (pdf)
Gdb commands (pdf)
Gdb manual (html)
An amazing online disassembler
The ELF Format (pdf)
Comparison with GAS format and Intel's assembler format (text)
The Intel Architecture Manuals and the AMD Architecture Manuals
Gentle introduction to 64 bit x86 assembly (alternate link)
Compare and contrast with the beautiful and much mourned DEC Alpha, and with the very much alive and kicking ARM architecture that powers your phone and tablet
Overview of the Linux Kernel (pdf) (This is very old, but still a good intro)
Cygwin Unix Emulation Environment for Windows
Wilson, P., et al, Dynamic Storage Allocation: A Survey and Critical Review, International Workshop on Memory Managment, September, 1995. (pdf)
Peter Dinda
Last modified: Fri Jun 5 11:48:02 CDT 2015