Introduction to Computer SystemsTeaching staffTextbooksCourse ComponentsGetting HelpPolicies: AssignmentsCheatingPolicies: GradingFacilitiesLogging into Fish MachinesPrograms and Data (6)Performance (2)The Memory Hierarchy (2)Linking and Exceptional Control Flow (3)Virtual Memory (4)I/O, Networking, and Concurrency (6)Lab RationaleAutolab Web ServiceGood Luck!Introduction to Computer SystemsTopics:Topics:Staff, text, and policiesLecture topics and assignmentsLab rationale and infrastructure15-213 F ’06class01b.ppt15-213“The Class That Gives CMU Its Zip!”David R. O’HallaronAugust 30, 2006– 2 –15-213, F’06Teaching staffInstructorsProf. Randal E. BryantProf. David R. O’Hallaron TA’sAshwin BharambeMichael BrotzmanTudor DumitrasDonnie KimAmit ManjhiCourse AdminsCindy Chemsak (NSH 4303)Barb Grandillo (WeH 8018) Come talk to us anytime!(Or phone or send email)– 3 –15-213, F’06TextbooksRandal E. Bryant and David R. O’Hallaron, Randal E. Bryant and David R. O’Hallaron, “Computer Systems: A Programmer’s Perspective”, Prentice Hall 2003.http://csapp.cs.cmu.eduBrian Kernighan and Dennis Ritchie, Brian Kernighan and Dennis Ritchie, “The C Programming Language, Second Edition”, Prentice Hall, 1988– 4 –15-213, F’06Course ComponentsLecturesLecturesHigher level conceptsRecitationsRecitationsApplied concepts, important tools and skills for labs, clarification of lectures, exam coverageLabsLabsThe heart of the course1 or 2 weeksProvide in-depth understanding of an aspect of systemsProgramming and measurement– 5 –15-213, F’06Getting HelpClass Web PageClass Web Pagehttp://www.cs.cmu.edu/~213Copies of lectures, assignments, exams, solutionsClarifications to assignmentsMessage BoardMessage Boardhttp://autolab.cs.cmu.eduClarifications to assignments, general discussion The only board your instructors will be monitoring (No blackboard or Andrew)Personal helpPersonal helpProfessors:R. Bryant, office hour or appt.D. O’Hallaron, office hour, appt, or when door is open.TAs: office hour, email, or appt.– 6 –15-213, F’06Policies: AssignmentsWork groupsWork groupsYou must work alone on all labs HandinsHandinsAssignments due at 11:59pm on Wed or Fri eveningElectronic handins using Autolab (no exceptions!).Makeup exams and assignmentsMakeup exams and assignmentsOK, but must make PRIOR arrangements with Prof. O’Hallaron.Appealing gradesAppealing gradesWithin 7 days of due date or exam date.Labs: Talk to the lead person on the assignment Exams: Talk to Prof O’Hallaron.– 7 –15-213, F’06CheatingWhat is cheating?What is cheating?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?What is NOT cheating?Helping others use systems or tools.Helping others with high-level design issues.Helping others debug their code.Penalty for cheating:Penalty for cheating:Removal from course with failing grade.Detection of cheating:Detection of cheating:We do check and our tools for doing this are much better than you think!– 8 –15-213, F’06Policies: GradingExams (40%)Exams (40%)Two in class exams (10% each)Final (20%)All exams are open book / open notes.Labs (60%)Labs (60%)7 labs (6-12% each)Grading CharacteristicsGrading CharacteristicsLab scores tend to be highSerious handicap if you don’t hand a lab inWe offer generous redemption programsTests typically have a wider range of scores– 9 –15-213, F’06FacilitiesLabs will use the Intel Computer Systems Labs will use the Intel Computer Systems Cluster (aka “the fish machines”)Cluster (aka “the fish machines”)15 Pentium Xeon servers donated by Intel for CS 213Dual 3.2 Ghz 64-bit (EM64T) Nocona Xeon processors2 GB, 400 MHz DDR2 SDRAM memory Rack mounted in the 3rd floor Wean Hall machine room.Your accounts are ready.Getting help with the cluster machines:Getting help with the cluster machines:See course Web page for login directionsPlease direct questions to your TA’s first– 10 –15-213, F’06Logging into Fish MachinesRead description on the course web-page carefullyRead description on the course web-page carefullyRun checkin script (once only) to setup Kerberos Run checkin script (once only) to setup Kerberos credentialscredentials% /afs/cs/academic/class/15213-f06/bin/checkin Login using your Andrew ID and password:Login using your Andrew ID and password:% ssh –x –l [email protected] tuna.ics.cs.cmu.eduKeep your code in your “213hw” directory on your Keep your code in your “213hw” directory on your AndrewAndrew accountaccount– 11 –15-213, F’06Programs and Data (6)TopicsTopicsBits operations, arithmetic, assembly language programs, representation of C control and data structuresIncludes aspects of architecture and compilers AssignmentsAssignmentsL1 (datalab): Manipulating bitsL2 (bomblab): Defusing a binary bombL3 (buflab): Hacking a buffer bomb– 12 –15-213, F’06Performance (2)TopicsTopicsHigh level processor models, code optimization (control and data), measuring time on a computerIncludes aspects of architecture, compilers, and OSAssignmentsAssignmentsL4 (perflab): Optimizing code performance– 13 –15-213, F’06The Memory Hierarchy (2)TopicsTopicsMemory technology, memory hierarchy, caches, disks, localityIncludes aspects of architecture and OS.AssignmentsAssignmentsL4 (perflab): Optimizing code performance– 14 –15-213, F’06Linking and Exceptional Control Flow (3)TopicsTopicsObject files, static and dynamic linking, libraries, loadingHardware exceptions, processes, process control, Unix signals, nonlocal jumpsIncludes aspects of compilers, OS, and architectureAssignmentsAssignmentsL5 (tshlab): Writing your own shell with job control– 15 –15-213, F’06 Virtual Memory (4)TopicsTopicsVirtual memory, address translation, dynamic storage allocationIncludes aspects of architecture and OSAssignmentsAssignmentsL6 (malloclab): Writing your own malloc package– 16 –15-213, F’06 I/O, Networking, and Concurrency (6)TopicsTopicsHigh level and low-level I/O, network programming, Internet services, Web serversconcurrency, concurrent server design, threads, I/O multiplexing with
View Full Document