SE310 Analysis and Design of Software Systems
|
|
- Dominic Smith
- 5 years ago
- Views:
Transcription
1 SE310 Analysis and Design of Software Systems Lecture 9 Review of Event-Driven Architectures March 6, 2018 Sam Siewert
2 Reminders No class on Thursday - use time for Scrum meeting and to work on designs for walk-throughs after break Exam #1, Ave=82 - Go Over to your Satisfaction No Exam #2 - Points rolled into Exam #1 and Final Exam Revised Grading Exam #1-20% Final Exam, Report, Presentation - 30% Quizzes - 10% Assignments - 35% Active Learning - 5% (participation in walk-throughs) Sam Siewert 2
3 Copyright {c} 2014 by the McGraw-Hill Companies, Inc. All rights Reserved. Four Common Types of Systems a b c a b a/x c/z b/y x y c z (a) Interactive subsystem (b) Event-driven subsystem (c) Transformational subsystem (d) Database subsystem 6-3
4 Minute Paper Which of the 4 Architecture Patterns is Best Suited to OOA/OOD? 1. Interactive (e.g. GUI) 2. Event-Driven (e.g. Anti-lock Breaking System) 3. Transformational (e.g. Computer Vision) 4. Transactional (e.g. DBMS) 5. All? Discussion Sam Siewert 4
5 Event-Driven Architectures Introduction Sam Siewert 5
6 Key UML Models for Event Driven State Machines Activity Diagrams - Flowchart with concurrency OIM Sequence Diagram - with tasks - message passing, shared memory, synchronization (e.g. semaphores) Timing Diagrams (for task / object activation - learn in CEC450) Deadlines are a new requirement! For real-time, they must be specified Sam Siewert 6
7 Real-Time Systems CEC450 We Have a Course at ERAU Dedicated to Embedded Real-Time Systems Good Follow-on for SWE Introduction to Event-Driven Architectures We ll Only Study to Level of Understanding Architecture Pattern Analysis and Design for SWE Most Often Consists of State-Machines and Activity Models to Extend Previous UML Models RT Systems Includes Theory Rate Monotonic (Analysis and Verification) Bruce Douglass Real-time UML (Combines Topics) Sam Siewert 7
8 RTOS, Embedded SW and RMA Many Great Resources for Theory & Practice CEC 450 (Microcontrollers and OS are Pre-requisites) Focus on RTOS, HW/SW Interface, and Predictable Response Highly Specialized and Mission Critical Pattern Sam Siewert 8
9 Event-Driven Architectures Not All Event-Driven Systems are Embedded, But Many Are Embedded Systems - Predictable Response, Hard Real-Time Integrated Services Definition of Embedded System Not Just Small, but Purposed Provides Specific Services Rather than General Purpose Computing Often No Direct Connection to User Input/Output Contained within a Larger System as a Sub-system Sam Siewert 9
10 Many Real-Time Embedded Systems Real Time Must Respond to Requests for Service by a Deadline relative to request Failure to Respond Prior to Deadline Results in a System Failure Request Rate for Service Driven by Real-World Events Controls Processes and Delivers Deadline Driven Services Anti-Lock Braking Streaming Media (Video and Audio) Process Control Aircraft Flight Control Robotic Systems Sam Siewert 10
11 Why are RT Embedded Systems a Challenge? Real-Time Services Correct Results on time Deadlines! Multi-service Concurrency Required, for Software, Multi-threaded Multiple interfaces to service in addition to data processing Multi-threaded compared to Main Loop + ISR Executive Supports RT analysis and design (Rate Monotonic) Function/Service Allocation HW Service Off-load Management of CPU, IO, and Memory Resources CPU Resource Modern architecture high throughput, less deterministic pipelines, super-scalar, branch prediction, VM, split-transaction and burst transfer bus interfaces, multi-level caches I/O Interface Resources Sensors / Actuators (Interaction with Real World) Networks (Latency and QoS) Off-load and Memory Devices (e.g. Flash, FPGAs, DSP) Memory Hierarchy Resources Register file, L1/L2 cache, SRAM, dynamic RAM, Flash Sam Siewert 11
12 How to Make RT Embedded Systems Easier! RT Service and CPU Resource Management RT Theory, Practice, and Pitfalls (Theory -> System) RMA and DMA Resource Theory Prediction and Measurement of Performance When to Allocate Services/Functions to HW, FW, or SW Multi-threaded RTOS Systems Design Methods (DFD, SDL, EFSM and UML methods) RTOS Mechanisms (e.g. message queue, signal, semaphore) Analysis Tools (e.g. Windview, KernelShark) HW/FW Debug Tools (e.g. ICE / JTAG) I/O Device Interfaces and Drivers Abstracted SW-HW Interfaces Interaction with Memory System (MMIO, DMAs, Plug-n-Play) Memory Hierarchy Analysis and Abstraction Multi-level Cache Performance Models Abstracted Non-Volatile Memory Filesystems Sam Siewert 12
13 How to Make RT Embedded Systems Easier! RT Service and CPU Resource Management RT Theory, Practice, and Pitfalls (Theory -> System) RMA and DMA Resource Theory Prediction and Measurement of Performance When to Allocate Services/Functions to HW, FW, or SW Multi-threaded RTOS Systems Design Methods (DFD, SDL, EFSM and MSC methods) RTOS Mechanisms (e.g. message queue, signal, semaphore) I/O Device Interfaces and Drivers Abstracted SW-HW Interfaces Interaction with Memory System (MMIO, DMAs, Plug-n-Play) Memory Hierarchy Analysis and Abstraction Multi-level Cache Performance Models Abstracted Non-Volatile Memory Filesystems Sam Siewert 13
14 Types of Event-Driver Systems Periodic Predictable Load, Polled or Max Interrupt Rate Controlled Sporadic Upper Bound on Request Rate Known/Limited Aperiodic Driver Completely by Interrupt Rate, No Masking, All Events are Queued in a Backlog Periodic Most Common Sporadic/Aperiodic Typical of Error Handling Sam Siewert 14
15 Example Event-Driven Application - Voice / Internet Protocol 8 bit Mono 16 bit Mono 16 bit Stereo QoS Transport Buffering Sequencing and Dropouts Point-to-Point Simplex Duplex VOIP Conference Call Audio Buffer Co-Adding Session Control Protocol Mute Feature CU Student Testing VOIP from Chip Up Sam Siewert 15
16 Example Projects Video Conferencing Combines VOIP and Video QoS Frame Rate Frame Compression Transport Buffering Sequencing and Dropouts CPU Intensive Transport Intensive Session Protocol Sam Siewert 16
17 Example Projects Mobile Platforms Camera Line Followers Image Processing Steering, Motor Control Collision Avoidance Tethered or Wireless Speed and Curvature Rovers GPS (with compass) GPS + Optical Navigation Sam Siewert 17
18 Example Projects Robotic Arm 5 DOF Robotic Arm Dead-Reckoning with Limits Monitoring Full-feedback Pick and Place Tasks Find Target and Grapple Object Move to New Location and Place Stack Blocks Embedded Camera in Grappler Sam Siewert 18
19 Example Projects Tilt/Pan Video Tracking Camera Peak-Up Camera tilts and pans to track object Target Tracker fixed camera, laser pointer tilts and pans to track Stereo Vision Tracker Tracking Speed Intensive Image Processing Scanners Etch n Sketch Scans Image Redraws with Servos Sam Siewert 19
20 WRS Workbench / VxWorks Demo Prototype/Implement RT System Basic Host - Target IDE API Guide Programmer s Guide Sam Siewert 20
21 RTOS vs. OS RTOS Facilitates Predictable Response Priority Preemptive, Run-to-completion Tasks Low Latency, Low Overhead ISRs Direct Translation of RMA (Rate Monotonic Analysis) into Scheduling Priorities OS Facilitates Fairness and Prevents Starvation Linux CFS Completely Fair Scheduler Linux CFQ Completely Fair Queue for I/O Different Objectives Embedded Linux? Not All Event-Driven Systems are HRT (Hard Real-Time) or Even Predictable Response Sam Siewert 21
22 Real-time Scheduling Fair Scheduling CPU Scheduling Taxonomy Many Methods Execution Scheduling Most Often Used Round Robin SMP (Linux, Windows, Mac OS-X) Others, Less Often Used Global-MP Local-Uniprocessor Dynamic Static Preemptive Non-Preemptive Symmetric (SMP OS) SMT (Micro-Parallel) Asymmetric (AMP ) Distributed Fixed-Priority Batch (Preemptive, Non-Preemptive Subtree Under Each Global-MP Leaf) Hybrid Rate Monotonic Deadline Monotonic FCFS SJN Dynamic-Priority Cooperative Dataflow Heuristic EDF/LLF RR Timeslice (desktop) Multi-Frequency Executives Co-Routine Continuation Function Sam Siewert 22
23 Current Trends Use of Linux for Interactive and Embedded Special Linux Kernel Builds and Patches (Compared to Server Transaction Oriented) Use of POSIX Real-Time Extensions Best Effort to Predictable Response (not HRT) RTOS Proprietary (VxWorks), Open (FreeRTOS) Support for Rate Monotonic Analysis and Theory (Proofs) Tools for Event Analysis and Timing Verification Embedded (Hidden) Hybrid Architectures Hardware State-Machines Handle HRT Software is For Configuration, Interaction, and Management Only Sam Siewert 23
24 Activity Diagrams and State Machines Activity Diagrams Concurrency (procs, threads) Objects with Active Threads (Tasks) State-Machines Deterministic Response Model for a Task (Thread) Task Awaits and Activating Event and Transitions to a New Statet Sam Siewert 24
25 State Machine for Service A Service Can be Modeled as a Simple State Machine that awaits Service Request(s) Accepts Request Input Interprets, Processes Request Produces a Response to Request Returns to wait for Next Request Considerations Do Requests Queue? Transform Occurs Inside States Sam Siewert 25
26 Interrupt Driven Device Interface A Driver is OS Kernel Code to Interface to a Device Application Layer, Device Layer Abstracts the Device (read, write, open, close, ioctl) Application Interface Application Policy Blocking/Non-Blocking Multi-thread access Abstraction (Standard Entry Points) Device Interface SW/HW Interface Immediate Buffering Interrupt Service Routine Examples: Device IF, Linux Driver Sam Siewert 26
27 Event-Driven Architectures Not All Event-Driven Systems are Embedded, But Many Are Embedded Systems - Predictable Response, Hard Real-Time Integrated Services Definition of Embedded System Not Just Small, but Purposed Provides Specific Services Rather than General Purpose Computing Often No Direct Connection to User Input/Output Contained within a Larger System as a Sub-system Sam Siewert 27
28 Hardware End-to-End System DATA Hitchhiker Payload, flown STS-85, Summer 1997 Designed, Built and Operated by U. of Colorado Students Sam Siewert 28
29 Software End-to-End System Sam Siewert 29
30 Domain Models Adding Object State Refine Behavior Models State Transition Analysis and State Machine Models Start Here! Formal SWE Petri Net Simulations SA/SD DFD with Addition of Control Flows Sam Siewert 30
31 Recall Domain Modeling Class Diagram for Domain Model (with OIM) Now, We Want to define an Object State Domain Model (Extend) The Analysis Centers on a State Transition Table From the State Transition Table, We Derive State Diagrams (Meal / Moore State Machines) Most Embedded Real-Time Systems are Hybrid Event-Driven + Transformation Architectures CFD/DFD from SA/SD (SE300) Activity Model (UML) Sam Siewert 31
32 Formal SWE and Design Verification Mealy / Moore State Machines can be Executed as a Model (E.g. Telelogic SDL, Now IBM Rational SDL) Petri-Net Simulations E.g. Ability to Specify and then Execute a Object State Design (Powerful Method), Requires CASE Tool Support Verify POSITIVE and NEGATIVE Protocols Great for Message Passing and Communication Interfaces Sam Siewert 32
33 Key Takeaway Points Object state modeling is concerned with the identification, modeling, design, and specification of state-dependent, reactive behavior of objects. The state pattern reduces the complexity of state behavior design and implementation, and makes it easy to change
34 OSM in the Methodology Context 13-34
SE300 SWE Practices. Lecture 10 Introduction to Event- Driven Architectures. Tuesday, March 17, Sam Siewert
SE300 SWE Practices Lecture 10 Introduction to Event- Driven Architectures Tuesday, March 17, 2015 Sam Siewert Copyright {c} 2014 by the McGraw-Hill Companies, Inc. All rights Reserved. Four Common Types
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 1 Introduction Part 2 August 27, 2018 Sam Siewert Questions on Final Projects? Examples here - http://mercury.pr.erau.edu/~siewerts/cec450/documents/video/ Creative Projects
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 1 - Introduction August 23, 2015 Sam Siewert Dr. Sam Siewert UC Berkeley Philosophy/Physics 1984-85 University of Notre Dame, BS - Aerospace/Mechanical Engineering Johnson
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 2 Introduction Part 1 August 31, 2015 Sam Siewert So Why SW for HRT Systems? ASIC and FPGA State-Machine Solutions Offer Hardware Clocked Deterministic Solutions FPGAs
More informationCS A331 Programming Language Concepts
CS A331 Programming Language Concepts Lecture 12 Alternative Language Examples (General Concurrency Issues and Concepts) March 30, 2014 Sam Siewert Major Concepts Concurrent Processing Processes, Tasks,
More informationCS A320 Operating Systems for Engineers
CS A320 Operating Systems for Engineers Lecture 4 Conclusion of MOS Chapter 2 September 18, 2013 Sam Siewert Many Ways to Schedule a CPU Core We ve Come a Long way Since Batch Scheduling Sam Siewert 2
More informationSE310 Analysis and Design of Software
SE310 Analysis and Design of Software Lecture 14 REVIEW March 26, 2018 Sam Siewert Domain Models Use Case Details Complete a Design Provide Code Re-Use Candidate and PoC/Prototype Start Here! https://www.modelio.org/
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 2 Introduction to Scheduling of RT Services Part 1 September 2, 2017 Sam Siewert So Why SW for HRT Systems? ASIC and FPGA State-Machine Solutions Offer Hardware Clocked
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 2 Introduction to Scheduling of RT Services Part 1 September 4, 2018 Sam Siewert So Why SW for HRT Systems? ASIC and FPGA State-Machine Solutions Offer Hardware Clocked
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 3 Real-Time Service Implementation Part 1 September 7, 2018 Sam Siewert More Embedded Systems Summer - Analog, Digital, Firmware, Software Reasons to Consider Catch up
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 6 Accounting for I/O Latency September 28, 2015 Sam Siewert A Service Release and Response C i WCET Input/Output Latency Interference Time Response Time = Time Actuation
More informationReal-Time Operating Systems Design and Implementation. LS 12, TU Dortmund
Real-Time Operating Systems Design and Implementation (slides are based on Prof. Dr. Jian-Jia Chen) Anas Toma, Jian-Jia Chen LS 12, TU Dortmund October 19, 2017 Anas Toma, Jian-Jia Chen (LS 12, TU Dortmund)
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 10 Device Interface Drivers and MMIO October 29, 2015 Sam Siewert MMIO Interfacing to Off-Chip Devices Sam Siewert 2 Embedded I/O (HW View) Analog I/O DAC analog output:
More informationI/O Handling. ECE 650 Systems Programming & Engineering Duke University, Spring Based on Operating Systems Concepts, Silberschatz Chapter 13
I/O Handling ECE 650 Systems Programming & Engineering Duke University, Spring 2018 Based on Operating Systems Concepts, Silberschatz Chapter 13 Input/Output (I/O) Typical application flow consists of
More informationCPU Scheduling. Operating Systems (Fall/Winter 2018) Yajin Zhou ( Zhejiang University
Operating Systems (Fall/Winter 2018) CPU Scheduling Yajin Zhou (http://yajin.org) Zhejiang University Acknowledgement: some pages are based on the slides from Zhi Wang(fsu). Review Motivation to use threads
More informationLecture Topics. Announcements. Today: Advanced Scheduling (Stallings, chapter ) Next: Deadlock (Stallings, chapter
Lecture Topics Today: Advanced Scheduling (Stallings, chapter 10.1-10.4) Next: Deadlock (Stallings, chapter 6.1-6.6) 1 Announcements Exam #2 returned today Self-Study Exercise #10 Project #8 (due 11/16)
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 10 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Chapter 6: CPU Scheduling Basic Concepts
More informationSE310 Analysis and Design of Software Systems
SE310 Analysis and Design of Software Systems Lecture 4, Part-2 Architectural Design January 28, 2019 Sam Siewert OOA/OOD vs. SA/SD Last Year s Consensus - 50% OO Helps, 50% Undecided Discussion of OOA
More informationCEC450 Real-Time Systems
CEC450 Real-Time Systems Lecture 15 Block Diagram Design Examples November 3, 2015 Sam Siewert Design Elements for Proof-of-Concept Top N Capability Oriented Requirements State and Explain Hold Q&A and
More informationUniprocessor Scheduling. Basic Concepts Scheduling Criteria Scheduling Algorithms. Three level scheduling
Uniprocessor Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Three level scheduling 2 1 Types of Scheduling 3 Long- and Medium-Term Schedulers Long-term scheduler Determines which programs
More informationCommercial Real-time Operating Systems An Introduction. Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory
Commercial Real-time Operating Systems An Introduction Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory swamis@iastate.edu Outline Introduction RTOS Issues and functionalities LynxOS
More informationMain Points of the Computer Organization and System Software Module
Main Points of the Computer Organization and System Software Module You can find below the topics we have covered during the COSS module. Reading the relevant parts of the textbooks is essential for a
More informationCPU Scheduling. Daniel Mosse. (Most slides are from Sherif Khattab and Silberschatz, Galvin and Gagne 2013)
CPU Scheduling Daniel Mosse (Most slides are from Sherif Khattab and Silberschatz, Galvin and Gagne 2013) Basic Concepts Maximum CPU utilization obtained with multiprogramming CPU I/O Burst Cycle Process
More informationWhat s An OS? Cyclic Executive. Interrupts. Advantages Simple implementation Low overhead Very predictable
What s An OS? Provides environment for executing programs Process abstraction for multitasking/concurrency scheduling Hardware abstraction layer (device drivers) File systems Communication Do we need an
More informationMARUTHI SCHOOL OF BANKING (MSB)
MARUTHI SCHOOL OF BANKING (MSB) SO IT - OPERATING SYSTEM(2017) 1. is mainly responsible for allocating the resources as per process requirement? 1.RAM 2.Compiler 3.Operating Systems 4.Software 2.Which
More informationOperating Systems. Lecture Process Scheduling. Golestan University. Hossein Momeni
Operating Systems Lecture 2.2 - Process Scheduling Golestan University Hossein Momeni momeni@iust.ac.ir Scheduling What is scheduling? Goals Mechanisms Scheduling on batch systems Scheduling on interactive
More informationSE310 Analysis and Design of Software Systems
SE310 Analysis and Design of Software Systems Lecture 2-2 Systems Engineering for OO January 17, 2018 Sam Siewert Learning Objective Software Engineering Process? Lifecycle Phases feedback SPIRAL in Agile
More informationALL the assignments (A1, A2, A3) and Projects (P0, P1, P2) we have done so far.
Midterm Exam Reviews ALL the assignments (A1, A2, A3) and Projects (P0, P1, P2) we have done so far. Particular attentions on the following: System call, system kernel Thread/process, thread vs process
More informationChapter 6: CPU Scheduling. Operating System Concepts 9 th Edition
Chapter 6: CPU Scheduling Silberschatz, Galvin and Gagne 2013 Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Real-Time
More informationCSCI-GA Operating Systems Lecture 3: Processes and Threads -Part 2 Scheduling Hubertus Franke
CSCI-GA.2250-001 Operating Systems Lecture 3: Processes and Threads -Part 2 Scheduling Hubertus Franke frankeh@cs.nyu.edu Processes Vs Threads The unit of dispatching is referred to as a thread or lightweight
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2019 Lecture 8 Scheduling Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ POSIX: Portable Operating
More informationLecture notes Lectures 1 through 5 (up through lecture 5 slide 63) Book Chapters 1-4
EE445M Midterm Study Guide (Spring 2017) (updated February 25, 2017): Instructions: Open book and open notes. No calculators or any electronic devices (turn cell phones off). Please be sure that your answers
More informationEC EMBEDDED AND REAL TIME SYSTEMS
EC6703 - EMBEDDED AND REAL TIME SYSTEMS Unit I -I INTRODUCTION TO EMBEDDED COMPUTING Part-A (2 Marks) 1. What is an embedded system? An embedded system employs a combination of hardware & software (a computational
More informationEmbedded System Curriculum
Embedded System Curriculum ADVANCED C PROGRAMMING AND DATA STRUCTURE (Duration: 25 hrs) Introduction to 'C' Objectives of C, Applications of C, Relational and logical operators, Bit wise operators, The
More informationIntroduction to Computing Systems Terminology Guide
Introduction to Computing Systems Terminology Guide Sam Siewert January 12, 2014 Sam Siewert ADC - Analog to Digital Converter, encodes analog signals into digital values. ALU Arithmetic Logic Unit, the
More informationCS 326: Operating Systems. CPU Scheduling. Lecture 6
CS 326: Operating Systems CPU Scheduling Lecture 6 Today s Schedule Agenda? Context Switches and Interrupts Basic Scheduling Algorithms Scheduling with I/O Symmetric multiprocessing 2/7/18 CS 326: Operating
More informationEmbedded Systems. 5. Operating Systems. Lothar Thiele. Computer Engineering and Networks Laboratory
Embedded Systems 5. Operating Systems Lothar Thiele Computer Engineering and Networks Laboratory Embedded Operating Systems 5 2 Embedded Operating System (OS) Why an operating system (OS) at all? Same
More information2. Introduction to Software for Embedded Systems
2. Introduction to Software for Embedded Systems Lothar Thiele ETH Zurich, Switzerland 2-1 Contents of Lectures (Lothar Thiele) 1. Introduction to Embedded System Design 2. Software for Embedded Systems
More informationCS415 Human Computer Interaction
CS415 Human Computer Interaction Lecture 3 WIMP HCI (GUI Builders Part-2) September 7, 2018 Sam Siewert Recall - GUI Layout & Code-Gen or VHLLs for GUI Build Method #1 Compiled Programming Language (e.g.
More informationRT Digital Media Extended Lab Choose One: Work Alone Work in a Pair Extra Work Required 3 or More Students May Collaborate, but Submissions must be Un
ECEN 5033 RT Digital Media Systems Lecture 10 Extended Lab Background March 31, 2008 Sam Siewert RT Digital Media Extended Lab Choose One: Work Alone Work in a Pair Extra Work Required 3 or More Students
More informationLecture Topics. Announcements. Today: Uniprocessor Scheduling (Stallings, chapter ) Next: Advanced Scheduling (Stallings, chapter
Lecture Topics Today: Uniprocessor Scheduling (Stallings, chapter 9.1-9.3) Next: Advanced Scheduling (Stallings, chapter 10.1-10.4) 1 Announcements Self-Study Exercise #10 Project #8 (due 11/16) Project
More informationIN4343 Real-Time Systems
IN4343 Real-Time Systems Koen Langendoen, TA (TBD) 2017-2018 Delft University of Technology Challenge the future Course outline Real-time systems Lectures theory instruction Exam Reinder Bril TU/e Practicum
More informationDEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING UNIT I
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year and Semester : II / IV Subject Code : CS6401 Subject Name : Operating System Degree and Branch : B.E CSE UNIT I 1. Define system process 2. What is an
More informationCSI3131 Final Exam Review
CSI3131 Final Exam Review Final Exam: When: April 24, 2015 2:00 PM Where: SMD 425 File Systems I/O Hard Drive Virtual Memory Swap Memory Storage and I/O Introduction CSI3131 Topics Process Computing Systems
More informationCS 571 Operating Systems. Midterm Review. Angelos Stavrou, George Mason University
CS 571 Operating Systems Midterm Review Angelos Stavrou, George Mason University Class Midterm: Grading 2 Grading Midterm: 25% Theory Part 60% (1h 30m) Programming Part 40% (1h) Theory Part (Closed Books):
More information(MCQZ-CS604 Operating Systems)
command to resume the execution of a suspended job in the foreground fg (Page 68) bg jobs kill commands in Linux is used to copy file is cp (Page 30) mv mkdir The process id returned to the child process
More informationA Predictable RTOS. Mantis Cheng Department of Computer Science University of Victoria
A Predictable RTOS Mantis Cheng Department of Computer Science University of Victoria Outline I. Analysis of Timeliness Requirements II. Analysis of IO Requirements III. Time in Scheduling IV. IO in Scheduling
More informationEECS 750: Advanced Operating Systems. 01/29 /2014 Heechul Yun
EECS 750: Advanced Operating Systems 01/29 /2014 Heechul Yun 1 Administrative Next summary assignment Resource Containers: A New Facility for Resource Management in Server Systems, OSDI 99 due by 11:59
More informationCSE A215 Assembly Language Programming for Engineers
CSE A215 Assembly Language Programming for Engineers Lecture 13 Storage and I/O (MMIO, Devices, Reliability/Availability, Performance) 20 November 2012 Sam Siewert Hardware/Software Interface for I/O Basics
More informationAnnouncements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5)
Announcements Reading Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) 1 Relationship between Kernel mod and User Mode User Process Kernel System Calls User Process
More informationCOMPLEX EMBEDDED SYSTEMS
COMPLEX EMBEDDED SYSTEMS Embedded System Design and Architectures Summer Semester 2012 System and Software Engineering Prof. Dr.-Ing. Armin Zimmermann Contents System Design Phases Architecture of Embedded
More informationReal-time Support in Operating Systems
Real-time Support in Operating Systems Colin Perkins teaching/2003-2004/rtes4/lecture11.pdf Lecture Outline Overview of the rest of the module Real-time support in operating systems Overview of concepts
More informationEmbedded Systems. 6. Real-Time Operating Systems
Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
More informationCSE 4/521 Introduction to Operating Systems. Lecture 27 (Final Exam Review) Summer 2018
CSE 4/521 Introduction to Operating Systems Lecture 27 (Final Exam Review) Summer 2018 Overview Objective: Revise topics and questions for the final-exam. 1. Main Memory 2. Virtual Memory 3. Mass Storage
More informationSubject Name: OPERATING SYSTEMS. Subject Code: 10EC65. Prepared By: Kala H S and Remya R. Department: ECE. Date:
Subject Name: OPERATING SYSTEMS Subject Code: 10EC65 Prepared By: Kala H S and Remya R Department: ECE Date: Unit 7 SCHEDULING TOPICS TO BE COVERED Preliminaries Non-preemptive scheduling policies Preemptive
More informationSubject Name:Operating system. Subject Code:10EC35. Prepared By:Remya Ramesan and Kala H.S. Department:ECE. Date:
Subject Name:Operating system Subject Code:10EC35 Prepared By:Remya Ramesan and Kala H.S. Department:ECE Date:24-02-2015 UNIT 1 INTRODUCTION AND OVERVIEW OF OPERATING SYSTEM Operating system, Goals of
More informationCOT 4600 Operating Systems Fall Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM Lecture 23 Attention: project phase 4 due Tuesday November 24 Final exam Thursday December 10 4-6:50
More informationCISC 7310X. C05: CPU Scheduling. Hui Chen Department of Computer & Information Science CUNY Brooklyn College. 3/1/2018 CUNY Brooklyn College
CISC 7310X C05: CPU Scheduling Hui Chen Department of Computer & Information Science CUNY Brooklyn College 3/1/2018 CUNY Brooklyn College 1 Outline Recap & issues CPU Scheduling Concepts Goals and criteria
More informationProcess Scheduling Part 2
Operating Systems and Computer Networks Process Scheduling Part 2 pascal.klein@uni-due.de Alexander Maxeiner, M.Sc. Faculty of Engineering Agenda Process Management Time Sharing Synchronization of Processes
More informationWhat is a Real Time Operating System?
What is a Real Time Operating System? Review We tentatively defined an Operating System to be: Some sort of software that you did not write yourself that allows you to use a processor effectively. What
More informationOperating Systems 2010/2011
Operating Systems 2010/2011 Input/Output Systems part 2 (ch13, ch12) Shudong Chen 1 Recap Discuss the principles of I/O hardware and its complexity Explore the structure of an operating system s I/O subsystem
More informationCourse Syllabus. Operating Systems
Course Syllabus. Introduction - History; Views; Concepts; Structure 2. Process Management - Processes; State + Resources; Threads; Unix implementation of Processes 3. Scheduling Paradigms; Unix; Modeling
More informationCPU Scheduling: Objectives
CPU Scheduling: Objectives CPU scheduling, the basis for multiprogrammed operating systems CPU-scheduling algorithms Evaluation criteria for selecting a CPU-scheduling algorithm for a particular system
More informationLesson 5: Software for embedding in System- Part 2
Lesson 5: Software for embedding in System- Part 2 Device drivers, Device manager, OS, RTOS and Software tools 1 Outline Device drivers Device manager Multitasking using an operating system (OS) and Real
More informationChapter 5: CPU Scheduling
COP 4610: Introduction to Operating Systems (Fall 2016) Chapter 5: CPU Scheduling Zhi Wang Florida State University Contents Basic concepts Scheduling criteria Scheduling algorithms Thread scheduling Multiple-processor
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 Lecture 8 Threads and Scheduling Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ How many threads
More informationLinux Driver and Embedded Developer
Linux Driver and Embedded Developer Course Highlights The flagship training program from Veda Solutions, successfully being conducted from the past 10 years A comprehensive expert level course covering
More informationEmbedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institution of Technology, IIT Delhi
Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institution of Technology, IIT Delhi Lecture - 20 Fundamentals of Embedded Operating Systems In today s class, we shall
More informationPROCESS SCHEDULING II. CS124 Operating Systems Fall , Lecture 13
PROCESS SCHEDULING II CS124 Operating Systems Fall 2017-2018, Lecture 13 2 Real-Time Systems Increasingly common to have systems with real-time scheduling requirements Real-time systems are driven by specific
More informationThe Use Of Virtual Platforms In MP-SoC Design. Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006
The Use Of Virtual Platforms In MP-SoC Design Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006 1 MPSoC Is MP SoC design happening? Why? Consumer Electronics Complexity Cost of ASIC Increased SW Content
More informationEmbedded Systems. 7. System Components
Embedded Systems 7. System Components Lothar Thiele 7-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
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 informationShort Term Courses (Including Project Work)
Short Term Courses (Including Project Work) Courses: 1.) Microcontrollers and Embedded C Programming (8051, PIC & ARM, includes a project on Robotics) 2.) DSP (Code Composer Studio & MATLAB, includes Embedded
More informationSoftware Driven Verification at SoC Level. Perspec System Verifier Overview
Software Driven Verification at SoC Level Perspec System Verifier Overview June 2015 IP to SoC hardware/software integration and verification flows Cadence methodology and focus Applications (Basic to
More informationChapter 6: CPU Scheduling. Operating System Concepts 9 th Edition
Chapter 6: CPU Scheduling Silberschatz, Galvin and Gagne 2013 Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Real-Time
More informationLECTURE 3:CPU SCHEDULING
LECTURE 3:CPU SCHEDULING 1 Outline Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time CPU Scheduling Operating Systems Examples Algorithm Evaluation 2 Objectives
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 informationSE310 Analysis and Design of Software Systems
SE310 Analysis and Design of Software Systems Lecture 6 Transitioning from Use Cases and Class Diagrams at Architecture Level to Design February 10, 2015 Sam Siewert Assignment #1 Comments OOA -> OOP (C++,
More informationTDDD07 Real-time Systems Lecture 10: Wrapping up & Real-time operating systems
TDDD07 Real-time Systems Lecture 10: Wrapping up & Real-time operating systems Simin Nadjm-Tehrani Real-time Systems Laboratory Department of Computer and Information Science Linköping Univerity 28 pages
More informationSMD149 - Operating Systems
SMD149 - Operating Systems Roland Parviainen November 3, 2005 1 / 45 Outline Overview 2 / 45 Process (tasks) are necessary for concurrency Instance of a program in execution Next invocation of the program
More informationCSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review
CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, 2003 Review 1 Overview 1.1 The definition, objectives and evolution of operating system An operating system exploits and manages
More informationMultimedia Systems 2011/2012
Multimedia Systems 2011/2012 System Architecture Prof. Dr. Paul Müller University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de Sitemap 2 Hardware
More informationMid Term from Feb-2005 to Nov 2012 CS604- Operating System
Mid Term from Feb-2005 to Nov 2012 CS604- Operating System Latest Solved from Mid term Papers Resource Person Hina 1-The problem with priority scheduling algorithm is. Deadlock Starvation (Page# 84) Aging
More informationReal-Time Component Software. slide credits: H. Kopetz, P. Puschner
Real-Time Component Software slide credits: H. Kopetz, P. Puschner Overview OS services Task Structure Task Interaction Input/Output Error Detection 2 Operating System and Middleware Application Software
More informationReal-Time & Embedded Operating Systems
Real-Time & Embedded Operating Systems VO Embedded Systems Engineering (Astrit ADEMAJ) Real-Time Operating Systems Scheduling Embedded Operating Systems Power Consumption Embedded Real-Time Operating Systems
More information6/20/2018. Lecture 2: Platforms & RTOS. Outline. Lab Setup (20 min) Labs work. Lecture: Platform + RTOS
Lecture 2: Platforms & RTOS 1 Outline Lab Setup (20 min) Labs work Workbench + vxworks Documentations (15 min) Project Management (25 min) Host Shell (25 min) Lecture: Platform + RTOS 2 1 3 Microcomputer
More informationFinal Exam Study Guide
Final Exam Study Guide Part 1 Closed book, no crib sheet Part 2 Open book, open notes, calculator (no laptops, phones, devices with screens larger than a TI-89 calculator, devices with wireless communication).
More informationMLR INSTITUTE OF TECHNOLOGY DUNDIGAL , HYDERABAD QUESTION BANK
MLR INSTITUTE OF TECHNOLOGY DUNDIGAL - 500 043, HYDERABAD QUESTION BANK Course Name : EMBEDDED SYSTEMS Course Code : A57043 Class : IV B. Tech I Semester Branch : ECE Year : 2015 2016 Course Faculty :
More informationReal-time for Windows NT
Real-time for Windows NT Myron Zimmerman, Ph.D. Chief Technology Officer, Inc. Cambridge, Massachusetts (617) 661-1230 www.vci.com Slide 1 Agenda Background on, Inc. Intelligent Connected Equipment Trends
More informationWHY PARALLEL PROCESSING? (CE-401)
PARALLEL PROCESSING (CE-401) COURSE INFORMATION 2 + 1 credits (60 marks theory, 40 marks lab) Labs introduced for second time in PP history of SSUET Theory marks breakup: Midterm Exam: 15 marks Assignment:
More informationECE 477 Digital Systems Senior Design Project. Module 10 Embedded Software Development
2011 by D. G. Meyer ECE 477 Digital Systems Senior Design Project Module 10 Embedded Software Development Outline Memory Models Memory Sections Discussion Application Code Organization Memory Models -
More informationAdvanced Operating Systems (CS 202) Scheduling (1)
Advanced Operating Systems (CS 202) Scheduling (1) Today: CPU Scheduling 2 The Process The process is the OS abstraction for execution It is the unit of execution It is the unit of scheduling It is the
More information[08] IO SUBSYSTEM 1. 1
[08] IO SUBSYSTEM 1. 1 OUTLINE Input/Output (IO) Hardware Device Classes OS Interfaces Performing IO Polled Mode Interrupt Driven Blocking vs Non-blocking Handling IO Buffering & Strategies Other Issues
More informationECE 612: Embedded and Real-Time Systems
ECE 612: Embedded and Real-Time Systems Instructor: A. Cyrus Sabzevari Last updated: 1/16/2013 Email: asabzeva@gmu.edu Spring 2013 Monday 7:20-10 PM Office Hours: Monday 6:10 7:10 in the adjunct faculty
More informationOPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5
OPERATING SYSTEMS CS3502 Spring 2018 Processor Scheduling Chapter 5 Goals of Processor Scheduling Scheduling is the sharing of the CPU among the processes in the ready queue The critical activities are:
More informationSIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE) UNIT I OPERATING SYSTEMS
UNIT I OPERATING SYSTEMS 1. Write a short note about [6+6M] a) Time services b) Scheduling Mechanisms 2. a) Explain the overview of Threads and Tasks. [6M] b) Draw the structure of Micro kernel and explain
More informationMultithreaded Processors. Department of Electrical Engineering Stanford University
Lecture 12: Multithreaded Processors Department of Electrical Engineering Stanford University http://eeclass.stanford.edu/ee382a Lecture 12-1 The Big Picture Previous lectures: Core design for single-thread
More informationMultiprocessor and Real-Time Scheduling. Chapter 10
Multiprocessor and Real-Time Scheduling Chapter 10 1 Roadmap Multiprocessor Scheduling Real-Time Scheduling Linux Scheduling Unix SVR4 Scheduling Windows Scheduling Classifications of Multiprocessor Systems
More informationDEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EE6602- EMBEDDED SYSTEMS QUESTION BANK UNIT I - INTRODUCTION TO EMBEDDED SYSTEMS PART A
DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EE6602- EMBEDDED SYSTEMS QUESTION BANK UNIT I - INTRODUCTION TO EMBEDDED SYSTEMS PART A 1. Define system. A system is a way of working, organizing or
More informationInstitute of Engineering & Management. Course:CS603- Operating System. Course pre-requisites
Course:CS60- Operating System PROGRAMME: COMPUTERSCIENCE&ENGINEERING DEGREE:B. TECH COURSE: Operating Systems SEMESTER: 6 CREDITS: COURSECODE: CS60 COURSE TYPE: Theory COURSE AREA/DOMAIN: CONTACTHOURS:
More information