Lecture Notes Week 4. Once the CPU is up and running, the routine scheduler() is never called again except in the routine sched().

Size: px
Start display at page:

Download "Lecture Notes Week 4. Once the CPU is up and running, the routine scheduler() is never called again except in the routine sched()."

Transcription

1 1 XV6 Scheduler The xv6 scheduler user pure Round Robin It definitely as starvation and is definitely non-optimal The xv6 scheduler is in procc Two routines comprise the scheduler: scheduler() and sched() When a CPU first starts, no true context switch can take place, so it is faked in mainc after userinit() runs Recall that userinit() manually creates the first process (can t use fork() just yet) and places it in the RUNNABLE state // Common CPU s e t u p code static mpmain( ) c p r i n t f ( cpu%d : s t a r t i n g \n, cpu >id ) ; i d t i n i t ( ) ; // load i d t r e g i s t e r xchg(&cpu >s t a r t e d, 1 ) ; // t e l l s t a r t o t h e r s ( ) we re up s c h e d u l e r ( ) ; // s t a r t running p r o c e s s e s Once the CPU is up and running, the routine scheduler() is never called again except in the routine sched() Note This is an area where practice diverges from theory Texts tell us that a context switch occurs when one process leaves the CPU and another enters the CPU This implies, for many students, that the switch is direct the first process actually loads the second process Not so The reality is made explicit in the xv6 scheduler 1 sched() This function causes the currently executing process to removed from the processor and the scheduler context for this processor to be loaded (each processor has its own scheduler context) 2 scheduler() This function loops through the list of processes looking for ones that are in the RUNNABLE state The first one it finds is scheduled Note Note This code is very, very tricky It is important to trace the code down into swtch to see the context switch happen It is equally important to note that the function swtch() is called but not really returned from The assembly code for the context switch routine is in swtchs 1

2 # Context switch # # swtch ( struct context old, struct context new ) ; # # Save c u r r e n t register context in old # and then load register context from new g l o b l swtch swtch : movl 4(%esp ), %eax movl 8(%esp ), %edx # Save old c a l l e e save r e g i s t e r s pushl %ebp pushl %ebx pushl %e s i pushl %e d i # Switch s t a c k s movl %esp, (%eax ) movl %edx, %esp # Load new c a l l e e save r e g i s t e r s popl %e d i popl %e s i popl %ebx popl %ebp r e t So, who calls sched()? 1 exit() Voluntary yield (process is done) 2 yield() See trapc 3 sleep() Voluntary yield 2

3 // Enter s c h e d u l e r Must hold only p t a b l e l o c k // and have changed proc >s t a t e sched ( ) int i n t e n a ; i f (! holding(& p t a b l e l o c k ) ) panic ( sched p t a b l e l o c k ) ; i f ( cpu >n c l i!= 1) panic ( sched l o c k s ) ; i f ( proc >s t a t e == RUNNING) panic ( sched running ) ; i f ( r e a d e f l a g s ()&FL IF ) panic ( sched i n t e r r u p t i b l e ) ; i n t e n a = cpu >i n t e n a ; swtch(&proc >context, cpu >s c h e d u l e r ) ; cpu >i n t e n a = i n t e n a ; // Per CPU p r o c e s s s c h e d u l e r // Each CPU c a l l s s c h e d u l e r ( ) a f t e r s e t t i n g i t s e l f up // Scheduler never r e t u r n s I t loops, doing : // choose a p r o c e s s to run // swtch to s t a r t running t h a t p r o c e s s // e v e n t u a l l y t h a t p r o c e s s t r a n s f e r s c o n t r o l // v i a swtch back to the s c h e d u l e r s c h e d u l e r ( ) struct proc p ; for ( ; ; ) // Enable i n t e r r u p t s on t h i s p r o c e s s o r s t i ( ) ; // Loop over p r o c e s s t a b l e l o o k i n g f o r p r o c e s s to run a c q u i r e (& p t a b l e l o c k ) ; for ( p = p t a b l e proc ; p < &ptable proc [NPROC] ; p++) i f (p >s t a t e!= RUNNABLE) continue ; // Switch to chosen p r o c e s s I t i s the p r o c e s s s j o b // to r e l e a s e p t a b l e l o c k and then r e a c q u i r e i t // b e f o r e jumping back to us 3

4 proc = p ; switchuvm ( p ) ; p >s t a t e = RUNNING; swtch(&cpu >scheduler, proc >context ) ; switchkvm ( ) ; // Process i s done running f o r now // I t should have changed i t s p >s t a t e b e f o r e coming back proc = 0 ; r e l e a s e (& p t a b l e l o c k ) ; The yield() function can be called directly (voluntary) or through trap() (involuntary) xv6 does not invoke yield() on a syscall trap ( s t r u c t trapframe t f ) i f ( t f >trapno == T SYSCALL) switch ( t f >trapno ) case T IRQ0 + IRQ TIMER : i f ( cpu >id == 0) a c q u i r e (& t i c k s l o c k ) ; t i c k s ++; wakeup(& t i c k s ) ; r e l e a s e (& t i c k s l o c k ) ; l a p i c e o i ( ) ; break ; // Force p r o c e s s to g i v e up CPU on c l o c k t i c k // I f i n t e r r u p t s were on while l o c k s held, would need to check nlock i f ( proc && proc >s t a t e == RUNNING && t f >trapno == T IRQ0+IRQ TIMER) y i e l d ( ) ; The relationship between the timer length and the involuntary yield exposes some weaknesses with MLFQ with budgeting in xv6 (P3) 4

5 2 Project 3: MLFQ Scheduler 1 Walk-through of project description 2 Think carefully about the design 3 Implementation should be such that small pieces can be tested before you move on 5

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application Administrivia 1. markem/cs333/ 2. Staff 3. Prerequisites 4. Grading Course Objectives 1. Theory and application 2. Benefits 3. Labs TAs Overview 1. What is a computer system? CPU PC ALU System bus Memory

More information

Process Scheduling. Process Scheduling. CPU and I/O Bursts. CPU - I/O Burst Cycle. Variations in Bursts. Histogram of CPU Burst Times

Process Scheduling. Process Scheduling. CPU and I/O Bursts. CPU - I/O Burst Cycle. Variations in Bursts. Histogram of CPU Burst Times Scheduling The objective of multiprogramming is to have some process running all the time The objective of timesharing is to have the switch between processes so frequently that users can interact with

More information

vsyscall and vdso Adrien «schischi» Schildknecht vsyscall and vdso March 17, 2014

vsyscall and vdso Adrien «schischi» Schildknecht vsyscall and vdso March 17, 2014 March 17, 2014 Section 1 Introduction Goal In computing, a system call is how a program requests a service from an operating system s kernel. This may include hardware related services (e.g. accessing

More information

LSN 15 Processor Scheduling

LSN 15 Processor Scheduling LSN 15 Processor Scheduling ECT362 Operating Systems Department of Engineering Technology LSN 15 Processor Scheduling LSN 15 FCFS/FIFO Scheduling Each process joins the Ready queue When the current process

More information

CPU Scheduling. CPU Scheduler

CPU Scheduling. CPU Scheduler CPU Scheduling These slides are created by Dr. Huang of George Mason University. Students registered in Dr. Huang s courses at GMU can make a single machine readable copy and print a single copy of each

More information

Comp 204: Computer Systems and Their Implementation. Lecture 11: Scheduling cont d

Comp 204: Computer Systems and Their Implementation. Lecture 11: Scheduling cont d Comp 204: Computer Systems and Their Implementation Lecture 11: Scheduling cont d 1 Today Scheduling algorithms continued Shortest remaining time first (SRTF) Priority scheduling Round robin (RR) Multilevel

More information

Computer Architecture

Computer Architecture Computer Architecture QtSpim, a Mips simulator S. Coudert and R. Pacalet January 4, 2018..................... Memory Mapping 0xFFFF000C 0xFFFF0008 0xFFFF0004 0xffff0000 0x90000000 0x80000000 0x7ffff4d4

More information

CS 550 Operating Systems Spring CPU scheduling I

CS 550 Operating Systems Spring CPU scheduling I 1 CS 550 Operating Systems Spring 2018 CPU scheduling I Process Lifecycle Ready Process is ready to execute, but not yet executing Its waiting in the scheduling queue for the CPU scheduler to pick it up.

More information

Module 5: CPU Scheduling

Module 5: CPU Scheduling Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 5.1 Basic Concepts Maximum CPU utilization obtained

More information

Scheduling I. Today Introduction to scheduling Classical algorithms. Next Time Advanced topics on scheduling

Scheduling I. Today Introduction to scheduling Classical algorithms. Next Time Advanced topics on scheduling Scheduling I Today Introduction to scheduling Classical algorithms Next Time Advanced topics on scheduling Scheduling out there You are the manager of a supermarket (ok, things don t always turn out the

More information

Chapter 6: CPU Scheduling

Chapter 6: CPU Scheduling Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 6.1 Basic Concepts Maximum CPU utilization obtained

More information

CPU Scheduling Exercises

CPU Scheduling Exercises CPU Scheduling Exercises NOTE: All time in these exercises are in msec. Processes P 1, P 2, P 3 arrive at the same time, but enter the job queue in the order presented in the table. Time quantum = 3 msec

More information

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm Real-time operating systems course 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm Definitions Scheduling Scheduling is the activity of selecting which process/thread should

More information

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #4 MIPS Assembly and Simulation

More information

2/5/07 CSE 30341: Operating Systems Principles

2/5/07 CSE 30341: Operating Systems Principles page 1 Shortest-Job-First (SJR) Scheduling Associate with each process the length of its next CPU burst. Use these lengths to schedule the process with the shortest time Two schemes: nonpreemptive once

More information

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling Scheduling I Today! Introduction to scheduling! Classical algorithms Next Time! Advanced topics on scheduling Scheduling out there! You are the manager of a supermarket (ok, things don t always turn out

More information

DETERMINING THE VARIABLE QUANTUM TIME (VQT) IN ROUND ROBIN AND IT S IMPORTANCE OVER AVERAGE QUANTUM TIME METHOD

DETERMINING THE VARIABLE QUANTUM TIME (VQT) IN ROUND ROBIN AND IT S IMPORTANCE OVER AVERAGE QUANTUM TIME METHOD D DETERMINING THE VARIABLE QUANTUM TIME (VQT) IN ROUND ROBIN AND IT S IMPORTANCE OVER AVERAGE QUANTUM TIME METHOD Yashasvini Sharma 1 Abstract The process scheduling, is one of the most important tasks

More information

CPU SCHEDULING RONG ZHENG

CPU SCHEDULING RONG ZHENG CPU SCHEDULING RONG ZHENG OVERVIEW Why scheduling? Non-preemptive vs Preemptive policies FCFS, SJF, Round robin, multilevel queues with feedback, guaranteed scheduling 2 SHORT-TERM, MID-TERM, LONG- TERM

More information

CSCE 313 Introduction to Computer Systems. Instructor: Dezhen Song

CSCE 313 Introduction to Computer Systems. Instructor: Dezhen Song CSCE 313 Introduction to Computer Systems Instructor: Dezhen Song Schedulers in the OS CPU Scheduling Structure of a CPU Scheduler Scheduling = Selection + Dispatching Criteria for scheduling Scheduling

More information

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University Che-Wei Chang chewei@mail.cgu.edu.tw Department of Computer Science and Information Engineering, Chang Gung University } 2017/11/15 Midterm } 2017/11/22 Final Project Announcement 2 1. Introduction 2.

More information

CHAPTER 5 - PROCESS SCHEDULING

CHAPTER 5 - PROCESS SCHEDULING CHAPTER 5 - PROCESS SCHEDULING OBJECTIVES To introduce CPU scheduling, which is the basis for multiprogrammed operating systems To describe various CPU-scheduling algorithms To discuss evaluation criteria

More information

Simulation of Process Scheduling Algorithms

Simulation of Process Scheduling Algorithms Simulation of Process Scheduling Algorithms Project Report Instructor: Dr. Raimund Ege Submitted by: Sonal Sood Pramod Barthwal Index 1. Introduction 2. Proposal 3. Background 3.1 What is a Process 4.

More information

Lecture 4: Process Management

Lecture 4: Process Management Lecture 4: Process Management Process Revisited 1. What do we know so far about Linux on X-86? X-86 architecture supports both segmentation and paging. 48-bit logical address goes through the segmentation

More information

UC Santa Barbara. Operating Systems. Christopher Kruegel Department of Computer Science UC Santa Barbara

UC Santa Barbara. Operating Systems. Christopher Kruegel Department of Computer Science UC Santa Barbara Operating Systems Christopher Kruegel Department of Computer Science http://www.cs.ucsb.edu/~chris/ Many processes to execute, but one CPU OS time-multiplexes the CPU by operating context switching Between

More information

CPU scheduling. CPU Scheduling

CPU scheduling. CPU Scheduling EECS 3221 Operating System Fundamentals No.4 CPU scheduling Prof. Hui Jiang Dept of Electrical Engineering and Computer Science, York University CPU Scheduling CPU scheduling is the basis of multiprogramming

More information

CIS 4930/6930: Principles of Cyber-Physical Systems

CIS 4930/6930: Principles of Cyber-Physical Systems CIS 4930/6930: Principles of Cyber-Physical Systems Chapter 11 Scheduling Hao Zheng Department of Computer Science and Engineering University of South Florida H. Zheng (CSE USF) CIS 4930/6930: Principles

More information

Operating systems and concurrency B03

Operating systems and concurrency B03 Operating systems and concurrency B03 David Kendall Northumbria University David Kendall (Northumbria University) Operating systems and concurrency B03 1 / 13 Introduction A key function of OS is interrupt

More information

Worst-Case Execution Time Analysis. LS 12, TU Dortmund

Worst-Case Execution Time Analysis. LS 12, TU Dortmund Worst-Case Execution Time Analysis Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 09/10, Jan., 2018 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 43 Most Essential Assumptions for Real-Time Systems Upper

More information

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts.

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts. TDDI4 Concurrent Programming, Operating Systems, and Real-time Operating Systems CPU Scheduling Overview: CPU Scheduling CPU bursts and I/O bursts Scheduling Criteria Scheduling Algorithms Multiprocessor

More information

Worst-Case Execution Time Analysis. LS 12, TU Dortmund

Worst-Case Execution Time Analysis. LS 12, TU Dortmund Worst-Case Execution Time Analysis Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 02, 03 May 2016 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 53 Most Essential Assumptions for Real-Time Systems Upper

More information

TDDB68 Concurrent programming and operating systems. Lecture: CPU Scheduling II

TDDB68 Concurrent programming and operating systems. Lecture: CPU Scheduling II TDDB68 Concurrent programming and operating systems Lecture: CPU Scheduling II Mikael Asplund, Senior Lecturer Real-time Systems Laboratory Department of Computer and Information Science Copyright Notice:

More information

CSE 380 Computer Operating Systems

CSE 380 Computer Operating Systems CSE 380 Computer Operating Systems Instructor: Insup Lee & Dianna Xu University of Pennsylvania, Fall 2003 Lecture Note 3: CPU Scheduling 1 CPU SCHEDULING q How can OS schedule the allocation of CPU cycles

More information

Activity Title: It s Either Very Hot or Very Cold Up There!

Activity Title: It s Either Very Hot or Very Cold Up There! Grades 3-5 Teacher Pages Activity Title: It s Either Very Hot or Very Cold Up There! Activity Objective(s): In this activity, and the follow-up activity next week, teams will design and conduct experiments

More information

4.4 The Calendar program

4.4 The Calendar program 4.4. THE CALENDAR PROGRAM 109 4.4 The Calendar program To illustrate the power of functions, in this section we will develop a useful program that allows the user to input a date or a month or a year.

More information

Naive Bayes classification

Naive Bayes classification Naive Bayes classification Christos Dimitrakakis December 4, 2015 1 Introduction One of the most important methods in machine learning and statistics is that of Bayesian inference. This is the most fundamental

More information

Latches. October 13, 2003 Latches 1

Latches. October 13, 2003 Latches 1 Latches The second part of CS231 focuses on sequential circuits, where we add memory to the hardware that we ve already seen. Our schedule will be very similar to before: We first show how primitive memory

More information

Half Life Variable Quantum Time Round Robin (HLVQTRR)

Half Life Variable Quantum Time Round Robin (HLVQTRR) Half Life Variable Quantum Time Round Robin () Simon Ashiru, Salleh Abdullahi, Sahalu Junaidu Department of Mathematics, ABU Zaria, Nigeria Abstract Round Robin (RR), one of the oldest CPU scheduling algorithms

More information

On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work

On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work Lab 5 : Linking Name: Sign the following statement: On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work 1 Objective The main objective of this lab is to experiment

More information

Name Date Time to Complete

Name Date Time to Complete Name Date Time to Complete h m Partner Course/ Section / Grade Complex Circuits In this laboratory you will connect electric lamps together in a variety of circuits. The purpose of these exercises is to

More information

LAMC Intermediate I & II October 12, Oleg Gleizer. Warm-up

LAMC Intermediate I & II October 12, Oleg Gleizer. Warm-up LAMC Intermediate I & II October 2, 204 Oleg Gleizer prof40g@math.ucla.edu Warm-up Problem A student was asked to divide some number by two and to add three to the result. By mistake, the student multiplied

More information

Beams III -- Shear Stress: 1

Beams III -- Shear Stress: 1 Beams III -- Shear Stress: 1 Internal Shear Force Shear Stress Formula for Beams The First Area Moment, Q Shear Stresses in Beam Flanges Shear Distribution on an I Beam 1 2 In this stack we will derive

More information

Process Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach

Process Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach Process Scheduling for RTS Dr. Hugh Melvin, Dept. of IT, NUI,G RTS Scheduling Approach RTS typically control multiple parameters concurrently Eg. Flight Control System Speed, altitude, inclination etc..

More information

CS429: Computer Organization and Architecture

CS429: Computer Organization and Architecture CS429: Computer Organization and Architecture Warren Hunt, Jr. and Bill Young Department of Computer Sciences University of Texas at Austin Last updated: September 3, 2014 at 08:38 CS429 Slideset C: 1

More information

VELA. Getting started with the VELA Versatile Laboratory Aid. Paul Vernon

VELA. Getting started with the VELA Versatile Laboratory Aid. Paul Vernon VELA Getting started with the VELA Versatile Laboratory Aid Paul Vernon Contents Preface... 3 Setting up and using VELA... 4 Introduction... 4 Setting VELA up... 5 Programming VELA... 6 Uses of the Programs...

More information

Operating Systems. VII. Synchronization

Operating Systems. VII. Synchronization Operating Systems VII. Synchronization Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ @OS Eurecom Outline Synchronization issues 2/22 Fall 2017 Institut

More information

Real-Time Systems. Event-Driven Scheduling

Real-Time Systems. Event-Driven Scheduling Real-Time Systems Event-Driven Scheduling Marcus Völp, Hermann Härtig WS 2013/14 Outline mostly following Jane Liu, Real-Time Systems Principles Scheduling EDF and LST as dynamic scheduling methods Fixed

More information

There are four irrational roots with approximate values of

There are four irrational roots with approximate values of Power of the Quadratic Formula 1 y = (x ) - 8(x ) + 4 a = 1, b = -8, c = 4 Key 1. Consider the equation y = x 4 8x + 4. It may be a surprise, but we can use the quadratic formula to find the x-intercepts

More information

Lightcloud Application

Lightcloud Application Controlling Your Lightcloud System Lightcloud Application Lightcloud Application Navigating the Application Devices Device Settings Organize Control Energy Scenes Schedules Demand Response Power Up State

More information

3. The figure above shows two pith balls suspended by threads from a support. In the figure,

3. The figure above shows two pith balls suspended by threads from a support. In the figure, 3. The figure above shows two pith balls suspended by threads from a support. In the figure, Student ID: 22133336 Exam: 002901RR - Electronics Basics When you have completed your exam and reviewed your

More information

Deadlock (2) Dave Eckhardt Brian Railing Roger Dannenberg

Deadlock (2) Dave Eckhardt Brian Railing Roger Dannenberg Deadlock () Dave Eckhardt Brian Railing Roger Dannenberg 1 1-410, S'18 Synchronization P You should really have, today: Drawn pictures of thread stacks (even if not perfect) Figured out where stubs belong,

More information

1 Lamport s Bakery Algorithm

1 Lamport s Bakery Algorithm Com S 6 Spring Semester 2009 Algorithms for Multiprocessor Synchronization Lecture 3: Tuesday, 27th January 2009 Instructor: Soma Chaudhuri Scribe: Neeraj Khanolkar Lamport s Bakery Algorithm Algorithm

More information

Lecture 10: Powers of Matrices, Difference Equations

Lecture 10: Powers of Matrices, Difference Equations Lecture 10: Powers of Matrices, Difference Equations Difference Equations A difference equation, also sometimes called a recurrence equation is an equation that defines a sequence recursively, i.e. each

More information

CycleTandem: Energy-Saving Scheduling for Real-Time Systems with Hardware Accelerators

CycleTandem: Energy-Saving Scheduling for Real-Time Systems with Hardware Accelerators CycleTandem: Energy-Saving Scheduling for Real-Time Systems with Hardware Accelerators Sandeep D souza and Ragunathan (Raj) Rajkumar Carnegie Mellon University High (Energy) Cost of Accelerators Modern-day

More information

CSE370: Introduction to Digital Design

CSE370: Introduction to Digital Design CSE370: Introduction to Digital Design Course staff Gaetano Borriello, Brian DeRenzi, Firat Kiyak Course web www.cs.washington.edu/370/ Make sure to subscribe to class mailing list (cse370@cs) Course text

More information

CPU Scheduling. Heechul Yun

CPU Scheduling. Heechul Yun CPU Scheduling Heechul Yun 1 Recap Four deadlock conditions: Mutual exclusion No preemption Hold and wait Circular wait Detection Avoidance Banker s algorithm 2 Recap: Banker s Algorithm 1. Initialize

More information

Ingredients of Multivariable Change: Models, Graphs, Rates & 9.1 Cross-Sectional Models and Multivariable Functions

Ingredients of Multivariable Change: Models, Graphs, Rates & 9.1 Cross-Sectional Models and Multivariable Functions Chapter 9 Ingredients of Multivariable Change: Models, Graphs, Rates & 9.1 Cross-Sectional Models and Multivariable Functions For a multivariable function with two input variables described by data given

More information

Revamped Round Robin Scheduling Algorithm

Revamped Round Robin Scheduling Algorithm Revamped Round Robin Scheduling Chhayanath Padhy, M.Tech Student, Government College of Engineering Kalahandi, Odissa, India Dillip Ranjan Nayak, Assistant Professor, Government College of Engineering

More information

Lies My Calculator and Computer Told Me

Lies My Calculator and Computer Told Me Lies My Calculator and Computer Told Me 2 LIES MY CALCULATOR AND COMPUTER TOLD ME Lies My Calculator and Computer Told Me See Section.4 for a discussion of graphing calculators and computers with graphing

More information

Design at the Register Transfer Level

Design at the Register Transfer Level Week-7 Design at the Register Transfer Level Algorithmic State Machines Algorithmic State Machine (ASM) q Our design methodologies do not scale well to real-world problems. q 232 - Logic Design / Algorithmic

More information

Energy and the Electron: Atomic View and Argumentation. b. Draw what you think an atom looks like. Label the different parts of the atom.

Energy and the Electron: Atomic View and Argumentation. b. Draw what you think an atom looks like. Label the different parts of the atom. Name Energy and the Electron: Atomic View and Argumentation Part I: Warm Up 1. Consider the following questions individually: a. What do you know about the structure of the atom? b. Draw what you think

More information

Acceleration of Gravity

Acceleration of Gravity EV3 program description The program 10 determines the acceleration of gravity of a small metal ball by calculating the time between the opening of the arm and the ball s collision on a Touch Sensor. If

More information

I/O Devices. Device. Lecture Notes Week 8

I/O Devices. Device. Lecture Notes Week 8 I/O Devices CPU PC ALU System bus Memory bus Bus interface I/O bridge Main memory USB Graphics adapter I/O bus Disk other devices such as network adapters Mouse Keyboard Disk hello executable stored on

More information

PHY221 Lab 2 - Experiencing Acceleration: Motion with constant acceleration; Logger Pro fits to displacement-time graphs

PHY221 Lab 2 - Experiencing Acceleration: Motion with constant acceleration; Logger Pro fits to displacement-time graphs Page 1 PHY221 Lab 2 - Experiencing Acceleration: Motion with constant acceleration; Logger Pro fits to displacement-time graphs Print Your Name Print Your Partners' Names You will return this handout to

More information

Dataflow Analysis. A sample program int fib10(void) { int n = 10; int older = 0; int old = 1; Simple Constant Propagation

Dataflow Analysis. A sample program int fib10(void) { int n = 10; int older = 0; int old = 1; Simple Constant Propagation -74 Lecture 2 Dataflow Analysis Basic Blocks Related Optimizations SSA Copyright Seth Copen Goldstein 200-8 Dataflow Analysis Last time we looked at code transformations Constant propagation Copy propagation

More information

Energy Estimation for CPU-Events Dependent on Frequency Scaling and Clock Gating. Philip P. Moltmann

Energy Estimation for CPU-Events Dependent on Frequency Scaling and Clock Gating. Philip P. Moltmann Energy Estimation for CPU-Events Dependent on Frequency Scaling and Clock Gating Philip P. Moltmann System Architecture Group (IBDS Bellosa) Department of Computer Science University of Karlsruhe (TH)

More information

base 2 4 The EXPONENT tells you how many times to write the base as a factor. Evaluate the following expressions in standard notation.

base 2 4 The EXPONENT tells you how many times to write the base as a factor. Evaluate the following expressions in standard notation. EXPONENTIALS Exponential is a number written with an exponent. The rules for exponents make computing with very large or very small numbers easier. Students will come across exponentials in geometric sequences

More information

A Predictive System Shutdown Method for Energy Saving of. Chi-Hong Hwang and Allen C.-H. Wu. Department of Computer Science, Tsing Hua University

A Predictive System Shutdown Method for Energy Saving of. Chi-Hong Hwang and Allen C.-H. Wu. Department of Computer Science, Tsing Hua University A Predictive System Shutdown Method for Energy Saving of Event-Driven Computation Chi-Hong Hwang and Allen C.-H. Wu Department of Computer Science, Tsing Hua University Hsinchu, Taiwan, 300, Republic of

More information

Enrico Nardelli Logic Circuits and Computer Architecture

Enrico Nardelli Logic Circuits and Computer Architecture Enrico Nardelli Logic Circuits and Computer Architecture Appendix B The design of VS0: a very simple CPU Rev. 1.4 (2009-10) by Enrico Nardelli B - 1 Instruction set Just 4 instructions LOAD M - Copy into

More information

Abstract Interpretation and Static Analysis

Abstract Interpretation and Static Analysis / 1 Abstract Interpretation and Static Analysis David Schmidt Kansas State University www.cis.ksu.edu/~schmidt Welcome! / 2 / 3 Four parts 1. Introduction to static analysis what it is and how to apply

More information

ConcepTest PowerPoints

ConcepTest PowerPoints ConcepTest PowerPoints Chapter 19 Physics: Principles with Applications, 6 th edition Giancoli 2005 Pearson Prentice Hall This work is protected by United States copyright laws and is provided solely for

More information

Student Instruction Sheet: Unit 3, Lesson 3. Solving Quadratic Relations

Student Instruction Sheet: Unit 3, Lesson 3. Solving Quadratic Relations Student Instruction Sheet: Unit 3, Lesson 3 Solving Quadratic Relations Suggested Time: 75 minutes What s important in this lesson: In this lesson, you will learn how to solve a variety of quadratic relations.

More information

Automata-Theoretic Model Checking of Reactive Systems

Automata-Theoretic Model Checking of Reactive Systems Automata-Theoretic Model Checking of Reactive Systems Radu Iosif Verimag/CNRS (Grenoble, France) Thanks to Tom Henzinger (IST, Austria), Barbara Jobstmann (CNRS, Grenoble) and Doron Peled (Bar-Ilan University,

More information

Sequential Logic (3.1 and is a long difficult section you really should read!)

Sequential Logic (3.1 and is a long difficult section you really should read!) EECS 270, Fall 2014, Lecture 6 Page 1 of 8 Sequential Logic (3.1 and 3.2. 3.2 is a long difficult section you really should read!) One thing we have carefully avoided so far is feedback all of our signals

More information

On Objectivity and Models for Measuring. G. Rasch. Lecture notes edited by Jon Stene.

On Objectivity and Models for Measuring. G. Rasch. Lecture notes edited by Jon Stene. On Objectivity and Models for Measuring By G. Rasch Lecture notes edited by Jon Stene. On Objectivity and Models for Measuring By G. Rasch Lectures notes edited by Jon Stene. 1. The Basic Problem. Among

More information

Lecture 1. How to Boot a PC. Andrei Pitiș. October 8, Operating Systems Practical. OSP Lecture 1, Booting 1/30

Lecture 1. How to Boot a PC. Andrei Pitiș. October 8, Operating Systems Practical. OSP Lecture 1, Booting 1/30 Lecture 1 How to Boot a PC Andrei Pitiș Operating Systems Practical October 8, 2014 OSP Lecture 1, Booting 1/30 Table of Contents Hardware Processor Memory I/O subsystems Boot Process Keywords Resources

More information

GOLDILOCKS. 2. What kind of animals can you find in the? 3. The baby is really tired. She since 11am.

GOLDILOCKS. 2. What kind of animals can you find in the? 3. The baby is really tired. She since 11am. GOLDILOCKS Part 1. Pre Listening Vocabulary List Check the meaning of these words and phrases. has been sleeping porridge to decide to growl bowl forest to knock to taste Put in Sentences 1. Have you ever

More information

Safety and Liveness. Thread Synchronization: Too Much Milk. Critical Sections. A Really Cool Theorem

Safety and Liveness. Thread Synchronization: Too Much Milk. Critical Sections. A Really Cool Theorem Safety and Liveness Properties defined over an execution of a program Thread Synchronization: Too Much Milk Safety: nothing bad happens holds in every finite execution prefix Windows never crashes No patient

More information

The Chemistry of Respiration and Photosynthesis

The Chemistry of Respiration and Photosynthesis The Chemistry of Respiration and Photosynthesis Objective- You should be able to write balanced equations for respiration and photosynthesis and explain how the two equations are related. Directions :

More information

Embedded Systems 2. REVIEW: Actor models. A system is a function that accepts an input signal and yields an output signal.

Embedded Systems 2. REVIEW: Actor models. A system is a function that accepts an input signal and yields an output signal. Embedded Systems 2 REVIEW: Actor models A system is a function that accepts an input signal and yields an output signal. The domain and range of the system function are sets of signals, which themselves

More information

LCA14-206: Scheduler tooling and benchmarking. Tue-4-Mar, 11:15am, Zoran Markovic, Vincent Guittot

LCA14-206: Scheduler tooling and benchmarking. Tue-4-Mar, 11:15am, Zoran Markovic, Vincent Guittot LCA14-206: Scheduler tling and benchmarking Tue-4-Mar, 11:15am, Zran Markvic, Vincent Guittt Scheduler Tls and Benchmarking Frm Energy Aware mini-summit @ Ksummit 2013 extract frm [1]: Ing Mlnar came in

More information

ConcepTest Clicker Questions. Chapter 26 Physics: for Scientists & Engineers with Modern Physics, 4th edition Giancoli

ConcepTest Clicker Questions. Chapter 26 Physics: for Scientists & Engineers with Modern Physics, 4th edition Giancoli ConcepTest Clicker Questions Chapter 26 Physics: for Scientists & Engineers with Modern Physics, 4th edition Giancoli 2008 Pearson Education, Inc. This work is protected by United States copyright laws

More information

1/ 17 2/20 3/19 4/12 5/14 6/13 7/10 Total /105. Please do not write in the spaces above.

1/ 17 2/20 3/19 4/12 5/14 6/13 7/10 Total /105. Please do not write in the spaces above. 1/ 17 2/20 3/19 4/12 5/14 6/13 7/10 Total /105 % Please do not write in the spaces above. Directions: You have 50 minutes in which to complete this exam. Please make sure that you read through this entire

More information

Contents. Objectives Circular Motion Velocity and Acceleration Examples Accelerating Frames Polar Coordinates Recap. Contents

Contents. Objectives Circular Motion Velocity and Acceleration Examples Accelerating Frames Polar Coordinates Recap. Contents Physics 121 for Majors Today s Class You will see how motion in a circle is mathematically similar to motion in a straight line. You will learn that there is a centripetal acceleration (and force) and

More information

Section 1.1 Algorithms. Key terms: Algorithm definition. Example from Trapezoidal Rule Outline of corresponding algorithm Absolute Error

Section 1.1 Algorithms. Key terms: Algorithm definition. Example from Trapezoidal Rule Outline of corresponding algorithm Absolute Error Section 1.1 Algorithms Key terms: Algorithm definition Example from Trapezoidal Rule Outline of corresponding algorithm Absolute Error Approximating square roots Iterative method Diagram of a general iterative

More information

Newton s Cooling Model in Matlab and the Cooling Project!

Newton s Cooling Model in Matlab and the Cooling Project! Newton s Cooling Model in Matlab and the Cooling Project! James K. Peterson Department of Biological Sciences and Department of Mathematical Sciences Clemson University March 10, 2014 Outline Your Newton

More information

20.2 Design Example: Countdown Timer

20.2 Design Example: Countdown Timer EECS 16A Designing Information Devices and Systems I Fall 018 Lecture Notes Note 0 0.1 Design Procedure Now that we ve analyzed many circuits, we are ready to focus on designing interesting circuits to

More information

Definition: Absolute Value The absolute value of a number is the distance that the number is from zero. The absolute value of x is written x.

Definition: Absolute Value The absolute value of a number is the distance that the number is from zero. The absolute value of x is written x. R. Absolute Values We begin this section by recalling the following definition. Definition: Absolute Value The absolute value of a number is the distance that the number is from zero. The absolute value

More information

Determination of Density 1

Determination of Density 1 Introduction Determination of Density 1 Authors: B. D. Lamp, D. L. McCurdy, V. M. Pultz and J. M. McCormick* Last Update: February 1, 2013 Not so long ago a statistical data analysis of any data set larger

More information

Tactics Box 23.1 Using Kirchhoff's Loop Law

Tactics Box 23.1 Using Kirchhoff's Loop Law PH203 Chapter 23 solutions Tactics Box 231 Using Kirchhoff's Loop Law Description: Knight/Jones/Field Tactics Box 231 Using Kirchhoff s loop law is illustrated Learning Goal: To practice Tactics Box 231

More information

Analysis of Software Artifacts

Analysis of Software Artifacts Analysis of Software Artifacts System Performance I Shu-Ngai Yeung (with edits by Jeannette Wing) Department of Statistics Carnegie Mellon University Pittsburgh, PA 15213 2001 by Carnegie Mellon University

More information

Real-Time Scheduling and Resource Management

Real-Time Scheduling and Resource Management ARTIST2 Summer School 2008 in Europe Autrans (near Grenoble), France September 8-12, 2008 Real-Time Scheduling and Resource Management Lecturer: Giorgio Buttazzo Full Professor Scuola Superiore Sant Anna

More information

Chapter 5 HW Solution

Chapter 5 HW Solution Chapter 5 HW Solution Review Questions. 1, 6. As usual, I think these are just a matter of text lookup. 1. Name the four components of a block diagram for a linear, time-invariant system. Let s see, I

More information

Learning Packet. Lesson 5b Solving Quadratic Equations THIS BOX FOR INSTRUCTOR GRADING USE ONLY

Learning Packet. Lesson 5b Solving Quadratic Equations THIS BOX FOR INSTRUCTOR GRADING USE ONLY Learning Packet Student Name Due Date Class Time/Day Submission Date THIS BOX FOR INSTRUCTOR GRADING USE ONLY Mini-Lesson is complete and information presented is as found on media links (0 5 pts) Comments:

More information

Chapter 5 Simplifying Formulas and Solving Equations

Chapter 5 Simplifying Formulas and Solving Equations Chapter 5 Simplifying Formulas and Solving Equations Look at the geometry formula for Perimeter of a rectangle P = L W L W. Can this formula be written in a simpler way? If it is true, that we can simplify

More information

INF 4140: Models of Concurrency Series 3

INF 4140: Models of Concurrency Series 3 Universitetet i Oslo Institutt for Informatikk PMA Olaf Owe, Martin Steffen, Toktam Ramezani INF 4140: Models of Concurrency Høst 2016 Series 3 14. 9. 2016 Topic: Semaphores (Exercises with hints for solution)

More information

Conservation of Momentum using Control Volumes

Conservation of Momentum using Control Volumes Conservation of Momentum using Control Volumes Conservation of Linear Momentum Recall the conservation of linear momentum law for a system: In order to convert this for use in a control volume, use RTT

More information

The Totally Asymmetric Simple Exclusion Process (TASEP) and related models: theory and simulation results

The Totally Asymmetric Simple Exclusion Process (TASEP) and related models: theory and simulation results The Totally Asymmetric Simple Exclusion Process (TASEP) and related models: theory and simulation results Chris Daub May 9, 2003 1 Synopsis Simple exclusion processes The Bethe ansatz TASEP Definition

More information

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University 6 Scheduling Uwe R. Zimmer & Alistair Rendell The Australian National University References for this chapter [Bacon98] J. Bacon Concurrent Systems 1998 (2nd Edition) Addison Wesley Longman Ltd, ISBN 0-201-17767-6

More information

Data Structures and Algorithms

Data Structures and Algorithms Data Structures and Algorithms Spring 2009-2010 Outline 1 Computing the Maximum Subsequence Sum 2 Binary Search Outline Computing the Maximum Subsequence Sum 1 Computing the Maximum Subsequence Sum 2 Binary

More information

Sample Alignment Part

Sample Alignment Part Sample Alignment Part Contents Contents 1. How to set Part conditions...1 1.1 Setting conditions... 1 1.2 Customizing scan conditions and slit conditions... 6 2. Sample alignment sequence...13 2.1 Direct

More information