Title: Lecture 1: Systems and Networks
1Lecture 1Systems and Networks
- Prof. Kenneth M. Mackenzie
- Computer Systems and Networks
- CS2200, Spring 2003
Includes slides from Bill Leahy
2First Lecture!
- 1. Technology trends exponential
- 2. What is systems?
- 3. Class logistics
- 4. Prereq quiz
- This week review (?) foundational stuff
- Abstraction
- Instruction sets
3Architecture, ca. 1946 (ENIAC)
Maurice Wilkes, Computing Perspectives
4Architecture ca. 1978
Cray 1
Intel 8088
Intel
SGI/Cray
5Architecture, ca. 1998 Intel P6 Core
- x86-to-uOP TRANSLATOR
- 1-3 x86 instr/cycle
- DYNAMIC OOO PIPELINE
- 40 uop slots in reorder buffer
- 20 reservation stations
- 3-issue, 5-execute
- CACHES
- Pentium Pro has pipelined L2
- Pentium II, III, cheaper, wider L2
- Xeon has on-chip L2
- ASCI RED supercomputer
- --gt 4536 microprocessors
Microprocessor Report
6Example Current ArchitecturesHotChips
conference, Aug-00
- Intel Itanium
- 128-bit triple-instructions
- 20M transistor core w/L1, L2 4MB L3 is off-chip
- targets high single-CPU performance
- IBM Power4
- two processors per chip
- eight packaged on one multi-chip module (MCM)
- targets high server throughput
- Transmeta Crusoe
- 64/128-bit dual/quad instructions
- emulates x86 using dynamic compilation software
- targets low power
7Architecture, ca. 2013?
- Clear mucho parallelism on-chip
- Completely unclear how exactly it will work
- implicit, e.g. 128-way superscalar?
- explicit, multiprocessor-on-a-chip?
- hybrid? self-organizing?
1G transistors 10GHz
Execution unit
8Technology
Microprocessor Logic Density
DRAM chip capacity
DRAM Year Size 1980 64 Kb 1983 256
Kb 1986 1 Mb 1989 4 Mb 1992 16 Mb 1996 64
Mb 1999 256 Mb 2002 1 Gb
Slide John Kubiatowitz, UCBerkeley
9Technology gt dramatic change
- Processor
- logic capacity about 30 per year
- clock rate about 20 per year
- Memory
- DRAM capacity about 60 per year (4x every 3
years) - Memory speed about 10 per year
- Cost per bit improves about 25 per year
- Disk
- capacity about 60 per year
- Network Bandwidth
- Bandwidth increasing more than 100 per year!
Slide John Kubiatowitz, UCBerkeley
10Technology Improves Exponentially
- Machines you study today will seem like
unbelievably pitiful slugs when you graduate. - How do you study systems when they change so
rapidly!? - Organizing principles Modularity, Abstraction
- Computation
- Storage
- Communication
11Five Classic Components of a Computer Systemall
computers since 1946
12... and the software abstractions atop
them!operating systems, networking
Computation Processes Threads
Communication I/O devices, the internet
Storage Virtual Memory, Files
13Course Outline
- Broad exposure to computer systems
- Organization of the processor
- Memory hierarchy
- Storage devices
- Parallel processors
- Networking hardware
- Software abstractions in the operating systems
for orchestrating their usage - Networking protocols to connect the computer
system to its environment.
14Related Courses
Postoptionals
CS3210 OS
CS4210 OS
Prerequisites
CS2130
CS2200
CS3220 Arch.
CS4290 Arch.
ECE2030
CS3510 Net.
CS4510 Net.
15Prerequisite ECE2030
- ECE 2030 Intro to computer engineering
- Sequential and combination logic
- Memory
- Buses
- CPU datapath
- Instruction set (MIPS)
- Basic principles of pipelining
16Other Prerequisite CS2130
- CS 2130 Languages and Translation
- C programming
- Translation Process
- Preprocessing
- Compilation
- Linking
- Loading
- Unix
- etc.
17Logistics
18CS2200 Details
- Instructors
- Ken Mackenzie (kenmac_at_cc)
- Bill Leahy (bleahy_at_cc)
- Web page
- http//www.cc.gatech.edu/classes/AY2003/cs2200_spr
ing/ - lecture slides posted on web page, by noon-ish
- Texts
- Silberschatz, Galvin and Gagne, 6th edition
- Patterson and Hennessy, 2nd edition
19CS2200 TAs
- Ross Piasecki (Head TA) rossp_at_cc
- Christopher Church cchurch_at_cc
- Zachary Crowell ztc_at_cc
- Hashemi Hamed hamed_at_cc
- Ali Kamil alikamil_at_cc
- Raphael Kobi adjessi_at_cc
- James Malcolm malcolm_at_cc
- Eric McCorkle ericmcc_at_cc
- Douglas Powers dpowers_at_cc
- Ian Turner imt_at_cc
- Amanda Zielonka jnycs05_at_cc
20Normal Semester Schedule
- Weeks 1-5
- Processor, Pipelining, Process Abstraction
- Weeks 6-8
- Memory Management, Memory Hierarchy
- Weeks 9-10
- I/O Devices, Device drivers File Systems
- Weeks 11-13
- Parallel Processors, Parallel OS, Threads, etc.
- Weeks 14-16
- Networking Protocols and Distributed Systems
21CS2200 Assignments
- Ten assignments five projects, five
homeworks - Major the five projects
- PRJ1 LC-2200 processor
- PRJ2 I/O with interrupts
- PRJ3 Virtual Memory
- PRJ4 MTOS miniature threaded operating system
- PRJ5 Reliable transport
- Programming in C
- Use ACME machines
22A Word About Assignments
image Bill Leahy ... original source unknown
23CS2200 Exams
- Quiz 1 in-class midterm (before drop date)
- checkpoint
- end of processor section
- Quiz 2 in-class
- Comprehensive final
24Grading Scale
- Projects
- Homeworks
- Quiz 1
- Quiz 2
- Final Exam
25Newsgroups
- git.cc.class.cs2200.announce (moderated)
- git.cc.class.cs2200
26WebWork
- Homework Assignments (Change)
- Assignment turnin
- Assignment retrieval
- Grades
27CS 2200 Rules and Regulations
- 1. Academic misconduct is taken very seriously in
this class. We will analyze what you turn in
against other students submissions in the current
semester as well as previous semesters. You are
required to do your own work without looking at
other students code no matter what the source is.
You are also expected and required to report any
incidents of academic misconduct to the course
instructor or to the Dean of Students responsible
for Academic Misconduct. Failure to do so is in
itself Academic Misconduct.
28CS 2200 Rules and Regulations
- 2. You are responsible for turning in assignments
on time. This includes allowing for unforseen
circumstances. You are also responsible for
insuring that what you turned in is what you
meant to turn in. WebWork includes a getback
feature This allows you to retrieve exactly what
you submitted and insure that it works. Take
advantage of this feature.
29CS 2200 Rules and Regulations
- 3. In general, programming assignments should be
turned in with a Makefile and all files needed to
compile and run the program. The TA grading your
submission should be able to make and run your
program without adding files, repairing things
etc.
30CS 2200 Rules and Regulations
- 4. Tests and examinations must be taken at the
scheduled date and time. Please do not ask for
special treatment because you (or your parents)
have purchased non-refundable airline tickets.
The safe time to travel is at the end of or after
finals week. The finals schedule published at the
beginning of the semester is TENTATIVE. The
official schedule gets published very late in the
semester.
31CS 2200 Rules and Regulations
- 5. If you need a certain grade in order to stay
in school, maintain a scholarship, etc. the time
to worry about this is right from the beginning
of the course not during the week before finals.
Grades are based on demonstrated performance not
individual need based on factors external to the
course. Please do not request special
consideration based on this type of situation.
32CS 2200 Rules and Regulations
- 6. Final grades will be available from OSCAR
normally sometime the week after finals. You may
review your final and discuss your grades during
the following semester in which you are attending
Ga Tech. Grades will not be discussed over break.
33CS 2200 Rules and Regulations
- 7. If you have any personal problems
(family/illness/etc.) please go to the Dean of
Student's (Gail DiSabatino) office located in the
Student Services Building (Flag Building) next to
the Student Center. She is equipped and
authorized to verify the problems and she will
issue a note to all your instructors making them
aware of the problem and requesting whatever
extension, etc. is necessary.
34CS 2200 Rules and Regulations
- 8. The .announce newsgroup should be read every
day. Official announcements about course matters
will be posted there. The general course
newsgroup is for posting technical questions
about assignments, tests etc. Complaints,
questions about your personal problems, etc.
should be discussed with your instructor in
person or via email.
35CS 2200 Rules and Regulations
- 9. Out of consideration to your fellow students
please turn off cell phones, beepers, wristwatch
alarms, etc. Also, make every effort to be on
time for class. If you unavoidably late, please
sit near the back and try to avoid as much
disruption to the class as possible. - 10. If you are graduating and need this course to
do so please inform your instructor as soon as
possible. - 11. Complaints about TA's should be directed to
the course instructor during office hours or via
email.
36Abstractions
37Abstractions?
- Java objects
- Newtonian physics
- Macroeconomics
- ...?
38Abstractions
- An abstraction is a simplified model
- Abstractions have an interface and an
implementation
39Layers of Abstraction
40Layers of Abstraction
CS2130, CS1xxx,
ECE2030
41Power of Abstractions
- Confine your work to one abstraction layer
- avoid having to understand other layers.
- Interfaces persist across implementations
- good abstractions last a long time.
- so do bad ones, unfortunately.
- But you have to know the limits
- Newtonian physics
- wire delay
42Purpose of CS2200
- 1. Complete the layers of computer abstractions
- set the stage for more work at any layer
- know the overall structure in the event of a
20-year overhaul - 2. At minimum, a tour of the two layers below
- add strength to any CS specialization.
- 3. Bag of trix
- OS, architecture, networking abstractions
reappear in applications. - These are some of the most time-tested
abstractions in CS
43Summary
- Technology changes exponentially
- CS2200 focus on abstractions
- Computation/Storage/Communication
- 5 projects 5 homeworks
- 3 exams
- Todays entertainment prereq quiz...
- Thursday instruction-set architecture (ISA)