Tradução da especificação SCJ para linguagem de programação C++

Safety critical systems are systems where its failures can cause irreparable damage for this reason the development of safety critical systems involves safety issues and require rigorous validation in the certification process. Certification processes are expensive and lengthy to follow laws and rig...

ver descrição completa

Detalhes bibliográficos
Autor: Silva, Ricardo Frohlich da
Formato: tesis de maestría
Estado:Versión publicada
Fecha de publicación:2015
País:Brasil
Recursos:Universidade Federal de Santa Maria (UFSM)
Repositorio:Manancial - Repositório Digital da UFSM
Idioma:portugués
OAI Identifier:oai:repositorio.ufsm.br:1/5452
Acesso em linha:http://repositorio.ufsm.br/handle/1/5452
Access Level:acceso abierto
Palavra-chave:SCJ
RTSJ
RTOS
Java
Posix
Thread
Pthread
Critical systems
Real time
C++..
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Descrição
Resumo:Safety critical systems are systems where its failures can cause irreparable damage for this reason the development of safety critical systems involves safety issues and require rigorous validation in the certification process. Certification processes are expensive and lengthy to follow laws and rigorous rules. With the continuous evolution provided by general purpose programming languages, ease of learning, and the use of these languages in industry and academy, researches have been performed aiming to adapt general purpose programming languages for use in safety-critical applications. The purpose of these adaptations is to reduce the scope of commands found in general purpose languages in order to develop safety critical systems, for example, to avoid or reduce the use of recursions. Some examples of these adaptations include the Real Time Specification for Java (RTSJ), developed in 1998 and Safety Critical Java. SCJ uses objects and concepts defined by the RTSJ focusing on the development of safetycritical applications. In SCJ, the concept of missions is deployed where each mission consists of schedulable objects defined by the RTSJ. The portability of a Java application is one of the main factors for choosing this language. However, there is great difficulty in finding virtual machines for embedded safety-critical systems, therefore it is difficult to benefit from the portability provided by the Java virtual machine in this context. Nevertheless, an application developed in the C++ programming language can be executed directly on the device without using a virtual machine. This work presents a translation of the Safety Critical Java to the C++ programming language, maintaining the behaviour of objects that implement the concept of missions for SCJ in C++. This enables the execution of safety-critical applications in embedded devices without the use of a virtual machine.