l Support C development
In addition to supporting the usual C development library (including the I / O stream development library and C template libraries), the Wind Basic Class library as an optional component is provided with a VxWorks package library and a Tools.h class library from Rogue Wave.
l Sharing a memory object
The memory sharing mechanism provided by the VXMP option includes a shared semaphore, a message queue, a memory area shared between tasks on different processors.
l Virtual memory (including VxVMI option)
VxWorks provides both bundled virtual memory support, which can provide non-built virtual memory support for the board of the own memory management unit. It has a function set that makes some memory that cannot be buffered and read-only, as well as virtual memory management.
l Tools running on the target
In the Tornado development system, the development tool runs on the host, see Tornado User Guide. However, the tools running on the target, module upload, module download, symbolic table, etc. can be configured to the core of VxWorks.
l Help function library
VxWorks provides a feature-rich help function set, including interrupt processing, timer, message record, memory allocation, formatted string, an operation, linked list, and ANSI-C library, linear, and ring buffer.
l Performance Statistics Tools
VxWorks Performance Statistics Tools include Timed Some functions to count the CPU utilization of tasks.
l target machine agent
The target agent makes the Tornado development tool remote debugging vxWorks application.
l board support package
VxWorks contains a wide board support package. Board support package provides hardware initialization, interrupt installation, timer, memory mapping and other functions
l VxWorks Simulator and Logic Analyzer
Tornado comes with VxWorks simulators and logic analysis software on all host platforms, VxSim analog VxWorks targets, used to make prototype development and build test environments. WindView provides an advanced debugging tool for the simulation environment.
Vxsim provides network support and ability to run multiple simulators. WindView provides software logic analyzers for all WRS board support packages
l Network tool
VxWorks provides a transparent access mechanism for another VxWorks and a TCP / IP network system, a MUX interface (including multi-point transmission, POLLED-MODE Ethernet, Zero-Copy Transfer), BSD-compatible Socket programming interface, remote procedure call (RPC), SNMP (optional), network file access (including NFS clients and NFC servers, and other network file access tools such as RSH, FTP, or TFTP), bootp, ARP proxy, DHCP, DNS OSPF (optional), and RIP. All VxWorks network support complies with the Internet protocol whether the loosely coupled serial line connection or Ethernet connection is used to use shared memory.
See VxWorks Network Programming Guide.
1.1. Multi-task and task communication
Modern real-time systems are based on mutual supplementary multitasking concepts and task communication concepts. Multi-task environments allow a real-time application to be divided into multiple separate tasks, each task has its own independent executive clues and system resource sets. Inter-task communication allows these tasks to synchronize and coordinate actions.
VxWorks multi-tasking core WIND uses an interrupt drive, a priority-based task scheduling. It has the characteristics of the task switching fast and interrupt overhead. Under VxWorks, any function can be performed as a task, with its own running scene and stack. The functions of the control task include hang, continuing, deleting, delaying, changing priority, and the like. The Wind core provides a semaphore as a basic task synchronization and a mutex mechanism. Wind has a variety of semaphors, each of which is suitable for different application requirements: binary semaphore, counting semaphore, mutually exclusive quantity, and POSIX semaphore. All of these types of signals are fast and efficient. These signals are used in addition to the developer being applied, and is also widely used in the high-level function development of VxWorks.
In addition to using the semaphore, VxWorks also provides message queues, pipes, sockets, and signals. Optional Components VXMP provides a shared memory object as a communication mechanism between tasks running on different processors.