|
From: Maciej Sobczak on 29 Jan 2007 11:34 Hi, The N442 document states that Ravenscar profile forbids task termination. I understand that task termination is the fact of a task finishing its job and completing. Do I understand correctly that Ravenscar programs are by definition running forever? What about programs that are expected to finish? -- Maciej Sobczak : http://www.msobczak.com/ Programming : http://www.msobczak.com/prog/
From: Ludovic Brenta on 29 Jan 2007 14:53 Maciej Sobczak writes: > The N442 document states that Ravenscar profile forbids task termination. > I understand that task termination is the fact of a task finishing its > job and completing. > > Do I understand correctly that Ravenscar programs are by definition > running forever? What about programs that are expected to finish? Yes, it is my understanding as well, and I'm happy with that. I remember being impressed with Ada because you could write an infinite loop without a faked up condition. The idea being that in Ada the typical infinite loop would normally be terminated by detonation. -- Larry Wall The Ravenscar profile is specifically targeted at high-integrity systems, where infinite loops are, I think, the norm. -- Ludovic Brenta.
From: Maciej Sobczak on 30 Jan 2007 03:09 Ludovic Brenta wrote: >> Do I understand correctly that Ravenscar programs are by definition >> running forever? What about programs that are expected to finish? > > Yes, it is my understanding as well, and I'm happy with that. > > I remember being impressed with Ada because you could write an > infinite loop without a faked up condition. The idea being that in > Ada the typical infinite loop would normally be terminated by > detonation. -- Larry Wall :-) > The Ravenscar profile is specifically targeted at high-integrity > systems, where infinite loops are, I think, the norm. Sorry, but I don't see anything in the concept of high-integrity software that would make it a norm. High-integrity software is a set of quality objectives, whereas infinite loops are (or aren't) part of system requirements. These should stay independent, even though I understand that expectations for both often come in pairs. OK, just nit-picking. ;-) I wanted to be sure that I understand it correctly, thanks. Still, it looks like I cannot say: pragma Profile(Ravenscar); in my Hello World program even though this program meets the objectives of the profile. That's not fair! :-) -- Maciej Sobczak : http://www.msobczak.com/ Programming : http://www.msobczak.com/prog/
From: matteo.bordin on 30 Jan 2007 09:24 > Sorry, but I don't see anything in the concept of high-integrity > software that would make it a norm. High-integrity software is a set of > quality objectives, whereas infinite loops are (or aren't) part of > system requirements. These should stay independent, even though I > understand that expectations for both often come in pairs. The Ravenscar profile is aimed to high-integrity real-time systems. A static set of working tasks is a requirement to perform sound feasibility analysis (at least within a given execution mode). > Still, it looks like I cannot say: > > pragma Profile(Ravenscar); > > in my Hello World program even though this program meets the objectives > of the profile. That's not fair! :-) On real-time kernels supporting the Ravenscar profile, even the main procedure must contain an infinite loop. Regards, M.B.
From: Markus E Leypold on 30 Jan 2007 04:37 Maciej Sobczak <no.spam(a)no.spam.com> writes: > Ludovic Brenta wrote: > >>> Do I understand correctly that Ravenscar programs are by definition >>> running forever? What about programs that are expected to finish? >> Yes, it is my understanding as well, and I'm happy with that. >> I remember being impressed with Ada because you could write an >> infinite loop without a faked up condition. The idea being that in >> Ada the typical infinite loop would normally be terminated by >> detonation. -- Larry Wall > > :-) > >> The Ravenscar profile is specifically targeted at high-integrity >> systems, where infinite loops are, I think, the norm. > > Sorry, but I don't see anything in the concept of high-integrity > software that would make it a norm. High-integrity software is a set > of quality objectives, whereas infinite loops are (or aren't) part of > system requirements. These should stay independent, even though I > understand that expectations for both often come in pairs. > > OK, just nit-picking. ;-) > I wanted to be sure that I understand it correctly, thanks. > Still, it looks like I cannot say: > > pragma Profile(Ravenscar); > > in my Hello World program even though this program meets the > objectives of the profile. That's not fair! :-) Well, it terminates. What does termination mean in a "high integrity" embedded system -- does the hardware go away? :-). I think if someone wants to shutdown such a system the thing happening is, that every task goes into idle mode and the last thing a controlling task does, is, to display (or otherwise indicate) "you may now shut off power, the countdown to eject the warp core has been stopped" or something like this. :-) Regards -- Markus
|
Next
|
Last
Pages: 1 2 3 Prev: How come Ada isn't more popular? Next: Reading Float Data from a binary file into ada |