Introduction to Computer SystemsTeaching staffTextbooksCourse ComponentsGetting HelpPolicies: AssignmentsCheatingPolicies: GradingFacilitiesPrograms and Data (6)Performance (2) – removed!The Memory Hierarchy (2)Linking and Exceptional Control Flow (3)Virtual Memory (4)I/O, Networking, and Concurrency (6)Lab RationaleAutolab Web ServiceIntroduction to Computer SystemsTopics:Topics:Staff, text, and policiesLecture topics and assignmentsLab rationale and infrastructure15-213 F ’09class01b.ppt15-213Fall 2008Majd F. SakrAugust 24, 2009* Slide Credits: Prof. David R. O’Hallaron– 2 –15-213, F’09Teaching staffInstructorsProf. Majd F. SakrProf. Khaled A. Harras TA’sMd. Shahriar Haque Come talk to us anytime!(Or phone or send email)– 3 –15-213, F’09TextbooksRandal 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’09Course 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’09Getting HelpClass Web PageClass Web Pagehttp://www.qatar.cmu.edu/~msakr/15213-f09/Copies of lectures, assignments, exams, solutionsClarifications to assignmentsMessage BoardMessage Boardhttp://autolab.qatar.cmu.eduClarifications to assignments, general discussion The only board your instructors will be monitoring (No blackboard or Andrew)Personal helpPersonal helpProfessors:K. Harras, office hour, appt, or when door is open.M. Sakr, office hour, appt, or when door is open.TAs: office hour, email, or appt.– 6 –15-213, F’09Policies: AssignmentsWork groupsWork groupsYou must work alone on all labs HandinsHandinsAssignments due at 11:59pmElectronic handins using Autolab (no exceptions!).Makeup exams and assignmentsMakeup exams and assignmentsOnly when necessary, but must make PRIOR arrangements with Prof. Sakr or Prof. Harras.Appealing gradesAppealing gradesWithin 7 days of due date or exam date.Labs: Talk to the lead person on the assignment Exams: Talk to Prof. Sakr or Prof. Harras.– 7 –15-213, F’09CheatingWhat 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’09Policies: GradingExams (40%)Exams (40%)Two in class exams (10% each)Final (20%)All exams are open book / open notes.Attendance & Participation (5%)Attendance & Participation (5%)Labs (55%)Labs (55%)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’09FacilitiesLabs will use the unix.qatar.cmu.edu serversLabs will use the unix.qatar.cmu.edu serversPentium Linux servers for CS 213Your 123 accounts should still be valid.Getting help with the unix machines:Getting help with the unix machines:See ITPlease direct questions to your TA– 10 –15-213, F’09Programs 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– 11 –15-213, F’09Performance (2) – removed!TopicsTopicsHigh level processor models, code optimization (control and data), measuring time on a computerIncludes aspects of architecture, compilers, and OSAssignmentsAssignmentsL4 (perflab): Optimizing code performance– 12 –15-213, F’09The Memory Hierarchy (2)TopicsTopicsMemory technology, memory hierarchy, caches, disks, localityIncludes aspects of architecture and OS.AssignmentsAssignmentsL4 (perflab): Optimizing code performance– 13 –15-213, F’09Linking 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– 14 –15-213, F’09 Virtual Memory (4)TopicsTopicsVirtual memory, address translation, dynamic storage allocationIncludes aspects of architecture and OSAssignmentsAssignmentsL6 (malloclab): Writing your own malloc package– 15 –15-213, F’09 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 select.Includes aspects of networking, OS, and architecture.AssignmentsAssignmentsL7 (proxylab): Writing your own Web proxy– 16 –15-213, F’09Lab Rationale Each lab should have a well-defined goal such as Each lab should have a well-defined goal such as solving a puzzle or winning a contest. solving a puzzle or winning a contest. Doing a lab should result in new skills and conceptsDoing a lab should result in new skills and conceptsWe try to use competition in a fun and healthy way.We try to use competition in a fun and healthy way.Set a reasonable threshhold for full credit.Post intermediate results (anonymized) on Web page for glory!– 17 –15-213, F’09Autolab Web ServiceLabs are provided by the Autolab systemLabs are provided by the Autolab systemAutograding handin system developed in 2003 by Dave O’HallaronApache Web server + Perl CGI programsBeta tested Fall 2003,
View Full Document