RTOS6

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 20

UNIT - 6

TARGET IMAGE
CREATION

P.V.K.Chaitanya, E.C.E, GVPCEW

OFF-THE-SHELF
OPERATING SYSTEMS

Non real-time embedded OS

Suitable for non-real time applications

They use preemptive kernel, but strict deadlines cannot


be met.

Real Time OS

Real time functionality is achieved through very low


latency.

They are deterministic OS i.e. worst case response time


can be predicted.

Handheld/mobile OS

Meant for handheld devices and mobiles

Eg Palm OS, Symbian OS, Windows OS, Android, iOS


P.V.K.Chaitanya, E.C.E, GVPCEW

COMMONALITIES OF OS

The features supported by OS of different vendors


appear almost the same.

Some of them are

Integrated Development Environment

POSIX Compatibility

It specifies the Application Programming Interface to achieve


portability of applications.

TCP/IP support

Vendors supply an IDE that includes editor, compiler and debugger


and necessary cross-platform development tools.

TCP/IP protocol including FTP, SMTP, HTTP is integrated in the OS.


Function calls will be provided to access network-related services.

Device Drivers

Number of device drivers for serial port, parallel port, USB,. are
provided.
P.V.K.Chaitanya, E.C.E, GVPCEW

PORTABLE O S INTERFACE (POSIX)

POSIX is a standard developed by IEEE.

It is a set of function calls to access the OS


objects and services.

Application developed by using API of one


vendor was not able to be ported to another OS.
Thus POSIX standardized the API.

It gives the various function calls and library


functions that need to be implemented by the
OS.

There are different profiles of POSIX standard


depending upon the size of the system.
P.V.K.Chaitanya, E.C.E, GVPCEW

DIFFERENCES IN OS

Support for processors

OS code consists of processor-independent and processordependent code.

So every OS may not support all the processors.

Footprint

Footprint or memory occupied by the kernel differs from


OS to OS

They require a few kilobytes of memory

Java environment

Some vendors provide JVM support for their OS.

Board Support Packages

Some vendors supply hardware boards built around


different processors with OS ported onto the hardware.
P.V.K.Chaitanya, E.C.E, GVPCEW

DIFFERENCES IN OS

Scheduling Algorithms
Scheduling

algorithms provided by different OS may


be different.

Maximum number of tasks


Maximum

number of tasks supported differs from OS


to OS. Some support only 64 tasks whereas some
support upto 232 tasks.

Assigning task priorities


Some

OS may have fixed priorities to the tasks,


whereas som may have dynamic priorities, which
can be changed during execution time.

P.V.K.Chaitanya, E.C.E, GVPCEW

DIFFERENCES IN OS

Priority inheritance
Some

OS may support priority inheritance and some


may not.

POSIX SUPPORT
Though

OS vendors claim POSIX support, it may be


only for small system POSIX profile, but not fullfledged POSIX support.

Licensing terms
For

some OS, on-time payment gives the entire


source code.

For

some OS, vendors ask for a small amount for the


development system without source code and
demand a large amount for the source code.
P.V.K.Chaitanya, E.C.E, GVPCEW

EMBEDDED OPERATING SYSTEMS

They use preemptive priority based kernel, but


donot meet strict deadlines.

Stripped down versions of desktop OS can be


used as Embedded OS.

This strategy is used in developing 3 embedded


OS
Embedded
Windows

NT

XP Embedded

Embedded

Linux

P.V.K.Chaitanya, E.C.E, GVPCEW

EMBEDDED NT

Many embedded systems use Single Board


Computer(SBC) hardware, which is similar to
desktop computers hardware.

The application and the OS, needs to be bundled


and transferred to the target hardware.

Applications of Embedded NT are Internet Kiosk,


ATM,

It is based on Windows NT

A minimal OS without network requires 9MB of


RAM and 8MB of program memory.

With network components and device drivers, it


requires up to 16MB of RAM and 16MB of program
memory.
P.V.K.Chaitanya, E.C.E, GVPCEW

EMBEDDED NT

Applications can be developed using Visual Basic or


Visual C++.

To develop applications, the required configurations are

Windows NT 4.0

Service pack 4.0

Internet explorer 5.0

Visual studio 6.0 development environment

Development tools called Component Designer and


Target Designer are provided.

Target system can be created in following ways

That boots from a CDROM

Bootable partition on the hard disk

Target image on an empty hard disk


P.V.K.Chaitanya, E.C.E, GVPCEW

WINDOWS XP EMBEDDED (OR) EMBEDDED XP

It is the successor to Windows NT

It is a preemptive multitasking OS, and uses Win32


applications and drivers

So, applications developed on desktop using visual


studio can be ported to the embedded system.

Different applications are set top boxes, internet


kiosks,

It has IPv6 support, IrDA compliance,


connectivity, Plug and Play, ..

But, it requires large RAM and program memory.

It provides utilities such as Component Designer


and Target Designer
P.V.K.Chaitanya, E.C.E, GVPCEW

LAN

EMBEDDED LINUX

Like Linux, Embedded Linux is covered by GNU


General Public License and hence the complete
source code is free

It is now used on a number of devices such as PDAs,


set top boxes, cellular phones, internet appliances,
in telecommunication switches and routers, ..

Main attractions are

Open source software

Availability of large number of software resources in


source code form

Support for POSIX

P.V.K.Chaitanya, E.C.E, GVPCEW

EMBEDDED LINUX

As many non-standard variations of Embedded


Linux are available, this may lead to nonportable applications

So, Embedded Linux consortium released the


Embedded
Linux
Consortium
Platform
Specifications(ELCPS) to bring standardization

It defines 3 environments for 3 different


embedded system requirements
Minimal

system environment

Intermediate
Full

system environment

system environment
P.V.K.Chaitanya, E.C.E, GVPCEW

EMBEDDED LINUX

Minimal System Environment

It is applicable for embedded system with one processor


and associated memory.

They work in isolated mode without user interaction and


have no secondary storage and file system

Only one process with one or more linux tasks or POSIX


threads will be running.

So, the OS footprint will be small.

Intermediate System Environment

They have one or more processors, but need not have


secondary storage.

File system can be built in a flash device

Support for secondary storage is also provided


P.V.K.Chaitanya, E.C.E, GVPCEW

EMBEDDED LINUX

Full System Environment


They

have one or more processors, secondary


storage, network support and user interface.

It

supports full multipurpose Linux

For any environment, the various API calls to be


supported such as, for task management, interprocess communication, file management,
mathematical function library calls, header file
definitions for symbolic constants, are
specified.
P.V.K.Chaitanya, E.C.E, GVPCEW

REAL TIME OPERATING SYSTEMS

Some of the many real time operating systems


available are
QNX

Neutrino

VxWorks
MicroC/OS-II
RTLinux

P.V.K.Chaitanya, E.C.E, GVPCEW

QNX NEUTRINO

It is an RTOS from QNX software systems limited.

It supports a number of processors such as ARM,


MIPS, PowerPC, SH-4, StrongARM, x86 and
Pentium.

Has support for C,C++ and Java Languages and


TCP/IP protocol stack.

Has support for multiple scheduling algorithms


such as round-robin, FIFO, .

Upto 65535 tasks are supported and each task


can have 65536 threads.

It requires 64K ROM and 32K RAM


P.V.K.Chaitanya, E.C.E, GVPCEW

VXWORKS

It supports a number of processors such as


PowerPC, Intel StrongARM, ARM, Hitachi SuperH,
Motorola Coldfire, .

Supports both preemptive and round-robin


scheduling

256 priority levels can be assigned to tasks

Supports priority inheritance

P.V.K.Chaitanya, E.C.E, GVPCEW

MICROC/OS-II

It is a preemptive RTOS

It is certified for use in commercial aircraft by


Federal Aviation Administration

Features are source code availability, scalable,


portable, multitasking, deterministic, reliable.

Supports 64 tasks out of which 8 are system


tasks. Each task is assigned a unique priority.

Round-robin scheduling is not supported

P.V.K.Chaitanya, E.C.E, GVPCEW

RTLINUX

FSM Labs has 2 editions of RTLinux


RTLinuxPro
RTLinuxFree

It is a hard real time operating system

Supports x86, Pentium, PowerPC, ARM, Fujitsu,


MIPS, Alpha

Footprint of 4MB is required

Does not support priority inheritance

RTLinux tasks are given priority compared to


Linux tasks

Worst case interrupt latency is 15 microsecs


P.V.K.Chaitanya, E.C.E, GVPCEW

You might also like