Green Hills Software Product Training Courses

Green Hills Software’s Real-Time Operating Systems and embedded software development tools offer powerful capabilities to produce totally reliable, absolutely secure, and maximum performance devices—in the least time and at the lowest cost.

With expert training from Green Hills Software consultants, you can become productive faster as well as learn how to take full advantage of the power these tools provide.

Get your team started with training

Our training curriculum spans a wide range of material, from real-time INTEGRITY programming to advanced trace and TimeMachine debugging. Courses are taught by experts with hands-on experience developing embedded software with Green Hills tools. We offer a number of courses that include Core Training as well as Advanced. With this wide selection, you have the flexibility to focus on those concepts of particular interest and customize your training to meet program requirements.

Classes can be taught at your facility and on your schedule, providing maximum value with minimal interruption. Teams with smaller training budges can attend our popular open-enrollment courses that are schedules throughout the year at specific locations. These classes are perfect for new hires who have just joinced a tieam that has already completed a Green Hills Software training class.

To register online for an open enrollment training course, click the specific course from the blue sidebar at right.

Suggested curriculums

INTEGRITY and MULTI  product training

Green Hills Training can be customized to meet your training needs. Below are a few suggested curriculums:

  • For students using INTEGRITY who are new to embedded programming
    • MUL-100: MULTI IDE, 2 days
    • INT-100: Real-Time Programming with INTEGRITY, 3 days
  • For students using INTEGRITY who are familiar with embedded programming
    • MUL-100: MULTI IDE , 2 days
    • INT-101: INTEGRITY RTOS, 3 days
  • For students using INTEGRITY who are developing BSPs:
    • INT-300: INTEGRITY: BSPs and Device Drivers, 5 days
    • Note: also requires one of the above curriculum

MUL-100: MULTI IDE

Course length: 2 days
Prerequisites: None

This two-day course provides complete exposure to the MULTI® Integrated Development Environment (IDE), teaching students how to fully tap in to all of its powerful capabilities while developing their applications.

The first day covers the basics of using the MULTI IDE. Students will learn how to create, build, and customize MULTI projects as well as how to connect to targets and download and debug applications. Through both lectures and hands-on exercises, students will learn the full extent of the MULTI debugger’s capabilities.

The second day covers how to use advanced tools—such as the Profiler and EventAnalyzer—to analyze and tune applications for performance and memory usage. Students will also learn advanced techniques for using Green Hills Software’s kernel-aware debugger to quickly find difficult bugs.

Topics covered

  • Building and debugging applications
  • Advanced Debug Tools (Profiler, EventAnalyzer and Run-time error checking)
  • Customizing the MULTI IDE

Read more about MULTI Integrated Development Environment

INT-100: Real-Time Programming with INTEGRITY

Course length: 3 days
Prerequisites: MUL-100

In this three-day course, students are taught the concepts of a real-time operating system (RTOS) and how the INTEGRITY® RTOS applies them. Developed from the ground-up to be secure and reliable, the INTEGRITY RTOS takes full advantage of a processor’s MMU or MPU to provide a fully memory-protected system. Students learn to leverage this advanced technology in their applications.

The INTEGRITY RTOS provides a great degree of flexibility. Consequently, there are often several alternative mechanisms developers can use to accomplish a specific objective, such as intertask communication. This course discusses each mechanism in detail, so that students can understand which method would work best in their application.

We start with sample product requirements, and work through the design and development process to produce a final application. Along the way, students cover all the fundamental concepts behind developing an application for a protected RTOS.

Topics covered

  • Protected RTOS concepts
  • Inter-task communications
  • Tasks and scheduling
  • Memory Management
  • Clocks and alarms

Read more about INTEGRITY RTOS

INT-101: INTEGRITY RTOS

Course length: 3 days
Prerequisites: MUL-100 and familiarity with embedded RTOS concepts

In this three-day course, students are taught how to apply known RTOS concepts, such as task control and scheduling to the INTEGRITY RTOS. Additionally, students are taught the underlying INTEGRITY data structures and communications mechanisms, including how to incorporate these features into their applications.

Developed from the ground-up to be secure and reliable, the INTEGRITY RTOS takes full advantage of a processor’s MMU or MPU to provide a fully memory-protected system. Students learn to leverage this advanced technology in their applications. Advanced concepts, such as sharing memory between applications, are discussed in detail.

The INTEGRITY RTOS provides a great degree of flexibility. Consequently, there are often several alternative mechanisms developers can use to accomplish a specific objective, such as intertask communication. This course discusses each mechanism in detail, so that students can understand which method would work best in their applications.

Topics covered

  • Tasks and scheduling
  • Inter-task communication
  • Memory Management
  • Clocks and alarms
  • Synchronization
  • Sharing objects

Read more about INTEGRITY RTOS

UVL-100: µ-velOSity microkernel

Course length: 2 days
Prerequisites: MUL-100

In this two-day course, students are taught how to apply RTOS concepts, such as task control and scheduling to the µ-velOSity™ microkernel. The µ-velOSity microkernel is designed to be a minimal-footprint microkernel, and special consideration is paid to evaluating size and speed parameters of the various RTOS constructs.

The µ-velOSity microkernel provides a great degree of flexibility. Consequently, there are often several alternative mechanisms developers can use to accomplish a specific objective, such as intertask communication. This course discusses each mechanism in detail, so that students can understand which method would work best in their application.

Topics covered

  • Tasks and scheduling
  • Inter-task communications
  • Resource Management
  • Timers

Read more about µ-velosity microkernel

MUL-210: MULTI Scripting

Course length: 1 day
Prerequisites: MUL-100

Scripting is a powerful feature of the MULTI IDE which can be used to automate regression testing, target/host interactions, or even MULTI itself.  The class covers MULTI scripting concepts including debugger scripts, the use of scripted breakpoints, the MULTI-Python integration, and related MULTI features.  

Read more about MULTI Integrated Development Environment

MUL300: MULTI Trace and TimeMachine

Course length: 1 day
Prerequisites: MUL-100

The MULTI TimeMachine™ debugging suite offers a wide variety of trace analysis tools that enable embedded software developers to find and fix bugs faster, optimize with ease, and test with confidence. Students will get full exposure to the TimeMachine suite and explore its ability to find and analyze complex problems.

Read more about MULTI Integrated Development Environment

INT-210: Intro to INTEGRITY Device Drivers

Course length: 1 day
Prerequisites: MUL-100, INT-100 or INT-101

Because the INTEGRITY RTOS is a secure and reliable RTOS, it supports a unique protected device driver model in addition to traditional device drivers. Students learn how to implement both types of INTEGRITY drivers as well as how to integrate custom device drivers into a Board Support Package (BSP).

Read more about INTEGRITY RTOS

INT-220: INTEGRITY File Systems and Networking

Course length: 1 day
Prerequisites: MUL-100, INT-100 or INT-101

In this course, students will learn how to add and configure the INTEGRITY File System services and GHNet2 network stack. Topics covered include tuning the modules for speed or size requirements, and using special features of the modules, such as the host_io filesystem, for decreasing development time.

Read more about INTEGRITY RTOS

INT-222: INTEGRITY Memory Management

Course length: 2 days
Prerequisites: MUL-100, INT-100 or INT-101

Expanding on the basics covered in the Core modules, this course show students how to take advantage of several advanced memory management tools provided with INTEGRITY. Topics such as MallocPools, Shared Libraries, and using the Free Page List are covered.

Read more about INTEGRITY RTOS

INT-233: INTEGRITY and using POSIX

Course length:1 day
Prerequisites:
MUL-100, INT-100 or INT-101

The INTEGRITY RTOS provides complete conformance with the IEEE 1003.1TM-2003 (POSIX®.1) System Interfaces. This course will review the POSIX interfaces and how POSIX threads interoperate with INTEGRITY tasks. The POSIX section covers thread control and scheduling, mutexes and semaphores, and shared memory.

Read more about INTEGRITY RTOS

INT-300: INTEGRITY BSPs and Device Drivers

INTEGRITY BSPs and Device Drivers Training course

Course length: 5 days
Prerequisites: MUL-100, INT-100 or INT-101

This is a five-day course, with exercises for each section of the course. Students will be exposed to the complete process from bringing up a new/untested board to booting from an INTEGRITY Application burned into flash.

We start with an overview of INTEGRITY’s startup sequence, and then explore each step of the process in detail. At the beginning of the course, students are given a template of a BSP.Working with provided hardware, the students will construct the pieces needed for the BSP. By the end of the course, students will have created a complete working BSP.

While BSPs can be different for different processors and peripherals, the course aims to educate students on the framework of constructing a BSP. Students will be able to take the framework shown in class, and extend this knowledge for their custom boards. Students will understand what sections of the BSP are provided by Green Hills, and where they need to make customizations for specific boards.

Topics covered

  • How to reserve memory for device drivers and when memory is available for kernel and application code
  • How INTEGRITY handles interrupts with minimum latency, and how to write device drivers to take advantage of this feature
  • How to connect and configure Green Hills’ hardware probes for a new board
  • How to add timers and clocks to an INTEGRITY system

Read more about INTEGRITY RTOS

UVL-220: µ-velOSity FileSystems and Networking

Course length: 1 day
Prerequisites: MUL-100 and UVL-100

In this course, students will learn how to add and configure the µ-File System services and GHNet2 network stack. Includes tuning the modules for speed or size requirements.

Read more about µ-velosity microkernel

© 1996-2014 Green Hills Software Trademark & Patent Notice