University of Amsterdam Computer Systems – a guided tour Arnoud Visser 1 Computer Systems A guided Tour.

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

C SINGH, JUNE 7-8, 2010IWW 2010, ISATANBUL, TURKEY Advanced Computers Architecture, UNIT 2 Advanced Computers Architecture UNIT 2 CACHE MEOMORY Lecture7.
Fabián E. Bustamante, Spring 2007 Introduction to Computer Systems Today : Welcome to EECS 213 Lecture topics and assignments Lab rationale Next time:
University of Amsterdam Computer Systems – the applicability to an Aibo Arnoud Visser 1 Computer Systems Applicability to an Aibo.
CSCE 3121 Computer Organization Lecture 1. CSCE 3122 Course Overview Topics: –Theme –Five great realities of computer systems –Computer System Overview.
Memory Hierarchy. Smaller and faster, (per byte) storage devices Larger, slower, and cheaper (per byte) storage devices.
Introduction to Computer Systems Topics: Staff, text, and policies Lecture topics and assignments Lab rationale CS 213 F ’06 CS-213 Yan Chen.
CSCE 3121 Computer Organization Lecture 1 Bryant’s Book Chapter 1.
Memory Management CSCI 3753 Operating Systems Spring 2005 Prof. Rick Han.
CMPUT Computer Organization and Architecture I1 CMPUT229 - Fall 2003 Topic D: The Memory Hierarchy José Nelson Amaral.
Computer System Overview
Introduction to Computer Systems Topics: Staff, text, and policies Lecture topics and assignments Class overview CS 213 S ’06 CS-213 Aleksandar Kuzmanovic.
MEMORY MANAGEMENT By KUNAL KADAKIA RISHIT SHAH. Memory Memory is a large array of words or bytes, each with its own address. It is a repository of quickly.
Introduction to Computer Systems Topics: Staff, text, and policies Lecture topics and assignments Class overview CS 213 S ’08 CS-213 Aleksandar Kuzmanovic.
Virtual Memory Topics Virtual Memory Access Page Table, TLB Programming for locality Memory Mountain Revisited.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
CPU Registers PC Arith Logic Unit Bus Interface I/O Bridge System bus Memory bus Main Memory USB Controller Graphics Adapter Disk Controller I/O Bus Mouse.
Systems I Locality and Caching
Disk-based Storage Oct. 23, 2008 Topics Storage technologies and trends Locality of reference Caching in the memory hierarchy lecture-17.ppt “The.
Input / Output CS 537 – Introduction to Operating Systems.
Computer Organization
System Calls 1.
Computer Architecture ECE 4801 Berk Sunar Erkay Savas.
Memory Hierarchy 1 Computer Organization II © CS:APP & McQuain Cache Memory and Performance Many of the following slides are taken with.
CMSC 313, F ‘09 1 Introduction to Assembly TopicsTopics –Assembly Overview –Instructions –Hardware.
CPU Computer Hardware Organization (How does the computer look from inside?) Register file ALU PC System bus Memory bus Main memory Bus interface I/O bridge.
Introduction to Computer Systems Topics: Theme Four great realities of computer systems Chap 1 in “Computer Systems” book “The Class That Gives.
Intro to Computer Systems Summer 2014 COMP 2130 Introduction to Computer Systems Computing Science Thompson Rivers University.
1 Operating System Overview. 2 Today’s Objectives Explain the main purpose of operating systems and describe milestones of OS evolution Explain fundamental.
Introduction to Computer Systems Topics: Theme Five great realities of computer systems (continued) “The class that bytes”
Computer Organization & Assembly Language © by DR. M. Amer.
University of Amsterdam Computer Systems – virtual memory Arnoud Visser 1 Computer Systems Virtual Memory.
Introduction: Memory Management 2 Ideally programmers want memory that is large fast non volatile Memory hierarchy small amount of fast, expensive memory.
Multilevel Caches Microprocessors are getting faster and including a small high speed cache on the same chip.
Virtual Memory.  Next in memory hierarchy  Motivations:  to remove programming burdens of a small, limited amount of main memory  to allow efficient.
The Memory Hierarchy Topics Storage technologies and trends Locality of reference Caching in the memory hierarchy CS 105 Tour of the Black Holes of Computing.
Lecture on Central Process Unit (CPU)
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
Copyright ©: Nahrstedt, Angrave, Abdelzaher1 Operating System Overview Tarek Abdelzaher Lawrence Angrave Vikram Adve.
University of Amsterdam Computer Systems – the instruction set architecture Arnoud Visser 1 Computer Systems The instruction set architecture.
1 Virtual Memory (I). 2 Outline Physical and Virtual Addressing Address Spaces VM as a Tool for Caching VM as a Tool for Memory Management VM as a Tool.
Memory Hierarchy 1 Computer Organization II © CS:APP & McQuain Cache Memory and Performance Many of the following slides are taken with.
Overview of microcomputer structure and operation
Hello world !!! ASCII representation of hello.c.
Operating Systems A Biswas, Dept. of Information Technology.
CIT 140: Introduction to ITSlide #1 CSC 140: Introduction to IT Operating Systems.
Chapter 3 Getting Started. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. Objectives To give an overview of the structure of a contemporary.
Computer Systems MTSU CSCI 3240 Spring 2016 Dr. Hyrum D. Carroll
Chapter 1: A Tour of Computer Systems
Overview of today’s lecture
Today How’s Lab 3 going? HW 3 will be out today
CS 105 Tour of the Black Holes of Computing
CS703 - Advanced Operating Systems
Local secondary storage (local disks)
OS Virtualization.
Computer Science I CSC 135.
Introduction to Computer Systems
CS 105 “Tour of the Black Holes of Computing!”
CS 105 Tour of the Black Holes of Computing
Computer Electronic device Accepts data - input
Introduction to Computer Systems
Memory Management Tasks
Computer Electronic device Accepts data - input
Insight needed by AI-students Arnoud Visser
Introduction to Computer Systems
CS 105 “Tour of the Black Holes of Computing!”
CS 105 “Tour of the Black Holes of Computing!”
Hardware Organization
Computer Architecture
Cache Memory and Performance
Presentation transcript:

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 1 Computer Systems A guided Tour

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 2 Programmable devices #include int main() { printf("hello, world\n"); }

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 3 Compilation System Normally, you don’t see the intermediate results Pre- processor ( cpp ) hello.i Compiler ( cc1 ) hello.s Assembler ( as ) hello.o Linker ( ld ) hellohello.c Source program (text) Modified source program (text) Assembly program (text) Relocatable object programs (binary) Executable object program (binary) printf.o

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 4 Machine code Load Store Update Read Write Main memory Register file I/O bridge Register file ALU

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 5 Execution System Each character is read into a register, and stored in the main memory Main memory I/O bridge Bus interface ALU Register file CPU System busMemory bus Disk controller Graphics adapter USB controller MouseKeyboardDisplay Disk I/O bus Expansion slots for other devices such as network adapters PC "hello" User types "hello"

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 6 Execution System After, the machine code is read into the main memory Main memory I/O bridge Bus interface ALU Register file CPU System busMemory bus Disk controller Graphics adapter USB controller MouseKeyboardDisplay Disk I/O bus Expansion slots for other devices such as network adapters hello executable stored on disk PC hello code "hello,world\n"

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 7 Execution System The machine instructions copy.ascii data to the registers, and from there to the display Main memory I/O bridge Bus interface ALU Register file CPU System busMemory bus Disk controller Graphics adapter USB controller MouseKeyboardDisplay Disk I/O bus Expansion slots for other devices such as network adapters hello executable stored on disk PC hello code "hello,world\n"

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 8 Cache Every cache level is 5 to 10 faster Main memory (DRAM) Memory bridge Bus interface L2 cache (SRAM) ALU Register file CPU chip Cache busSystem busMemory bus L1 cache (SRAM)

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 9 Memory hierarchy Registers On-chip L1 cache (SRAM) Main memory (DRAM) Local secondary storage (local disks) Larger, slower, and cheaper (per byte) storage devices Remote secondary storage (distributed file systems, Web servers) Local disks hold files retrieved from disks on remote network servers. Main memory holds disk blocks retrieved from local disks. Off-chip L2 cache (SRAM) L1 cache holds cache lines retrieved from the L2 cache. CPU registers hold words retrieved from cache memory. L2 cache holds cache lines retrieved from memory. L0: L1: L2: L3: L4: L5: Smaller, faster, and costlier (per byte) storage devices

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 10 Operating system Shield hardware (bi-directional) Allows multiple programs access to the computer Application programs ProcessorMain memoryI/O devices Operating system Software Hardware ProcessorMain memoryI/O devices Processes Files Virtual memory

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 11 Context switches Each process has the illusion that it has exclusive use of the main memory shell process hello process Application code Time Context switch Context switch OS code Application code OS code Application code

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 12 Virtual address space C is the language for system-level programming C-pointers are common source for errors Kernel virtual memory Memory mapped region for shared libraries Run-time heap (created at runtime by malloc) User stack (created at runtime) Unused 0 Memory invisible to user code 0xc x x Read/write data Read-only code and data Loaded from the hello executable file printf() function 0xffffffff

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 13 Conclusion System is more than hardware Hardware and system software are heavily intertwined A programmer meets the system at many different levels

University of Amsterdam Computer Systems – a guided tour Arnoud Visser 14 Assignment 2 Make a makefile for the source-file ‘hello.c’, with implicit rules and following the general conventions “hello world”