CSCI206 - Computer Organization & Programming

Slides:



Advertisements
Similar presentations
Introduction to Operating Systems CS-2301 B-term Introduction to Operating Systems CS-2301, System Programming for Non-majors (Slides include materials.
Advertisements

Chapter 1. Introduction This course is all about how computers work But what do we mean by a computer? –Different types: desktop, servers, embedded devices.
1  1998 Morgan Kaufmann Publishers Lectures for 2nd Edition Note: these lectures are often supplemented with other materials and also problems from the.
ECE 232 L2 Basics.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 2 Computer.
EET 4250: Chapter 1 Performance Measurement, Instruction Count & CPI Acknowledgements: Some slides and lecture notes for this course adapted from Prof.
CIS 314 : Computer Organization Lecture 1 – Introduction.
Chapter 1 Sections 1.1 – 1.3 Dr. Iyad F. Jafar Introduction.
1 CS/COE0447 Computer Organization & Assembly Language Course Intro and CH
Department of Computer and Information Science, School of Science, IUPUI Dale Roberts, Lecturer Computer Science, IUPUI CSCI.
Chapter 1 CSF 2009 Computer Abstractions and Technology.
Operating Systems Who’s in charge in there?. Types of Software Application Software : Does things we want to do System Software : Does things we need.
Digital Systems Design L01 Introduction.1 Digital Systems Design Lecture 01: Introduction Adapted from: Mary Jane Irwin ( )
CS-2710 Computer Organization Dr. Mark L. Hornick web: faculty-web.msoe.edu/hornick – CS-2710 info syllabus, homework, labs… –
Introduction CSE 410, Spring 2008 Computer Systems
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology.
EET 4250: Chapter 1 Computer Abstractions and Technology Acknowledgements: Some slides and lecture notes for this course adapted from Prof. Mary Jane Irwin.
Computer Parts. Two Basic Parts Hardware & Software.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
CS/ECE 3330 Computer Architecture Kim Hazelwood Fall 2009.
1 Computer System Organization I/O systemProcessor Compiler Operating System (Windows 98) Application (Netscape) Digital Design Circuit Design Instruction.
Computer Organization and Design Computer Abstractions and Technology
School of Computer Science & Information Technology G6DICP Introduction to Computer Programming Milena Radenkovic.
Chapter 1 — Computer Abstractions and Technology — 1 The Computer Revolution Progress in computer technology – Underpinned by Moore’s Law Makes novel applications.
Chapter 1: Introduction and History  Where does the operating system fit in a computing system?  What does the operating system achieve?  What are the.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
Computer Organization & Assembly Language © by DR. M. Amer.
1 chapter 1 Computer Architecture and Design ECE4480/5480 Computer Architecture and Design Department of Electrical and Computer Engineering University.
Chapter 1 : Overview of Computer and Programming By Suraya Alias
Chapter 1 — Computer Abstractions and Technology — 1 Below Your Program Application software – Written in high-level language System software – Compiler:
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
System Programming Basics Cha#2 H.M.Bilal. Operating Systems An operating system is the software on a computer that manages the way different programs.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
CHAPTER 2 Instruction Set Architecture 3/21/
1 Chapter 1 Background Fundamentals of Java: AP Computer Science Essentials, 4th Edition Lambert / Osborne.
Computer Architecture Organization and Architecture
Programming with Java. Chapter 1 Focuses on: –components of a computer –how those components interact –how computers store and manipulate information.
Introduction CSE 410, Spring 2005 Computer Systems
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology.
Virtualization Neependra Khare
Computer Architecture & Operations I
Introduction to Computers - Hardware
CSC235 Computer Organization & Assembly Language
Computer Architecture and Organization
Morgan Kaufmann Publishers
Morgan Kaufmann Publishers Computer Abstractions and Technology
Computer Architecture & Operations I
Chapter 1: A Tour of Computer Systems
Instruction Set Architecture
Microprocessor Systems Design I
CSE 410, Spring 2006 Computer Systems
Microprocessor Systems Design I
COSC 3406: Computer Organization
COMPUTER ORGANZIATION AND ASSEMBLY LANGUAGE
UNIV 103 CS Majors Seminar Dr. Blaise W. Liffick Fall 2017.
Who’s in charge in there?
CS775: Computer Architecture
Computer Science I CSC 135.
Morgan Kaufmann Publishers
T Computer Architecture, Autumn 2005
Chapter 3 Hardware and software 1.
Virtual Machines (Introduction to Virtual Machines)
Chapter 3 Hardware and software 1.
What is Computer Architecture?
Introduction to Microprocessor Programming
COMS 361 Computer Organization
Introduction to Computer Systems
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
Dr. Clincy Professor of CS
Presentation transcript:

CSCI206 - Computer Organization & Programming Computer Abstractions and Technology zyBook: 1.4, 1.5, 1.6, 1.7, 1.8 PH: 1.1, 1.2, 1.3, 1.4, 1.5 Based on materials from MKP, and Prof. Mary Jane Irvin (PSU)

Outline Recap last lecture Today we will discuss Course logistics C vs Python Today we will discuss Abstraction Hardware and software ISA

What’s in a computer You see a monitor (screen) of some kind You see a keyboard of some kind You know there is memory units, CPU, power units, and others But what makes all these units possible?

The Transistor Source: http://en.wikipedia.org/

Integrated circuits By The original uploader was Zephyris at English Wikipedia - Transferred from en.wikipedia to Commons by TenIslands using CommonsHelper., CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=4560427

Moore’s Law “The number of transistors on a chip will double about every two years.” (18 months) Source: http://www.intel.com/content/www/us/en/silicon-innovations/moores-law-embedded-technology.html

Where computers are

Good news, all of these computers need software! Where computers are Good news, all of these computers need software!

Personal Computers General purpose Run a wide variety of (3rd party) software Strong cost/performance tradeoffs

Server / Cloud Computing Google Datacenter in Mayes County, Oklahoma Network based High performance, memory capacity, and reliability Range from small racks to warehouse size http://www.google.com/about/datacenters

Embedded Computers Hidden in other systems Runs one program forever often not changeable by the user Stringent power/performance/cost constraints Largest class of computers (by number)!

Personal Mobile Devices Battery operated power constrained Wireless connectivity User can add new “apps”

Byte / Kilobyte / Kibibyte Decimal prefixes (SI) - typically used for physical quantities, speeds, volume, length, area, etc. Binary prefixes (CS) - used by computer scientists to measure amounts of binary data.

Concept ABSTRACTION a technique for dealing with complex systems; hide the lower-level details and expose what is meaningful for the high-level functionality.

Abstractions

Abstractions CS315 / CS205 CS206 / CS320 ECEG240 ECEG350 / PHYS235

Software abstraction? From your reading of the textbook, can you outline software abstraction?

Abstractions Applications software: Systems software: Operating System web browser, PDF, music player... Systems software: libraries, compiler, assembler, linker... Operating System task scheduling, memory management, IO... Hardware processor, memory, bus, IO (network, disk, etc)...

Concept Instruction Set Architecture (ISA) the interface between hardware and low-level software; registers, instruction set, addressing modes, etc.: everything that one needs to know to build a working machine language program.

ISA The interface between software and hardware

ISA “This abstract interface enables many implementations of varying cost and performance to run identical software.” (PH p.22) x86-64

System Abstractions Application Binary Interface (ABI) ISA Application Binary Interface (ABI) OS + ISA + system libraries Linux ABI (system call interface) on x86-64, i386, MIPS, ARM Mac OS X ABI on x86-64, 32/64 bit Power PC Windows ABI x64 vs x86 ABI

Key points Moore’s law Abstraction used in hardware and software instruction set architecture (ISA) application binary interface (ABI)