OIL - OSEK Implementation Language

Slides:



Advertisements
Similar presentations
Week 6: Chapter 6 Agenda Automation of SQL Server tasks using: SQL Server Agent Scheduling Scripting Technologies.
Advertisements

Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 11: Monitoring Server Performance.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
Interact: RETSINA’s Agent Editor Provides a GUI interface to agent’s task and reduction libraries Allows –quick development of new libraries –easy extensions.
Chapter 13 Web Application Infrastructure. Objectives Explain the components and purpose of a web application platform Describe several common webapp.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
© 2008, Renesas Technology America, Inc., All Rights Reserved 1 Purpose  This training course describes how to configure the the C/C++ compiler options.
Outcome 2 – Computer Software The Range of Software Available The Different Categories of Software System Software Programming Languages Applications Software.
An Introduction to OSEK l JRD l ETAS-STV/PRM-E l 2010 © ETAS GmbH All rights reserved. The names and designations used in this document are trademarks.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 11: Monitoring Server Performance.
OSEK / VDX KHASIM DURGAM
OPERATING SYSTEMS Goals of the course Definitions of operating systems Operating system goals What is not an operating system Computer architecture O/S.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 11: Monitoring Server Performance.
MEMORY GENERATORS MEMPRO Instructor: Dr. Anthony Johnson Presented by: Rajesh Natarajan Motheeswara Salla.
Chapter – 8 Software Tools.
CCNA1 v3 Module 1 v3 CCNA 1 Module 1 JEOPARDY K. Martin.
Bertrand N’Goy, Vincent CAMUS pulse-AR
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Java Thread Programming
Chapter 13 Web Application Infrastructure
Chapter 4: Threads Modified by Dr. Neerja Mhaskar for CS 3SH3.
WP4 Models and Contents Quality Assessment
Chapter 6 : User interface design
DDC 2223 SYSTEM SOFTWARE DDC2223 SYSTEM SOFTWARE.
Linux Optimization Kit Many developers need to get a performance increase from their Linux OS Linux OK allows users to achieve higher performance.
Muen Policy & Toolchain
Chapter Objectives In this chapter, you will learn:
Processes and threads.
“Under the hood”: Angry Birds Maze
Interrupts and signals
User Interface Design The Golden Rules: Place the user in control.
Mobile Operating System
MCTS Guide to Microsoft Windows 7
Guide To UNIX Using Linux Third Edition
VDK Concepts and Features How to Create a Project with VDK support
Enterprise Computing Collaboration System Example
Introduction to Operating System
Introduction to Operating System (OS)
CS490 Windows Internals Quiz 2 09/27/2013.
TRANSLATORS AND IDEs Key Revision Points.
Networking for Home and Small Businesses – Chapter 2
Windows Internals Brown-Bag Seminar Chapter 1 – Concepts and Tools
Chapter 1: Intro (excerpt)
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Chapter 2: System Structures
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
CGS 3763 Operating Systems Concepts Spring 2013
Process Description and Control
Lecture Topics: 11/1 General Operating System Concepts Processes
Process Description and Control
Analysis models and design models
Threads and Concurrency
User interface design.
Chapter 7 –Implementation Issues
Networking for Home and Small Businesses – Chapter 2
Operating Systems (CS 340 D)
Process Description and Control
Threads and Concurrency
VDK Concepts and Features How to Create a Project with VDK support
Overview of Workflows: Why Use Them?
Chapter 2 Processes and Threads 2.1 Processes 2.2 Threads
VDK Concepts and Features How to Create a Project with VDK support
Software Development Environment, File Storage & Compiling
System Calls System calls are the user API to the OS
Contact Information Office: 225 Neville Hall Office Hours: Monday and Wednesday 12:00-1:00 and by appointment. Phone:
Graphical Modeling of INFOD applications
Web Programming : Building Internet Applications Chris Bates CSE :
CS 111 – Sept. 20 Operating Systems Commitment: definition origin
CS Introduction to Operating Systems
Presentation transcript:

OIL - OSEK Implementation Language 6 OIL - OSEK Implementation Language

OSEK Implementation Language A standard way to describe an OSEK system For static configuration of the OS Tailored to the needs of your application A textual description with a readable syntax OIL Specify OS Requirements Configure OS

OIL - A High-Level View Describes a set of system objects contained in a CPU

Why use OIL? An OSEK system is configured statically - OIL is the means of describing the configuration Only needed OS software is included OS overheads can be minimised A ‘high-level design’ of the application All objects and their relationships must be defined Provides ‘configuration management’ A system may be reconstructed from the OIL file Automated tools can verify the configuration

The OIL File Describes an entire OSEK application in a CPU Part 1: Implementation Definition Implementation-specific features of an OSEK-OS Example: Basic & extended tasks used, single activation only, one task per priority Part 2: Application Definition Structure and properties of application 17 tasks, 3 counters, 4 alarms, 6 resources, 5 events. Alarm3 activates Task4.

Example : An OS Implementation Definition OIL_VERSION = “2.0”; IMPLEMENTATION MyOwnImplementation { OS { INT [1..255] NON_SUSPENDED_TASKS; }; TASK { INT [1..256] PRIORITY; //Value range INT [1..24] ACTIVATION; //Value range INT STACKSIZE; } ISR { INT ISRSTACKSIZE; ALARM { BOOLEAN START; BOOLEAN CYCLIC; EVENT { INT WITH_AUTO [1..256] MASK; //Value range

Application Definition Structure and properties of a specific application Operating System Tasks Counters Alarms Resources Events ISRs … CC Conformance Class STATUS Error Checking SCHEDULE Preemption Hook Routines // OIL-Definition-File OIL_VERSION = "2.0"; CPU Sample_CPU1 { OS StdOS { CC = ECC2; STATUS = EXTENDED; SCHEDULE = MIXED; StartupHook = TRUE; ErrorHook = TRUE; ShutdownHook = TRUE; PreTaskHook = TRUE; PostTaskHook = TRUE; SYSTEMSTACKSIZE = 512; };

Tasks For each task, by task name TYPE Basic or Extended PRIORITY SCHEDULE Preemption ? ACTIVATION Maximum Activations AUTOSTART … At System Startup? RESOURCE List those used by Task EVENT List those of Task ... TASK extendedTaskOne { TYPE = EXTENDED; SCHEDULE = FULL; PRIORITY = 1; ACTIVATION = 1; AUTOSTART = TRUE; APPMODE = {Mode0}; STACKSIZE = 32; EVENT = {evt1}; };

Events and Counters For each Event For each Counter MASK Bit Pattern or AUTO For each Counter MAXALLOWEDVALUE TICKSPERBASE (Interpretation is up to user) MINCYCLE Minimum ticks for cyclic alarm EVENT event1 { MASK = 0x04; }; EVENT event2 { MASK = AUTO; } COUNTER SYSTEM_COUNTER { MAXALLOWEDVALUE = 65535; TICKSPERBASE = 1000000; MINCYCLE = 1; };

Alarms For each Alarm COUNTER ACTION Activate Task or Set Event TASK Task to be Notified EVENT (If Action is to Set Event) EVENT evt1 { MASK = AUTO; }; COUNTER SYSTEM_COUNTER { MAXALLOWEDVALUE = 65535; TICKSPERBASE = 1000000; MINCYCLE = 1; ALARM relalarm1 { COUNTER = SYSTEM_COUNTER; ACTION = SETEVENT; TASK = extendedTaskOne; EVENT = evt1;

Interrupt Service Routines For each Interrupt Service Routine CATEGORY 1, 2, or 3 No standard attributes for MESSAGE Objects COM Objects NM Objects OSEKWorks has defined extenstions for these! ISR TimerInterrupt { CATEGORY = 3; };

OSEKWorks Extensions Each implementation of OSEK can define extensions OSEKWorks defines the following to optimise the kernel: SCHEDULE_CALL = {TRUE|FALSE} FPU = {TRUE|FALSE} OSEKWorks Only

Automated OIL Tools OSEKWorks provides some tools for Graphical configuration of OIL files Verification of OIL Automatic initialisation of OS data structures from description of application services in OIL Stack size Priority ceiling of each resource ID’s for all objects AUTO attributes (e.g. conformance class) OSEKWorks Only

OSEK Development Process (recap) Design Automation Tools (e.g. MATRIXx, BetterState) OR Hand Code C Code Compile Link OIL Files Optimized OSEK Kernel Application Software OIL Reader OSEKWorks OIL Configurator Network Management Kernel OSEK Run-time Components (e.g. OSEKWorks) Communication OSEKWorks Only

OSEKWorks OIL Configurator Graphical tool to configure and optimise OSEKWorks for an application. Key Features Intuitive GUI for displaying & editing system OIL files Integrated framework for creating a system level OIL file (from multiple files) System-level analysis Tabular, Graphical & File views Software design tool-aware OSEKWorks Only