IN2305-II Embedded Programming
|
|
- Elinor Young
- 5 years ago
- Views:
Transcription
1 IN2305-II Embedded Programming prof.dr.ir. Arjan J.C. van Gemund Embedded Software Lab Software Technology Dept.
2 Arjan van Gemund? BS Physics Engineering MS, PhD Computer Science DSM (Embedded Systems HW + SW) TNO (High-Performance Computing) TUD (EE, Computer Architecture) TUD (CS, Software Technology, 0.4 fte Prof Emb SW) 2 kids, dog, cat, living in Ravenswoud (Fr) in2305-ii: L1 2
3 In2305-ii? Info: via in2305-ii: L1 3
4 Embedded Systems? ES = computer system (HW+SW) embedded within another system largely determining its functionality printer user I/F netw I/F printing system in2305-ii: L1 4
5 Telegraph network Telegraph printer out-of-order data negotiate with multiple clients (print jobs) service status requests adapt to different printers response time to certain requests data throughput / buffering in2305-ii: L1 5
6 Underground Tank Monitoring System level CH level H 2 O temperature Emb Sys tank 1... tank N buttons LCD disp printer guard levels, detect leaks extremely low-cost design (proc) simple arithmetic - CPU hog - response time problem in2305-ii: L1 6
7 Cruise Control System (Lab Project) Emb Sys speedo meter gas pedal buttons SSD stabilize car speed when engaged extremely low processor cycle budget small control loop jitter due to other activities reliable operation in2305-ii: L1 7
8 Embedded Systems Boom provides functionality (intelligence) of almost everything annual growth 25-60% (Emb Linux > 60%) 100 x PC market accounts for 25-40% costs in automotive very large societal dependence very high performance demands in2305-ii: L1 8
9 Embedded Software Crisis functionality migrates from HW to SW existing cores combined with FPGA s, rather than ASICs programming-centered design (incl. HDLs) TV, mobile, car, MLOC code, expon. growth! despite SW engineering: 1 10 bug / KLOC 100 G$ / yr on bugs (Mars Polar Lander, Mars Climate Orbiter, Ariane 5, Patriot, USS Yorktown, Therac-25,... ) in2305-ii: L1 9
10 Embedded Programming more difficult than classical programming interaction with hardware real-time issues (timing) concurrency (multiple threads, scheduling, deadlock) need to understand underlying RTOS principles event-driven programming (interrupts) lots of (novice) errors (hence the crisis) so that s why we have this course already in 2 nd year in2305-ii: L1 10
11 Example naïve automatic door task (thread): for (;;) { while (inp(sensor)!= 1) ; // wait to open out(door,open); while (inp(sensor) == 0) ; // wait to close sleep(1000); out(door,close); // close after timeout } what are the (many) issues? (discussed on the next slides) in2305-ii: L1 11
12 Specification: FSM (Moore) s 0 s s 1 s s s 2 0: door, timer_enable 1: door, timer_enable 2: door, timer_enable s = sensor, t = timeout t.s e tmr t red transition absent in example code -> door can slam into your face! clk in2305-ii: L1 12
13 How to Program? VHDL: FSM in entity door_controller pros: separate hardware: no problems sharing a processor with other tasks (scheduling, priorities) fast and synchronous programming model: high frequency clocked process with simple polling for s and t cons: VHDL to cumbersome / prohibitive for large applications lots of legacy code written in, e.g., C in2305-ii: L1 13
14 A VHDL Solution process -- fsm begin wait until rising_edge(clk); case state is when S0 => if (s = 1 ) then state <= S1; when S1 => if (s = 0 ) then state <= S2; when S2 => if (s = 1 ) then red arc in FSM state <= S1; if (t = 1 and s = 0 ) then state <= S0; end case; door <= 1 when (state!= S0) else 0 ; timer_enable <= 1 when (state = S2) else 0 ; end process; in2305-ii: L1 14
15 What if C? C: FSM in a task door_controller pros: simple (sequential) programming model cons: can t be invoked periodically by a high-frequency clock (timer) because of polling overhead busy waiting (polling) is not an option (see above) -> concurrent (event) programming (e.g., using interrupts and semaphores) so the while loops in the example code are wrong only use a delay which is not based on busy wait ergo: interrupt programming, using an RTOS in2305-ii: L1 15
16 A C Solution void isr_sensor(void) // process sensor IRQ { OS_Post(semaphore_event_on_s); // signal s changed } void task_door_controller(void) { for (;;) { OS_Pend(semaphore_event_on_s); // wait for s = 1 out(door,open); do { OS_Pend(semaphore_event_on_s); // wait for s = 0 OS_Delay(1000); } while (inp(sensor)!= 0); // timeout out(door,close); } } in2305-ii: L1 16
17 Issues efficient, no busy waiting any more (OS_Pend, OS_Delay) still, code is not correct: interrupts (entering/leaving persons within delay period are not properly handled, and are only accumulated in semaphore (wrong) cannot afford to just sit in a delay, need control flow flexibility of a real FSM, i.e., to jump, AND.. the ability to simultaneously wait for two events (s or t): void isr_sensor_and_timer(void) { // handle both IRQs OS_Post(s_or_t); // either s or t changed } in2305-ii: L1 17
18 Alternative C Solution void task_door_controller(void) { for (;;) { switch (state) { STDBY: OS_Pend(s_or_t); // wait for 0-1 out(door,open); state = OPEN; OPEN: OS_Pend(s_or_t); // wait for 1-0 timer_enable(); state = TIMING; TIMING: OS_Pend(s_or_t); // wait for 0-1 or t if (inp(sensor) == 0) { // timeout out(door,close); timer_disable(); state = STDBY; } else state = OPEN; }}} in2305-ii: L1 18
19 Conclusion Embedded programming is not so easy Nor in C nor VHDL C: Concurrency needed (seq. prog. model): RTOS support Event programming needed: interrupts + RTOS support Learn the basics of interrupt programming and using an RTOS (in C) Learning is (lots of) programming! Lab: simple Cruise Control subsystem Hardware: FPGA board with 32 bit soft core + C tools In2305 via: in2305-ii: L1 19
20 Lab Assignment: Cruise Control engage button: engage cruise control inc button: increment throttle or cruising speed dec button: decrement throttle or cruising speed speed and throttle on SSD monitor link to PC terminal (status, logging,..) engage inc/dec throttle controller vehicle speed in2305-ii: L1 20
21 Cruise Control Setup (throttle) PC host (Linux) Embed. Syst. (FPGA board) m a b (speed) encoder DC motor (vehicle) in2305-ii: L1 21
22 ES Setup engage throttle inc dec PWM m setpoint 32 controller speed 32 decoder a b count m a b in2305-ii: L1 22
23 Demo Demo.. in2305-ii: L1 23
24 Finally.. Grade = f (MC exam, Quiz, Lab) Without lab NO grade Lab: presence mandatory, AWOL -> no grade! Lab enrollment: TA ASAP In2305-ii first time edition! Accept glitches.. Response group (3 student volunteers via ) In2305 via: Credits: Mark Dufour, Sijmen Woutersen in2305-ii: L1 24
Embedded Software TI2726-B. 1. Introduction. Koen Langendoen. (Stefan Dulman, Arjan v. Gemund) Embedded Software Group
Embedded Software 1. Introduction TI2726-B Koen Langendoen (Stefan Dulman, Arjan v. Gemund) Embedded Software Group Embedded System Definition Many different definitions, some of them: a computer system
More informationIn4073 Embedded Real-Time Systems. Koen Langendoen (course instructor) Arjan van Gemund (founding father) Embedded Software group
In4073 Embedded Real-Time Systems Koen Langendoen (course instructor) Arjan van Gemund (founding father) Embedded Software group Embedded System ES = computer system embedded within other system defining
More informationIn4073 Embedded Real-Time Systems. Embedded Programming
In4073 Embedded Real-Time Systems Embedded Programming Embedded Software TI2726 B 2 nd year BSc course Fast forward (10:1) 2 Embedded Programming More difficult than classical programming Interaction with
More informationEmbedded Software TI2726 B. 7. Embedded software design. Koen Langendoen. Embedded Software Group
Embedded Software 7. Embedded software design TI2726 B Koen Langendoen Embedded Software Group Overview Timing services RTOS and ISRs Design of embedded systems General principles Timing Functionality
More informationReconOS: An RTOS Supporting Hardware and Software Threads
ReconOS: An RTOS Supporting Hardware and Software Threads Enno Lübbers and Marco Platzner Computer Engineering Group University of Paderborn marco.platzner@computer.org Overview the ReconOS project programming
More informationIN4073 Embedded Real-Time Systems. X32 Microcontroller Soft core
IN4073 Embedded Real-Time Systems X32 Microcontroller Soft core FGPAs vs Standard Microcontrollers 8051, ARM,.., core architectures AD, Atmel, Dalas, Intel, MC (PIC), NS, ST, TI, Zilog ASICs with core,
More informationFaculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology
Faculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology exam Embedded Software TI2726-B January 28, 2019 13.30-15.00 This exam (6 pages) consists of 60 True/False
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 informationFYS Data acquisition & control. Introduction. Spring 2018 Lecture #1. Reading: RWI (Real World Instrumentation) Chapter 1.
FYS3240-4240 Data acquisition & control Introduction Spring 2018 Lecture #1 Reading: RWI (Real World Instrumentation) Chapter 1. Bekkeng 14.01.2018 Topics Instrumentation: Data acquisition and control
More informationFPGA for Software Engineers
FPGA for Software Engineers Course Description This course closes the gap between hardware and software engineers by providing the software engineer all the necessary FPGA concepts and terms. The course
More informationOperating System: Chap13 I/O Systems. National Tsing-Hua University 2016, Fall Semester
Operating System: Chap13 I/O Systems National Tsing-Hua University 2016, Fall Semester Outline Overview I/O Hardware I/O Methods Kernel I/O Subsystem Performance Application Interface Operating System
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 Lecture 2 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 2 What is an Operating System? What is
More informationEmbedded Software TI2726 B. 4. Interrupts. Koen Langendoen. Embedded Software Group
Embedded Software 4. Interrupts TI2726 B Koen Langendoen Embedded Software Group What is an Interrupt? Asynchronous signal from hardware Synchronous signal from software Indicates the need for attention
More informationMidterm Exam. October 20th, Thursday NSC
CSE 421/521 - Operating Systems Fall 2011 Lecture - XIV Midterm Review Tevfik Koşar University at Buffalo October 18 th, 2011 1 Midterm Exam October 20th, Thursday 9:30am-10:50am @215 NSC Chapters included
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2016 Lecture 2 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 2 System I/O System I/O (Chap 13) Central
More informationCMPSCI 377: Operating Systems Exam 1: Processes, Threads, CPU Scheduling and Synchronization. October 9, 2002
Name: Student Id: General instructions: CMPSCI 377: Operating Systems Exam 1: Processes, Threads, CPU Scheduling and Synchronization October 9, 2002 This examination booklet has 10 pages. Do not forget
More informationEmbedded Software Programming
Embedded Software Programming Computer Science & Engineering Department Arizona State University Tempe, AZ 85287 Dr. Yann-Hang Lee yhlee@asu.edu (480) 727-7507 Event and Time-Driven Threads taskspawn (name,
More informationSpecifications and Modeling
12 Specifications and Modeling Peter Marwedel TU Dortmund, Informatik 12 Springer, 2010 2012 年 10 月 17 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Hypothetical design
More informationFaculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology
Faculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology exam Embedded Software TI2726-B January 29, 2018 13.30-15.00 This exam (6 pages) consists of 60 True/False
More informationCOMP 3361: Operating Systems 1 Final Exam Winter 2009
COMP 3361: Operating Systems 1 Final Exam Winter 2009 Name: Instructions This is an open book exam. The exam is worth 100 points, and each question indicates how many points it is worth. Read the exam
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 informationSoftware Quality. What is Good Software?
Software Quality CS A470 What is Good Software? Depends on your point of view Five perspectives Transcendental view. Quality can be recognized but hard to define User view. Fitness for purpose Often adopted
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 informationECEN 449 Microprocessor System Design. Hardware-Software Communication. Texas A&M University
ECEN 449 Microprocessor System Design Hardware-Software Communication 1 Objectives of this Lecture Unit Learn basics of Hardware-Software communication Memory Mapped I/O Polling/Interrupts 2 Motivation
More informationEEL 5722C Field-Programmable Gate Array Design
EEL 5722C Field-Programmable Gate Array Design Lecture 19: Hardware-Software Co-Simulation* Prof. Mingjie Lin * Rabi Mahapatra, CpSc489 1 How to cosimulate? How to simulate hardware components of a mixed
More informationIntroduction to Embedded Systems. Lab Logistics
Introduction to Embedded Systems CS/ECE 6780/5780 Al Davis Today s topics: lab logistics interrupt synchronization reentrant code 1 CS 5780 Lab Logistics Lab2 Status Wed: 3/11 teams have completed their
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 informationCS 151 Midterm. Instructions: Student ID. (Last Name) (First Name) Signature
CS 151 Midterm Name Student ID Signature :, (Last Name) (First Name) : : Instructions: 1. Please verify that your paper contains 11 pages including this cover. 2. Write down your Student-Id on the top
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 informationFinite State Machines (FSMs) and RAMs and CPUs. COS 116, Spring 2011 Sanjeev Arora
Finite State Machines (FSMs) and RAMs and CPUs COS 116, Spring 2011 Sanjeev Arora Recap Combinational logic circuits: no cycles, hence no memory Sequential circuits: cycles allowed; can have memory as
More informationSequential Logic Implementation. Mealy vs. Moore Machines. Specifying Outputs for a Mealy Machine. Specifying Outputs for a Moore Machine
uential Logic Implementation! Models for representing sequential circuits " bstraction of sequential elements " Finite state machines and their state diagrams " Inputs/ " Mealy, Moore, and synchronous
More informationEE251: Thursday November 30
EE251: Thursday November 30 Course Evaluation Forms-fill out Memory Subsystem continued Timing requirements Adding memory beyond 4 Gbyte Time Allowing: Begin Review for Final Exam Homework due next Tuesday,
More informationLecture 4: Memory Management & The Programming Interface
CS 422/522 Design & Implementation of Operating Systems Lecture 4: Memory Management & The Programming Interface Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken
More informationGeneral FSM design procedure
Sequential logic examples Basic design approach: a 4-step design process Hardware description languages and finite state machines Implementation examples and case studies finite-string pattern recognizer
More informationOperating Systems Design Fall 2010 Exam 1 Review. Paul Krzyzanowski
Operating Systems Design Fall 2010 Exam 1 Review Paul Krzyzanowski pxk@cs.rutgers.edu 1 Question 1 To a programmer, a system call looks just like a function call. Explain the difference in the underlying
More informationGeneral FSM design procedure
Sequential logic examples Basic design approach: a 4-step design process Hardware description languages and finite state machines Implementation examples and case studies finite-string pattern recognizer
More informationCS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017
CS 471 Operating Systems Yue Cheng George Mason University Fall 2017 Outline o Process concept o Process creation o Process states and scheduling o Preemption and context switch o Inter-process communication
More informationDo not start the test until instructed to do so!
CS 3204 Operating Systems Midterm (Abrams) Spring 2004 VIRG INIA POLYTECHNIC INSTITUTE AND STATE U T PRO SI M UNI VERSI TY Instructions: Do not start the test until instructed to do so! Print your name
More informationLecture 08 Finite State Machine Design Using VHDL
Lecture 08 Finite State Machine Design Using VHDL 10/1/2006 ECE 358: Introduction to VHDL Lecture 8-1 Today Sequential digital logic system design state diagram/state graph 10/1/2006 ECE 358: Introduction
More informationProgramming with Arrays Intro to Pointers CS 16: Solving Problems with Computers I Lecture #11
Programming with Arrays Intro to Pointers CS 16: Solving Problems with Computers I Lecture #11 Ziad Matni Dept. of Computer Science, UCSB Thursday, 5/17 in this classroom Starts at 2:00 PM **SHARP** Please
More informationMidterm Exam Amy Murphy 19 March 2003
University of Rochester Midterm Exam Amy Murphy 19 March 2003 Computer Systems (CSC2/456) Read before beginning: Please write clearly. Illegible answers cannot be graded. Be sure to identify all of your
More informationChapter 1: Introduction. Operating System Concepts 8 th Edition,
Chapter 1: Introduction Operating System Concepts 8 th Edition, Silberschatz, Galvin and Gagne 2009 Operating-System Operations Interrupt driven by hardware Software error or system request creates exception
More informationSystem-level simulation (HW/SW co-simulation) Outline. EE290A: Design of Embedded System ASV/LL 9/10
System-level simulation (/SW co-simulation) Outline Problem statement Simulation and embedded system design functional simulation performance simulation POLIS implementation partitioning example implementation
More informationReal Time Linux patches: history and usage
Real Time Linux patches: history and usage Presentation first given at: FOSDEM 2006 Embedded Development Room See www.fosdem.org Klaas van Gend Field Application Engineer for Europe Why Linux in Real-Time
More informationCS 333 Introduction to Operating Systems. Class 1 - Introduction to OS-related Hardware and Software
CS 333 Introduction to Operating Systems Class 1 - Introduction to OS-related Hardware and Software Jonathan Walpole Computer Science Portland State University About the instructor Instructor - Jonathan
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 informationCS 333 Introduction to Operating Systems. Class 1 - Introduction to OS-related Hardware and Software
CS 333 Introduction to Operating Systems Class 1 - Introduction to OS-related Hardware and Software Jonathan Walpole Computer Science Portland State University 1 About the instructor Instructor - Jonathan
More informationScheduling Algorithm and Analysis
Scheduling Algorithm and Analysis Model and Cyclic Scheduling (Module 27) Yann-Hang Lee Arizona State University yhlee@asu.edu (480) 727-7507 Summer 2014 Task Scheduling Schedule: to determine which task
More informationLecture #1: Introduction
Lecture #1: Introduction Kunle Olukotun Stanford EE183 January 8, 20023 What is EE183? EE183 is continuation of EE121 Digital Logic Design is a a minute to learn, a lifetime to master Programmable logic
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 informationRTOS Real T i Time me Operating System System Concepts Part 2
RTOS Real Time Operating System Concepts Part 2 Real time System Pitfalls - 4: The Ariane 5 satelite launch rocket Rocket self destructed in 4 June -1996. Exactly after 40 second of lift off at an attitude
More informationINFO-0064 Embedded systems
16 October 2015 INFO-0064 Embedded systems Exercise session 4 Software architectures Kevin Hogan kevin.hogan@ulg.ac.be Information Slides and code exemples available on: http://www.montefiore.ulg.ac.be/~khogan/
More information6.111 Lecture # 8. Topics for Today: (as time permits)
6.111 Lecture # 8 Topics for Today: (as time permits) 1. Memories 2. Assembling 'packages' for designs 3. Discussion of design procedure 4. Development of a design example using a finite state machine
More informationCSE 410 Final Exam 6/09/09. Suppose we have a memory and a direct-mapped cache with the following characteristics.
Question 1. (10 points) (Caches) Suppose we have a memory and a direct-mapped cache with the following characteristics. Memory is byte addressable Memory addresses are 16 bits (i.e., the total memory size
More informationProcesses. CS 475, Spring 2018 Concurrent & Distributed Systems
Processes CS 475, Spring 2018 Concurrent & Distributed Systems Review: Abstractions 2 Review: Concurrency & Parallelism 4 different things: T1 T2 T3 T4 Concurrency: (1 processor) Time T1 T2 T3 T4 T1 T1
More informationFour Components of a Computer System. Operating System Concepts 7 th Edition, Jan 12, 2005
Introduction Four Components of a Computer System 1.2 Silberschatz, Galvin and Gagne 2005 Computer System Organization Computer-system operation One or more CPUs, device controllers connect through common
More informationContribution:javaMultithreading Multithreading Prof. Dr. Ralf Lämmel Universität Koblenz-Landau Software Languages Team
http://101companies.org/wiki/ Contribution:javaMultithreading Multithreading Prof. Dr. Ralf Lämmel Universität Koblenz-Landau Software Languages Team Non-101samples available here: https://github.com/101companies/101repo/tree/master/technologies/java_platform/samples/javathreadssamples
More informationOperating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System
Overview Chapter 1.5 1.9 A program that controls execution of applications The resource manager An interface between applications and hardware The extended machine 1 2 Structure of a Computer System Structure
More informationEE249 Lab September 30 h, 2008 Hugo A. Andrade
High-Level Development Tools Data Flow C Code Textual Math Modeling Statechart EE249 Lab September 30 h, 2008 Hugo A. Andrade Graphical System Design Platform Linux Macintosh Windows Real-Time FPGA Micro
More informationCSC501 Operating Systems Principles. Process Synchronization
CSC501 Operating Systems Principles Process Synchronization 1 Last Lecture q Process Scheduling Question I: Within one second, how many times the timer interrupt will occur? Question II: Within one second,
More informationConcurrent programming: Introduction I
Computer Architecture course Real-Time Operating Systems Concurrent programming: Introduction I Anna Lina Ruscelli - Scuola Superiore Sant Anna Contact info Email a.ruscelli@sssup.it Computer Architecture
More informationTask Based Programming Revisited Real Time Operating Systems
ECE3411 Fall 2016 Lecture 6a. Task Based Programming Revisited Real Time Operating Systems Marten van Dijk, Syed Kamran Haider Department of Electrical & Computer Engineering University of Connecticut
More informationOverall Structure of RT Systems
Course Outline Introduction Characteristics of RTS Real Time Operating Systems (RTOS) OS support: scheduling, resource handling Real Time Programming Languages Language support, e.g. Ada tasking Scheduling
More information7/20/2008. What Operating Systems Do Computer-System Organization
Introduction to Operating Systems Introduction What Operating Systems Do Computer-System Organization Computer-System Architecture Operating-System Structure Operating-System Operations Process Management
More informationEECS 270 Midterm Exam
EECS 270 Midterm Exam Fall 2009 Name: unique name: Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. Scores: NOTES: Problem # Points 1 /11 2 /4
More informationChapter 1: Introduction. Operating System Concepts 9 th Edit9on
Chapter 1: Introduction Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 1: Introduction 1. What Operating Systems Do 2. Computer-System Organization 3. Computer-System
More informationVALLIAMMAI ENGINEERING COLLEGE
VALLIAMMAI ENGINEERING COLLEGE SRM Nagar, Kattankulathur 603 203 DEPARTMENT OF ELECTRONICS AND INSTRUMENTATION ENGINEERING QUESTION BANK VI SEMESTER EE6602 EMBEDDED SYSTEMS Regulation 2013 Academic Year
More informationOperating Systems EDA092, DIT 400 Exam
Chalmers University of Technology and Gothenburg University Operating Systems EDA092, DIT 400 Exam 2015-04-14 Date, Time, Place: Tuesday 2015/04/14, 14:00 18:00, Väg och vatten -salar Course Responsible:
More information10/21/2016. ECE 120: Introduction to Computing. Let s Extend Our Keyless Entry FSM. FSM Designs Also Allow Use of Abstraction
University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering ECE 120: Introduction to Computing Extending Keyless Entry Combinational Logic Design Allows Use of Abstraction Recall
More informationHandling Challenges of Multi-Core Technology in Automotive Software Engineering
Model Based Development Tools for Embedded Multi-Core Systems Handling Challenges of Multi-Core Technology in Automotive Software Engineering VECTOR INDIA CONFERENCE 2017 Timing-Architects Embedded Systems
More informationEECS 3221 Operating System Fundamentals
EECS 3221 Operating System Fundamentals Instructor: Prof. Hui Jiang Email: hj@cse.yorku.ca Web: http://www.eecs.yorku.ca/course/3221 General Info 3 lecture hours each week 2 assignments (2*5%=10%) 1 project
More informationLecture 15: I/O Devices & Drivers
CS 422/522 Design & Implementation of Operating Systems Lecture 15: I/O Devices & Drivers Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken from previous versions
More informationReal Time Operating System: Inter-Process Communication (IPC)
ECE3411 Fall 2015 Lecture 6c. Real Time Operating System: Inter-Process Communication (IPC) Marten van Dijk, Syed Kamran Haider Department of Electrical & Computer Engineering University of Connecticut
More informationEECS 3221 Operating System Fundamentals
General Info EECS 3221 Operating System Fundamentals Instructor: Prof. Hui Jiang Email: hj@cse.yorku.ca Web: http://www.eecs.yorku.ca/course/3221 3 lecture hours each week 2 assignments (2*5%=10%) 1 project
More informationExam TI2720-C/TI2725-C Embedded Software
Exam TI2720-C/TI2725-C Embedded Software Wednesday April 16 2014 (18.30-21.30) Koen Langendoen In order to avoid misunderstanding on the syntactical correctness of code fragments in this examination, we
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 informationEmbedded Software TI2725 C. 5. Software architectures. Koen Langendoen. Embedded Software Group
Embedded Software 5. Software architectures TI2725 C Koen Langendoen Embedded Software Group Lec.2: Interrupts & data sharing volatile static long int lsecondstoday; void interrupt vupdatetime() ++lsecondstoday;
More informationCS3600 SYSTEMS AND NETWORKS
CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 1: Overview and Introduction Prof. Alan Mislove (amislove@ccs.neu.edu) What is an Operating System? 2 What is an Operating System? A program
More informationMidterm Exam Amy Murphy 6 March 2002
University of Rochester Midterm Exam Amy Murphy 6 March 2002 Computer Systems (CSC2/456) Read before beginning: Please write clearly. Illegible answers cannot be graded. Be sure to identify all of your
More informationSemaphores. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University
Semaphores Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE3052: Introduction to Operating Systems, Fall 2017, Jinkyu Jeong (jinkyu@skku.edu) Synchronization
More informationIntroduction to Operating Systems
Introduction to Operating Systems Lecture 4: Process Synchronization MING GAO SE@ecnu (for course related communications) mgao@sei.ecnu.edu.cn Mar. 18, 2015 Outline 1 The synchronization problem 2 A roadmap
More informationEmbedded Systems Design (630414) Lecture 1 Introduction to Embedded Systems Prof. Kasim M. Al-Aubidy Computer Eng. Dept.
Embedded Systems Design (630414) Lecture 1 Introduction to Embedded Systems Prof. Kasim M. Al-Aubidy Computer Eng. Dept. Definition of an E.S. It is a system whose principal function is not computational,
More informationby I.-C. Lin, Dept. CS, NCTU. Textbook: Operating System Concepts 8ed CHAPTER 13: I/O SYSTEMS
by I.-C. Lin, Dept. CS, NCTU. Textbook: Operating System Concepts 8ed CHAPTER 13: I/O SYSTEMS Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests
More informationCS510 Operating System Foundations. Jonathan Walpole
CS510 Operating System Foundations Jonathan Walpole Course Overview Who am I? Jonathan Walpole Professor at PSU since 2004, OGI 1989 2004 Research Interests: Operating System Design, Parallel and Distributed
More informationPINE TRAINING ACADEMY
PINE TRAINING ACADEMY Course Module A d d r e s s D - 5 5 7, G o v i n d p u r a m, G h a z i a b a d, U. P., 2 0 1 0 1 3, I n d i a Digital Logic System Design using Gates/Verilog or VHDL and Implementation
More informationLast class: Today: Course administration OS definition, some history. Background on Computer Architecture
1 Last class: Course administration OS definition, some history Today: Background on Computer Architecture 2 Canonical System Hardware CPU: Processor to perform computations Memory: Programs and data I/O
More informationEE251: Tuesday December 4
EE251: Tuesday December 4 Memory Subsystem continued Timing requirements Adding memory beyond 4 Gbyte Time Allowing: Begin Review for Final Exam Homework #9 due Thursday at beginning of class Friday is
More informationCS140 Operating Systems Midterm Review. Feb. 5 th, 2009 Derrick Isaacson
CS140 Operating Systems Midterm Review Feb. 5 th, 2009 Derrick Isaacson Midterm Quiz Tues. Feb. 10 th In class (4:15-5:30 Skilling) Open book, open notes (closed laptop) Bring printouts You won t have
More informationNotes based on prof. Morris's lecture on scheduling (6.824, fall'02).
Scheduling Required reading: Eliminating receive livelock Notes based on prof. Morris's lecture on scheduling (6.824, fall'02). Overview What is scheduling? The OS policies and mechanisms to allocates
More information17.1. Unit 17. Instruction Sets Picoblaze Processor
17.1 Unit 17 Instruction Sets Picoblaze Processor INSTRUCTION SET OVERVIEW 17.2 17.3 Instruction Set Review Defines the software interface of the processor and memory system Instruction set is the vocabulary
More informationEE178 Spring 2018 Lecture Module 1. Eric Crabill
EE178 Spring 2018 Lecture Module 1 Eric Crabill Goals I am here because I enjoy sharing information on how to use Xilinx silicon, software, and solutions You are here to earn elective credits, but more
More informationSynchronization. CS 475, Spring 2018 Concurrent & Distributed Systems
Synchronization CS 475, Spring 2018 Concurrent & Distributed Systems Review: Threads: Memory View code heap data files code heap data files stack stack stack stack m1 m1 a1 b1 m2 m2 a2 b2 m3 m3 a3 m4 m4
More informationChapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics
Chapter 4 Objectives Learn the components common to every modern computer system. Chapter 4 MARIE: An Introduction to a Simple Computer Be able to explain how each component contributes to program execution.
More informationCSCE Operating Systems Interrupts, Exceptions, and Signals. Qiang Zeng, Ph.D. Fall 2018
CSCE 311 - Operating Systems Interrupts, Exceptions, and Signals Qiang Zeng, Ph.D. Fall 2018 Previous Class Process state transition Ready, blocked, running Call Stack Execution Context Process switch
More informationI/O AND DEVICE HANDLING Operating Systems Design Euiseong Seo
I/O AND DEVICE HANDLING 2016 Operating Systems Design Euiseong Seo (euiseong@skku.edu) I/O Hardware Incredible variety of I/O devices Common concepts Port Bus (daisy chain or shared direct access) Controller
More informationEE458 - Embedded Systems Lecture 8 Semaphores
EE458 - Embedded Systems Lecture 8 Semaphores Outline Introduction to Semaphores Binary and Counting Semaphores Mutexes Typical Applications RTEMS Semaphores References RTC: Chapter 6 CUG: Chapter 9 1
More informationConsistency: Relaxed. SWE 622, Spring 2017 Distributed Software Engineering
Consistency: Relaxed SWE 622, Spring 2017 Distributed Software Engineering Review: HW2 What did we do? Cache->Redis Locks->Lock Server Post-mortem feedback: http://b.socrative.com/ click on student login,
More informationIntroduction to Concurrency. Kenneth M. Anderson University of Colorado, Boulder CSCI 5828 Lecture 4 01/21/2010
Introduction to Concurrency Kenneth M. Anderson University of Colorado, Boulder CSCI 5828 Lecture 4 01/21/2010 University of Colorado, 2010 1 Credit where Credit is Due 2 Some text and images for this
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 informationARM 64-bit Register File
ARM 64-bit Register File Introduction: In this class we will develop and simulate a simple, pipelined ARM microprocessor. Labs #1 & #2 build some basic components of the processor, then labs #3 and #4
More information