Teaching staff 15 213 The Class That Gives CMU Its Zip Instructors z Prof Randal E Bryant Introduction to Computer Systems z Prof David R O Hallaron TA s Come talk to us anytime Or phone or send email z Ashwin Bharambe David R O Hallaron August 30 2006 z Michael Brotzman z Tudor Dumitras z Donnie Kim z Amit Manjhi Topics Staff text and policies Lecture topics and assignments z Cindy Chemsak NSH 4303 Lab rationale and infrastructure z Barb Grandillo WeH 8018 class01b ppt 15 213 F 06 Course Admins 15 213 F 06 2 Textbooks Course Components Randal E Bryant and David R O Hallaron Hallaron Lectures Computer Systems A Programmer s Perspective Prentice Hall 2003 http csapp cs cmu edu Recitations Brian Kernighan and Dennis Ritchie 3 Higher level concepts Applied concepts important tools and skills for labs clarification of lectures exam coverage Labs The C Programming Language Second Edition Prentice Hall 1988 15 213 F 06 4 The heart of the course 1 or 2 weeks Provide in depth understanding of an aspect of systems Programming and measurement 15 213 F 06 Getting Help Policies Assignments Class Web Page Work groups http www cs cmu edu 213 Copies of lectures assignments exams solutions Clarifications to assignments Handins Message Board http autolab cs cmu edu Clarifications to assignments general discussion The only board your instructors will be monitoring No blackboard or Andrew Personal help Assignments due at 11 59pm on Wed or Fri evening Electronic handins using Autolab no exceptions OK but must make PRIOR arrangements with Prof O Hallaron Appealing grades Professors TAs office hour email or appt 15 213 F 06 5 Makeup exams and assignments z R Bryant office hour or appt z D O Hallaron office hour appt or when door is open You must work alone on all labs Within 7 days of due date or exam date Labs Talk to the lead person on the assignment Exams Talk to Prof O Hallaron 15 213 F 06 6 Cheating Policies Grading What is cheating Exams 40 Sharing code either by copying retyping looking at or supplying a copy of a file Coaching helping your friend to write a lab line by line What is NOT cheating 7 Final 20 All exams are open book open notes 7 labs 6 12 each Grading Characteristics Lab scores tend to be high z Serious handicap if you don t hand a lab in Removal from course with failing grade z We offer generous redemption programs Detection of cheating Two in class exams 10 each Labs 60 Helping others use systems or tools Helping others with high level design issues Helping others debug their code Penalty for cheating We do check and our tools for doing this are much better than you think 15 213 F 06 8 Tests typically have a wider range of scores 15 213 F 06 Facilities Logging into Fish Machines Labs will use the Intel Computer Systems Cluster aka the fish machines Read description on the course webweb page carefully Run checkin script once only to setup Kerberos credentials 15 Pentium Xeon servers donated by Intel for CS 213 Dual 3 2 Ghz 64 bit EM64T Nocona Xeon processors 2 GB 400 MHz DDR2 SDRAM memory Rack mounted in the 3rd floor Wean Hall machine room Your accounts are ready Login using your Andrew ID and password Getting help with the cluster machines See course Web page for login directions Please direct questions to your TA s first ssh x l bovik ANDREW CMU EDU tuna ics cs cmu edu Keep your code in your 213hw 213hw directory on your Andrew account 15 213 F 06 9 afs cs academic class 15213 f06 bin checkin 15 213 F 06 10 Programs and Data 6 Performance 2 Topics Topics Bits operations arithmetic assembly language programs representation of C control and data structures High level processor models code optimization control and data measuring time on a computer Includes aspects of architecture and compilers Includes aspects of architecture compilers and OS Assignments 11 L1 datalab Manipulating bits L2 bomblab Defusing a binary bomb L3 buflab Hacking a buffer bomb Assignments 15 213 F 06 12 L4 perflab Optimizing code performance 15 213 F 06 Linking and Exceptional Control Flow 3 The Memory Hierarchy 2 Topics Topics Memory technology memory hierarchy caches disks locality Includes aspects of architecture and OS Hardware exceptions processes process control Unix signals nonlocal jumps Includes aspects of compilers OS and architecture L4 perflab Optimizing code performance 15 213 F 06 13 Object files static and dynamic linking libraries loading Assignments Assignments Virtual Memory 4 L5 tshlab Writing your own shell with job control 15 213 F 06 14 I O Networking and Concurrency 6 Topics Topics Virtual memory address translation dynamic storage allocation High level and low level I O network programming Internet services Web servers Includes aspects of architecture and OS concurrency concurrent server design threads I O multiplexing with select Includes aspects of networking OS and architecture Assignments L6 malloclab Writing your own malloc package Assignments 15 15 213 F 06 16 L7 proxylab Writing your own Web proxy 15 213 F 06 Lab Rationale Autolab Web Service Each lab should have a wellwell defined goal such as solving a puzzle or winning a contest Labs are provided by the Autolab system Doing a lab should result in new skills and concepts We try to use competition in a fun and healthy way With Autolab you can use your Web browser to Set a reasonable threshhold for full credit Post intermediate results anonymized on Web page for glory 15 213 F 06 17 Good Luck 19 Autograding handin system developed in 2003 by Dave O Hallaron Apache Web server Perl CGI programs Beta tested Fall 2003 very stable by now 15 213 F 06 18 Review lab notes clarifications Download the lab materials Stream autoresults to a class status Web page as you work Handin your code for autograding by the Autolab server View the complete history of your code handins autoresult submissions autograding reports and instructor evaluations View the class status page 15 213 F 06
View Full Document