Gathering info for D/Embedded presentation

Paulo Pinto pjmlp at progtools.org
Sat Oct 13 01:19:01 PDT 2012


On Friday, 12 October 2012 at 13:24:06 UTC, mist wrote:
> On Friday, 12 October 2012 at 12:20:16 UTC, Tim Krimm wrote:
>>
>>
>> 1) Do you consider garbage collection to be an issue in 
>> embedded programming?
>>
>> 2) Are you dealing with hard timing constraints where garbage 
>> collection could be an issue?
>>
>>
>> I would love a copy of your presentation
>>
>> ================================================
>>
>> I think the XOMB  operating system project was a D1 project 
>> not a D2 project.
>> but this may be of interest:
>>
>> http://wiki.xomb.org/index.php?title=XOmB_Bare_Bones
>>
>> The XOmB Bare Bones distribution is a minimal 64 bit OS 
>> written in D, distilled from the main project by wilkie and 
>> Steve Klabnik.
>>
>> ================================================
>
> 1) Embedded programming today means freaking lot of environment 
> from microchips to custom hardware server clusters :) Sometimes 
> it is an issue, sometimes not, but that is definitely a thing 
> you need to remember about all the time.
>
> 2) Yes.
>
> I have had a similar questions from my colleagues, that is 
> exactly why I was asked to research this topic in detail. I ll 
> share it when it will be done, but that won't be any soon.
>
> XOMB is exactly on the D1 projects I was referring to, when was 
> asking if any more modern analogues exist :)

I would have a look at real time JVMs/AOT compilers, as they show 
the current state of the art in GC enabled systems targeting 
embedded devices.

In case you don't know any:

http://www.atego.com/products/aonix-perc-pico/
http://www-01.ibm.com/software/webservers/realtime/description.html
http://www.research.ibm.com/people/d/dgrove/papers/emsoft05.pdf

Eventually D's GC will be comparable to those.

Although it is not D, have a look at BlueBottle, it is 
implemented in Active Oberon, with only some hardware glue in 
Assembly. Fully usable desktop system implemented in a GC enabled 
systems programming language.

http://www.ocp.inf.ethz.ch/wiki/
http://www.ocp.inf.ethz.ch/wiki/Documentation/WindowManager

The system is since the late 90's used at ETHZ.

Something like this would be fully possible with D, even better.

Having been a user of the first generation of this OS (Native 
Oberon) has convinced me that OS development in GC enabled 
systems language is possible, even thought there are some cases 
where it might not make sense. I wouldn't want a GC 
stop-the-world in a plane computing system. :)

Sorry if my post is too off-topic, just wanted to raise some 
points you could somehow use to pimp up D.


--
Paulo






More information about the Digitalmars-d mailing list