Skip to main content

VxWorks Directory Structure and Package Management

·650 words·4 mins
VxWorks Directory Structure Layer BSP
Table of Contents
Free Training - This article is part of a series.
Part 9: This Article

VxWorks Directory Structure and Package Management
#

Keeping your project organized is crucial in embedded development. With VxWorks, understanding the installation directory structure and the concept of layers will help you manage files, BSPs, and customizations more efficiently.


Learning Objectives
#

After completing this section, you will be able to:

  • Navigate the VxWorks installation directory.
  • Understand what a layer is and its role in VxWorks development.

Navigating the VxWorks File System #

Top of the Installation Directory
#

Top of the Installation Directory

The top-level directory of your installation contains:

3pp-download/ compilers/ download/
etc/ legal-notices/ license/
maintenance/ readme/ setup/
utilities/ vxworks/ workbench-4/

Compilers
#

This directory contains the compilers installed with VxWorks. Third-party compilers are supported and would be installed here too. By default, it has two:

  • LLVM
  • Rust

VxWorks supports multiple versions of the same compiler, so if errors are encountered, you can easily revert to a previous version.

➡️ For details on porting a third-party compiler, refer to the VxWorks Configuration and Build Guide.


Miscellaneous Directories
#

The top-level directory also includes:

  • etc/ → Installation configurations
  • license/ → User license files
  • maintenance/ → Wind River installer utility
  • utilities/ → Important binary utilities used by Workbench
  • setup/ → Product installation scripts

workbench-4 Directory
#

Workbench 4 Directory

This directory contains all the files for the Workbench IDE. Some notable paths include:

  • Samples/ → Example projects for each VxWorks project type.
  • Simulator and Simics/ → Files for the VxWorks simulator and the Simics simulator.
  • startWorkbench.bat → Startup script to launch Workbench.

vxworks Directory
#

vxworks Directory

This is the VxWorks release directory (for example, 22.06). Found at vxworks/release, it contains:

  • docs/ → Product documentation
  • host/ → Development host utilities
  • man/ → API references
  • samples/ → Example and prebuilt projects

source Directory
#

source Directory

Inside vxworks/release/source, you will find all the components used to build the VSB. Key subdirectories:

  • boot/ → Bootloader technology (BIOS, UEFI, VxBL)
  • build/ → Makefiles and build rules
  • contrib/ → Third-party layers
  • features/ → Feature CDF files
  • installset_data/ → Installed layers, BSPs, architectures, and compilers
  • os/ → VxWorks kernel layers

VxWorks Layers Directory
#

VxWorks Layers Directory

The vxworks/release/source/os directory contains VxWorks layers, which are modular libraries and components:

  • arch/ → Architecture layers
  • connectivity/ → USB, FireWire, Bluetooth
  • container/ → Container runtime & management
  • multimedia/ → UI layers
  • net/ → Network stack
  • security/ → OpenSSL, crypto modules
  • storage/ → File systems

Board Support Packages (BSPs)
#

Board Support Packages Directories

BSPs are found at:
vxworks/release/source/os/arch/

They are categorized by:

  1. Architecture → Arm, Intel, PowerPC, RISC-V
  2. Board vendor → Vendor-specific implementations

The Git Directory
#

By default, the VxWorks installer puts the kernel source code under Git for source management. This allows:

  • Commits and branches
  • Use of remote repositories
  • Change tracking and rollback

⚠️ Git is optional. If disabled, the installer deploys the kernel sources as an unmanaged directory tree.


Understanding Layers in VxWorks
#

With VxWorks, you can customize a feature or add functionality through **layers**.

Layers are modular units that provide functionality (networking, security, drivers, etc.). They can be combined in a VSB project to build customized VxWorks libraries.


Inside Layers
#

  • Located in:
    installDir/vxworks/release/source/os/
  • Provided by Wind River by default.
  • Many custom layers can also be placed here.

Outside Layers
#

  • Created outside the Wind River installation directory.
  • Often used by board vendors delivering drivers or BSPs.
  • Keeps vendor code separate from the main installation.

Typical workflow:

  1. Create a layer on a workstation.
  2. Add it to a VSB and test with a VIP.
  3. Export the layer as an RPM.
  4. Import the RPM on another workstation with VxWorks installed.

Key Takeaways
#

  • The VxWorks installation directory is organized into compilers, IDE files, release files, and kernel sources.
  • Layers (inside and outside) are the building blocks of customization.
  • BSPs are organized by architecture and vendor.
  • Git integration is optional but enables source management.

By mastering the VxWorks directory and package management, you can streamline development, integrate third-party code, and maintain clean project organization.

Layers deliver features that a VSB project can build into VxWorks libraries.
Free Training - This article is part of a series.
Part 9: This Article

Related

Introduction to VxWorks Projects and Workspaces
·610 words·3 mins
VxWorks Project Workspaces VSB VIP
VxWorks Simulation Overview: VxSim, QEMU, and Simics
·407 words·2 mins
VxWorks Simulator VxSim QEMU Simics
VxWorks Workbench Tools Architecture: Connecting to Targets
·438 words·3 mins
Workbench VxWorks Target Communication Framework TCF