VxWorks
Official website | www |
---|
Developer | Wind River (a wholly owned subsidiary of Intel Corporation) |
---|---|
OS family | Real-time operating systems |
Working state | Current |
Initial release | 1987 |
Latest release | 7 / March 2014 |
Marketing target | Embedded systems |
Platforms | x86 (including Quark), x86-64, MIPS, PowerPC, SH-4, ARM |
Kernel type | Monolithic |
License | Proprietary |
Official website | www |
VxWorks is a real-time operating system (RTOS) developed as proprietary software by Wind River of Alameda, California, US. First released in 1987, VxWorks is designed for use in embedded systems requiring real-time, deterministic performance and, in many cases, safety and security certification, for industries, such as aerospace and defense, medical devices, industrial equipment, robotics, energy, transportation, network infrastructure, automotive, and consumer electronics.[1] VxWorks supports Intel (x86, including the new Quark SoC,[2] and x68-64), MIPS, PowerPC, SH-4, and ARM architectures. The RTOS can be used in multicore asymmetric multiprocessing (AMP), symmetric multiprocessing (SMP), and mixed modes)[3] and multi-OS (via Type 1 hypervisor) designs on 32- and 64-bit processors.[4] VxWorks comes with the kernel, middleware, board support packages, and Wind River Workbench development suite. Various complementary third-party software and hardware technologies are also available. In its latest release, VxWorks 7, the RTOS has been re-engineered to separate the OS kernel from middleware, applications and other packages. Scalability, security, safety, connectivity, and graphics have been improved to address Internet of Things (IoT) needs.[5][6][7]
History
VxWorks started in the early 1980s as a set of enhancements to a simple RTOS called VRTX[8] sold by Ready Systems (later becoming a Mentor Graphics product in 1995).[9][10] At the time, VRTX had quality issues, was 4KB, small in size, lacked critical features, and was generally not up to par as a full-blown RTOS. Wind River acquired rights to distribute VRTX and significantly enhanced it by adding, among other things, a file system and an integrated development environment. In 1987, anticipating the termination of its reseller contract by Ready Systems, Wind River developed its own kernel to replace VRTX within VxWorks.[11] The VxWorks name is believed to be a pun on VRTX ("VRTX that works"). Legend has it, that the company founders, Jerry Fiddler and Dave Wilner, first conceived of forming Wind River and creating VxWorks, while hiking in the Wind River mountains of Wyoming.[citation needed]
VxWorks key milestones:
- 1980s: (32-bit processing) – VxWorks adds support for 32-bit processors
- 1990s: (the Internet) – VxWorks 5 becomes the first RTOS with a networking stack
- 2000s: (multi-core) – VxWorks 6 supports SMP and adds derivative industry-specific platforms
- 2010s: (64-bit processing and the Internet of Things) – VxWorks adds support for 64-bit processing[4] and introduces VxWorks 7[12]
Platform Overview
VxWorks includes a kernel, middleware, board support packages, Wind River Workbench development suite, and various third-party software and hardware technologies. The platform is a modular, vendor-neutral, open system that separates the OS kernel from middleware, applications and other packages.[6] This separation enables easier integration and testing of new software.[12]
VxWorks supports Intel® (x86, including the new Quark SoC,[2] and x68-64), MIPS, PowerPC®, SH-4, and ARM® architectures. The RTOS can be used in multicore asymmetric multiprocessing (AMP), symmetric multiprocessing (SMP), and mixed modes[4] and multi-OS (via Type 1 hypervisor) designs on 32- and 64-bit processors. The implementation of a layered source build system in VxWorks 7 allows multiple versions of any stack to be installed at the same time so developers can select which version of any feature set should go into the VxWorks kernel libraries. The VxWorks 7 Core Platform incorporates both a small and large kernel to provide the necessary flexibility to meet the needs of a wide range of product sizes.[12] Its optional add-on Profiles support the addition of incremental functionality required for specific industries as well as additional technology-related capabilities such as its small footprint VxWorks microkernel (20K) and its Security Profile.[12][13]
The VxWorks Core Platform's supported hosts are Windows and various versions of Linux and includes the following runtime components:
- OS (UP and SMP; 32- and 64-bit)[4]
- Application support: file system; core network stack; USB stack; inter-process communications (IPC)
- Hardware support: architecture adaptor; processor support library; device driver library; BSPs
Features
VxWorks is designed for use in embedded systems.
Some of the features of the current OS are:
- Multitasking kernel with preemptive and round-robin scheduling and fast interrupt response
- Native 64-bit operating system[14] (only one 64-bit architecture supported: x86-64). Data model: LP64.
- User-mode applications ("Real-Time Processes", or RTP) isolated from other user-mode applications as well as the kernel via memory protection mechanisms.
- SMP and AMP support
- Error handling framework
- Binary, counting, and mutual exclusion semaphores with priority inheritance
- Local and distributed message queues
- POSIX PSE52 certified conformity in user-mode execution environment[15]
- File systems: High Reliability File System (HRFS), FAT-based file system (DOSFS), Network File System (NFS)
- Dual-mode IPv6 networking stack with IPv6 Ready Logo certification
- Memory protection including real-time processes (RTPs), error detection and reporting, and IPC
- Multi-OS messaging using TIPC and Wind River multi-OS IPC
- Symbolic degugging
In March 2014, Wind River introduced VxWorks 7, which builds on previous release's scalability, security, safety, connectivity, and virtualization[7][12][16] The following list some of the release 7 updates.[1][4][7][17]
- Layered build system supports independent layer updating
- Kernel hosts a hypervisor so that it can run Windows and Linux
- Safety partitioning module for mission-critical applications
- VxWorks microkernel (a full RTOS that can be as small as 20KB)
- Security features such as digitally-signed modules (X.509), encryption, password management, ability to add/delete users at runtime
- SHA-256 hashing algorithm as the default password hashing algorithm
- Human machine interface with Vector Graphics, and Tilcon user interface (UI)
- Graphical user interface (GUI): OpenVG stack, Open GL, Tilcon UI, Frame Buffer Driver, EV Dev Interface
- Updated configuration interfaces for VxWorks Source Build VSB projects and VxWorks Image Projects
- Single authentication control used for Telnet, SSH, FTP, and rlogin daemons
- Connectivity with Bluetooth and SocketCAN protocol stacks
- Inclusion of MIPC File System (MFS) and MIPC Network Device (MND)
- Broad networking and middleware features including Wind River MACsec, Wind River’s implementation of IEEE 802.1A, Point-to-Point Protocol (PPP) over L2TP, PPP over virtual local area network (VLAN)and Diameter secure key storage
- Faster, open source debugging UI and engine
- System Viewer provides tack trace support on some events and usability improvement of config/control GUI
- New featuring memory and performance analysis tool
Hardware support
VxWorks has been ported to a number of platforms and now runs on practically any modern CPU that is used in the embedded market. This includes the Intel x86 family (including the Quark SoC),[2] MIPS, PowerPC (and BAE RAD), Freescale ColdFire, Intel i960, SPARC, Fujitsu FR-V, SH-4 and the closely related family of ARM, StrongARM and xScale CPUs. VxWorks provides a standard board support package (BSP) interface between all its supported hardware and the OS. Wind River’s BPS developer kit provides a common application programming interface (API) and a stable environment for real-time operating system development.
Development environment
As is common in embedded system development, cross-compiling is used with VxWorks. Development is done on a "host" system where an integrated development environment (IDE), including the editor, compiler toolchain, debugger, and emulator can be used. Software is then compiled to run on the "target" system. This allows the developer to work with powerful development tools while targeting more limited hardware.VxWorks uses the following host environments and target hardware architectures:[18]
Supported Host Environments
- Windows 8 / 7 / Vista (Business and Enterprise), SP 2 / XP Professional, SP 2 or 3
- Red Hat Enterprise Linux Workstation 5, Update 2 or 3, x86 (32-bit/64-bit) / 4, Update 6 or 8, x86 (32-bit)
- Red Hat Fedora 11, x86 (32-bit/64-bit) / 9, x86-64
- Novell SUSE Linux openSUSE 11.1, x86 (32-bit/64-bit) / 11.0, x86 (32-bit/64-bit)
- Novell SUSE Linux Enterprise Desktop 11.0, x86 (64-bit) / 10.2, x86 (32-bit/64-bit)
- Ubuntu Desktop 9.04, Update 4, x86 (32-bit/64-bit) / 8.04, Update 4, x86 (64-bit)
- Solaris 10 (with GTK), Update 11/06, SPARC 32-bit
Supported Target Architectures and Processor Families The newly-released VxWorks 7 supports the following target architectures:
- ARM 11 / 11 MPCore / 9 / Cortex A9 MPCore / Cortex A8
- Intel Pentium family / Quark / Xeon / Xeon LV / Core / Core 2 Duo / Atom
- PowerPC 86xx, 8641d / 85xx, 8572 / 83xx / 74xx / 7xx / 60x / 44x / 40x / QorIQ P4080 / QorIQ P20xx
The Eclipse-based Workbench is used to configure, analyze, optimize and de-bug a VxWorks-based system under development.[19] The Tornado IDE was used for VxWorks 5.x[20] and was replaced by the Eclipse-based Workbench IDE for VxWorks 6.x.[18][21] which later became the development environment used for VxWorks 5.[22] Workbench is also the IDE for the Wind River Linux[23] and On-Chip Debugging[24] product lines. VxWorks 7 uses Wind River Workbench 4 VxWorks[25] which updates to the Eclipse 4 base providing full third party plug-in support and usability improvements
VxWorks 7 includes three compilers:[18] Diab Compiler, GNU, and the Intel C++ Compiler. Diab Compiler is the default C/C++ compiler for building VxWorks kernel, libraries, BSPs, and applications. It has been used for mission-critical systems for over 20 years. VxWorks 7 uses Diab Compiler 5.9.4 which provides support for additional architectures. The GNU compiler 4.8 is based on the Free Software Foundation (FSF) distribution of GCC and g++. Wind River has modified it to for use with VxWorks. The Intel C++ Compiler processes C and C++ source code to generate machine code for IA 32 or Intel 64 architecture applications.
Wind River Simics[26] is a standalone simulation tool compatible with VxWorks. It simulates the full target hardware system to create a shared platform for software development. Multiple developers can share a complete virtual system and its entire state, including execution history enabling early and continuous system integration and faster prototyping by utilizing virtual prototypes instead of physical prototypes.
Notable uses
This section needs additional citations for verification. (September 2012) |
Notable products which use VxWorks as the onboard operating system include:
Automotive
- Toshiba TMPV75 Series image recognition SoCsfor advanced driver assistance systems (ADAS)
- Bosch Motor Sports race car telemetry system
- Clarion AX1Android-based automotive in-vehicle infotainment system (IVI)
- Hyundai Mobis IVI system
- Magneti Marelli’s telemetry logger and GENIVI®-compliant infotainment system
- BMW iDrive system
- Siemens VDO automotive navigation systems
Aerospace and Defense
Spacecraft
- The Mars Reconnaissance Orbiter
- The Mars Science Laboratory, also known as the Curiosity rover[27]
- The European Space Agency PROBA Satellite
- Yutu (rover)
The Deep Space Program Science Experiment (DSPSE) also known as Clementine (spacecraft)[28] Clementine launched in 1994 running VxWorks 5.1 on a MIPS-based CPU responsible for the Star Tracker and image processing algorithms. The use of a commercial RTOS on board a spacecraft was considered experimental at the time
- CIRA’s FTB-1 unmanned space vehicle
- Phoenix Mars lander[29]
- The Deep Impact space probe
- The Mars Pathfinder mission [30]
- The Spirit and Opportunity Mars Exploration Rovers[30]
- The Stardust (spacecraft) robotics space probe
- The SpaceX Dragon[31]
Aircraft
- AgustaWestland AW609
- Northrop Grumman X-47B, the US Navy’s unmanned combat air system
- Boeing 787 Dreamliner’s common core system (CCS)
- Airbus A400M Atlas
- BAE Systems Tornado Advanced Radar Display Information System (TARDIS) used in the Tornado GR4 aircraft for the U.K. Royal Air Force
- Boeing Apache Longbow attack helicopter
- Lockheed Martin RQ-170 Sentinel UAV
Space Telescopes
- Fermi Gamma-ray Space Telescope(FGST)
- Gran Telescopio Canarias
- James Webb Space Telescope (in development)
Others
- European Geostationary Navigation Overlay System (EGNOS)
- TacNet Tracker, Sandia National Laboratory’s rugged handheld communication device
- Falcon Flight Computers
- SpaceX’s control system for rocket launch and remote management
- BAE Systems SCC500TM series of infrared camera cores
- Barco CDMS-3000 next generation control display and management system
- EADA’s control software for air-to-air re-fueling of Airbus A330
- Eurocopter Group’s helicopter cockpit and avionics system
- Raytheon’s Wide Are Augmentation System (WAAS)
- ALR-67 Radar Warning Receiver used in the Boeing F/A-18E/F Super Hornet
Consumer Electronics
- Drobo data storage robot
- Honda robot ASIMO
- Motorola's DCT2500 interactive digital set-top box
- Mobile Technika MobbyTalk and MobbyTalk253 phones
- ReplayTV home digital video recorder
- Thuraya SO-2510 satellite phone
- DEC Lectrice (an early tablet (1993) that ran an X11 server: developed by Charles P. Thacker at Digital Equipment CorporationSega NAOMI / NAOMI 2 GD-ROM/NetDimm arcade systems)
Industrial
Transportation
- FITSCO Automatic Train Protection (ATP)system by
- Bombardier HMI410 Train Information System
Industrial Robots
- KUKA industrial robots
- The C5G robotic project by Comau
- Stäubli industrial robots
- ABB industrial robots[32]
- Yaskawa Electric Corporation's industrial robots
- Comau Robotics SMART5 industrial robot
Controllers
- Bachmann M1 Controller System
- Invensys Foxboro PAC System
- National Instruments CompactRIO 901x, 902x 907x controllers[33]
- Emerson Ovation distributed control system controllers
- AMX controls system devices
- Mitsubishi’s C controller
- The Experimental Physics and Industrial Control System (EPICS)
- Bosch Rexroth Industrial Tightening Control Systems
- Siemens AG MRI measurement control units
Storage Systems
- External RAID controllers designed by LSI Corporation and used in IBM System Storage's DS3000 and DS4000 (formerly FAStT)
- Storage systems from Silicon Graphics, Sun Microsystems/StorageTek, Teradata, Dell, Sepaton, BlueArc and several other companies worldwide
- Fujitsu ETERNUS DX family of networked data storage arrays
Imaging
- Eurotherm paperless graphic recorders
- Konica Minolta bizhub print controllers
- Xerox Phaser and other Adobe PostScript-based computer printers
- Toshiba eBridge based range of photocopiers[34]
- DIGIC II and some early DIGIC III image-processors by Canon
Others
- Hagan Computerized Slide Ejection Photo Sizer fruit and vegetable packing machine
- Hexagon Metrology GLOBAL Silver coordinate measuring machine (CMM)
- GrandMA Full-Size and Light Console by MA Lighting
Medical
Varian Medical Systems Truebeam - a radiotherapy device for treating cancer[35]
- Olympus Corporation ESG-400 high-frequency surgical generator
- BD Biosciences FACSCount instrumentation system
- Fedegari Autoclavi S.p.A. Thema4 process controller
- Sirona Dental Systems CEREC extraoral X-ray CAD/CAM systems
Networking and Communication Infrastructure
- Arkoon Network Security's appliances
- Ubee Interactive's AirWalk EdgePointKontron’s ACTA processor boards
- QQTechnologies's QQSG
- Many of Huawei’s product lines have standardize on VxWorks
- BroadLight’s GPON/PON products
- Shiron Satellite Communications’ InterSKY
- Sky Pilot’s SkyGateway, SkyExtender and SkyControl
- EtherRaptor-1010 by Raptor Network Technology
- CPG-3000 and CPX-5000 routers from Siemens
- Nokia Solutions and Networks FlexiPacket series microwave engineering product
- Acme Packet Net-Net series of Session Border Controllers
- Apple Airport Extreme
- Avaya ERS 8600
- Avaya IP400 Office
- Cisco CSS platform
- Cisco ONS platform
- Ciena Common Photonic Layer
- Dell PowerConnect switches that are 'powered by' Broadcom, except latest PCT8100 which runs on Linux platform
- Ericsson SmartEdge routers (SEOS 11 run NetBSD 3.0 and VxWorks for Broadcom BCM1480 version 5.5.1 kernel version 2.6)
- Hewlett Packard HP 9000 Superdome Guardian Service Processor
- Hirschmann EAGLE20 Industrial Firewall
- HughesNet/Direcway satellite internet modems
- Linksys WRT54G wireless routers (versions 5.0 and later)
- Mitel Networks' Mitel Communications Director (MCD), 3300 ICP Media Gateways and SX-200 and SX-200 ICP.
- Motorola Solutions MCD5000 IP Deskset System
- Motorola SB5100 cable modem
- Nortel Passport
- Radware OnDemand Switches
- SonicWALL firewalls
- Thuraya SO-2510 satellite phone and ThurayaModule
- Radvision 3G communications equipment
- 3com NBX phone systems
- Zhone Technologies access systems
References
- ^ a b "VxWorks Goes 64-bit", Electronic Design
- ^ a b c Intel Tackles SoC With Quark"' EE Times
- ^ RTOS Handles AMP and SMP, electronic design
- ^ a b c d e Embedded Star Article
- ^ "VxWorks 7 Announced". harmonicss.co.uk. 2014. Retrieved 20 June 2014.
- ^ a b Wind River Reinvents the RTOS for the IoT, Business Wire
- ^ a b c Jackson, Joab (2014). "Wind River outfits VxWorks for 'Internet of things' | ITworld". itworld.com. Retrieved 20 June 2014.
- ^ "Embedded Systems Glossary: V". www.netrino.com. Netrino, LLC. Retrieved 20 September 2010.
- ^ Ready/Microtec merger expected Business Exchange November 15, 1993
- ^ "SEC filing". Secinfo.com. January 19, 1996. Retrieved 2011-11-18.
- ^ Lord of the Toasters, Wired (magazine) interview with Jerry Fiddler, September 1998
- ^ a b c d e Wind River Outfits VxWorks for the Internet of Things, Computer World
- ^ "Wind River Prepares VxWorks for the IoT", Electronic Weekly.com
- ^ "Wind River Releases 64-Bit VxWorks RTOS". Windriver.com. Retrieved 2011-11-18.
- ^ POSIX Certification Register
- ^ Wind River Reinvents the Real-Time Operating System for the Internet of Things Windriver.com,
- ^ Wind River VxWorks Page, Wind River.com
- ^ a b c Workbench Product Note
- ^ Wind River reinvents the RTOS for the IoT, Business Wire
- ^ "Wind River VxWorks 5.x Page". Windriver.com. Retrieved 2011-11-18.
- ^ "Wind River VxWorks 6.x Page". Windriver.com. Retrieved 2011-11-18.
- ^ Wind River Workbench Page
- ^ "Wind River Linux Main Page". Windriver.com. 2007-03-29. Retrieved 2011-11-18.
- ^ "Wind River OCD Main Page". Windriver.com. Retrieved 2011-11-18.
- ^ "VxWorks Gets Re-vamped", Information Technology
- ^ Wind River Simics
- ^ "Wind River's VxWorks Powers Mars Science Laboratory Rover, Curiosity". Virtual Strategy Magazine. 6 August 2012. Retrieved 2012-08-20.
- ^ Clementine Project Information Page
- ^ The Software Behind the Mars Phoenix Lander
- ^ a b "Wind River Powers Mars Exploration Rovers--Continues Legacy as Technology Provider for NASA's Space Exploration". Wind River Systems. 2003-06-06. Retrieved 2009-08-28.
- ^ Dragon Lab Fact Sheet
- ^ "ABB Robotics and vxworks". Abb.com. Retrieved 2011-11-18.
- ^ National Instruments Support Page
- ^ Toshiba Photocopiers
- ^ "Wind River Introduces Software Platform for Medical Devices Complete with Compliance Documentation".