Asymmetric Multi Processing (AMP) allows a multiprocessor system to run multiple Operating Systems (OS) that are independent of each other. In other words, each CPU has it's own private memory space, which contains the OS and the applications that are to run on that CPU. In addition, there can be some shared memory space that is used for multiprocessor communication. This is contrasted with Symmetric Multiprocessing (SMP), in which one OS runs on multiple CPUs using a public shared memory space.
This tutorial is the product of recent work on the Freescale P4080 Processor. If you are not familiar with this chip, it is an 8 core beast, in the PowerPC family. (The manual is over 3500 pages!)
To get the best from VxBus, it's worth knowing about how the driver model fits into VxWorks, and how VxWorks initialises it. This article aims to shed light on the initialisation VxBus that will allow developers to understand it better.
The VxBus device driver infrastructure is fairly new to VxWorks, having been added in release 6.2. Before then drivers were not integrated with VxWorks project configurations, and therefore relied on editing the BSP directly. Now that VxBus is maturing, it's likely to be used by more drivers. Therefore the aim of this article is to introduce what VxBus is, its benefits, as well as the fundamental differences between it and older drivers.
This document details how to use the curses library included in VxWorks 6.x in a simple application. It is designed to be used as a primer to using curses, rather than trying to explain everything fully. More information regarding curses can be found on the Internet.
"HSS worked on a project whereby they needed to implement a new PPC architecture (the 8 core P4080) for the VxWorks RTOS and develop a BSP with very complicated hardware. This was no easy job and they managed to get it done by diving very deep into the matter and solved many problems on the way." Simon Milatz, Project Manager (Aerospace & Defence), Wind River Services