• Complain

Eric Verhulst Raymond T. Boute José Miguel Sampaio - Formal development of a network-centric RTOS: software engineering for reliable embedded systems

Here you can read online Eric Verhulst Raymond T. Boute José Miguel Sampaio - Formal development of a network-centric RTOS: software engineering for reliable embedded systems full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. City: Boston;MA;New York, year: 2011, publisher: Springer US, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Eric Verhulst Raymond T. Boute José Miguel Sampaio Formal development of a network-centric RTOS: software engineering for reliable embedded systems

Formal development of a network-centric RTOS: software engineering for reliable embedded systems: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Formal development of a network-centric RTOS: software engineering for reliable embedded systems" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Part 1. Trustworthy embedded systems -- Part 2. Formal modeling fundamentals -- Part 3. OpenComRTOS design -- Part 4. Appendix.

Eric Verhulst Raymond T. Boute José Miguel Sampaio: author's other books


Who wrote Formal development of a network-centric RTOS: software engineering for reliable embedded systems? Find out the surname, the name of the author of the book and a list of all author's works by series.

Formal development of a network-centric RTOS: software engineering for reliable embedded systems — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Formal development of a network-centric RTOS: software engineering for reliable embedded systems" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Part 1
Trustworthy Embedded Systems
Eric Verhulst , Raymond T. Boute , Jos Miguel Sampaio Faria , Bernhard H.C. Sputh and Vitaliy Mezhuyev Formal Development of a Network-Centric RTOS Software Engineering for Reliable Embedded Systems 10.1007/978-1-4419-9736-4_1 Springer Science+Business Media, LLC 2011
1. Introduction: OpenComRTOS Role in a Unified Systems Engineering Methodology
Eric Verhulst 1
(1)
Altreonic NV, Gemeentestraat 61AB1, B3210 Leuven, Belgium
(2)
Department of Information Technology, Universiteit Gent Faculty of Engineering, St. Pietersnieuwstraat 41, 9000 Gent, Belgium
(3)
Rua Sra das Boas Novas 776, 4935-490 Mazarefes, Portugal
(4)
Open License Society, Zavelstraat 160, 3010 Leuven, Belgium
Eric Verhulst (Corresponding author)
Email:
Raymond T. Boute
Email:
Jos Miguel Sampaio Faria
Email:
Bernhard H. C. Sputh
Email:
Vitaliy Mezhuyev
Email:
Abstract
OpenComRTOS is part of a systematic, formalised systems and software engineering methodology for embedded systems with a supporting environment and tools. While OpenComRTOS can be used independently of it, users will benefit from using the methodology in an integrated way. This methodology is characterised by two key concepts: unified semantics and interacting entities. When used in combination, they result in a better control of the engineering process leading to the development of systems and products. OpenComRTOS plays an important role in this approach as it is the system software layer allowing the mapping of the abstract interacting entities at the modeling level into concrete concurrent instances.
OpenComRTOS is part of a systematic, formalised systems and software engineering methodology for embedded systems with a supporting environment and tools. While OpenComRTOS can be used independently of it, users will benefit from using the methodology in an integrated way. This methodology is characterised by two key concepts: unified semantics and interacting entities. When used in combination, they result in a better control of the engineering process leading to the development of systems and products. OpenComRTOS plays an important role in this approach as it is the system software layer allowing the mapping of the abstract interacting entities at the modeling level into concrete concurrent instances.
1.1 Introduction
Our economy, our social and political environment can be considered as a system of systems. As citizens, we want these systems to work for us and to improve our lives. Technology and engineering are playing a growing and important role in it. The main reason for this fact is that technology allows us to do more with less. Technology provides us with efficiency. The task of the engineer is to put technology at work and to develop systems and products that provide us with added value. This applies to many domains, even in domains where technology only plays a supporting role and the role of the human is still dominant.
The authors of this book are mostly concerned with the domain of so-called embedded systems. While there is no unique definition for this domain, think about it as the domain of devices and systems that have a processor and software inside, often fully invisible to the user. It came into being when the transistor was invented. This was the start of the digital electronics era. Digital implies that it became more and more practical for engineers to start building systems based on the concept of state machines. What the solid-state transistor changed was that because of its shrinking size, many of these components could be used together to build very large scale state machines. A typical example is the processor in a desktop PC, now containing several of such devices, each having close to a billion transistors. Even a small processor can contain a few 10,000 to a few 100,000 transistors. On top of that, engineers made these components programmable. This comes down to using components whose functionality changes all the time (essentially at the rate of their clocks, often measured in MHz or GHz). The programs they run are composed of elementary instructions, meaning that the use of programs increases the size of the state machine exponentially. How do we ensure that such systems can be trusted to be correct?
This is not an easy task. Before electronics, most systems were analogue or mechanical ones. Such systems often require a lot of energy and are bulky, but usually they are quite trustworthy. The reason for this is that such systems inherently provide what is called graceful degradation. Their state space is continuous and hence infinite, but when the material properties are affected by e.g. wear and tear, a mechanical system will keep delivering its function, even when it will have become less efficient. This is the property of graceful degradation. Of course, at some state, the system will break down as well, but there will be ample warning (if one cares to look and listen).
Digital electronic systems are often designed and manufactured in such a way that each individual transistor remains in a safe domain over its anticipated lifetime, just like with mechanical system. The difficulty comes from the fact that in an electronic system, these transistors are connected and therefore they create a large state machine. When a single transistor or its connections to another transistor fails for some reason, the system might continue to work but there is also a non-zero probability that the failure will bring the whole system to a halt. Often this means it goes into an illegal, read: undefined, state. Fortunately, in (small) digital electronics the state space is still combinatorial and in principle, one can simulate the system across all these states or one can even design a test set-up that will exercise all possible states, allowing to verify that the design prevents the system from reaching such an illegal state, even if such an event is very unlikely under normal operating conditions. The issue is that reaching such an illegal state can become very likely when the operating conditions are no longer normal (e.g. because the external conditions put the device outside its normal operating conditions). Often, the result will be catastrophic.
The problem really becomes horrendous when we look at embedded software running on such an electronic component. The issue is that now the size of the state space is exponentially expanded. This is partly due to the way software instructions are encoded in the hardware. If a single bit is changed, the behaviour can become entirely different. In addition, programmable electronic components are often built as so-called von Neumann machines. The processor instructions are executed in sequence. The program will also contain branching points, meaning that the resulting state space can grow very large, even under normal operating conditions. Moreover, embedded software will often not have the property of graceful degradation. If for some reason the next instruction is not the right one, the system can come to a halt in nanoseconds and standard processors cannot recover from such errors. A hard reset and rebooting from the beginning is often the only sensible option. Most of us are familiar with this notion, often called a blue screen, but very few know that an ordinary PC will have at least one memory bit flipped per day due to cosmic radiation. While this is often innocent, when such an event occurs in a safety critical system, lives can be at stake.
Given that the state space is now exponential and that it is physically impossible to test all possible states, how can we then have confidence in embedded software? The solution engineers adopt is to prove that the software will be correct (this holds under the assumption that the hardware is correct as well). This is essentially not different from what engineers do in other domains. For example, construction and material engineers will often not test their construction to see when it will fail. No, they will develop a mathematical model and calculate the breaking point based on the assumption that their raw materials were correctly manufactured. This allows them to apply a hefty safety margin to their design. Unfortunately, software cannot be made robust by adding somewhere a safety margin, hence we must calculate it exactly. This is what the emerging field of formal techniques is all about and this book is about its application to the development of a crucial embedded software component: a network centric Real-Time Operating System.
Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Formal development of a network-centric RTOS: software engineering for reliable embedded systems»

Look at similar books to Formal development of a network-centric RTOS: software engineering for reliable embedded systems. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Formal development of a network-centric RTOS: software engineering for reliable embedded systems»

Discussion, reviews of the book Formal development of a network-centric RTOS: software engineering for reliable embedded systems and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.