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=-0.3 required=5.0 tests=BAYES_00,FREEMAIL_FROM, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: anon@att.net Newsgroups: comp.lang.ada Subject: Re: seL4 as base of an AdaOS with some Spark proofing? Date: Fri, 1 Aug 2014 19:17:54 +0000 (UTC) Organization: Aioe.org NNTP Server Message-ID: References: <791c07d0-575d-42be-ad5c-219aa3cf7734@googlegroups.com> <9509bda5-4429-4e2c-ac97-bc7959257006@googlegroups.com> Reply-To: anon@att.net NNTP-Posting-Host: vUtIc30ESFn1ucn0P2Xg3A.user.speranza.aioe.org X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 X-Newsreader: IBM NewsReader/2 2.0 Xref: news.eternal-september.org comp.lang.ada:21377 Date: 2014-08-01T19:17:54+00:00 List-Id: Yes, an AdaOS should be written and complete with the big OS(s). The problem is the older OS are using old outdate techniques and technology. Micosoft Windows is a blending of Win 95/98 (aka Micosoft[DOS]/IBM(Windows), 1980(s)) and NT (aka DEC VAX, 1980) software. Then you have AT&T old OS (1969) children. which includes the licensed Sun Solaris OS or IBM AIX, and then BSD groups like Apple's OS X, and Darwin ( open source ) or the open source BSD(s) FreeBSD, OpenBSD, NetBSD. All which use software technique from 1960(s) .. 1970(s). Then you have Linux written using techniques and technology from the 1990(s). And you can include IBM Z/OS which is basically just a 64-bit port of MVS and still has it core from from the 1960s. So, there is no OS for the 22nd century. And all of these older OS have problem which hackers can use to harm the system or steal data. We need a OS that can handle the current hardware and system designs and be modular enough to allow complete change for the future. But be strong enough to allow the design and implement a security system that can handle current attack as well as being modular to update itself (using AI and other tools) for the hackers of the future. So why not use (non-oops) Ada to write this new operating system? One could allow the special constructs in Ada to bind the OS to like tasking, interrupts to the hardware while allowing the software to protect the system and data. And Dewar once stated, if you can write the code in C then you can write the code in Ada. And if you limit the assembly code to special hardware packages such as boot up routine and use Ada Machine_Code, one could only have to re-write these special packages to port the OS to another processor. Note: Hacker could be software or human trying to gain access or destroy the system. Note: Why non-oops Ada. Most OS writers understand that using oops decrease the level of security to around 10 .. 20%. It's one reason why even Microsoft will not allow oops in its kernel. And every time they use oops in IE, it contains a number of security holes. And translating C to Ada. People will just say stay with the first language! In <9509bda5-4429-4e2c-ac97-bc7959257006@googlegroups.com>, gvdschoot@gmail.com writes: >On Wednesday, July 30, 2014 7:58:33 PM UTC+2, an...@att.net wrote: >> seL4 is just another subset of the L4 project, which has nothing to=20 >>=20 >> do with Ada or an AdaOS. Now, there are a number of Ada OS projects >>=20 >> which core code are based on the L4 project, like MaRTE (last update=20 >>=20 >> uses GNAT 2009), RTERMS (2008), and OpenRavencar (based on GNAT 3.13). >>=20 >>=20 >>=20 >> For Ada purest, to do a AdaOS, like the one I an working on, the entire= >=20 >>=20 >> code must be written in Ada with exceptions for macros for assembly code= >=20 >>=20 >> (using the Ada Machine_Code package) that extents Ada API to allow=20 >>=20 >> hardware instructions, such as the CPU's I/O instructions. And some of=20 >>=20 >> these macros instructions include code used to switch the processor from= >=20 >>=20 >> initial 8/16 bit 8086 state (power up/reset) to a 32-bit protected mode= >=20 >>=20 >> and then detects and if possible switch to 64-bit mode during the boot=20 >>=20 >> phase. >>=20 >>=20 >>=20 >> The AdaOS should be able to handle both 32-bit/64-bit code and maybe a=20 >>=20 >> some trusted special case protected VM code. As for languages, the=20 >>=20 >> OS should have Ada as the primary languages. If a secondary language is= >=20 >>=20 >> desired then it's compiler must be written in Ada. This means that=20 >>=20 >> others projects like openGL should be written in Ada instead of just=20 >>=20 >> porting the project code to the new AdaOS after a C compiler is=20 >>=20 >> written in Ada and then binding the code to the AdaOS. >>=20 >>=20 >>=20 >> The AdaOS, also should be a stand alone system that can work=20 >>=20 >> within a virtualization environments with some small limitations=20 >>=20 >> caused by the VM engine unless the VM is also, written in Ada and=20 >>=20 >> the AdaOS is the host OS. >>=20 >>=20 >>=20 >> Then there's the compiler while GNAT is an OK compiler it will not=20 >>=20 >> work for the new OS, we need a compiler from the ground up written in=20 >>=20 >> Ada that can produce code for a number of OS including an AdaOS that=20 >>=20 >> does not depends on any host OS or a design implementation like GNU=20 >>=20 >> which is based on C/C++. That way the new Ada compiler could be=20 >>=20 >> easily ported to the new OS without any other language or groups=20 >>=20 >> involvement. >>=20 >>=20 >>=20 >> But just having an AdaOS will not increase the usage of Ada. This=20 >>=20 >> might change if and only if the AdaOS was a complete and robust OS=20 >>=20 >> that could go against Microsoft Windows and Apple's OS X. But=20 >>=20 >> most people writing an AdaOS normally stop after they finish the=20 >>=20 >> initial kernel. Which mean an AdaOS will never become robust enough=20 >>=20 >> to even equal any OS used today. much less compete with those=20 >>=20 >> OS.=20 >>=20 > >So you want to compete with the big guys? You want to compete with the mult= >i billion dollar companies? With what? Ideas? Do you know how many man year= >s it takes? Let's just forget the desktop or tablet. These areas are untouc= >hable unless you are very lucky. > >Here is another idea. Let's for instance instead focus on tools that can au= >tomatically translate C source code to Ada.