Testimonial

"Netrino training courses should be required before writing any embedded code."

General Dynamics

Master Firmware

Registration is now open for the popular hands-on Embedded Software Boot Camp. Consult our public training calendar for upcoming dates and locations.

Boot Camp

Sign Up Now

Receive Michael Barr's Firmware Update newsletter for free how-to articles and industry news by e-mail. Sign up now.

Bookmark It

Bookmark this page or share it with a colleague.

Real-Time Programming with Java Course

It is said that the creator of the Java programming language envisioned embedded systems as the target application. Certainly, Java’s built-in thread awareness, prevention of memory leaks, and security model are attractive features for the designers of real-time systems. Unfortunately, the standard Java virtual machines are extremely large and non-deterministic. This course demonstrates that, with the correct JVM, real-time Java programming is possible and powerful. Among other things, students will learn how to tune a garbage collector and develop multithreaded programs in Java.

Length/Options

  • 2 days (hands-on)

Audience

  • Embedded programmers contemplating or using Java
  • Engineering managers responsible for language choice

Prerequisites

  • Basic familiarity with Java syntax

Related Courses

Outline

  • Introduction
    • Real-Time Systems
    • Real-Time Java
  • Java Threads
    • Thread Creation
    • Thread States
    • Priorities
    • Timers and TimerTasks
  • Preemptive Scheduling
    • Preemption
    • Rate Monotonic Algorithm
    • Schedulable Bound
    • Aperiodic Tasks
    • Priority Inversion
  • Garbage Collection
    • Heap Terminology
    • Reference Counting
    • Mark and Sweep
  • Real-Time Garbage Collection
    • Real-Time Issues
    • Defragmentation
    • Efficiency
    • Preemptibility
    • Collector Pacing
  • Concurrent Programming
    • The Big Picture
    • Mutual Exclusion
    • Memory Visibility
    • Thread-Safe Classes
    • Waiting and Signaling
    • Safety and Liveness
  • Design Patterns
    • Active Objects
    • Message Queueing
    • Guarded Call
    • Thread Barrier
    • Rendezvous
    • Observer

Hands-On Tools/Platform

Learn More

To request pricing or dates, or for more information about this course, contact us.