Leveraging real-time and multitasking Ada capabilities to small microcontrollers

被引:1
|
作者
Aldea Rivas, Mario [1 ]
Perez Tijero, Hector [1 ]
机构
[1] Univ Cantabria, Avd Castros S-N, E-39005 Santander 39005, Spain
关键词
Real-time; Operating systems; Embedded systems; Microcontrollers;
D O I
10.1016/j.sysarc.2019.02.015
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Small embedded microcontrollers typically operate for years without further programmer intervention, so that shipping software free of errors becomes paramount. The Ada programming language includes many safety characteristics (e.g., strong typing or contract-based programming) that help to largely reduce the number of errors introduced by programmers. However, Ada is barely used in microcontrollers with tight memory constraints due to the overhead introduced at run-time. The tasking semantics included in the language represent one major source of this overhead. In this paper we present a new Ada run-time environment that includes a new scheduling policy based on the one-shot task model that simplifies the implementation of the Ada tasking primitives and allows stack sharing techniques to be applied. Consequently, the proposed approach allows using the inherent safety characteristics of the Ada language along with a set of tasking constructs more suitable for small memory devices. Despite its simplicity, the tasking primitives have an equivalent, if not superior, expressiveness to the typical tasking constructs provided by the operating systems targeted to small microcontrollers. An implementation based on a small kernel, a modified run-time system and an automatic code transformation tool have been developed in the context of this work. Initial tests provide promising results, showing the tasking constructs are functionally correct and the proposed run-time features a small memory footprint.
引用
收藏
页码:32 / 41
页数:10
相关论文
共 50 条
  • [41] MNE-X: MEG/EEG REAL-TIME ACQUISITION, REAL-TIME PROCESSING, AND REAL-TIME SOURCE LOCALIZATION FRAMEWORK
    Dinh, Christoph
    Luessi, Martin
    Sun, Limin
    Haueisen, Jens
    Hamalainen, Matti S.
    BIOMEDICAL ENGINEERING-BIOMEDIZINISCHE TECHNIK, 2013, 58
  • [42] Real-time Soundprism
    Munoz-Montoro, A. J.
    Ranilla, J.
    Vera-Candeas, P.
    Combarro, E. F.
    Alonso-Jorda, P.
    JOURNAL OF SUPERCOMPUTING, 2019, 75 (03) : 1594 - 1609
  • [43] REAL-TIME DATABASES
    RAMAMRITHAM, K
    DISTRIBUTED AND PARALLEL DATABASES, 1993, 1 (02) : 199 - 226
  • [44] Real-Time CORBA
    Fay-Wolfe, V
    DiPippo, LC
    Cooper, G
    Johnston, R
    Kortmann, P
    Thuraisingham, B
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2000, 11 (10) : 1073 - 1089
  • [45] Real-time Soundprism
    A. J. Muñoz-Montoro
    J. Ranilla
    P. Vera-Candeas
    E. F. Combarro
    P. Alonso-Jordá
    The Journal of Supercomputing, 2019, 75 : 1594 - 1609
  • [46] Real-time, dense UAV mapping by leveraging monocular depth prediction with monocular-inertial SLAM
    Habib, Yassine
    Papadakis, Panagiotis
    Le Barz, Cedric
    Fagette, Antoine
    Goncalves, Tiago
    Buche, Cedric
    ADVANCED ROBOTICS, 2024, 38 (21) : 1555 - 1566
  • [47] Reconfiguration of Synchronous Real-Time Operating System
    Gharsellaoui, Hamza
    Khalgui, Mohamed
    Ben Ahmed, Samir
    INTERNATIONAL JOURNAL OF SYSTEM DYNAMICS APPLICATIONS, 2013, 2 (01) : 114 - 132
  • [48] Real-Time Simulator for Dynamic Systems on FPGA
    Silva, Sergio N.
    Goldbarg, Mateus A. S. de S.
    da Silva, Lucileide M. D.
    Fernandes, Marcelo A. C.
    ELECTRONICS, 2024, 13 (20)
  • [49] Multiprocessor platform for partitioned real-time systems
    Perez Tijero, Hector
    Aldea Rivas, Mario
    Medina Ortega, Daniel
    SOFTWARE-PRACTICE & EXPERIENCE, 2017, 47 (01) : 61 - 78
  • [50] THOTH, A PORTABLE REAL-TIME OPERATING SYSTEM
    CHERITON, DR
    MALCOLM, MA
    MELEN, LS
    SAGER, GR
    COMMUNICATIONS OF THE ACM, 1979, 22 (02) : 105 - 115