Java-Based Real-Time Programming



Download free course Java-Based Real-Time Programming, pdf file on 128 pages by Klas Nilsson.
Development of embedded software has for some years mainly been carried out by hardware-aware programming using the C-language, and in some cases even in assembly languages. This works well in simple cases when the application demands and the hardware are known at design time, and the size of the (statically defined) software is small. When applications increase in size and must be rapidly developed (time to market), and perhaps need to be on-line upgradeable, more programming support is needed. In particular, for critical applications (safety critical as in an airplane, mission critical as in space/military/nuclear tasks, economically critical if the survival of the company depends on the reliability of the computer system, etc.) special measures must be taken to limit the possible (faulty) influences of one software function on another part of the system. Therefore, we have to abandon programming in C or C++ for large/complex systems. Instead, we have to base the core development on a more scalable language (and run-time system) that prevents direct access to memory, for instance via pointers.

Java (and partly C#) is such a language. Still, programming in C is appropriate for device drivers, which do need to directly access the hardware. For similar reasons of scalability, Microsoft had to go from their Win32+MFC C/C++-oriented standard to the Microsoft.NET Framework with C# in order to stay competitive in the long run. Here, we will go some steps further, considering also small embedded systems and severe timing demands.

We will approach the real-time issues via established web-programming and concurrency techniques, which will reveal a few deficiencies of the standard Java platform. A real-time package (class library) and a few run-time extensions will be presented. The usage of these additions to create high performance real-time control software is then described in a real-time programming chapter which is central the topic of this book. The reader should then gain additional understanding and programming skill by studying the remaining chapters about scheduling, processes, and applications.

Table of contents

  • Software execution is performed sequentially
  • Our physical world is parallel
  • Parallel computing
  • Concurrency
  • Interrupts, pre-emption, and reentrance
  • Models of concurrent execution
  • Multi-process programming
  • Object interaction and encapsulation
  • Software issues
  • Threads
  • Resources and mutual exclusion - Semaphores
  • Objects providing mutual exclusion - Monitors
  • Message-based communication - Mailboxes
Pages : 128
Size : 1.9 MB
File type : PDF
Downloads: 132
Created: 2022-02-03
License: GNU FDL
Author(s): Klas Nilsson
Java-Based Real-Time Programming

Warning: Trying to access array offset on false in /home/tutovnfz/public_html/article.php on line 233

Others programming Tutorials

Principles of Programming Languages

Fundamentals of C++ Programming

Advanced Linux Programming

Introduction to Computers and Programming

Basic Programming Concepts

Others related eBooks about Java-Based Real-Time Programming

Software Project Management

...

J2EE tutorial in PDF

Download free J2EE tutorial course in PDF, training file in 6 chapters and 39 pages. Free unaffiliated ebook created from Stack OverFlow contributor....

Introduction to C and GUI Programming

The popular C programming language is used for a huge range of applications, from the tiny microcontrollers used in toasters and watches up to complete operating systems....

Reverse Engineering for Beginners

Download free ebook about Reverse Engineering for Beginners. A PDF tutorial on 942 pages by Dennis Yurichev....

Introduction to ADA 2012

This course is for developers who already know Ada 95 and want to learn about the new possibilities brought by Ada 2005 and Ada 2012. A brief introduction to Ada 2012 by John Barnes....

C# programming tutorial for professionals

Download free C# tutorial course in PDF, training file in 164 chapters and 808 pages. Free unaffiliated ebook created from Stack OverFlow contributor....

Android Application Development for the Intel Platform

Download free course Android Application Development for the Intel Platform, pdf file on 508 pages by by Ryan Cohen, Tao Wang....

COBOL in 21 days

This tutorial present an easy way to learn COBOL in a few days,free training courses in PDF for beginners and intermediate level users....

VB.NET a complet tutorial for beginners

The purpose of this course is to provide a basic guide for student or people interested in Visual Basic dot net programming,it's a free training document for beginners....

Java Programming for Kids

The goal of this book is to help students learn to program in the most popular language in the world: Java. It starts from an introduction to Java and then explains how to write programs that have Graphic User Interface by writing the Tic-Tac-Toe and Ping-Pong games....