Teaching staff 15 213 The Class That Gives CMU Its Zip Instructors Introduction to Computer Systems TA s Dave Eckhardt January 15 2008 Topics Staff text and policies Lecture topics and assignments Lab rationale and infrastructure 1 class01b ppt 15 213 S 08 Cindy Chemsak NSH 4303 Textbooks Course Components Randal E Bryant and David R O Hallaron Lectures Computer Systems A Programmer s Perspective Prentice Hall 2003 http csapp cs cmu edu Brian Kernighan and Dennis Ritchie 15 213 S 08 Higher level concepts Recitations Applied concepts important tools and skills for labs clarification of lectures exam coverage Labs The C Programming Language Second Edition Prentice Hall 1988 3 Come talk to us anytime Or phone or send email Nate Bauernfiend Tessa Eng Pratyusa Manadhata Austin McKinley Allison Naaktgeboren Brett Simmers Lawrence Tan Owen Yamauchi Course Admin 2 Prof Randal E Bryant Prof Dave Eckhardt 15 213 S 08 4 The heart of the course 1 or 2 weeks Provide in depth understanding of an aspect of systems Programming and measurement 15 213 S 08 Getting Help Getting Help Staff mailing list Class Web Page http www cs cmu edu 213 Copies of lectures assignments exams solutions Clarifications to assignments 15 213 staff cs cmu etc The autolab server is down Who should I talk to about This code which I don t want to post to the bboard causes my computer to melt into slag Teaching assistants Message Board http autolab cs cmu edu Clarifications to assignments general discussion The only board your instructors will be monitoring No blackboard or Andrew 15 213 S 08 Please send mail to 15 213 staff not a randomly selected TA Professors 5 I don t get associativity Office hours e mail by appointment R Bryant office hour or appt D Eckhardt office hour appt or when door is open Should I drop the class A TA said but 6 15 213 S 08 Policies Assignments Cheating Work groups What is cheating You must work alone on all labs Handins Assignments due at 11 59pm on Wed or Fri evening Electronic handins using Autolab no exceptions What is NOT cheating Conflict exams other irreducible conflicts 7 OK but must make PRIOR arrangements with Prof Eckhardt Appealing grades 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 Explaining how to use systems or tools Helping others with high level design issues Listening to problem descriptions and suggesting tools or approaches Penalty for cheating Within 7 days of due date or exam date Labs Talk to the lead person on the assignment Exams Talk to Prof Eckhardt Removal from course with failing grade Detection of cheating 15 213 S 08 8 We do check and our tools for doing this are much better than you think 15 213 S 08 Policies Grading Facilities Exams 40 Labs will use the Intel Computer Systems Cluster aka the fish machines Two in class exams 10 each Final 20 All exams are open book open notes 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 nearing readiness Labs 60 7 labs 6 12 each Grading Characteristics Getting help with the cluster machines Lab scores tend to be high Serious handicap if you don t hand a lab in We offer generous redemption programs See course Web page for login directions Please direct questions to your TA s first Tests typically have a wider range of scores 9 15 213 S 08 Logging into Fish Machines 10 15 213 S 08 Programs and Data 6 Logging in will work soon but does not work now Read description on the course web page carefully Topics Run checkin script once only to setup Kerberos credentials afs cs academic class 15213 s08 bin checkin Login using your Andrew ID and password Assignments ssh x l bovik ANDREW CMU EDU tuna ics cs cmu edu L1 datalab Manipulating bits L2 bomblab Defusing a binary bomb L3 buflab Hacking a buffer bomb Keep your code in your 213hw directory on your Andrew account 15 213 S 08 11 Bits operations arithmetic assembly language programs representation of C control and data structures Includes aspects of architecture and compilers 12 15 213 S 08 Performance 2 The Memory Hierarchy 2 Topics Topics High level processor models code optimization control and data measuring time on a computer Includes aspects of architecture compilers and OS Assignments Assignments L4 perflab Optimizing code performance 13 Memory technology memory hierarchy caches disks locality Includes aspects of architecture and OS 15 213 S 08 Linking and Exceptional Control Flow 3 L4 perflab Optimizing code performance 14 15 213 S 08 Virtual Memory 4 Topics Object files static and dynamic linking libraries loading Hardware exceptions processes process control Unix signals nonlocal jumps Includes aspects of compilers OS and architecture Topics Virtual memory address translation dynamic storage allocation Includes aspects of architecture and OS Assignments Assignments L5 tshlab Writing your own shell with job control 15 15 213 S 08 16 L6 malloclab Writing your own malloc package 15 213 S 08 I O Networking and Concurrency 6 Each lab should have a well defined goal such as solving a puzzle or winning a contest Topics Lab Rationale High level and low level I O network programming Internet services Web servers concurrency concurrent server design threads I O multiplexing with select Includes aspects of networking OS and architecture Doing a lab should result in new skills and concepts We try to use competition in a fun and healthy way Set a reasonable threshold for full credit Post intermediate results anonymized on Web page for glory Assignments L7 proxylab Writing your own Web proxy 17 15 213 S 08 18 15 213 S 08 Autolab Web Service Labs are provided by the Autolab system Autograding handin system developed in 2003 by Dave O Hallaron Apache Web server Perl CGI programs Beta tested Fall 2003 very stable by now Good Luck With Autolab you can use your Web browser to 19 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 S 08 20 15 213 S 08
View Full Document