CS 213Introduction to Computer SystemsCourse OrganizationDavid O’HallaronAugust 29, 2000Topics:• Staff, text, and policies• Lecture topics and assignments• Lab rationaleCS 213 F’99class01b.pptCS 213 F’00 2class01b.pptTeaching staffInstructors–Prof. Randy Bryant (Wed 10:00-11:00, WeH 4220)–Prof. David O’Hallaron (Tue 10:30-11:30, WeH 8125)TA’s–Jason Crawford (TBD, Wean Cluster)–Blake Scholl (Wed 3:00-4:00, Wean Cluster)–Bianca Schroeder (Tue 1:30-2:30, WeH 5123)–Tiankai Tu (TBD, WeH 5119)Course Admin–Rosemary Battenfelder (WeH 4218)These are the nominal office hours. Come talk to us anytime!(Or send email)CS 213 F’00 3class01b.pptTextbooksBrian Kernighan and Dennis Ritchie,• The C Programming Language,• Second Edition• Prentice Hall, 1988Randy Bryant and David O’Hallaron,• Introduction to Computer Systems: A Programmer’s Perspective• To be published by Prentice Hall• alpha version of the text in the form of handouts• Your feedback on the notes is very important.CS 213 F’00 4class01b.pptCourse ComponentsLectures• higher level conceptsRecitations• applied concepts, important tools and skills for labs, clarification oflectures, exam coverageHomeworks• 1 week (individual)• solving a series of smaller problems, some programming• drills to provide practice for exams.Labs• multi-week (usually 2 weeks)• groups of up to 2 people• provide in-depth understanding of an aspect of systems• programming and measurementSome unavoidable overlap of labs and homeworks early in the course.CS 213 F’00 5class01b.pptGetting HelpWeb• www.cs.cmu.edu/afs/cs/academic/class/15213-f00/www• Copies of lectures, book chapter handouts, assignments, exams,solutions• Clarifications to assignments• Summaries of performance on exams and assignmentsNewsgroup• cmu.cs.class.cs213• Clarifications to assignments, general discussionPersonal help• Professors: door open means come on in (no appt necessary)• TAs: please mail or zephyr first.CS 213 F’00 6class01b.pptPolicies: AssignmentsWork groups• You may do all labs in groups of up to 2, homeworks individuallyHandins• Assignments due at 11:59pm on specified due date.• Either 11:59pm Monday evening or 11:59pm Wednesday evening.• Electronic handins only.Makeup exams and assignments• OK, but must make PRIOR arrangements with either Prof. Bryant orO’Hallaron.Appealing grades• Within 7 days of due date or exam date.• Assignments: Talk to the lead person on the assignment• Exams: Talk to either Prof. Bryant or O’Hallaron.CS 213 F’00 7class01b.pptPolicies: GradingExams (50%)• Two in class exams (12.5% each)• Final (25%)• All exams are open book/open notes.Assignments (50%)• 4 homeworks (~1 week, 2% each)• 5 labs (~2 weeks, 8-10% each)Grading Characteristics• Assignment scores tend to be high–Serious handicap if you don’t hand a lab in• Tests have big bearing on letter grade–Wider range of scores–Only chance for us to evaluate individual performanceCS 213 F’00 8class01b.pptFacilitiesAssignments will use Intel Computer Systems Cluster(aka “the fish machines”)• 25 Pentium III Xeon servers donated by Intel for CS 213• 550 MHz with 256 MB memory.• Rack mounted in the 3rd floor Wean machine room.• We’ll be setting up your accounts this week.Getting help with the cluster machines:• See “Information about the Intel Cluster” on the 213 homepage.• Please direct questions to the CS Help Desk (identify yourself as aCS 213 student),–[email protected]–x8-4231 (24x7)–WeH 3613 9-5pmCS 213 F’00 9class01b.pptPart 1: Programs and data (12)Topics• Bits operations, arithmetic, assembly language programs,representation of C control and data structures, object files,processes, asynchronous processing, system programming• Includes aspects of of architecture, OS, and compilersAssignments• L1: Bit manipulation• L2: Defusing a binary bomb• H1: Human decompiler• H2: Floating point• H4: Concurrency (processes, threads, and signals)CS 213 F’00 10class01b.pptPart 2: Memory (8)Topics• Memory management, memory technology, memory hierarchy,address translation• Includes aspects of architecture and OS.Assignments• L4: Dynamic memory allocation/garbage collection• H3: Address translationCS 213 F’00 11class01b.pptPart 3: Performance (2)Topics• Code optimization (control and data), performance evaluation,benchmarking• Includes aspects of architecture and compilersAssignments• L3: Optimizing cache performanceCS 213 F’00 12class01b.pptPart 4: I/O and Networking (5)Topics• Networking as the most interesting form of I/O.• Network technology, protocol stacks, TCP/IP, routing, sockets,internetworking, network programming, and Web programming.• Includes aspects of networking and architecture.Assignments• L5: building a chat serverCS 213 F’00 13class01b.pptLab Rationale Each lab should have a well-defined goal such assolving a puzzle or winning a contest.• Defusing a binary bomb.• Winning a performance contest.• Being able to chat with your classmatesDoing a lab should result in new skills and concepts• Bit Manipulation: computer arithmetic, digital logic.• Bomb: assembly language, using a debugger.• Malloc/GC: understanding pointers and nasty memory bugs.• Cache: profiling, measurement, performance debugging.• Chat: network programming & performance, client/server computing.We try to use competition in a fun and healthy way.• Set a threshhold for full credit.• Post intermediate results (anonymized) on Web page for
View Full Document