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: 108
Created: 2022-02-03
License: GNU FDL
Author(s): Klas Nilsson
Java-Based Real-Time Programming

Others programming Tutorials

Introduction to Programming with Fortran

Programming Persistent Memory: A Comprehensive Guide for Developers

Introduction to C and GUI Programming

Professor Frisby's Mostly Adequate Guide to Functional Programming

An Introduction to C & GUI Programming

Others related eBooks about Java-Based Real-Time Programming

C# and .NET course

14 lessons to get you started with C# and .NET, free PDF tutorial by Jonathan Worthington ....

Python for Informatics: Exploring Information

This book is designed to introduce students to programming and computational thinking through the lens of exploring data. You can think of Python as your tool to solve problems that are far beyond the capability of a spreadsheet. It is an easy-to-use and easy-to learn programming language that is fr...

Learning amazon-dynamodb PDF course

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

Android Application Development for the Intel Platform

The number of Android devices running on Intel processors has increased since Intel and Google announced, in late 2011, that they would be working together to optimize future versions of Android for Intel Atom processors. Today, Intel processors can be found in Android smartphones and tablets made b...

Web service with SOAP, PHP and WSDL

Download a PDF tutorial about the Web service and SOAP technology,free training document material on 7 pages by Monteiro....

Python for You and Me

This is a simple book to learn Python programming language, it is for the programmers who are new to Python....

Raspberry Pi Projects Book

Download free course Raspberry Pi Projects Book, pdf file on 204 pages by Wes Archer, David Crookes, PJ Evans, Gareth Halfacree, Rosie Hattersley, Nicola King, Ben Nuttall, Marc Scott, Danny Staple, Mark Vanstone....

The C Programming Language Handbook

Download free course The C Programming Language Handbook, pdf file on 78 pages by Flavio Copes....

Coding with Minecraft

Download free course Coding with Minecraft, pdf file on 256 pages by Al Sweigart....

Full Speed Python

This book aims to teach the Python programming language using a practical approach. Its me..., download free Python tutorial in PDF (40 pages) created by Joao Ventura ....