# An Introduction to Computer Science and Computer Organization Comp 150 Fall 2008

Save this PDF as:

Size: px
Start display at page:

Download "An Introduction to Computer Science and Computer Organization Comp 150 Fall 2008"

## Transcription

1 An Introduction to Computer Science and Computer Organization Comp 150 Fall 2008 Computer Science the study of algorithms, including Their formal and mathematical properties Their hardware realizations Their linguistic realizations Their applications So what is an algorithm? N. Gibbs and A. Tucker. "A Model Curriculum for a Liberal Arts Degree in Computer Science"; CACM 29, No 3 (March 1986) Definition of Algorithm (after Al Kho-war-iz-mi a 9th century Persian mathematician) - an ordered sequence of unambiguous and well-defined instructions that performs some task and halts in finite time Let's examine the four parts of this definition more closely 1. an ordered sequence means that you can number the steps (it's socks then shoes!) 2. unambiguous and well-defined instructions means that each instruction is clear and doable 3. performs some task 4. halts in finite time (algorithms terminate!) In other words, an algorithm is like a recipe. Algorithms can be executed by a computing agent which is not necessarily a computer. A computer program is an implementation of an algorithm, a detailed step-by-step set of instructions telling a computer exactly what to do (Zelle p. 2); a computer is an electronic device for executing an algorithm. A computer is an electronic device, operating under the control of instructions stored in its own memory unit, that 1. accepts data (input), 2. processes data arithmetically and logically, 3. produces output (information) from the processing, and/or 4. stores the results for future use. The phrase instructions stored in its own memory unit is the stored program concept. Because a computer makes no distinction between data and code a computer has the ability to modify its own programming. This is what makes the computer so versatile and powerful. 1

2 The computer is also a universal machine in the sense that it is a general-purpose symbolmanipulating machine capable of executing any sequence of instructions (a program) stored in its main memory. A modern computer can be defined as a machine that stores and manipulates information under the control of a changeable program (Zelle p. 1) The above definition(s) for a computer naturally leads to the physical make-up or hardware of a computer. The Hardware Components of a computer consist of 1. Input (s): keyboard and/or mouse. 2. Central Processing Unit (CPU) which consists of two sub-units program control unit which fetches and executes instructions arithmetic-logic unit (ALU) which performs arithmetic and logical operations 3. Main Memory which stores both the code and data for the current program 4. Output (s): monitor screen and/or printer 5. Secondary Storage device(s): hard drives (disks), floppy drives (diskettes), jump drives, CD s, DVD s and/or network drives. Note that these are really I/O devices Note how the hardware components of a computer parallel the definition of a computer given above. Of course by itself hardware is nothing without the software to drive it. Input CPU Main Memory Output Secondary Storage Functional View of a Von Neumann Computer (Zelle p. 5) 2

4 5. Accesses to memory are done by specifying the address, not the contents. A memory access either fetches (reads from memory) or stores (writes to memory) the complete contents of a memory cell; you can t access just part of a memory cell. A memory cell is the smallest unit of information that can be fetched from or stored to memory. 6. As noted above, a distinction is made between the address of a cell and its contents (very much like the distinction between the variable x and the value of the variable x). 7. When using a bus to connect memory to the CPU, there are separate Data, Address and Control lines. Access time is the same for all cells. Today access time is very fast, anywhere from 50 to 200 nanoseconds (one nanosecond equals 10 to the minus 9 seconds or 1 billionth of a second) 8. Physically memory can be visualized as a numbered list of cells, similar to an array or list where each components or entry is uniquely identified by its position (number) i.e. the address in the list Cache Memory: Despite the fast speed of memory access, the CPU (Central Processing Unit) is faster. Faster memory is possible but expensive. Cache memory is a small but faster (5-10 times faster) memory interposed between main memory and the CPU. When the CPU fetches the contents of a memory address from main memory, the contents and the contents of the surrounding cells are copied to cache memory (called a cache line). Thereafter if the CPU tries to access that same cell (or a cell close by), it can obtain the contents from the faster cache memory. The reason this works due to the Principle of Locality which is the observation that when a computer accesses a memory location the probability is high that in the near future it will access that memory location again (temporal locality) or a memory location which is nearby (spatial locality). Memory accesses are done in parallel to both the main memory and the cache. If the access is "satisfied out of cache", the slower main memory access is aborted. Cache hit ratio is the fraction of memory accesses satisfied out of cache. A cache hit ratio of 90% or above is not uncommon. Computer Software It s all about software. Since a computer operates under the control of instructions stored in its memory unit, (stored program concept), a computer is only as good as the software that controls it. 4

5 Recall: At the lowest level, a computer is constructed out of bi-stable electronic components, components that maintain one of two states (off or on) which is represented by 0 or 1. The 0/1 is called a bit which is a contraction of binary digit. All instructions (and data) that reside in memory are in binary. This machine code is very low level and is very specific to that particular type of CPU (so a Mac G4 CPU understands a different binary code from an Intel CPU). Note that Macs and Window machines also run under different operating systems - another kind of difference. There are at least three levels of computer languages: machine code, assembler, high level languages. Binary machine code has three problems Machine Code 1. It s written in binary, 0 s and 1 s, so it s very hard to read and write 2. The instructions are very low level so writing any kind of moderately complicated application is both complicated and time consuming. 3. Code that runs on one type of CPU will not run on a different type of CPU. We say the code is not portable. Assembler Language Assembler language is mnemonic codes for machine codes. For example instead of using the Intel 80x86 machine code we use add ax, a; that is, add the contents at address a to the contents of the AX register. 1. Assembler language is easier to program than machine code 2. It s easy to write an Assembler, a program which translates assembler language to machine code. 3. Assembler language is logically no more powerful than machine code; its instructions are still very low level so writing any kind of moderately complicated application is till complicated and time consuming. Like machine code assembler language is machine oriented, not human oriented 4. The assembler language code is not portable between different types of CPU s. High Level Languages a.k.a. High Order Languages or HOL s A high level language is procedure oriented meaning that you code the procedure used to solve the problem. An algorithm is coded in a high level language which is human friendly then translated by a special computer program (either a compiler or an interpreter) to machine code. A compiler translates the high level language code (called the source code) completely into machine code (called object code). Then the object code is executed by the computer. An interpreter translates one source code statement into machine code then executes it. This is repeated. 5

### Python Programming: An Introduction to Computer Science

Python Programming: An Introduction to Computer Science Chapter 1 Computers and Programs 1 The Universal Machine n A computer -- a machine that stores and manipulates information under the control of a

### Python Programming: An Introduction to Computer Science

Python Programming: An Introduction to Computer Science Chapter 1 Computers and Programs 1 Objectives To understand the respective roles of hardware and software in a computing system. To learn what computer

### Objectives. Python Programming: An Introduction to Computer Science. Lab 01. What we ll learn in this class

Python Programming: An Introduction to Computer Science Chapter 1 Computers and Programs Objectives Introduction to the class Why we program and what that means Introduction to the Python programming language

### Machine Architecture and Number Systems. Major Computer Components. Schematic Diagram of a Computer. The CPU. The Bus. Main Memory.

1 Topics Machine Architecture and Number Systems Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number System Converting from Decimal to Binary Major Computer Components

### Primary Memory. Input Units CPU (Central Processing Unit)

Basic Concepts of Computer Hardware Primary Memory Input Units CPU (Central Processing Unit) Output Units This model of the typical digital computer is often called the von Neuman compute Programs and

### Copyright 2012 Pearson Education, Inc. Chapter 1 INTRODUCTION TO COMPUTING AND ENGINEERING PROBLEM SOLVING

Chapter 1 INTRODUCTION TO COMPUTING AND ENGINEERING PROBLEM SOLVING Outline Objectives 1. Historical Perspective 2. Recent Engineering Achievements 3. Computing Systems 4. Data Representation and Storage

This is an electronic version of the print textbook. Due to electronic rights restrictions, some third party content may be suppressed. Editorial review has deemed that any suppressed content does not

### Computer Systems Structure Main Memory Organization

Computer Systems Structure Main Memory Organization Peripherals Computer Central Processing Unit Main Memory Computer Systems Interconnection Communication lines Input Output Ward 1 Ward 2 Storage/Memory

### Operating System Overview. Otto J. Anshus

Operating System Overview Otto J. Anshus A Typical Computer CPU... CPU Memory Chipset I/O bus ROM Keyboard Network A Typical Computer System CPU. CPU Memory Application(s) Operating System ROM OS Apps

### Chapter 1. The largest computers, used mainly for research, are called a. microcomputers. b. maxicomputers. c. supercomputers. d. mainframe computers.

Chapter 1 CD-ROM stands for: a. Compact Disk Random Only Memory b. Compact Disk Read Only Memory c. Computer Device Read Only Memory d. Computer Disk Random Online Memory Control Unit (CU) is the a. Main

### Computer System: User s View. Computer System Components: High Level View. Input. Output. Computer. Computer System: Motherboard Level

System: User s View System Components: High Level View Input Output 1 System: Motherboard Level 2 Components: Interconnection I/O MEMORY 3 4 Organization Registers ALU CU 5 6 1 Input/Output I/O MEMORY

### Computer Programming. Course Details An Introduction to Computational Tools. Prof. Mauro Gaspari: mauro.gaspari@unibo.it

Computer Programming Course Details An Introduction to Computational Tools Prof. Mauro Gaspari: mauro.gaspari@unibo.it Road map for today The skills that we would like you to acquire: to think like a computer

### AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping

AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping 3.1.1 Constants, variables and data types Understand what is mean by terms data and information Be able to describe the difference

### CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

CS 3530 Operating Systems L02 OS Intro Part 1 Dr. Ken Hoganson Chapter 1 Basic Concepts of Operating Systems Computer Systems A computer system consists of two basic types of components: Hardware components,

### Basics of Computer 1.1 INTRODUCTION 1.2 OBJECTIVES

Basics of Computer :: 1 1 Basics of Computer 1.1 INTRODUCTION In this lesson we present an overview of the basic design of a computer system: how the different parts of a computer system are organized

### What is a programming language?

Overview Introduction Motivation Why study programming languages? Some key concepts What is a programming language? Artificial language" Computers" Programs" Syntax" Semantics" What is a programming language?...there

### 1.1 Electronic Computers Then and Now

1.1 Electronic Computers Then and Now The first electronic computer was built in the late 1930s by Dr.John Atanasoff and Clifford Berry at Iowa State University in USA. They designed their computer to

### CHAPTER 1 ENGINEERING PROBLEM SOLVING. Copyright 2013 Pearson Education, Inc.

CHAPTER 1 ENGINEERING PROBLEM SOLVING Computing Systems: Hardware and Software The processor : controls all the parts such as memory devices and inputs/outputs. The Arithmetic Logic Unit (ALU) : performs

### CS 40 Computing for the Web

CS 40 Computing for the Web Art Lee January 20, 2015 Announcements Course web on Sakai Homework assignments submit them on Sakai Email me the survey: See the Announcements page on the course web for instructions

### Logical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit.

Objectives The Central Processing Unit: What Goes on Inside the Computer Chapter 4 Identify the components of the central processing unit and how they work together and interact with memory Describe how

### Chapter 6. Inside the System Unit. What You Will Learn... Computers Are Your Future. What You Will Learn... Describing Hardware Performance

What You Will Learn... Computers Are Your Future Chapter 6 Understand how computers represent data Understand the measurements used to describe data transfer rates and data storage capacity List the components

### CPU Organization and Assembly Language

COS 140 Foundations of Computer Science School of Computing and Information Science University of Maine October 2, 2015 Outline 1 2 3 4 5 6 7 8 Homework and announcements Reading: Chapter 12 Homework:

### Introduction to Computers and Programming

M01_GADD7119_01_SE_C01.QXD 1/30/08 12:55 AM Page 1 CHAPTER 1 Introduction to Computers and Programming TOPICS 1.1 Introduction 1.2 Hardware and Software 1.3 How Computers Store Data 1.4 How a Program Works

### Overview of Programming and Problem Solving

Overview of Programming and Problem Solving To be able to define computer program, algorithm, and high-level programming language. To be able to list the basic stages involved in writing a computer program.

### Chapter 8 Memory Units

Chapter 8 Memory Units Contents: I. Introduction Basic units of Measurement II. RAM,ROM,PROM,EPROM Storage versus Memory III. Auxiliary Storage Devices-Magnetic Tape, Hard Disk, Floppy Disk IV.Optical

### Subject knowledge requirements for entry into computer science teacher training. Expert group s recommendations

Subject knowledge requirements for entry into computer science teacher training Expert group s recommendations Introduction To start a postgraduate primary specialist or secondary ITE course specialising

### CS 51 Intro to CS. Art Lee. September 2, 2014

CS 51 Intro to CS Art Lee September 2, 2014 Announcements Course web page at: http://www.cmc.edu/pages/faculty/alee/cs51/ Homework/Lab assignment submission on Sakai: https://sakai.claremont.edu/portal/site/cx_mtg_79055

### Introducción. Diseño de sistemas digitales.1

Introducción Adapted from: Mary Jane Irwin ( www.cse.psu.edu/~mji ) www.cse.psu.edu/~cg431 [Original from Computer Organization and Design, Patterson & Hennessy, 2005, UCB] Diseño de sistemas digitales.1

### Database Fundamentals

Database Fundamentals Computer Science 105 Boston University David G. Sullivan, Ph.D. Bit = 0 or 1 Measuring Data: Bits and Bytes One byte is 8 bits. example: 01101100 Other common units: name approximate

### Obj: Sec 1.0, to describe the relationship between hardware and software HW: Read p.2 9. Do Now: Name 3 parts of the computer.

C1 D1 Obj: Sec 1.0, to describe the relationship between hardware and software HW: Read p.2 9 Do Now: Name 3 parts of the computer. 1 Hardware and Software Hardware the physical, tangible parts of a computer

### Lesson 06: Basics of Software Development (W02D2

Lesson 06: Basics of Software Development (W02D2) Balboa High School Michael Ferraro Lesson 06: Basics of Software Development (W02D2 Do Now 1. What is the main reason why flash

### Fall 2012 Q530. Programming for Cognitive Science

Fall 2012 Q530 Programming for Cognitive Science Aimed at little or no programming experience. Improve your confidence and skills at: Writing code. Reading code. Understand the abilities and limitations

### (Refer Slide Time: 02:39)

Computer Architecture Prof. Anshul Kumar Department of Computer Science and Engineering, Indian Institute of Technology, Delhi Lecture - 1 Introduction Welcome to this course on computer architecture.

### COMPUTER HARDWARE. Input- Output and Communication Memory Systems

COMPUTER HARDWARE Input- Output and Communication Memory Systems Computer I/O I/O devices commonly found in Computer systems Keyboards Displays Printers Magnetic Drives Compact disk read only memory (CD-ROM)

### Slide Set 8. for ENCM 369 Winter 2015 Lecture Section 01. Steve Norman, PhD, PEng

Slide Set 8 for ENCM 369 Winter 2015 Lecture Section 01 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Winter Term, 2015 ENCM 369 W15 Section

### Input / Ouput devices. I/O Chapter 8. Goals & Constraints. Measures of Performance. Anatomy of a Disk Drive. Introduction - 8.1

Introduction - 8.1 I/O Chapter 8 Disk Storage and Dependability 8.2 Buses and other connectors 8.4 I/O performance measures 8.6 Input / Ouput devices keyboard, mouse, printer, game controllers, hard drive,

On Demand Loading of Code in MMUless Embedded System Sunil R Gandhi *. Chetan D Pachange, Jr.** Mandar R Vaidya***, Swapnilkumar S Khorate**** *Pune Institute of Computer Technology, Pune INDIA (Mob- 8600867094;

### Introduction To Computers: Hardware and Software

What Is Hardware? Introduction To Computers: Hardware and Software A computer is made up of hardware. Hardware is the physical components of a computer system e.g., a monitor, keyboard, mouse and the computer

### Monday January 19th 2015 Title: "Transmathematics - a survey of recent results on division by zero" Facilitator: TheNumberNullity / James Anderson, UK

Monday January 19th 2015 Title: "Transmathematics - a survey of recent results on division by zero" Facilitator: TheNumberNullity / James Anderson, UK It has been my pleasure to give two presentations

### CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages. Nicki Dell Spring 2014

CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages Nicki Dell Spring 2014 What is a Programming Language? A set of symbols and associated tools that translate (if necessary) collections

### EKT150 Introduction to Computer Programming. Wk1-Introduction to Computer and Computer Program

EKT150 Introduction to Computer Programming Wk1-Introduction to Computer and Computer Program A Brief Look At Computer Computer is a device that receives input, stores and processes data, and provides

### Physical Data Organization

Physical Data Organization Database design using logical model of the database - appropriate level for users to focus on - user independence from implementation details Performance - other major factor

### Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

55 Topic 3 Computer Performance Contents 3.1 Introduction...................................... 56 3.2 Measuring performance............................... 56 3.2.1 Clock Speed.................................

### Data Cables. Schmitt TTL LABORATORY ELECTRONICS II

Data Cables Data cables link one instrument to another. Signals can attenuate or disperse on long wires. A direct wire works best for short cables of less than 10 ft. A TTL cable connection can use a Schmitt

### Chapter 4 IT Infrastructure: Hardware and Software

1 Chapter 4 IT Infrastructure: Hardware and Software LEARNING TRACK 1: HOW COMPUTER HARDWARE AND SOFTWARE WORK Although managers and business professionals do not need to be computer technology experts,

### Learning Outcomes. Simple CPU Operation and Buses. Composition of a CPU. A simple CPU design

Learning Outcomes Simple CPU Operation and Buses Dr Eddie Edwards eddie.edwards@imperial.ac.uk At the end of this lecture you will Understand how a CPU might be put together Be able to name the basic components

### 1 PERSONAL COMPUTERS

PERSONAL COMPUTERS 1 2 Personal computer a desktop computer a laptop a tablet PC or a handheld PC Software applications for personal computers include word processing spreadsheets databases web browsers

### Introduction to Computers and C++ Programming

1 Introduction to Computers and C++ Programming 1.1 Computer Systems 2 Hardware 2 Software 7 High-Level Languages 8 Compilers 9 History Note 12 1.2 Programming and Problem-Solving 13 Algorithms 14 Program

Points missed: Student's Name: Total score: /100 points East Tennessee State University Department of Computer and Information Sciences CSCI 4717 Computer Architecture TEST 2 for Fall Semester, 2006 Section

### CHAPTER 17: File Management

CHAPTER 17: File Management The Architecture of Computer Hardware, Systems Software & Networking: An Information Technology Approach 4th Edition, Irv Englander John Wiley and Sons 2010 PowerPoint slides

### Writing Assignment #2 due Today (5:00pm) - Post on your CSC101 webpage - Ask if you have questions! Lab #2 Today. Quiz #1 Tomorrow (Lectures 1-7)

Overview of Computer Science CSC 101 Summer 2011 Main Memory vs. Auxiliary Storage Lecture 7 July 14, 2011 Announcements Writing Assignment #2 due Today (5:00pm) - Post on your CSC101 webpage - Ask if

### Udacity cs101: Building a Search Engine. Extracting a Link

Udacity cs101: Building a Search Engine Unit 1: How to get started: your first program Extracting a Link Introducing the Web Crawler (Video: Web Crawler)... 2 Quiz (Video: First Quiz)...2 Programming (Video:

### Computers and Programs

Chapter 1 Computers and Programs Objectives To understand the respective roles of hardware and software in a computing system. To learn what computer scientists study and the techniques that they use.

### OPERATING SYSTEMS MEMORY MANAGEMENT

OPERATING SYSTEMS MEMORY MANAGEMENT Jerry Breecher 8: Memory Management 1 OPERATING SYSTEM Memory Management What Is In This Chapter? Just as processes share the CPU, they also share physical memory. This

### CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 2: Operating System Structures Prof. Alan Mislove (amislove@ccs.neu.edu) Operating System Services Operating systems provide an environment for

### Compilers. Introduction to Compilers. Lecture 1. Spring term. Mick O Donnell: michael.odonnell@uam.es Alfonso Ortega: alfonso.ortega@uam.

Compilers Spring term Mick O Donnell: michael.odonnell@uam.es Alfonso Ortega: alfonso.ortega@uam.es Lecture 1 to Compilers 1 Topic 1: What is a Compiler? 3 What is a Compiler? A compiler is a computer

### Communicating with devices

Introduction to I/O Where does the data for our CPU and memory come from or go to? Computers communicate with the outside world via I/O devices. Input devices supply computers with data to operate on.

### Welcome to Introduction to Computers and Programming Course using Python

Welcome to Introduction to Computers and Programming Course using Python V22.0002, Section 3, Spring 2010 Course Introduction Professor: Sana Odeh odeh@courant.nyu.edu Office hours: Mondays 2:00 pm - 4

### Example of Standard API

16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface

### Operating Systems. Virtual Memory

Operating Systems Virtual Memory Virtual Memory Topics. Memory Hierarchy. Why Virtual Memory. Virtual Memory Issues. Virtual Memory Solutions. Locality of Reference. Virtual Memory with Segmentation. Page

### CE 504 Computational Hydrology Computational Environments and Tools Fritz R. Fiedler

CE 504 Computational Hydrology Computational Environments and Tools Fritz R. Fiedler 1) Operating systems a) Windows b) Unix and Linux c) Macintosh 2) Data manipulation tools a) Text Editors b) Spreadsheets

### Candle Plant process automation based on ABB 800xA Distributed Control Systems

Candle Plant process automation based on ABB 800xA Distributed Control Systems Yousef Iskandarani and Karina Nohammer Department of Engineering University of Agder Jon Lilletuns vei 9, 4879 Grimstad Norway

### Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions

### Chapter 13: Program Development and Programming Languages

15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning

### Operating System Structures

COP 4610: Introduction to Operating Systems (Spring 2015) Operating System Structures Zhi Wang Florida State University Content Operating system services User interface System calls System programs Operating

### Fall 2009. Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu.

Fall 2009 Lecture 1 Operating Systems: Configuration & Use CIS345 Introduction to Operating Systems Mostafa Z. Ali mzali@just.edu.jo 1-1 Chapter 1 Introduction to Operating Systems An Overview of Microcomputers

### Operating Systems Overview

Operating Systems Overview No single definition, but many perspectives: Role in an overall system: Intermediary between computer hardware and everything else User view: Provides an environment, preferably

### A Programming Language for Mechanical Translation Victor H. Yngve, Massachusetts Institute of Technology, Cambridge, Massachusetts

[Mechanical Translation, vol.5, no.1, July 1958; pp. 25-41] A Programming Language for Mechanical Translation Victor H. Yngve, Massachusetts Institute of Technology, Cambridge, Massachusetts A notational

### Module 1 Introduction to Information and Communication Technologies

Module 1 Introduction to Information and Communication Technologies Lesson 3 What are the Hardware Components of a Computer? UNESCO EIPICT Module 1. Lesson 3 1 Rationale The hardware components are the

### Computer Organization & Architecture Lecture #19

Computer Organization & Architecture Lecture #19 Input/Output The computer system s I/O architecture is its interface to the outside world. This architecture is designed to provide a systematic means of

### Windows Server Performance Monitoring

Spot server problems before they are noticed The system s really slow today! How often have you heard that? Finding the solution isn t so easy. The obvious questions to ask are why is it running slowly

### Chapter 11 I/O Management and Disk Scheduling

Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 11 I/O Management and Disk Scheduling Dave Bremer Otago Polytechnic, NZ 2008, Prentice Hall I/O Devices Roadmap Organization

### University of Hull Department of Computer Science. Wrestling with Python Week 01 Playing with Python

Introduction Welcome to our Python sessions. University of Hull Department of Computer Science Wrestling with Python Week 01 Playing with Python Vsn. 1.0 Rob Miles 2013 Please follow the instructions carefully.

### Chapter 3: Operating-System Structures. Common System Components

Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1

### OPERATING SYSTEM SERVICES

OPERATING SYSTEM SERVICES USER INTERFACE Command line interface(cli):uses text commands and a method for entering them Batch interface(bi):commands and directives to control those commands are entered

### Types Of Operating Systems

Types Of Operating Systems Date 10/01/2004 1/24/2004 Operating Systems 1 Brief history of OS design In the beginning OSes were runtime libraries The OS was just code you linked with your program and loaded

### Computer Hardware Submitted in partial fulfillment of the requirement for the award of degree Of MCA

A Seminar report On Computer Hardware Submitted in partial fulfillment of the requirement for the award of degree Of MCA SUBMITTED TO: SUBMITTED BY: www.studymafia.org www.studymafia.org Preface I have

### Embedded Software development Process and Tools: Lesson-4 Linking and Locating Software

Embedded Software development Process and Tools: Lesson-4 Linking and Locating Software 1 1. Linker 2 Linker Links the compiled codes of application software, object codes from library and OS kernel functions.

### CS3813 Performance Monitoring Project

CS3813 Performance Monitoring Project Owen Kaser October 8, 2014 1 Introduction In this project, you should spend approximately 20 hours to experiment with Intel performance monitoring facilities, and

### Python Programming: An Introduction to Computer Science. John M. Zelle, Ph.D.

Python Programming: An Introduction to Computer Science John M. Zelle, Ph.D. Version 1.0rc2 Fall 2002 Copyright c 2002 by John M. Zelle All rights reserved. No part of this publication may be reproduced,

### Memory Systems. Static Random Access Memory (SRAM) Cell

Memory Systems This chapter begins the discussion of memory systems from the implementation of a single bit. The architecture of memory chips is then constructed using arrays of bit implementations coupled

### Practical Programming, 2nd Edition

Extracted from: Practical Programming, 2nd Edition An Introduction to Computer Science Using Python 3 This PDF file contains pages extracted from Practical Programming, 2nd Edition, published by the Pragmatic

### Chapter 3 Operating-System Structures

Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual

### COMPUTER BASICS. Seema Sirpal Delhi University Computer Centre

COMPUTER BASICS Seema Sirpal Delhi University Computer Centre What is a Computer? An electronic device that stores, retrieves, and processes data, and can be programmed with instructions. A computer is

### File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

CS341: Operating System Lect 36: 1 st Nov 2014 Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati File System & Device Drive Mass Storage Disk Structure Disk Arm Scheduling RAID

### INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

INTRODUCTION TO DIGITAL SYSTEMS 1 DESCRIPTION AND DESIGN OF DIGITAL SYSTEMS FORMAL BASIS: SWITCHING ALGEBRA IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE COURSE EMPHASIS:

### Writing Portable Programs COS 217

Writing Portable Programs COS 217 1 Goals of Today s Class Writing portable programs in C Sources of heterogeneity Data types, evaluation order, byte order, char set, Reading period and final exam Important

### Operating Systems: Basic Concepts and History

Introduction to Operating Systems Operating Systems: Basic Concepts and History An operating system is the interface between the user and the architecture. User Applications Operating System Hardware Virtual

C How to Program, 6/e The core of the book emphasizes achieving program clarity through the proven techniques of structured programming. You ll learn programming the right way from the beginning. We

### Computer Architecture Prof. Mainak Chaudhuri Department of Computer Science and Engineering Indian Institute of Technology, Kanpur

Computer Architecture Prof. Mainak Chaudhuri Department of Computer Science and Engineering Indian Institute of Technology, Kanpur Lecture - 35 Input/Output (Refer Slide Time: 00:13) So, today we will

### Lecture N -1- PHYS 3330. Microcontrollers

Lecture N -1- PHYS 3330 Microcontrollers If you need more than a handful of logic gates to accomplish the task at hand, you likely should use a microcontroller instead of discrete logic gates 1. Microcontrollers

### A Python Tour: Just a Brief Introduction CS 303e: Elements of Computers and Programming

A Python Tour: Just a Brief Introduction CS 303e: Elements of Computers and Programming "The only way to learn a new programming language is by writing programs in it." -- B. Kernighan and D. Ritchie "Computers

### Chapter 1. Computation theory

Chapter 1. Computation theory In this chapter we will describe computation logic for the machines. This topic is a wide interdisciplinary field, so that the students can work in an interdisciplinary context.

The Deadlock Problem Deadlocks A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set. Example System has 2 tape drives. P 1 and P 2 each

### Chapter 4 System Unit Components. Discovering Computers 2012. Your Interactive Guide to the Digital World

Chapter 4 System Unit Components Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate among various styles of system units on desktop computers, notebook

### OAMulator. Online One Address Machine emulator and OAMPL compiler. http://myspiders.biz.uiowa.edu/~fil/oam/

OAMulator Online One Address Machine emulator and OAMPL compiler http://myspiders.biz.uiowa.edu/~fil/oam/ OAMulator educational goals OAM emulator concepts Von Neumann architecture Registers, ALU, controller

### System Structures. Services Interface Structure

System Structures Services Interface Structure Operating system services (1) Operating system services (2) Functions that are helpful to the user User interface Command line interpreter Batch interface