real-time virtualization experts intime real-time for windows

43
real-time virtualization experts INtime Real-time for Windows

Upload: sydney-bagge

Post on 29-Mar-2015

258 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Real-time virtualization experts INtime Real-time for Windows

real-time virtualization experts

INtime

Real-time for Windows

Page 2: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 2real-time virtualization experts

Time-critical ApplicationsOn Windows Platforms What are your options? Loosely coupled RTOS…

Costly HW & SW solutions Limited & slow IPC options

Page 3: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 3real-time virtualization experts

Time-critical ApplicationsOn Windows Platforms What are your options? Loosely coupled RTOS…

Costly HW & SW solutions Limited & slow IPC options

Kernel-mode driver… Restricted extensibility Never intended for large apps Difficult to debug and test Real-time bugs crash Windows

Page 4: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 4real-time virtualization experts

Time-critical ApplicationsOn Windows Platforms What are your options? Loosely coupled RTOS…

Costly HW & SW solutions Limited & slow IPC options

Kernel-mode driver… Restricted extensibility Never intended for large apps Difficult to debug and test Real-time bugs crash Windows

…there is a better way

Page 5: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 5real-time virtualization experts

Tightly Coupled is the Superior Real-time Windows Solution Simpler inexpensive hardware Unified development tool set

Windows-like API for real-time Superior IPC options & tools Simplified integration

Page 6: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 6real-time virtualization experts

INtime Overview Two OS environments share a single hardware platform Integrated development with Microsoft Visual Studio INtime kernel is a full real-time operating system

(RTOS) Not a clever device driver

Windows applications have access to INtime objects Many IPC options between Windows and RT processes

Mailboxes, semaphores, shared memory, and TCP/IP Broad real-time I/O device support

Ethernet, TCP/IP, USB, SCSI, multi-channel serial CAN, Profibus, DeviceNet, GPIB, EtherCAT Delta Tau and MEI motion controllers

Page 7: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 7real-time virtualization experts

Windows Kernel

Windows OS

Normal Processes

Standard HAL

Virtual Machine Architecture

Start with standard Windows

Win32 API

Page 8: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 8real-time virtualization experts

Windows Kernel

Windows OSINtime

Real-time Kernel

Real-time Processes

Normal Processes

Standard HAL

Virtual Machine Architecture

Start with standard Windows

Partition memory and I/O resources

Add a full-featured real-time OS

Virtual machine isolates dual OSes

Win32 APIINtimeReal-time API

Page 9: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 9real-time virtualization experts

Windows Kernel

INtime Real-time Windows Application

Windows OSINtime

Real-time Kernel

Real-time Processes

Normal Processes

Standard HAL

Virtual Machine Architecture

Start with standard Windows

Partition memory and I/O resources

Add a full-featured real-time OS

Virtual machine isolates dual OSes

Bridge INtime and Windows with NTX

INtimeNTX API

NTX DLL and VM Interface

Win32 APIINtimeReal-time API

Page 10: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 10real-time virtualization experts

Proven History of Real-time for Windows Long history of reliable real-world use

Millions of world-wide installations RTOS market presence for over 25 years

iRMX III in 1980 iRMX for Windows in 1992 INtime 1.0 launched in 1997

Trusted Intel and Microsoft partner Embedded Microsoft partner since 1998 Microsoft Partner of the Year ‘04, ‘05, and ‘06 Intel Communications Alliance

Member of the Year in 2006

Page 11: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 11real-time virtualization experts

Performance and Reliability Hard real-time performance

Interrupt latency <4 µsec worst case (dual-core) System clock rates down to 50 µsec (dual-core)

Dependable inter-process (application) isolation User-mode application space (ring 3) for real-time apps No real-time performance penalty for ring 3 operation Priority inversion protection for real-time threads

Direct access to I/O and non-paged (physical) memory Real-time network stacks, drivers, and interfaces Distinct real-time safe C and C++ libraries Non-destructive real-time fault handling Minimal impact on Windows performance

Page 12: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 12real-time virtualization experts

System Performance Data

idle system busy system 2.8GHz P4D, Intel 955X, Asus P5WD2 motherboard (dual-processor module) mean std. dev. mean std. dev.

interrupt handler 3.7 µsec 0.2 µsec 3.7 µsec 0.3 µsec interrupt thread 9.2 µsec 0.3 µsec 9.7 µsec 1.0 µsec

idle system busy system 2.4GHz Celeron, Intel D865GVHZ motherboard (single-core CPU) mean std. dev. mean std. dev.

interrupt handler 6.8 µsec 0.8 µsec 17.7 µsec 4.4 µsec interrupt thread 12.1 µsec 1.2 µsec 29.0 µsec 6.7 µsec

idle system busy system 2.66GHz Xeon MP, Super X5DA8 motherboard (dual-socket motherboard) mean std. dev. mean std. dev.

interrupt handler 3.5 µsec 0.4 µsec 3.9 µsec 0.8 µsec interrupt thread 8.3 µsec 0.8 µsec 10.0 µsec 2.5 µsec

idle system busy system 2GHz Core Duo, Intel evaluation motherboard (dual-core CPU) mean std. dev. mean std. dev.

interrupt handler 3.3 µsec 0.2 µsec 3.3 µsec 0.2 µsec interrupt thread 8.8 µsec 0.3 µsec 9.1 µsec 0.5 µsec

Page 13: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 13real-time virtualization experts

INtime Real-time Applications Industrial Control Robotics Motion Control Medical Imaging Test & Measurement CNC Machining Material Handling Process Control Radar & Avionics Simulation

Page 14: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 14real-time virtualization experts

X-Ray Equipment

Major supplier of medical X-ray systems Mission critical application for real-time TenAsys technology used throughout

INtime & Windows control system console Remote INtime nodes running autonomously CANbus connects real-time INtime nodes

Philips Medical Eleva series: EasyDiagnost MultiDiagnost OmniDiagnost

Page 15: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 15real-time virtualization experts

X-Ray Equipment

“We use INtime for those areas of the system where movements are controlled and where radiation is controlled.”

“Those are two areas where we need the most reliable software.”

Sven KuehlSoftware Project Leader

Page 16: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 16real-time virtualization experts

Test and Measurement

World leader in power train engineering PUMA test bed Utilizes INtime remote nodes

High performance data acquisition system IEEE 1394 (real-time) backbone Up to 5 kHz continuous sampling rate

AVL real-time research paper “Thread-based analysis of embedded applications with

real-time and non real-time processing on a single platform”

Graz University of Technology http://www.iti.tu-graz.ac.at/download/publications/prisching03.pdf

Page 17: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 17real-time virtualization experts

Test and Measurement

“We already use Windows for visualization and database management. Why not use the same platform for critical real-time constraints?”

“Plus, this would mean no additional hardware system costs

for our customers.”Bernhard HochstrasserSoftware Development Engineer

Page 18: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 18real-time virtualization experts

Industrial Control

Largest supplier of Soft PLC systems Lowers cost to customers by using industrial grade

PC Exceeds performance of hard PLC systems

Steeplechase VLC is used in: Steel mills Automotive assembly Packaging Materials handling

Page 19: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 19real-time virtualization experts

Industrial Control

“The fact that the TenAsys product was a solid platform was very important. It had a history before we started looking at it.”

“TenAsys is proven technology.”Jeff FisherGlobal Product Manager

Page 20: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 20real-time virtualization experts

CNC Machining

World leading CNC tool vendor Two generations of machine tools on INtime since

2000 Servicing automotive, medical device, special tool

grinding, gear grinding, and aerospace markets High-precision and high-speed

5-axis direct drive systems 3 microns precision 12,000 RPM spindle 3D preview and display

Page 21: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 21real-time virtualization experts

CNC Machining

“We ported from QNX to INtime using a ‘shim’ to maximize preservation of existing control code.”

“That code was up and running relatively quickly and continues to work today.”

Gerard CullenCNC Software Developer

Page 22: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 22real-time virtualization experts

TenAsys Real-time Customers

Page 23: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 23real-time virtualization experts

INtime 3.0 Key Features Microsoft Visual Studio integration

Integrated real-time debugger NTX object for all .NET languages

Multi-core processor support Intel Core Duo CPUs All standard Windows SMP platforms

Breadth of real-time device drivers Real-time USB, Ethernet, and industrial I/O devices

Fault and spin managers Fault manager directs real-time faults to VS debugger Spin detector suspends threads that monopolize CPU

cycles Windows 2000, Windows XP, and Windows Vista

Windows XP Embedded and variants (POS, etc.) Windows 2003 Server

Page 24: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 24real-time virtualization experts

Why Choose INtime? Deterministic real-time control for Windows Reliable and secure run-time environment Integration with Visual Studio for development and debug Support for all standard Windows hardware platforms Management of real-time faults without machine lockups Connection via real-time TCP/IP, USB, and fieldbus Persistent application execution for fail-safe operation Practical use of hardware and software resources Field-proven kernel, libraries, drivers, and applications Trusted Microsoft and Intel embedded partner

Page 25: Real-time virtualization experts INtime Real-time for Windows

real-time virtualization experts

Real-time for Windows

Details

Page 26: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 26real-time virtualization experts

Multi-Processor Support Operate on all Microsoft multi-processor HALs Validated on P3, P4, Xeon, and Core™ CPU

platforms Windows multi-processor SMP and multi-core

systems Intel Core™ and Hyper-Threading processors Multi-core operating modes:

Real-time performance (exclusive) mode INtime RTOS is dedicated to a single core Remaining CPU cores are dedicated to Windows

Windows performance (shared) mode INtime shares one CPU core with Windows Remaining CPU cores are dedicated to Windows

Page 27: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 27real-time virtualization experts

Multi-Core Processor Benefits Dedicate a single CPU core to real-time processes

Complete isolation of real-time interrupts Minimal impact on Windows performance Maximize performance of real-time processes

Or share CPU cycles between INtime and Windows Optimize Windows’ use of multiple CPU cores Maximize CPU cycles available to Windows

Both modes include enhancements to determinism Better isolation of real-time interrupts Significant decrease in real-time interrupt delays Independent real-time clock (more precise timer

ticks) Minimal interaction with Windows HAL

Page 28: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 28real-time virtualization experts

Visual Studio Integration Develop real-time code in Visual Studio

environment C/C++ and x86 assembly INtime Wizards generate

real-time code templates VS 2003 and VS 2005

Real-time source-level debugging No simulation step required Simultaneously debug real-time

and Windows applications Windows apps use NTX interface

Either .h files or .NET object Visual Studio solutions contain

INtime and Windows projects

Page 29: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 29real-time virtualization experts

Visual Studio Debugging Integrated real-time debugger

Use Visual Studio to debug real-time processes and threads

Not possible with device driver solutions Display and modify variables Breakpoints, single-step, etc.

Page 30: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 30real-time virtualization experts

Visual Studio Debugging Integrated real-time debugger

Use Visual Studio to debug real-time processes and threads

Not possible with device driver solutions Display and modify variables Breakpoints, single-step, etc.

Real-time process fault manager Fault in real-time thread:

suspends thread and process launches VS debug session or launches Spider debugger

Log trace on deployed systems

Page 31: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 31real-time virtualization experts

INtime Device Drivers Partial list of available real-time device drivers:

RS-232 serial, SCSI, VGA, USB serial, IEEE-488 (GPIB)

Intel, 3Com, NE2000, and Realtek Ethernet controllers

Hilscher CIF/COM fieldbus controllers Communication interfaces

DeviceNet, PROFIBUS, CANopen, ControlNet EtherCAT deterministic fieldbus Real-time TCP/IP and USB stacks

TCP/IP stack on real-time kernel No Windows overhead Standard sockets API

raw

Sockets API

NIC Driver

UDPTCP

INtime ProcessINtime Process

INtime Process

INtime Process

ICM PIPARP

Page 32: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 32real-time virtualization experts

Real-time Configuration Tools

Interrupt Device Configurator Simplifies assignment of

IRQ to real-time environment

Warns of conflicts re shared Windows interrupts

INtime configuration utility Windows control panel Configure remote nodes Manage interrupt

resources Memory extensions

Pre-allocate memory external to Windows

Reach > 4GBytes memory (using paging techniques)

Page 33: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 33real-time virtualization experts

INtex (INtime Explorer)Real-Time Object Browser

Page 34: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 34real-time virtualization experts

INScope (Software Scope)Performance Analysis Tool

Time stamp entry and exits of major API calls and interrupt handlers

Determine exact sequence and precise timing of real-time code execution

Page 35: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 35real-time virtualization experts

Scalable and Extendable Stand-alone RTOS solutions

INtime remote nodes on embedded hardware

Easily scale using XP Embedded tools Detailed SLD included

Highly extensible platform No system too complex

Motion Vision Discrete I/O

All with predictable and reliable results!

Page 36: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 36real-time virtualization experts

Reliable IsolationINtime Real-Time Processes

(multiple real-time segments)

DATA

CODE

STACK

HEAP

thread2 data

thread2 code

thread2 stack

thread2 heap

threads3-narranged as

above

Windows Segment(lowest priority real-time segment)

0000.0000

DATA

CODE

STACK

HEAP

thread2 data

thread2 code

thread2 stack

thread2 heap

threads3-narranged as

above

DATA

CODE

STACK

HEAP

thread2 data

thread2 code

thread2 stack

thread2 heap

threads3-narranged as

above

0000.0000

non-allocated areas(page fault if entered)

additional threadsallocated as above

Virtual Segment limit(GP fault if crossed)

ContainsWindows

kernel,drivers,memory,

applications,etc.

}

Page 37: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 37real-time virtualization experts

Virtualization Details CPU-enforced isolation between INtime and

Windows Two distinct, parallel, and isolated environments INtime processes and drivers run in user mode Windows encapsulated as lowest priority INtime task

Windows’ priorities and processes run unchanged “Everything Windows” is encapsulated:

kernel, drivers, I/O, page tables, memory management, interrupts, processes, threads, user interface, file system…

User-mode enforces reliable applications Full speed, no performance penalty Superior real-time debugging tools INtime user-mode includes:

Direct access to I/O and memory Memory protection for reliability Paging turned off to insure determinism

Page 38: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 38real-time virtualization experts

Continuous Operation Fault and spin managers prevent lockups

Fault manager directs real-time faults to GPF handler Spin detector suspends threads that monopolize CPU

cycle Unaffected processes continue to operate

STOP manager detects BSOD notifications Real-time threads continue, unimpeded by a blue screen

Continuous operation means INtime applications can: Operate without Windows, indefinitely Gracefully shutdown or restart Send a signal via an INtime communication interface

(e.g., serial or Ethernet) that attention is required

Page 39: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 39real-time virtualization experts

INtime Kernel Features (part 1) Multi-tasked, multi-threaded applications

Preemptive priority-based scheduling algorithm 255 real-time priority task levels Windows is lowest priority real-time task

Event-driven scheduling for interrupts and alarms Round-robin scheduling for equal priority threads Priority inheritance to avoid deadlocks

Periodic and one-shot timer events 50 µsec minimum interval (dual-core systems)

Interrupt service routines (ISR) and interrupt service threads (IST) Real-time interrupts always preempt Windows ISRs for very fast and simple interrupt processing ISTs for complex, full-featured interrupt processing

Page 40: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 40real-time virtualization experts

INtime Kernel Features (part 2) Memory management and data sharing

Shared memory and mailboxes (message passing) Static and dynamic memory pools and heaps

C library malloc() and free() functions C++ new and delete operators

Synchronization mechanisms Mailboxes (wait on messages) Semaphores (single or multi-count) Regions (a.k.a. critical regions or mutexes)

IPC between Windows and INtime (NTX) Mailboxes, semaphores, and shared memory IPC (NTX) managed by real-time kernel insures

reliability

Page 41: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 41real-time virtualization experts

INtime Kernel Features (part 3) Exception handling for:

Programming errors (invalid parameters) Invalid or insufficient resource errors (memory) Floating point errors (numeric processor) Hardware faults (page faults, segment faults…)

Multiple unique real-time APIs INtime native real-time API iRMX transition API for iRMX apps iWin32 transition API for Win32 apps

RSL (real-time shared libraries) Similar to Windows DLL, runs in user mode (ring 3) Ideal for implementing real-time device drivers

Page 42: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 42real-time virtualization experts

Proven Technology

“Intel® Virtualization Technology is a key component of our platform approach to enable new levels of performance and

features for a broad range of applications. TenAsys is utilizing this technology to help

bring those benefits to embedded application developers.”

Doug Davis, VP and General ManagerCommunications Infrastructure Group

Intel Corporation

Page 43: Real-time virtualization experts INtime Real-time for Windows

INtime 3.0 Real-time for Windows 43real-time virtualization experts

TenAsys SoftwareQuietly Running the World Industrial Control & Robotics Air & Ground Traffic Control Medical Imaging Test & Measurement CNC Machining Material Handling Process Control Radar & Avionics Simulation Mail & Check Sorting