55 research outputs found
Considerations about Continuous Experimentation for Resource-Constrained Platforms in Self-Driving Vehicles
Autonomous vehicles are slowly becoming reality thanks to the efforts of many
academic and industrial organizations. Due to the complexity of the software
powering these systems and the dynamicity of the development processes, an
architectural solution capable of supporting long-term evolution and
maintenance is required.
Continuous Experimentation (CE) is an already increasingly adopted practice
in software-intensive web-based software systems to steadily improve them over
time. CE allows organizations to steer the development efforts by basing
decisions on data collected about the system in its field of application.
Despite the advantages of Continuous Experimentation, this practice is only
rarely adopted in cyber-physical systems and in the automotive domain. Reasons
for this include the strict safety constraints and the computational
capabilities needed from the target systems.
In this work, a concept for using Continuous Experimentation for
resource-constrained platforms like a self-driving vehicle is outlined.Comment: Copyright 2017 Springer. Paper submitted and accepted at the 11th
European Conference on Software Architecture. 8 pages, 1 figure. Published in
Lecture Notes in Computer Science vol 10475 (Springer),
https://link.springer.com/chapter/10.1007/978-3-319-65831-5_
CPAL: High-Level Abstractions for Safe Embedded Systems
Innovation in the field of embedded systems, and more broadly in cyber-physical systems, increasingly relies on software. The productivity gain in software development can hardly keep up with the demand for software despite the increasing adoption of Model-Driven Development (MDD). In this context, we believe that major productivity and quality improvements are still ahead of us through better programming languages and environments. CPAL, the Cyber-Physical Action Language, is a contribution in that direction with the objective to speed-up the development of embedded systems with dependability constraints. The objective of this paper is to present and illustrate the use-cases of the high-level abstractions offered to the developer in CPAL with respect to real-time scheduling, introspection mechanisms, native support of Finite State Machines (FSMs), abstracting the hardware and decoupling functional concerns from non-functional concerns
Hydroxynonenal, a lipid peroxidation end product, stimulates uncoupling protein activity in Acanthamoeba castellanii mitochondria; the sensitivity of the inducible activity to purine nucleotides depends on the membranous ubiquinone redox state
Development of Automotive Communication Based Real-Time Systems - A Steer-by-Wire Case Study
Fine Tuning the Scheduling of Tasks through a Genetic Algorithm: Application to Posix1003.1b Compliant Systems
Most of today's commercial Real-Time Operating Systems (RTOSs) offer multiple scheduling policies which are applied on a per-process basis. The best illustrations of this are the Posix1003.1b compliant OSs that provide two real-time scheduling policies, namely sched_fifo and sched_rr, which under some limited hypotheses are respectively the equivalent of Fixed Priority Pre-emptive (FPP) and Round-Robin (RR). In the field of processor scheduling, schedulability analysis has been extensively studied and the problem of assessing the schedulability of multi-policy systems has been recently addressed in [38]. When FPP and RR are used in conjunction, no optimal priority/policy assignement, such as Audsley's algorithm for FPP [3], is known, a fortiori when other criteria besides feasibility are considered. Because of the size of the solution space, an exhaustive search is not possible; an optimisation technique is required. A schedulability analysis provides valuable help for the application designer but it simply asserts whether a given configuration is feasible or not, in general it does not propose any feasible configurations (1) and, as stated by Gerber and Hong in [23] "it can rarely help to tune the system (2), which is the inevitable next step". To address problems (1) and (2), we propose in this study an approach using a Genetic Algorithm (GA) to best set task priorities and scheduling policies, according to a chosen criterion, on Posix 1003.1b uniprocessor systems. Moreover, it will be shown in this study that the use of RR, in conjunction with FPP, may improve the schedulability as well as the satisfaction of additional application-dependent criteria
Integrating hardware limitations in CAN schedulability analysis
The existing schedulability analysis for the Controller Area Network (CAN) does not take into account that a CAN controller has finite buffer space to store outgoing messages and high priority messages may suffer from priority inversion if the buffers are already occupied by low priority messages. This gives rise to an additional delay for high priority messages, which, if not considered, may result in a deadline violation. In this paper, we explain the cause of this additional delay and extend the existing CAN schedulability analysis to integrate it. Finally, we suggest implementation guidelines that minimizes both the run-time CPU overhead and the additional delay due to priority inversion
- …