Re: Talk about other OSes(was: Functional programming)

Liam Proven <[email protected]>
Newsgroups gmane.linux.distributions.gobo.general
Message-ID <CAMTenCGAVXbxGOS6zH8f1OXSE-qtYrkzM86vwy01E80BUEKLdQ@mail.gmail.com>
On 7 September 2015 at 17:00, Sergio Tortosa Benedito
<[email protected]> wrote:

> Well, Linux it's on a good position and Ubuntu it's on the too, also
> thinkpads are used in Linkx as they have pretty much the best support.

I visited Mark Shuttleworth's old flat once, about a decade ago. It
was littered with Thinkpads -- apparently much of Ubuntu was developed
on them. (I approve; I think they're still the best x86 notebooks. My
desktop is a Mac mini but my main notebook is this Thinkpad. On a
desktop Mac, I don't have to use Apple's modern low-travel island
("chiclet") keyboards and pointing devices, which I don't like.)

>> It was very, very fast. There was no slowdown.
> Oh, with that no one would need interpreters anymore.

Yes, that's right.

> Oh, I always thought all this OS X is a microkernel was FUD, but I see that
> is true (not that is useful in this case).

Well, kinda sortof. The xnu kernel is based on Mach, and Mach is
definitely a microkernel. However, for task creation, process
management and lots of other stuff, Mach uses a Unix model. For this,
it needs a Unix "server". (Microkernel OSes are made up of separate
pieces of user-space code called "servers" which communicate with one
another to accomplish the functions of a traditional monolithic
kernel. Mach was one of the original ones, and is one of the most
widely-used. It is FOSS, from Carnegie-Mellon university.

NeXT made NeXTstep by grafting a Unix server from 4.4BSD Lite onto Mach 2.

Apple upgraded this to Mach 3 and the Unix server is based on FreeBSD.
However, the Unix server is not a separate program any more but is
built into the kernel for performance reasons. So it's a compromised
microkernel. It *is* based on a true MK, though.

There have been many MK Unices:
* MkLinux
* DEC OSF/1, later called Tru64 Unix
* GNU Hurd
* Minix 3
* QNX

Only the latter 2 survive, alongside OS X.

But bear in mind that OS X powers every iPhone and iDevice. iOS is a
form of OS X. It's very, very widespread. That is a great success and
a triumph for the design.

> But if it is like this all around the world, eveb if this were an artifiact
> (or a "bad" one at least) wouldn't peolpe tried to stop it, rather tan
> continuing it.ç?

We are very trapped into the tradition now. We are more or less stuck
with it, like the QWERTY keyboard.

> Given how much you have researched I'm sure you know it, but for me the
> current next-gen OS is genode which solves some problems we are having today
> in a extremely beautiful way, also they are aiming to be a general-purpose
> OS.

I've not read much about it, actually.

But what my earlier research led me to gradually discover was 2 things.

All this stuff about microkernels and Unix vs Windows vs Symbian vs
BeOS and so on... all the differences, all the arguments, come down to
implementation details that happened because they're all written in C
or relatives of C. And if you dig into the history, 30y or more ago,
that wasn't true. C only got so established after the late 1980s.

Before then there was more diversity.

Once you step back from C and look at the bigger picture, you discover
that in the 1980s, there was a war: C and Unix and its kin versus
everything else. C won. Everything else is basically forgotten now.

History is written by the winners. The history of computing now says
"primitive languages evolved into C, which is the best language for
OSes and time-critical kernel code, device drivers and so on.
Everything else was slow and inefficient, and it went away. Now, other
languages have their place, and today they are used for user-level
applications, but not for OS code."

This is very /very/ wrong and correct neither historically nor today.
But it's the only story you'll find.

Sadly, this culture has given us the current world: constant code
patches, proprietary software versus open source, exploits  based on
C-isms such as "stack-smashing attacks", "buffer overflows" and crap
like that. Fragile compiled static binaries that can be easily
exploited.

I think the whole industry took a massive wrong turn in the late 1980s
and now we are so far up a narrowing side-channel that we have
forgotten that it *is* just a side-channel.

For me, the most impressive OS-type project in years has been Curtis
Yavin's Urbit.

http://popehat.com/2013/12/06/nock-hoon-etc-for-non-vulcans-why-urbit-matters/

Also read loper-os.org about Lisp Machines and abstraction models, and
read the essays on Paul Graham's site.

There was once a whole other /type/ of computer. One based on lists,
not bytes. One based on a high-level language, not a portable
assembler. One where "open source" /meant/ something because you could
inspect and modify the source code /as it ran/ rather than downloading
it from some website and trying to figure out what it did.

But we threw them away and replaced them with braindead C machines,
because for a while, they were cheaper and faster.

-- 
Liam Proven • Profile: http://lproven.livejournal.com/profile
Email: [email protected] • GMail/G+/Twitter/Flickr/Facebook: lproven
MSN: [email protected] • Skype/AIM/Yahoo/LinkedIn: liamproven
Cell/Mobiles: +44 7939-087884 (UK) • +420 702 829 053 (ČR)
_______________________________________________
gobolinux-users mailing list
[email protected]
http://lists.gobolinux.org/mailman/listinfo/gobolinux-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.