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 contentsSoftware 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
Others related eBooks about Java-Based Real-Time Programming
Android Programming Tutorials
This book shows you what you can do with Android, through a series of 40 individual exercises. It gives you hands-on instruction in how to build sophisticated Android applications, using many of the technologies outlined in CommonsWare's other Android books. ...
A Practical Introduction to Python Programming
This book is for anyone who wants to understand Python programming. It is degigned as partly a tutorial and partly a reference of Python....
Java, Java, Java
Download free course Java, Java, Java, pdf file on 856 pages by Ralph Morelli, Ralph Walde....
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....
Learn BlackBerry 10 App Development
Learn how to leverage the BlackBerry 10 Cascades framework to create rich native applicati..., download free BlackBerry 10 tutorial in PDF (356 pages) created by Anwar Ludin ....
Java Persistence and Hibernate Guide for developer
This PDF tutorial provides you an introduction to Java Persistence and Hibernate including the code snippets and complete working examples ,download free training document material for developer....
Introduction to PhoneGap
Download free course tutorial training about PhoneGap ,this document shows the basics of this platform in order to creat a web application designed to mobile devices....
Java Succinctly Part 2
Download free course Java Succinctly Part 2, pdf file on 134 pages by Christopher Rose....
Spring MVC by example
Download free pdf training course in pdf about Spring MVC under 315 pages intended to beginners....
Learning Regular Expressions
A regular expression (regex or regexp) is a sequence of characters that define a search pa..., download free Regular Expressions tutorial in PDF (94 pages) created by ....