The course that gives CMU its “Zip”!

Slides:



Advertisements
Similar presentations
John Hurley Cal State LA
Advertisements

1 Carnegie Mellon The course that gives CMU its “Zip”! Course Logistics (18-213): Introduction to Computer Systems 1 st Lecture, Aug. 26, 2014 Instructors:
Computer Systems & Programming (CS 367) Section 002: Prof. Elizabeth White Spring 2010.
Computers and Society Lecture 1: administrative details and an introduction to the class Professor: Evan Korth New York University.
Computers in Principle & Practice I - V Deena Engel Computers in Principle and Practice I V , Sections 1 & 2 Fall, 2009 Deena Engel .
Introduction to Computer Systems Topics: Staff, text, and policies Lecture topics and assignments Lab rationale and infrastructure F ’08 class01b.ppt.
Fall 2004 WWW IS112 Prof. Dwyer Intro1: Overview and Syllabus Professor Catherine Dwyer.
CSCE 312 Computer Organization Lecture 0: Course Administration EJ Kim Department of Computer Science and Engineering 338B Bright
ECE200 – Computer Organization Course Introduction.
COMP 14 – 02: Introduction to Programming Andrew Leaver-Fay August 31, 2005 Monday/Wednesday 3-4:15 pm Peabody 217 Friday 3-3:50pm Peabody 217.
EET 4250: Microcomputer Architecture Fall 2009 William Acosta URL:
Slide 1 Instructor: Dr. Hong Jiang Teaching Assistant: Mr. Sheng Zhang Department of Computer Science & Engineering University of Nebraska-Lincoln Classroom:
CS 213 Introduction to Computer Systems Course Organization David O’Hallaron August 28, 2001 Topics: Staff, text, and policies Lecture topics and assignments.
COP4020/CGS5426 Programming languages Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: T, H 10:00am – 11:30am Class website:
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
COMP 321: Introduction to Computer Systems Scott Rixner Alan L. Cox
1 Carnegie Mellon The course that gives CMU its “Zip”! Course Overview /18-213: Introduction to Computer Systems 1 st Lecture, Jan. 14, 2014 Instructors:
Computer Network Fundamentals CNT4007C
CS 3305 Course Overview. Introduction r Instructor: Dr Hanan Lutfiyya r Office: MC 355 r hanan at csd dot uwo ca r Office Hours: m Drop-by m Appointment.
1 Carnegie Mellon The course that gives CMU its “Zip”! Course Overview (18-213): Introduction to Computer Systems 1 st Lecture, Aug. 27, 2013 Instructors:
The course that gives CMU its “Zip”!
Winter 2015 COMP 2130 Introduction to Computer Systems Computing Science Thompson Rivers University Introduction and Overview.
1 Introduction to Operating Systems 9/16/2008 Lecture #1.
ECEN 301Discussion #1 – Syllabus1 All Sections MWF 1:00 – 1:50 PM 256 CB Lecture: MW Recitation: F Labs: M or Th Instructor: Prof. David Long Office: CB.
Introduction to Computer Systems Topics: Staff, text, and policies Lecture topics and assignments Lab rationale and infrastructure CS 213 F ’04 class01b.ppt.
Introduction and Overview Summer 2014 COMP 2130 Introduction to Computer Systems Computing Science Thompson Rivers University.
CS355 Advanced Computer Architecture Fatima Khan Prince Sultan University, College for Women.
Introduction to Databases Computer Science 557 September 2007 Instructor: Joe Bockhorst University of Wisconsin - Milwaukee.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
1 Bryant and O’Hallaron, Computer Systems: A Programmer’s Perspective, Third Edition Carnegie Mellon The course that gives CMU its “Zip”! Course Overview.
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
Course Information Andy Wang Operating Systems COP 4610 / CGS 5765.
1 CSCI 3120: Operating Systems Summer 2003 Instructor: Kirstie Hawkey Office hours (outside Room 311): Mon: 2:30-3:30, Fri: 10:30-11:30.
Introduction to Computer Systems Topics: Staff, text, and policies Lecture topics and assignments Lab rationale and infrastructure CS 213 F ’03 class01b.ppt.
Introduction Fall 2001 Foundations of Computer Systems Prerequisite:91.166* or * Section A Instructor: Dr. David Hutchinson Office:
11/21/20151 Operating Systems Design (CS 423) Elsa L Gunter 2112 SC, UIUC Based on slides by Sam King and Andrew.
1 Carnegie Mellon The course that gives CMU its “Zip”! Course Overview (18-213): Introduction to Computer Systems 1 st Lecture, Aug. 28, 2012 Instructors:
January 16, 2007 COMS 4118 (Operating Systems I) Henning Schulzrinne Dept. of Computer Science Columbia University
Introduction to Computer Systems Topics: Staff, text, and policies Lecture topics and assignments Lab rationale CS 213 F ’02 class01b.ppt “The Class.
CSCI 330 UNIX and Network Programming Unit I Introduction.
COP4610/CGS5765 Operating Systems Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: W M F 9:10am – 10:00am, or by appointments.
– 1 – , S’08 Introduction to Computer Systems Topics: Staff, text, and policies Lecture topics and assignments Lab rationale and infrastructure class01b.ppt.
1 Bryant and O’Hallaron, Computer Systems: A Programmer’s Perspective, Third Edition Carnegie Mellon Overview Course theme Five realities How the course.
Course Overview 1 FCM 710 Architecture of Secure Operating Systems Prof. Shamik Sengupta Office 4210 N
CS 213 Introduction to Computer Systems Course Organization David O’Hallaron August 25, 1998 Topics: Staff, text, and policies Lecture topics and assignments.
Data Structures and Algorithms in Java AlaaEddin 2012.
Computer Networks CNT5106C
Course Information CSE 2031 Fall Instructor U. T. Nguyen /new-yen/ Office: CSEB Office hours:  Tuesday,
1 CS/ECE 354 Fall 2013 “New, and improved!”. 2 Karen Miller Phone: CS.
CS 213 Introduction to Computer Systems Course Organization Guy Blelloch and Bruce Maggs January 16, 2001 Topics: Staff, text, and policies Lecture topics.
Course Information CSE 2031 Fall Instructor U.T. Nguyen Office: CSE Home page:
Copyright ©: Nahrstedt, Angrave, Abdelzaher, Caccamo1 University of Illinois at Urbana-Champaign Welcome to CS 241 Systems Programming University of Illinois.
Introduction and Overview Winter 2013 COMP 2130 Introduction to Computer Systems Computing Science Thompson Rivers University.
The course that gives CMU its “Zip”!
Computer Organization II
CS 213 Introduction to Computer Systems Course Organization Todd C
Course Information Mark Stanovich Principles of Operating Systems
Topics: Staff, text, and policies Lecture topics and assignments
Computer Science 102 Data Structures CSCI-UA
Computer Systems Summary
Andy Wang Operating Systems COP 4610 / CGS 5765
Andy Wang Operating Systems COP 4610 / CGS 5765
Andy Wang Operating Systems COP 4610 / CGS 5765
Overview Course theme Five realities
Andy Wang Operating Systems COP 4610 / CGS 5765
Computer Networks CNT5106C
Andy Wang Operating Systems COP 4610 / CGS 5765
EECE.4810/EECE.5730 Operating Systems
Loose ends from yesterday
CS201 – Course Expectations
Presentation transcript:

The course that gives CMU its “Zip”! Carnegie Mellon Course Logistics 15-213 (15-513, 18-213): Introduction to Computer Systems 1st Lecture, May 19, 2015 Instructors: Nathaniel Wesley “nwf” Filardo and Greg Kesden (With thanks to Greg Ganger, Dave O’Hallaron, and many others) The course that gives CMU its “Zip”!

Textbooks Randal E. Bryant and David R. O’Hallaron, Carnegie Mellon Textbooks Randal E. Bryant and David R. O’Hallaron, Computer Systems: A Programmer’s Perspective, Second Edition (CS:APP2e), Prentice Hall, 2011 http://csapp.cs.cmu.edu This book really matters for the course! How to solve labs Practice problems typical of exam problems (3rd edition probably fine, if that’s what you have) Brian Kernighan and Dennis Ritchie, The C Programming Language, Second Edition, Prentice Hall, 1988 Still the best book about C, from the originators

Course Components Lectures Recitations Labs (7) Carnegie Mellon Course Components Lectures Higher level concepts Recitations Applied concepts, important tools and skills for labs, clarification of lectures, exam coverage Labs (7) The heart of the course 1-2 weeks each Provide in-depth understanding of an aspect of systems Programming and measurement Exams (midterm + final) Test your understanding of concepts & mathematical principles

Recitations When? Possible options: Carnegie Mellon Recitations When? Possible options: Monday or Friday, same time as class Later on Monday T/W/R afternoon (I’ll move office hours out of the way!) Others? Homeworks generally on Tues/Tues cycle, FYI.

Getting Help Class Web page: http://www.cs.cmu.edu/~213 Carnegie Mellon Getting Help Class Web page: http://www.cs.cmu.edu/~213 Complete schedule of lectures, exams, and assignments Copies of lectures, assignments, exams, solutions Clarifications to assignments Blackboard and Piazza We won’t be using Piazza for the course Blackboard just for video distribution

Getting Help Staff mailing list: 15-213-staff@cs.cmu.edu Carnegie Mellon Getting Help Staff mailing list: 15-213-staff@cs.cmu.edu Use this for all communication with the teaching staff Always CC staff mailing list during email exchanges Send email to individual instructors only to schedule appointments My office hours (starting tomorrow): Usually TWR, 3:30-5:00pm, location TBA. May move occasionally; will let you know if so! These are deliberately scheduled so that you can look at material over lunch and then come find me.  1:1 Appointments You can schedule 1:1 appointments with any of the teaching staff

Policies: Labs And Exams Carnegie Mellon Policies: Labs And Exams Work groups You must work alone on all lab assignments Handins Labs due at 11:59pm on Tues or Thurs Electronic handins using Autolab (no exceptions!) Exams Exams will be online in network-isolated clusters Held over multiple days. Sign up for a slot Appealing grades In writing to Prof O’Hallaron within 7 days of completion of grading Follow formal procedure described in syllabus

Facilities Labs will use the Intel Linux Computer Systems Cluster Carnegie Mellon Facilities Labs will use the Intel Linux Computer Systems Cluster AKA the “shark machines” Login to the any shark machine: linux> ssh –X shark.ics.cs.cmu.edu Login to a particular machine: linux> ssh –X angelshark.ics.cs.cmu.edu Login using your Andrew credentials If you do not have Andrew credentials, please let us know. List of machines at http://www.cs.cmu.edu/~213/labmachines.html

Shark Machines 21 servers donated by Intel for 213 Each server: 10 student machines (for student logins) 1 head node (for Autolab server and instructor logins) 10 grading machines (for autograding) Each server: Core i7 system with 8 Nehalem cores, 32 GB DRAM, Linux Rack mounted in Gates machine room Getting help with the cluster machines: Please direct questions to staff mailing list

Timeliness Grace days Lateness penalties Catastrophic events Advice Carnegie Mellon Timeliness Grace days 5 grace days for the semester Limit of 2 grace days per lab used automatically Covers scheduling crunch, out-of-town trips, illnesses, minor setbacks Save them until late in the term! Lateness penalties Once grace day(s) used up, get penalized 15% per day No handins later than 3 days after due date Catastrophic events Major illness, death in family, … Formulate a plan (with your academic advisor) to get back on track Advice Once you start running late, it’s really hard to catch up

Cheating: Description Carnegie Mellon Cheating: Description Please pay close attention, especially if this is your first semester at CMU What is cheating? Sharing code: by copying, retyping, looking at, or supplying a file Describing: Verbal description of code from one person to another. Coaching: helping your friend to write a lab, line by line Copying code from a previous course or online solution Only allowed to use code we supply, or from CS:APP website What is NOT cheating? Explaining how to use systems or tools Helping others with high-level design issues See the course syllabus for details.

Cheating: Consequences Penalty for cheating: Removal from course with failing grade (no exceptions!) Permanent mark on your record Detection of cheating: Last Fall, 17 students were caught cheating and failed the course. Don’t do it! Start early Ask the staff for help when you get stuck

Other Rules of the Lecture Hall Carnegie Mellon Other Rules of the Lecture Hall Laptops: permitted, but Please be aware of their distracting potential Please do not: IM, watch movies (!), browse the web, … Failing to pay attention is not good grounds to ask me to repeat material Presence in lectures, recitations: voluntary, recommended No recordings of ANY KIND without MY explicit permission If you feel that the existing recording is not working out for you, please come talk to me because it probably represents a broader need.

Policies: Grading Exams (50%): midterm (20%), final (30%) Carnegie Mellon Policies: Grading Exams (50%): midterm (20%), final (30%) Labs (50%): weighted according to effort Final grades based on a combination of straight scale and possibly a tiny amount of curving.

Programs and Data Topics Assignments Carnegie Mellon Programs and Data Topics Bits operations, arithmetic, assembly language programs Representation of C control and data structures Includes aspects of architecture and compilers Assignments L1 (datalab): Manipulating bits L2 (bomblab): Defusing a binary bomb L3 (buflab): Hacking a buffer bomb

The Memory Hierarchy Topics Assignments Carnegie Mellon The Memory Hierarchy Topics Memory technology, memory hierarchy, caches, disks, locality Includes aspects of architecture and OS Assignments L4 (cachelab): Building a cache simulator and optimizing for locality. Learn how to exploit locality in your programs.

Exceptional Control Flow Carnegie Mellon Exceptional Control Flow Topics Hardware exceptions, processes, process control, Unix signals, nonlocal jumps Includes aspects of compilers, OS, and architecture Assignments L5 (tshlab): Writing your own Unix shell. A first introduction to concurrency

Virtual Memory Topics Assignments Carnegie Mellon Virtual Memory Topics Virtual memory, address translation, dynamic storage allocation Includes aspects of architecture and OS Assignments L6 (malloclab): Writing your own malloc package Get a real feel for systems-level programming

Networking, and Concurrency Carnegie Mellon Networking, and Concurrency Topics 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 Assignments L7 (proxylab): Writing your own Web proxy Learn network programming and more about concurrency and synchronization.

Carnegie Mellon Lab Rationale Each lab has a well-defined goal such as solving a puzzle or winning a contest Doing the 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 Autolab scoreboard for glory!

Autolab (https://autolab.cs.cmu.edu) Carnegie Mellon Autolab (https://autolab.cs.cmu.edu) Labs are provided by the CMU Autolab system Project page: http://autolab.cs.cmu.edu Developed by CMU faculty and students Key ideas: Autograding and Scoreboards Autograding: Using VMs on-demand to evaluate untrusted code. Scoreboards: Real-time, rank-ordered, and anonymous summary. Used by over 2,500 CMU students each semester, since Fall, 2010 With Autolab you can use your Web browser to: Download the lab materials Handin your code for autograding by the Autolab server View the class scoreboard View the complete history of your code handins, autograded results, instructor’s evaluations, and gradebook. View the TA annotations of your code for Style points.

Autolab accounts Everyone should have Autolab accounts Carnegie Mellon Autolab accounts Everyone should have Autolab accounts You must be enrolled to get an account Autolab is not tied in to the Hub’s rosters If you add in, contact 15-213-staff@cs.cmu.edu for an account For those who are waiting to add in, the first lab (datalab) will be available on the Schedule page of the course Web site.

Waitlist or enrollment questions Carnegie Mellon Waitlist or enrollment questions 15-213: Catherine Fichtner (cathyf@cs.cmu.edu) 18-213: Chelsea Mastilak (cmastila@andrew.cmu.edu) Please don’t contact the instructors with waitlist questions.

Carnegie Mellon Welcome and Enjoy!