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