From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,7a27b8f727dd1e47 X-Google-Attributes: gid103376,public Path: controlnews3.google.com!news1.google.com!news.glorb.com!fr.ip.ndsoftware.net!proxad.net!feeder2-1.proxad.net!news1-e.free.fr!not-for-mail From: JCS Subject: Re: GNAT and no runtime Date: Thu, 27 May 2004 01:12:15 +0200 User-Agent: Pan/0.14.2 (This is not a psychotic episode. It's a cleansing moment of clarity. (Debian GNU/Linux)) Message-Id: Newsgroups: comp.lang.ada References: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 8bit Organization: Guest of ProXad - France NNTP-Posting-Date: 27 May 2004 01:12:29 MEST NNTP-Posting-Host: 217.108.166.26 X-Trace: 1085613149 news1-e.free.fr 19638 217.108.166.26:2137 X-Complaints-To: abuse@proxad.net Xref: controlnews3.google.com comp.lang.ada:869 Date: 2004-05-27T01:12:29+02:00 List-Id: On Wed, 26 May 2004 16:33:55 -0500, sk wrote: > > The author use the "pragma Supress (All_Checks)" and don't > > raise exception so obviously there is no such problem than > > I have. > > > But a real OS made in Ada should use the builtin checks and > > generate exception handling code, at least during the > > development stage. > > As the author, I am aware of its limitations :-) But, how can > you NOT suppress all checks until you have written the code > to provide the checks. Checks are builtin (i.e. generated by the compiler). There should be suppressed only if you assume that you never make mistakes. (wich most developers seem to assume! (-: ) > > How can you have builtin's before you have the OS ? It seems you are > arguing the old philisophical conundrum of the chicken and the egg. No, I'm not willing to have a fully complete sets of tasking, memory or real-time functionalities at this stage! I'm just willing to have a basic Ada concept (exceptions) to go further in the development without passing several days on a small bug because of a stupid range check I didn't make somewhere in the code (just an exemple). As for now, I studied a bit how exceptions works in GNAT, and it seems that the only missing functionality is dynamic memory allocation/deallocation. So now, I will try to make a static version, or maybe I will implement a very basic dynamic memory allocation. > From my perspective, the author of the mini/toy/silly kernel, > you have to build the hardware coordination next and then you build a > run-time which can interface with the compiler. Well, Ada exceptions do not involve any hardware support*, it should be possible to implement them at the lowest level. *: Well you need a CPU and some small amount of memory plus a basic screen output function, but if you haven't that, you won't do many things :-) > My philosophy was/is based in the Intel architecture (i386 and above) > which incorporates 4 "rings" of possible kernel security which I would > arrange loosely as follows ... > [...] Even if I disagree with your design, it would be out of topic here.