Event driven programming
|
|
- Christiana Griffin
- 5 years ago
- Views:
Transcription
1 Event driven programming Francesco Vespignani February 5, 2009
2 Today Event driven programming Matlab Sounds Matlab GUI
3 Execution Scripts are usually a set of instructions that have to be executed sequentially. For most purposes you are not interested in knowing exactly when specific computations are done but just they are executed in the right order. However an interpreter (e.g. Matlab) can decide to delay (or anticipate) specific execution steps in order to save resources (cpu time or memory). Matlab typically optimises some operations. System programming languages (e.g. C) typically do not provide such optimizations. In general lazy evaluation is a technique of delaying a computation until such time as the result of the computation is known to be needed (wikipedia).
4 File access Suppose you read or write small chunks of data from/to disk. Accessing disks is costly (time) with respect to working only with data that is present in the CPU and RAM. File access is typically bufferised in that reading-writing consists typically of (rather) large chunks. For this reason you may be sure that a file output is completed only when you give a fclose command. Before this data may be either be written on disk or be stored in a RAM buffer, waiting for more. Similar considerations hold for RAM memory allocation.
5 OS In modern computers more programs and services are allowed to run simultaneously on a same machine. In this case it is the O.S. (operative system) that shares execution resources (CPU) and memory (RAM). This can be implemented in many ways (multithreading) but from a user point of view does not matter too much. Different programs and services (Desktop environment, peripherals IO, internet services, user-level applications...) may have different priority within the access to resources. When RAM is full virtual RAMs on disks are automatically used by the O.S. (with detriment of performances).
6 Execution control In an interpreter environment such as Matlab we usually have very poor control over execution flow, both because internal Matlab. The Matlab application usually allows us to edit a file while a command is running. In some circumstances we need a precise control of the execution flow, for example when programming psychology experiments. For these purposes an exact timing of stimulation events (audio-video) and response events (keyboard, mouse button press). To do this use psychtoolbox.
7 Execution control Within sequential execution the organization of the code in functions is useful just for a better organization of the software and for re-usability. However the real power of functions and the reason we need such a construct emerge in the field of event-driven programming. Event-driven programming applies to all the situations where the execution sequence can not be determined by the programmers but it is determined by events that come from outside the program.
8 Event-driven problems Event-driven programming is useful for: Programming GUIs (menus, buttons, textbox...) it must be possible to program specific computation as a consequence of keyboard and mouse events focus. Services: programs that typically wait for other programs to perform specific functions (e.g. paper printing). Some of these services automatically run when the system starts-up but stay silent (without lot of CUP and memory consumption). Internet servers: communication protocols that act in response from requests coming from other computers. Psychology experiments where the PC has to performs some tasks (recording reaction times, creating specific stimulations) as a function of a specific behavior of the participant (e.g. modify the display when the gaze is directed to a specific point of the screen in an eye-movement experiment).
9 Event-driven elements Event loop: to build an event-driven program a loop that does nothing and waits for events is needed and must be run (matlab automatically runs one at startup). Callbacks: event driven programming consists in defining some initializations of the program (display of a GUI, opening a network connection), tell to the event-loop the events that have to captured and which actions have to be performed as a function of specific events and parameters of the event. Typically this is done by a binding of the event to a function. This type of functions, that respond to events, are called callbacks. Matlab has a built-in event-loops and specific methods to define callbacks. However the logic can be implemented in any language that has a delayed execution instruction and functions that allow to detect when specific events happens.
10 Examples Today we will see a GUI example of event driven programming: We will need to learn how: play a sound play a sound when pressing a button in a Matlab figure add a slidebar for a rating
11 Matlab Sounds
12 sound The sound function allows to play an array on the sound card of the PC: The same array can be written to files (e.g. by using wavwrite). Sounds on PC are clearly digitalized and are characterized by a sampling frequency (number of air pressure values per second) and bits (the memory size of these values). To create a pure tone (sin waveform) of frequuency f (in Hz) at the sampling fr4equency fs use the formula: a = sin([1:n]*f/fs*2*pi) A typical sampling frequency that works for nearly evry sound card is
13 Practice I hope you find a way to listen from you PC... See the examples in the website. Create a little function for creating pauses (silence). Concatenate different notes using the cat function. Create a structure that allows to play sounds using notes names (Do, Re, Mi...). Use pairlist structures: notesnames = struct( do,0, re,2); getfield(notesname, do ) Advanced: use a tapering function to avoid burst noise at sound onsets.
14 Matlab GUI
15 Handler When creating a figure with figure or other commands (such as plot or imagesc) a number is returned. This number is a handler, like the numbers returned by fopen commands. This is just a pointer that allows to further refer to the interactive graphical object created. Try the function get and set. Object s attributes can be changed with the set command and pairlist: copy of... AttributeName, value...
16 Callbacks Callbacks are just normal functions. Some objects of a GUI (as a Matlab figure) can have one (or more) function to be executed when specific actions on that object are done (e.g. button press, but also resizing etc.). To create new objects and menu there are two main commands: uimenu uicontrol Whiting these commands you can create new object (widget), change their properties, including the functions that are called upon activation of the widget (Callbacks).
17 Practice Try to change figure menus. Set up a figure with a couple of buttons (e.g. play, next, exit). Add a slidebar to record off-line judgement (e.g. higher/lower sound with respect of previous one). Set up Callbacks to record ratings and produce different sounds.
Review: Event Driven Programming & GUI. CSCE155N Matlab Fall 2016
Review: Event Driven Programming & GUI CSCE155N Matlab Fall 2016 1. Which of the following is not true about event-driven programming? A. An event source is a GUI component that could generate an event
More informationRunning Applications
Running Applications Computer Hardware Central Processing Unit (CPU) CPU PC IR MAR MBR I/O AR I/O BR To exchange data with memory Brain of Computer, controls everything Few registers PC (Program Counter):
More information(Refer Slide Time 00:01:09)
Computer Organization Part I Prof. S. Raman Department of Computer Science & Engineering Indian Institute of Technology Lecture 3 Introduction to System: Hardware In the previous lecture I said that I
More informationTHE CPU SPENDS ALMOST ALL of its time fetching instructions from memory
THE CPU SPENDS ALMOST ALL of its time fetching instructions from memory and executing them. However, the CPU and main memory are only two out of many components in a real computer system. A complete system
More informationComputer System Overview OPERATING SYSTEM TOP-LEVEL COMPONENTS. Simplified view: Operating Systems. Slide 1. Slide /S2. Slide 2.
BASIC ELEMENTS Simplified view: Processor Slide 1 Computer System Overview Operating Systems Slide 3 Main Memory referred to as real memory or primary memory volatile modules 2004/S2 secondary memory devices
More informationTutorial: GNU Radio Companion
Tutorials» Guided Tutorials» Previous: Introduction Next: Programming GNU Radio in Python Tutorial: GNU Radio Companion Objectives Create flowgraphs using the standard block libraries Learn how to debug
More informationComputational Methods of Scientific Programming
12.010 Computational Methods of Scientific Programming Lecturers Thomas A Herring, Jim Elliot, Chris Hill, Summary of last class Continued examining Matlab operations path and addpath commands Variables
More informationChapter 1 Computer System Overview
Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Seventh Edition By William Stallings Objectives of Chapter To provide a grand tour of the major computer system components:
More informationCS330: Operating System and Lab. (Spring 2006) I/O Systems
CS330: Operating System and Lab. (Spring 2006) I/O Systems Today s Topics Block device vs. Character device Direct I/O vs. Memory-mapped I/O Polling vs. Interrupts Programmed I/O vs. DMA Blocking vs. Non-blocking
More informationInput and output Systems. Peter Rounce - room G06
Input and output Systems Peter Rounce - room G06 P.Rounce@cs.ucl.ac.uk 1 Keyboard Each key-press sends on byte Each key is numbered Possibly two bytes one when pressed, one when released E.g. shift key
More informationCS 4300 Computer Graphics
CS 4300 Computer Graphics Prof. Harriet Fell Fall 2011 Lecture 8 September 22, 2011 GUIs GUIs in modern operating systems cross-platform GUI frameworks common GUI widgets event-driven programming Model-View-Controller
More informationFile system internals Tanenbaum, Chapter 4. COMP3231 Operating Systems
File system internals Tanenbaum, Chapter 4 COMP3231 Operating Systems Architecture of the OS storage stack Application File system: Hides physical location of data on the disk Exposes: directory hierarchy,
More informationCS 153 Design of Operating Systems Winter 2016
CS 153 Design of Operating Systems Winter 2016 Lecture 17: Paging Lecture Overview Recap: Today: Goal of virtual memory management: map 2^32 byte address space to physical memory Internal fragmentation
More informationComputer Organization ECE514. Chapter 5 Input/Output (9hrs)
Computer Organization ECE514 Chapter 5 Input/Output (9hrs) Learning Outcomes Course Outcome (CO) - CO2 Describe the architecture and organization of computer systems Program Outcome (PO) PO1 Apply knowledge
More informationSelection tool - for selecting the range of audio you want to edit or listen to.
Audacity Quick Guide Audacity is an easy-to-use audio editor and recorder. You can use Audacity to: Record live audio. Convert tapes and records into digital recordings or CDs. Edit sound files. Cut, copy,
More informationIntroduction to Psychtoolbox-3. Dr Cyril R Pernet Fribourg, Feb. 2012
Introduction to Psychtoolbox-3 http://psychtoolbox.org/ Dr Cyril R Pernet Fribourg, Feb. 2012 What is it? Toolbox running under Matlab and Octave to synthesize and show accurately controlled visual and
More informationEvent-driven Programming: GUIs
Dr. Sarah Abraham University of Texas at Austin Computer Science Department Event-driven Programming: GUIs Elements of Graphics CS324e Spring 2018 Event-driven Programming Programming model where code
More informationIntroduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras
Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 01 Lecture - 03 From Programs to Processes Hello. In
More informationPrivacy and Security in Online Social Networks Department of Computer Science and Engineering Indian Institute of Technology, Madras
Privacy and Security in Online Social Networks Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 04 Tutorial 1, Part 1 Ubuntu Hi everyone, welcome to the first
More informationTHE PROCESS ABSTRACTION. CS124 Operating Systems Winter , Lecture 7
THE PROCESS ABSTRACTION CS124 Operating Systems Winter 2015-2016, Lecture 7 2 The Process Abstraction Most modern OSes include the notion of a process Term is short for a sequential process Frequently
More informationDan Noé University of New Hampshire / VeloBit
Dan Noé University of New Hampshire / VeloBit A review of how the CPU works The operating system kernel and when it runs User and kernel mode Device drivers Virtualization of memory Virtual memory Paging
More informationIntroduction to Computer Systems and Operating Systems
Introduction to Computer Systems and Operating Systems Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Topics Covered 1. Computer History 2. Computer System
More informationTHREADS & CONCURRENCY
27/04/2018 Sorry for the delay in getting slides for today 2 Another reason for the delay: Yesterday: 63 posts on the course Piazza yesterday. A7: If you received 100 for correctness (perhaps minus a late
More informationSummary of Computer Architecture
Summary of Computer Architecture Summary CHAP 1: INTRODUCTION Structure Top Level Peripherals Computer Central Processing Unit Main Memory Computer Systems Interconnection Communication lines Input Output
More informationComputational Methods of Scientific Programming. Matlab Lecture 3 Lecturers Thomas A Herring Chris Hill
12.010 Computational Methods of Scientific Programming Matlab Lecture 3 Lecturers Thomas A Herring Chris Hill Summary of last class Continued examining Matlab operations path and addpath commands Variables
More informationParts of the Computer System. Parts of the Computer System. Parts of the Computer System. Essential Computer Hardware. Information Processing Cycle
Looking Inside the Computer System NOS 116, 118, 218, 222 Handout 10 Hardware & Software Computer systems have four parts Hardware Software Data User 1 1B-2 Hardware Mechanical devices in the computer
More informationThreads SPL/2010 SPL/20 1
Threads 1 Today Processes and Scheduling Threads Abstract Object Models Computation Models Java Support for Threads 2 Process vs. Program processes as the basic unit of execution managed by OS OS as any
More information2 Processes. 2 Processes. 2 Processes. 2.1 The Process Model. 2.1 The Process Model PROCESSES OPERATING SYSTEMS
OPERATING SYSTEMS PROCESSES 2 All modern computers often do several things at the same time. A modern operating system sees each software as a process. When a user PC is booted, many processes are secretly
More informationInput (part 2: input models)
Input (part 2: input models) Dealing with diversity Saw lots of diversity in devices actual details of devices (e.g., device drivers) is a real pain how do we deal with the diversity? Need a model (abstraction)
More informationEmbedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi
Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 13 Virtual memory and memory management unit In the last class, we had discussed
More informationChapter 07: Instruction Level Parallelism VLIW, Vector, Array and Multithreaded Processors. Lesson 06: Multithreaded Processors
Chapter 07: Instruction Level Parallelism VLIW, Vector, Array and Multithreaded Processors Lesson 06: Multithreaded Processors Objective To learn meaning of thread To understand multithreaded processors,
More information1. A folder inside a folder is called. a) Mini Directory b) Sub Directory c) Root Folder d) Child Folder e) None of these
1. A folder inside a folder is called. a) Mini Directory b) Sub Directory c) Root Folder d) Child Folder 2. A mouse is this kind of device a) Input b) Output c) Network d) Storage 3. All deleted files
More informationThe Concept of Sample Rate. Digitized amplitude and time
Data Acquisition Basics Data acquisition is the sampling of continuous real world information to generate data that can be manipulated by a computer. Acquired data can be displayed, analyzed, and stored
More informationComputer System Overview
Computer System Overview Operating Systems 2005/S2 1 What are the objectives of an Operating System? 2 What are the objectives of an Operating System? convenience & abstraction the OS should facilitate
More informationWriting to and reading from files
Writing to and reading from files printf() and scanf() are actually short-hand versions of more comprehensive functions, fprintf() and fscanf(). The difference is that fprintf() includes a file pointer
More informationCHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.
CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System
More informationCOP 1170 Introduction to Computer Programming using Visual Basic
Course Justification This course is the first computer programming course in the Computer Information Systems Associate in Arts degree program; is required in the Computer Programming and Analysis, Database
More informationSECTION 2 (Part B) Types And Components Of Computer Systems. Sophia Pratzioti
SECTION 2 (Part B) Types And Components Of Computer Systems 2 Hardware & Software Hardware: is the physical parts of the computer system the part that you can touch and see. Hardware can be either external
More informationChapter 2: Operating-System Structures
Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System
More informationUNIVERSITY OF CALIFORNIA AT BERKELEY. Name:
UNIVERSITY OF CALIFORNIA AT BERKELEY COMPUTER SCIENCE DIVISION - EECS CS160 Second Midterm Examination Prof L.A. Rowe Spring 2001 Name: Score: Question Possible Points 1 (50 points) 2 (10 points) 3 (20
More informationTemplates what and why? Beware copying classes! Templates. A simple example:
Beware copying classes! Templates what and why? class A { private: int data1,data2[5]; float fdata; public: // methods etc. } A a1,a2; //some work initializes a1... a2=a1; //will copy all data of a2 into
More informationSystem Call. Preview. System Call. System Call. System Call 9/7/2018
Preview Operating System Structure Monolithic Layered System Microkernel Virtual Machine Process Management Process Models Process Creation Process Termination Process State Process Implementation Operating
More informationSome Basic Terminology
Some Basic Terminology A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Here are a few terms you'll run into: A Application Files Program files environment where you can create and edit the kind of
More informationBut before understanding the Selenium WebDriver concept, we need to know about the Selenium first.
As per the today s scenario, companies not only desire to test software adequately, but they also want to get the work done as quickly and thoroughly as possible. To accomplish this goal, organizations
More informationOperating Systems Concepts
Operating Systems Concepts Introduction Operating System (OS) An Operating System is the layer of software that manages a computer s resources for its users and their applications. It abstracts the use
More informationToday: Computer System Overview (Stallings, chapter ) Next: Operating System Overview (Stallings, chapter ,
Lecture Topics Today: Computer System Overview (Stallings, chapter 1.1-1.8) Next: Operating System Overview (Stallings, chapter 2.1-2.4, 2.8-2.10) 1 Announcements Syllabus and calendar available Consulting
More informationOperating Systems. Designed and Presented by Dr. Ayman Elshenawy Elsefy
Operating Systems Designed and Presented by Dr. Ayman Elshenawy Elsefy Dept. of Systems & Computer Eng.. AL-AZHAR University Website : eaymanelshenawy.wordpress.com Email : eaymanelshenawy@yahoo.com Reference
More informationSystems software. Definition. Categories of software. Examples Of Systems Software 11/23/2018
Systems Computer Software Is an interface or buffer between application and hardware Controls the computer hardware and acts as an interface with applications programs Definition A series of detailed instructions
More informationChapter 2: Operating-System Structures. Operating System Concepts 9 th Edition
Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System
More informationSmart Data Link with KM Switch. User Manual MD-KM-PIP
Smart Data Link with KM Switch User Manual MD-KM-PIP Table of Contents Introduction...3 Specifications.3 Hardware Installation....4 AP Installation of USB Cable KVM with Data Link....5 The Icon Status...
More informationLAB 1 Machine Perception of Music Computer Science , Winter Quarter 2006
1.0 Lab overview and objectives This laboratory assignment will help you learn basic sound manipulation using MATLAB 7. Lab due time/date: 1pn, 1/11/2006 What to hand in: see Section 5 of this document
More informationo Reality The CPU switches between each process rapidly (multiprogramming) Only one program is active at a given time
Introduction o Processes are a key concept in operating systems Abstraction of a running program Contains all information necessary to run o On modern systems, many processes are active at the same time
More informationIntroduction to Asynchronous Programming Fall 2014
CS168 Computer Networks Fonseca Introduction to Asynchronous Programming Fall 2014 Contents 1 Introduction 1 2 The Models 1 3 The Motivation 3 4 Event-Driven Programming 4 5 select() to the rescue 5 1
More information[537] Fast File System. Tyler Harter
[537] Fast File System Tyler Harter File-System Case Studies Local - FFS: Fast File System - LFS: Log-Structured File System Network - NFS: Network File System - AFS: Andrew File System File-System Case
More informationCHAPTER 3 - PROCESS CONCEPT
CHAPTER 3 - PROCESS CONCEPT 1 OBJECTIVES Introduce a process a program in execution basis of all computation Describe features of processes: scheduling, creation, termination, communication Explore interprocess
More informationComputer Basics 1/24/13. Computer Organization. Computer systems consist of hardware and software.
Hardware and Software Computer Basics TOPICS Computer Organization Data Representation Program Execution Computer Languages Computer systems consist of hardware and software. Hardware includes the tangible
More informationDownload from Powered By JbigDeaL
1. If a word is typed that is not in Word s dictionary, a wavy underline appears below the word. (A) red (B) green (C) blue (D) black 2. The button on the quick access Toolbar allows you to cancel your
More informationChapter 4: Threads. Overview Multithreading Models Thread Libraries Threading Issues Operating System Examples Windows XP Threads Linux Threads
Chapter 4: Threads Overview Multithreading Models Thread Libraries Threading Issues Operating System Examples Windows XP Threads Linux Threads Chapter 4: Threads Objectives To introduce the notion of a
More informationExercise (could be a quiz) Solution. Concurrent Programming. Roadmap. Tevfik Koşar. CSE 421/521 - Operating Systems Fall Lecture - IV Threads
Exercise (could be a quiz) 1 2 Solution CSE 421/521 - Operating Systems Fall 2013 Lecture - IV Threads Tevfik Koşar 3 University at Buffalo September 12 th, 2013 4 Roadmap Threads Why do we need them?
More informationComputer Basics. Lesson 1 Introduction to Computers. Edited by C. Rhodes 08/11
Computer Basics Lesson 1 Introduction to Computers Edited by C. Rhodes 08/11 ESSENTIAL STANDARD Computer Basics ESSENTIAL QUESTIONS What are the parts and features of a computer? What are the functions
More informationMemory Management. Goals of Memory Management. Mechanism. Policies
Memory Management Design, Spring 2011 Department of Computer Science Rutgers Sakai: 01:198:416 Sp11 (https://sakai.rutgers.edu) Memory Management Goals of Memory Management Convenient abstraction for programming
More informationCS 201. Exceptions and Processes. Gerson Robboy Portland State University
CS 201 Exceptions and Processes Gerson Robboy Portland State University Control Flow Computers Do One Thing From startup to shutdown, a CPU reads and executes (interprets) a sequence of instructions, one
More informationCHAPTER 2 BASIC OPERATING SYSTEM CONCEPT MANAGEMENT
CHAPTER 2 BASIC OPERATING SYSTEM CONCEPT MANAGEMENT Types of User Interface USER INTERFACE Command Interface Menu Interface Graphical User Interface Voice actuated Interface Web- form Interface User interface
More informationElementary Computing CSC M. Cheng, Computer Science 1
Elementary Computing CSC 100 2014-07-14 M. Cheng, Computer Science 1 File & Operating Systems Every computer has an Operating System (OS). An OS is a piece of software that manages the resources on every
More informationChapter 2. Operating-System Structures
Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System
More informationCHAPTER 03: MULTIMEDIA & OPERATING SYSTEM. :: Operating System :: ~ What is OS?~ ~ OS Functions~ ~ OS Characteristics ~ ~ Type of OS~
CHAPTER 03: MULTIMEDIA & OPERATING SYSTEM :: Operating System :: ~ What is OS?~ ~ OS Functions~ ~ OS Characteristics ~ ~ Type of OS~ 1 Operating System and Software Computer Operating System An operating
More informationUNIT -3 PROCESS AND OPERATING SYSTEMS 2marks 1. Define Process? Process is a computational unit that processes on a CPU under the control of a scheduling kernel of an OS. It has a process structure, called
More informationThe coloured area that is seen on the screen. The pictures stand for items you might see on real desktop such as my computer.
Operating Systems Function of the OS : 1. Provides instructions to display the on screen elements with which you interact. Collectively, these elements are known as the user interface. 2. Loads programs
More informationLecture 2 Operating System Structures (chapter 2)
Bilkent University Department of Computer Engineering CS342 Operating Systems Lecture 2 Operating System Structures (chapter 2) Dr. İbrahim Körpeoğlu http://www.cs.bilkent.edu.tr/~korpe 1 References The
More informationDiagram of Process State Process Control Block (PCB)
The Big Picture So Far Chapter 4: Processes HW Abstraction Processor Memory IO devices File system Distributed systems Example OS Services Process management, protection, synchronization Memory Protection,
More informationLab 4: Interrupts and Realtime
Lab 4: Interrupts and Realtime Overview At this point, we have learned the basics of how to write kernel driver module, and we wrote a driver kernel module for the LCD+shift register. Writing kernel driver
More informationDefinition. A series of detailed instructions that control the operation of a computer system. are developed by computer programmers
Computer Software Definition A series of detailed instructions that control the operation of a computer system. Software exists as programs that are developed by computer programmers Categories of software
More informationDisks and I/O Hakan Uraz - File Organization 1
Disks and I/O 2006 Hakan Uraz - File Organization 1 Disk Drive 2006 Hakan Uraz - File Organization 2 Tracks and Sectors on Disk Surface 2006 Hakan Uraz - File Organization 3 A Set of Cylinders on Disk
More informationElementary Computing CSC 100. M. Cheng, Computer Science
Elementary Computing CSC 100 1 File & Operating Systems Every computer has an Operating System (OS). An OS is a piece of software that manages the resources on every computer. User Interfaces and File
More informationInput/Output Management
Chapter 11 Input/Output Management This could be the messiest aspect of an operating system. There are just too much stuff involved, it is difficult to develop a uniform and consistent theory to cover
More informationUnit 2 : Computer and Operating System Structure
Unit 2 : Computer and Operating System Structure Lesson 1 : Interrupts and I/O Structure 1.1. Learning Objectives On completion of this lesson you will know : what interrupt is the causes of occurring
More informationIntroduction. CS3026 Operating Systems Lecture 01
Introduction CS3026 Operating Systems Lecture 01 One or more CPUs Device controllers (I/O modules) Memory Bus Operating system? Computer System What is an Operating System An Operating System is a program
More informationModule 11: I/O Systems
Module 11: I/O Systems Reading: Chapter 13 Objectives Explore the structure of the operating system s I/O subsystem. Discuss the principles of I/O hardware and its complexity. Provide details on the performance
More informationSmall rectangles (and sometimes squares like this
Lab exercise 1: Introduction to LabView LabView is software for the real time acquisition, processing and visualization of measured data. A LabView program is called a Virtual Instrument (VI) because it,
More informationProcess Time. Steven M. Bellovin January 25,
Multiprogramming Computers don t really run multiple programs simultaneously; it just appears that way Each process runs to completion, but intermixed with other processes Process 1 6 ticks Process 2 Process
More informationComputer System Overview
Computer System Overview Introduction A computer system consists of hardware system programs application programs 2 Operating System Provides a set of services to system users (collection of service programs)
More informationVisual Profiler. User Guide
Visual Profiler User Guide Version 3.0 Document No. 06-RM-1136 Revision: 4.B February 2008 Visual Profiler User Guide Table of contents Table of contents 1 Introduction................................................
More informationInput / Output. School of Computer Science G51CSA
Input / Output 1 Overview J I/O module is the third key element of a computer system. (others are CPU and Memory) J All computer systems must have efficient means to receive input and deliver output J
More informationOperating Systems. Operating Systems
The operating system defines our computing experience. It is the first software we see when we turn on the computer, and the last software we see when the computer is turned off. It's the software that
More informationCSCA0201 FUNDAMENTALS OF COMPUTING. Chapter 6 Operating Systems
CSCA0201 FUNDAMENTALS OF COMPUTING Chapter 6 Operating Systems 1 1. Operating Systems 2. Types of Operating System 3. Major Functions 4. User Interface 5. Examples of Operating System 2 Operating Systems
More informationParallelism and Concurrency. COS 326 David Walker Princeton University
Parallelism and Concurrency COS 326 David Walker Princeton University Parallelism What is it? Today's technology trends. How can we take advantage of it? Why is it so much harder to program? Some preliminary
More informationInput/Output Systems
Input/Output Systems CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture have been largely based on those from an earlier edition of the course text Operating
More informationChapter 3: Process Concept
Chapter 3: Process Concept Chapter 3: Process Concept Process Concept Process Scheduling Operations on Processes Inter-Process Communication (IPC) Communication in Client-Server Systems Objectives 3.2
More informationChapter 3: Process Concept
Chapter 3: Process Concept Chapter 3: Process Concept Process Concept Process Scheduling Operations on Processes Inter-Process Communication (IPC) Communication in Client-Server Systems Objectives 3.2
More informationUser Interface Design. Interface Design 4. User Interface Design. User Interface Design. User Interface Design. User Interface Design
Specification of a conversation between the user and the computer. Generally results in either input, output or both. An important part of systems and software development. An intuitive and easy to use
More informationResource Management IB Computer Science. Content developed by Dartford Grammar School Computer Science Department
Resource Management IB Computer Science Content developed by Dartford Grammar School Computer Science Department HL Topics 1-7, D1-4 1: System design 2: Computer Organisation 3: Networks 4: Computational
More informationNetworks and Operating Systems Chapter 11: Introduction to Operating Systems
Systems Group Department of Computer Science ETH Zürich Networks and Operating Systems Chapter 11: Introduction to Operating Systems (252-0062-00) Donald Kossmann & Torsten Hoefler Frühjahrssemester 2012
More informationAnswer to exercises chap 13.2
Answer to exercises chap 13.2 The advantage of supporting memory-mapped I/O to device-control registers is that it eliminates the need for special I/O instructions from the instruction set and therefore
More informationChapter 3: Processes. Operating System Concepts 9 th Edition
Chapter 3: Processes Silberschatz, Galvin and Gagne 2013 Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Interprocess Communication Examples of IPC Systems Communication
More informationCLAD Sample Exam 06. B. Panel Resize. C. Panel Close? D. Value Change
Name: Date: CLAD Sample Exam 06 1. Which of the following user interface events will allow your code to respond before LabVIEW performs the default action associated with that event? A. Mouse Down B. Panel
More informationBASIC OPERATIONS. Managing System Resources
48 PART 2 BASIC OPERATIONS C H A P T E R 5 Managing System Resources CHAPTER 5 MANAGING SYSTEM RESOURCES 49 THE part of Windows Vista that you see the Vista desktop is just part of the operating system.
More informationCOMP I/O, interrupts, exceptions April 3, 2016
In this lecture, I will elaborate on some of the details of the past few weeks, and attempt to pull some threads together. System Bus and Memory (cache, RAM, HDD) We first return to an topic we discussed
More informationIn examining performance Interested in several things Exact times if computable Bounded times if exact not computable Can be measured
System Performance Analysis Introduction Performance Means many things to many people Important in any design Critical in real time systems 1 ns can mean the difference between system Doing job expected
More informationQUESTION BANK UNIT I
QUESTION BANK Subject Name: Operating Systems UNIT I 1) Differentiate between tightly coupled systems and loosely coupled systems. 2) Define OS 3) What are the differences between Batch OS and Multiprogramming?
More informationLDPC Simulation With CUDA GPU
LDPC Simulation With CUDA GPU EE179 Final Project Kangping Hu June 3 rd 2014 1 1. Introduction This project is about simulating the performance of binary Low-Density-Parity-Check-Matrix (LDPC) Code with
More information