POV-Ray : Newsgroups : povray.off-topic : Random fact of the day : Re: Random fact of the day Server Time
30 Jul 2024 02:21:02 EDT (-0400)
  Re: Random fact of the day  
From: Invisible
Date: 2 Jun 2011 10:38:03
Message: <4de7a04b$1@news.povray.org>
>> I suspect that an OS is subject to some *serious* network effects. It's
>> an interesting toy project to write an OS in language XYZ, but once
>> you've done it, what are you going to use it for?
>
> I think a much more important thing than "what [language] is it written
> /in/" is the question "what is it written /for/".

Now you're talking.

> In case of a Haskell
> OS I don't know what that would be, but in case of a Java OS it seems
> plain as hell: Run JVM bytecode. Applications are plenty for that.

Has anybody written anything more substantial than Tic-Tac-Toe applets 
in Java yet?

(In the case of the Haskell OS, the design goal seems to have been 
"let's demonstrate how using Haskell leads to far fewer bugs and hence 
much greater reliability". Once they proved that this was so, they got 
bored and did something else. Personally, the idea of a more reliable OS 
is something that sounds pretty appealing to me!)

> For instance, the virtual memory management of an OS dedicated to
> running JVM bytecode could easily provide built-in support for garbage
> collection.

Well now, let's examine that for a moment.

Every OS I know is based around a series of assumptions. In particular, 
that a "program" is just a monolithic block of machine code, and that 
the only "services" that it needs from the OS is resource allocation, 
protection, and control over the hardware.

Given how many kinds of programming languages these days use garbage 
collection strategies, an OS with that wired into the kernel sounds like 
quite a promising idea...

...until you realise that changing the design of the GC is likely to 
break all your applications. Unless they're written in a sufficiently 
high-level language that they can't "see" this level of detail.

So yes, the Java VM, or something like it, seems like a rather promising 
idea...

That makes you start to think what /other/ kinds of services you might 
want the OS to provide. For example, this whole "a command is a file 
name, and its arguments are strings passed uninterpretted to the 
program" thing. Surely we can do better.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.