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.
