velOSity KernelSpace Project A KernelSpace project is a stand-alone executable linked with velOSity libraries suitable for running directly on a target.

velOSity Relocatable Collection Project A velOSity Relocatable Collection Project is a wrapper for a velOSity Kernel and 1 or more velOSity Dynamic Download Projects containing velOSity Relocatables linked against the velOSity Kernel. This is to make it easier for you to keep all the relocatables associated with one kernel together in one place.

velOSity Dynamic Download A velOSity Dynamic Download image consists of one or more velOSity Relocatable projects that are downloaded via MULTI onto a velOSity kernel already running on your target.

velOSity Relocatable A velOSity Relocatable image consists code that will be downloaded and run in the Kernel context, and must be linked against that specific Kernel for library code.


Program Layout Selects which linker directives file to include in your program.

Kernel Libraries Select libraries to enable functionality in the kernel.

Kernel Modules Select OS Modules to enable in the kernel.

Create Monolith From Stand-alone Kernel Creates a monolith project around the stand-alone kernel. This will add the monolith build files and Integrate file. Subsequently, you can add virtual AddressSpaces, if desired.

Debugging Enables run-mode task debugging interface. Adds libdebug.a to the project.

Dynamic Load Enables kernel to dynamically load modules, i.e. Dynamic Download projects. Adds libload.a to the project.

Resource Manager Enables the Resource Manager. The Resource Manager is a mechanism for sharing resources among different AddressSpaces. Adds libres.a to the project.

EventAnalyzer Enables event logging. Use in tandem with the MULTI EventAnalyzer. Adds liblog.a to the project.

TCP/IP Stack (Kernel) Adds the standard TCP/IP Stack to the kernel. Adds libitcpip.a to the project.

GHnet IPv4 Stack (Kernel) Adds the GHnet IPv4 Stack to the kernel. Adds libip4.a to the project.

GHnet IPv4/v6 Stack (Kernel) Adds the GHnet IPv4/v6 Stack to the kernel. Adds libip46.a to the project.

File System Client Allows use of the File System API. Adds libivfs.a to the project.

Virtual Dynamic Load Kernel Helper Adds kernel side support for a load agent in virtual AddressSpace. Adds libvload_kernel_helper.a to the project.

Socket Allows use of the Socket API. Adds libsocket.a to the project.

Net Allows use of the Network Library API. Adds libnet.a to the project.

RPC Allows use of the RPC API. Adds librpc.a to the project.

velOSity Shared Objects Allows the velOSity Application (Monolith or Dynamic Download) to be linked with shared libraries.

Virtual AddressSpace

The result of building a virtual AddressSpace project is a fully linked ELF executable, called a virtual AddressSpace program. This program contains only the code and data for this single virtual AddressSpace.

User code for a virtual AddressSpace program begins with the standard C/C++ function main(). The entrypoint of the program is actually _start, which initializes the virtual AddressSpace so that the C/C++ run-time environment and the velOSity API can be used. _start transfers control to main(), the start of user code for each virtual AddressSpace.

The thread of control executing into main() is known as the Initial Task. The name of the Initial Task as seen in the MULTI Task window is Initial, grouped with any other tasks that may be in the same AddressSpace.


Virtual Libraries Enable functionality in the virtual AddressSpace by adding libraries.

File System Client Allows use of the File System API. Adds libivfs.a to the project.

Socket Allows use of the Socket API. Adds libsocket.a to the project.

Net Allows use of the Network Library API. Adds libnet.a to the project.

Configuring velOSity Dynamic Downloads Use this dialog to add Dynamic Downloads to the project. You may either add 'n' Dynamic Downloads with a default name, or explicitly name each Dynamic Download in a comma separated list.

Configuring OS Modules Use this dialog to add velOSity Operating System Modules to the project. Some selections are mutually exclusive.

File System (From Distribution) Use the File System Server provided from the velOSity installation. This server should be used as is. If modifications are required, select "File System (User Configured)".

File System (User Configured) Create a File System Server in the current project. This can be configured with mount points and libraries to suit your application.

TCP/IP Stack (Virtual) Use the Virtual TCP/IP Stack Module provided from the velOSity installation.

FTP Server Use the virtual FTP Server Module provided from the velOSity installation.

POSIX Network Server Use the virtual POSIX Network Server Module provided from the velOSity installation.

File System Libraries Enable various types of file systems.

File System Device Libraries Enable functionality relating to a hardware device in the file system by adding libraries.

Configure File System Clients Select which AddressSpaces should be clients of the File System Server.

File System Mount Table This file defines the Mount Table for the file system.

File System Mount Point A File System Mount Point defines a location on the initial file system and configures the type of file system used at that location.

File System Mount Point Directory Names a location on the initial file system.

File System Mount Point Device Names a location on the initial file system.

File System Mount Point Device Describes the hardware/software device used to back the file system. Choices are dependent upon the type of file system selected.

Physical Device The velOSity IODevice used to back the file system. The pulldown contains common names of IODevices, make sure your choice is available on your BSP. Type in the name of the device if it is not listed.

Physical Slice Slice letter to partition. Use the string 'All' to specify there is only 1 partition.

RAM Disk Name Use a buffer in RAM to back the file system

RAM Disk Size Specify how large the RAM buffer should be. Must be power of 2.

NFS Server Name Machine to connect to using NFS.

NFS Share Name Path on machine to connect to using NFS.

Use GHFile GHFile only uses built-in values for device characteristics, no action is required.

File System Type Select the type of file system this mount point should implement.

File System Mount Point Options Select options based on the type of file system selected. Check 'Use Defaults' to let the underlying mount code decide the options.

File System Mount Point Table Options Select options based on the type of file system selected.

MSDOS FAT The MSDOS file system originated with the Microsoft DOS operating system. It is sometimes referred to by its primary data structure, the file allocation system (FAT). Like FFS, MSDOS is a hierarchical, disk-based file system. The MSDOS file system comes in several variants named after the number of bits in each entry in its file allocation table: FAT12, FAT16, and FAT32.

NFS Client The Network File System (NFS) is commonly used in UNIX environments. It allows one machine (the NFS server) to share its files with other machines (NFS clients) across an IP network.

GHFile The GHFile file system from GHnet is an efficient, RAM-based system for storing files.

ISO9660 The ISO9660 file system is commonly found on Compact Disc media. velOSity supports the generic ISO9660 standard format as well as the Rockridge and Joliet extensions.

FFS The Berkeley Fast File System (FFS) is an inode-based file system that first appeared in the BSD UNIX distribution from the University of California. The FFS file system, sometimes referred to by its predecessor's name, UFS (UNIX File System), is used by many BSD derivative operating systems such as NetBSD, FreeBSD, and OpenBSD.

RAM Disk The RAM disk pseudo-device can be used to emulate a disk on systems that have no other storage medium. A RAM disk is especially useful as a root file system onto which other file systems may be mounted.

File System Extra Library Auxiliary libraries required for the File System Server.

BSP Description Target resource file copied from velOSity distribution. Defines the BSP for Integrate.

Linker Directives Linker directives file copied from velOSity distribution.

RAM velOSity linker directives file to run from RAM.

ROMCOPY velOSity linker directives file to boot from ROM and run in RAM.

velOSity.ld velOSity virtual AddressSpace linker directives file.

POSIX System Server For applications that require a complete, certified POSIX implementation, use the POSIX system. The POSIX system takes more work to set up than single-AddressSpace POSIX because a central server and loader is needed to support process creation and interprocess communications.

POSIX Authorization Table Defines the User and Group databases.

POSIX Authorization User Defines a single User for access control purposes.

POSIX Authorization Group Defines a single Group for access control purposes.

User Name Username (max. 8 chars).

Password Password (unencrypted) (max. 8 chars).

User ID Numerical user ID.

Group Primary numerical group ID.

Supplemental Groups List of up to 8 supplemental group IDs.

Home directory Home directory for POSIX User and Group Database.

Group Name Group name (max. 8 chars).

Group ID Numerical group ID.