AUBURN COMP 3510 - Real-Time Operating Systems (59 pages)

Previewing pages 1, 2, 3, 4, 27, 28, 29, 30, 56, 57, 58, 59 of 59 page document View the full content.
View Full Document

Real-Time Operating Systems



Previewing pages 1, 2, 3, 4, 27, 28, 29, 30, 56, 57, 58, 59 of actual document.

View the full content.
View Full Document
View Full Document

Real-Time Operating Systems

58 views


Pages:
59
School:
Auburn University
Course:
Comp 3510 - EMBEDDED SYSTEMS DEVELOPMENT (3)
EMBEDDED SYSTEMS DEVELOPMENT (3) Documents
Unformatted text preview:

Real Time Operating Systems Read Chapter 6 David E Simon An Embedded Software Primer Read Chapter 1 Chapter 2 Labrosse What Why How What does real time mean What is an OS Why would I need an OS Why would I need a real time OS How do we use an OS on embedded systems Embedded Systems Development Software Architectures S Biaz 01 13 19 2 Is This a Real Time System Consider the following case A human operator must regulate the temperature of a system with a 5 degrees F The temperature adjusts the current intensity to regulate the temperature The oven has a huge inertia its temperature varies by at most 2 degrees per hour The union imposes 2 coffee breaks a day The coffee break was negotiated to last one hour Embedded Systems Development Software Architectures S Biaz 01 13 19 3 Is This a Real Time System 2 Consider the following case Consider a system that can achieve 10 Mflops We want to use this machine for 24 hour weather prediction The atmosphere is respectively divided in longitude and latitude in areas of 200 miles X 200 miles Measures are made at different altitudes It takes 100 billion floating operations to solve the Navier Stockes equations Embedded Systems Development Software Architectures S Biaz 01 13 19 4 Is This a Real Time System 3 Consider the following case Consider the problem on previous slide The resolution of 200 miles is too coarse Suppose we double the resolution in 4 dimensions Volume of data increases 16 fold so does execution time Embedded Systems Development Software Architectures S Biaz 01 13 19 5 What Is an O S A piece of software It provides tools to manage for embedded systems Processes or tasks Memory space Embedded Systems Development Software Architectures S Biaz 01 13 19 6 What Is an Operating System What It is a program software that acts as an intermediary between a user of a computer and the computer hardware Why Make the use of a computer CONVENIENT and EFFICIENT How We have one semester to answer this question Embedded Systems Development Software Architectures S Biaz 01 13 19 7 What Is an Operating System For an Embedded System Provides software tools for a convenient and prioritized control of tasks Provides tools for task process synchronization Provides a simple memory management system Embedded Systems Development Software Architectures S Biaz 01 13 19 8 Convenient and Efficient General Purpose Convenient Simplicity of use Messy or complicated details are hidden User is unaware that he is using an OS Efficient Resources are optimally used Embedded Systems Development Software Architectures S Biaz 01 13 19 9 Abstract View of A System General Purpose Embedded Systems Development Software Architectures S Biaz 01 13 19 10 Layered View of a Computer System Services Requests A computer system consists of hardware system programs Blurry frontier application programs Embedded Systems Development Software Architectures S Biaz 01 13 19 11 Abstract View of A System Embedded System Application OS Hardware Embedded Systems Development Software Architectures S Biaz 01 13 19 12 Operating System Definitions General Purpose Resource allocator manages and allocates resources Control program controls the execution of user programs and operations of I O devices Kernel the one program running at all times all else being application programs Embedded Systems Development Software Architectures S Biaz 01 13 19 13 Multiprogramming CPU Objective Better control of tasks Embedded Systems Development Software Architectures S Biaz 01 13 19 14 Dual Mode Operation Sharing system resources requires operating system to ensure that an incorrect program or poorly behaving human cannot cause other programs to execute incorrectly OS must provide hardware support to differentiate between at least two modes of operations 1 User mode execution done on behalf of a user 2 Monitor mode also kernel mode or system mode execution done on behalf of operating system Embedded Systems Development Software Architectures S Biaz 01 13 19 15 Dual Mode Operation Cont Mode bit added to computer hardware to indicate the current mode monitor 0 or user 1 When an interrupt or fault occurs hardware switches to monitor mode Interrupt fault kernel user set user mode Privileged instructions can be issued only in kernel mode Embedded Systems Development Software Architectures S Biaz 01 13 19 16 Process Task Concept An operating system executes a variety of programs Batch system jobs Time shared systems user programs or tasks Similar terms job process task ES almost interchangeably Embedded Systems Development Software Architectures S Biaz 01 13 19 17 Process Task Concept Cont Process a program in execution process execution must progress in sequential fashion A process includes program counter stack data section Embedded Systems Development Software Architectures S Biaz 01 13 19 18 Example of Processes PC The Process Model CPU Multiprogramming of four programs Conceptual model of 4 independent sequential processes Only one program active at any instant Embedded Systems Development Software Architectures S Biaz 01 13 19 19 Multitasking Embedded Systems Development Software Architectures S Biaz 01 13 19 20 Key Difference on Embedded Systems General Purpose OS processes may be initiated by Different users Different application Embedded system tasks are part of a unique application Embedded Systems Development Software Architectures S Biaz 01 13 19 21 Process Task State Bottom line keep track of which process task runs has the CPU As a process executes it changes state in some states process task does need CPU new The process is being created running Instructions are being executed waiting The process is waiting for some event to occur ready The process is waiting to be assigned to a process terminated The process has finished execution Embedded Systems Development Software Architectures S Biaz 01 13 19 22 Diagram of Process State Embedded Systems Development Software Architectures S Biaz 01 13 19 23 Diagram of Task State Embedded Systems Development Software Architectures S Biaz 01 13 19 24 Process Control Block PCB Information associated with each process Process state Program counter CPU registers CPU scheduling information Memory management information Accounting information I O status information Embedded Systems Development Software Architectures S Biaz 01 13 19 25 Process Control Block PCB Embedded Systems Development Software Architectures S Biaz 01 13 19 26 CPU Switch From Process to Process


View Full Document

Access the best Study Guides, Lecture Notes and Practice Exams

Loading Unlocking...
Login

Join to view Real-Time Operating Systems and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Real-Time Operating Systems and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?