comp.lang.ada
 help / color / mirror / Atom feed
From: Niklas Holsti <niklas.holsti@tidorum.invalid>
Subject: Re: Getting started with bare-board development
Date: Tue, 15 Nov 2016 11:58:58 +0200
Date: 2016-11-15T11:58:58+02:00	[thread overview]
Message-ID: <e904j2Fss0iU1@mid.individual.net> (raw)
In-Reply-To: <o0ehht$1l0c$1@gioia.aioe.org>

On 16-11-15 10:38 , Dmitry A. Kazakov wrote:
>
> Typical developing process stages, at least in my area, is like this
>
> 1. Workstation    Simulation time
>    Application
>    [HAL]
>    Mock actuators/sensors
>
> 2. Workstation    Hardware-in-the-loop, real-time
>    Application
>    [HAL]
>    Real/Mock actuators/sensors
>
> 3. Embedded       Target platform
>    Application
>    [HAL]
>    Real/Mock actuators/sensors
>
> Most of developing is done in #1 or #2. Most of testing in #2. #3 is
> limited to final integration tests.

In my domain (subcontractor for embedded SW in spacecraft) we typically 
use only one of the stages 1 and 2, not both. But otherwise our work is 
very similar.

> QEMU et al is not used, because it makes no sense to emulate
> computational hardware when you have Ada, unless you are an OS
> developer.

Or unless you worry about compiler bugs being different in the native 
and cross compilers, or about platform-dependencies introduced by 
mistake in the Ada application. Endian-dependency is easily introduced 
by mistake if the application does a lot of communication with HW. Our 
targets are usually big-endian SPARCs, but workstations are 
little-endian PCs.

Typically we do the final unit-testing runs both on workstations and on 
a target emulator, to settle such worries.

> Whatever OS/platform-dependent parts requiring test under an emulator,
> they are quite minuscule or non-existent if an OS is used.

We rarely (well, never) use an OS in embedded systems. Ravenscar or 
bare-board (zero runtime) is the norm for us. Though, there is a trend 
to have application-independent but domain-specific "execution platform" 
SW components which are like domain-specific OSs and can support various 
applications in this domain.

-- 
Niklas Holsti
Tidorum Ltd, working for SSF
niklas holsti tidorum fi
       .      @       .


  reply	other threads:[~2016-11-15  9:58 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-11 22:19 Getting started with bare-board development Adam Jensen
2016-11-11 22:43 ` Maciej Sobczak
2016-11-12  9:45 ` G.B.
2016-11-12 16:14   ` Adam Jensen
2016-11-12 19:15     ` artium
2016-11-12 21:37       ` Adam Jensen
2016-11-13  4:01     ` Jeffrey R. Carter
2016-11-13 20:03       ` Adam Jensen
2016-11-13 21:04         ` Jeffrey R. Carter
2016-11-13 22:00           ` Adam Jensen
2016-11-14  8:11             ` Paul Rubin
2016-11-14 23:03               ` Adam Jensen
2016-11-14  9:04             ` Dmitry A. Kazakov
2016-11-14 23:35               ` Adam Jensen
2016-11-15  8:38                 ` Dmitry A. Kazakov
2016-11-15  9:58                   ` Niklas Holsti [this message]
2016-11-15 17:32                   ` Adam Jensen
2016-11-16  9:30                     ` Dmitry A. Kazakov
2016-11-15  0:06             ` Jeffrey R. Carter
2016-11-14 18:17     ` Simon Wright
2016-11-14 22:52       ` Adam Jensen
2016-11-12 20:59 ` Brian Drummond
2016-11-15  1:14 ` antispam
2016-11-15  4:20   ` Adam Jensen
2016-11-19 22:46     ` antispam
2016-11-15 19:34 ` Robert Eachus
2016-11-15 22:07   ` Adam Jensen
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox