Real-Time Programming with Java

Course#: BSEMB1027

About this Course

Course Type Course Code Duration
Embedded Software BSEMB1027 2 Days

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.

Why Attend this Course?

What Makes this Course Stand Apart?

What you will Learn?


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


Basic familiarity with Java syntax

Course Outline

Real-Time Systems
Real-Time Java
Java Threads
Thread Creation
Thread States
Timers and TimerTasks
Preemptive Scheduling
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
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

Hands-On Tools/Platform

PERC Virtual Machine (link is external)
Eclipse (link is external)

What next- How do I arrange a group course or book a public place.?

We are here to help so please utilise our live chat team

Call to speak to your account manager or a consultant on

+44 (0)345 467 9557 or email

We are all technical with a wealth of Learning & Development experience
so can talk you through any specific requirements or the details of
one of our courses.


Start typing and press Enter to search