Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

1-hour crash course on advanced OS design

0 views
Skip to first unread message

OK

unread,
Aug 19, 2006, 12:20:48 AM8/19/06
to

Rex Ballard

unread,
Aug 19, 2006, 1:48:29 AM8/19/06
to

OK wrote:
> http://channel9.msdn.com/showpost.aspx?postid=227259

Gee, this sounds like something right out of the Linux playbook.

Rethink how software is constructed and start from "bare metal"
(Linus started with the premise that he wanted to write for the 80386
chip).
(He studied minix, but started from scratch).

Choose a reliable trusted infrastructure
Microsoft used C#
Linus used GCC, glibc, and OSS foundation software.

Choose a model that lets developers find errors easily.
(Linus used macro-kernel with plug-ins rather than microkernel for
this reason).

Isolate processes and process memory from each other
(Linus used memory mapping to make sure that process context
switches were fast,
he also used this to protect each process from other processes).

Communicate over channels.
(Linux and Unix primarily use pipelines and message passing between
processes. Linus optimized these by using memory mapping to protect
and pass messages very efficiently).

Minimize the amount of shared memory between programs.
(Eliminate all of the deadlock and race conditions by
limiting or eliminating all shared memory between processes or
threads -
- again, back to BSD and Bill Joy's system design).
(Linus again used memory to minimize the ability to move memory, he
also minimized threading within the kernel).

Use "contracts" between program components and programs, so that only
the "contract" needs to be considered.
Sounds a bit like Man Pages to me.

They don't have plug-and-play yet
They'll steal it from Linux any day now.

They don't know how to actually build Singularity, may be 5-10 years
down the road, maybe by 2015! WOW - only 10 more years before the BETA
release of Microsoft Linux!
.
The Linux community figured out how to generate a huge community of
engineers, analysts, and programmers who were able to contribute
based on their social, personal, and economic interests.

Research engineering is 90% of the development, and the last 10% takes
99% of the time.

Gee, if we do it this way, it's fast, lots faster, and more reliable
than anything Microsoft has now!
(Pretty much an admission that the design principles of Linux are
better than those
of Microsoft and Windows/Vista).

Small kernel that provides very basic features.

Isolate the disk drive software from kernel.
Isolate the file system from the kernel.
Isolate the network drivers from the kernel.
Isolate the other device drivers from the kernel.
Isolate the protocols from the kernel
Sounds like Linux "Modules" to me.

Isolate components (from each other into separate processes, and let
them communicate with each other using message passing (do I dare use
the word "pipes"?).

Each process has their own run-time process, heap, and garbage
collectors.
(Linux again!!!, object pools, JAVA, J2EE object pools).

Use fully compiled code, not a JIT
(Linux again).

Kernel interface between kernel and process which is very limited.
(Linux, X11, pipelines, ICCCM, message queues).

Processes can ONLY talk to other processes via message passing through
channels managed by the kernel - to other processes.

Limiting the interfaces and what they can communicate with. For
example, a process can only talk HTTP to web interface, it can't do
it's own TCP/IP. Gee, sounds like Linux again.

Configuration requirements
(check PCI code, check for conflicts, is it already installed...?)
Sounds like modprobe - Linux again!!!

Each process/driver is type-safe and memory safe - can only interact
using the available application, Each process is isolated.
Sounds like SINE, streams, modprobe, and CUPs.

Only kernel can map/access directly to hardware addresses.
X11 Server, CUPs, SINE, Xen...

Use reliable code
Microsoft keeps trying to say C#.
Linus just used really well-tested components written in C,
compiled with GCC, using glibc/libc library, all "hardened" over 25
years in production enviornment and under OSS scrutiny (BSD, GNU, X11,
MIT, Athena...).

And just think, we only have to wait AT LEAST 10 MORE YEARS for
MICROSOFT to DELIVER!!!

AND GIVEN THAT MICROSOFT is CONSISTENTLY 300% LATE, it could be here by
2036!!!

I CAN'T WAIT!!! (thank goodness I don't have to).

Microsoft: How do we do that? We don't know yet!!!

Microsoft: No Guarantees!!!

Microsoft: Our current software is really buggy, but we'll fix that
(in 2036?).

Let's group the applications into one "hardware boundry". (Xen Virtual
machines?).

After listening for 40 minutes, this is sounding more an more like
Linux OS, Xen, and Windows applications running in small Windows
virtual machines.

And Microsoft thinks they might be able to deliver in 10 (20?, 30?)
years!!!

The really sad thing is that these guys on the singularity team seem to
have no clue that they have been spoon fed nearly all of the
fundamentals of Linux. One of them (the guy in the green sweater and
white shirt?) probably does know, but is acting like they don't know.
The rest of these guys HAVE NO CLUE THAT THIS IS LINUX!!!

And then they degenerate back into the same mess of Windows, putting
everything in ring zero. Can we shoot them now?

OOPS! They seem to want to create separate copies of everything,
instead of using "copy-on-write". Linux maps the shared pages
separately, prevents writes to code pages, and text pages, and does
"copy-on-write" for buffer pages. Exec can load only what is needed,
back to same core libraries (but read-only).

57 minutes in, they want to go to flat memory model, no MMU, so now
they want to invent OS/9. Boy does that sound like fun!!! Yuck!!
Back to *nix from 1976?

Oh well, they have 10-20-30 years to sort all of that out.

Microsoft is still trying to figure out how to deal with Multiple
Cores.

Linux has had that figured out since Beowulf!

How about Xen?

1 hour and I'm more convinced than ever that Linux is going to blow
Vista away!

Roy Schestowitz

unread,
Aug 19, 2006, 1:57:24 AM8/19/06
to
__/ [ OK ] on Saturday 19 August 2006 05:20 \__

> http://channel9.msdn.com/showpost.aspx?postid=227259

One could have thought that they took Singularity beyond the scope of
research. This would be an admission that Windows is a lost case,
culminating in the Visaster people will come to know as "Vista" (Windows XP
and 2 predecessors were bad enough already).

http://www-128.ibm.com/developerworks/library/os-lfs/index.html

billwg

unread,
Aug 19, 2006, 6:41:45 PM8/19/06
to

"Rex Ballard" <rex.b...@gmail.com> wrote in message
news:1155966509.5...@i42g2000cwa.googlegroups.com...

>
> OK wrote:
>> http://channel9.msdn.com/showpost.aspx?postid=227259
>
> Gee, this sounds like something right out of the Linux playbook.
>
> Rethink how software is constructed and start from "bare metal"
> (Linus started with the premise that he wanted to write for the 80386
> chip).
> (He studied minix, but started from scratch).
>

Oh baloney, rex! Even the famous linux gurus agree that much of linux was
lifted from freeBSD. Bruce Perens went through a many page song and dance a
while back showing how SCO was dead wrong about linux code being stolen from
System IV and he showed where it actually came from BSD.

.


7

unread,
Aug 19, 2006, 7:12:24 PM8/19/06
to
micoshaft asstroturfer billwg wrote:


You are a SCO$ employee in disguise and I claim my five pounds.

OK

unread,
Aug 19, 2006, 11:07:36 PM8/19/06
to
On 18 Aug 2006 22:48:29 -0700, "Rex Ballard" <rex.b...@gmail.com>
wrote:

>
>OK wrote:
>> http://channel9.msdn.com/showpost.aspx?postid=227259
>
>Gee, this sounds like something right out of the Linux playbook.

You live in a different dimension.

Beside that, a few *key* words have escaped you, or maybe you just
don't understand their meaning. Words like "verification" and
"contract", for example.

[H]omer

unread,
Aug 20, 2006, 9:02:17 AM8/20/06
to
Roy Schestowitz wrote:
> __/ [ OK ] on Saturday 19 August 2006 05:20 \__
>
>> http://channel9.msdn.com/showpost.aspx?postid=227259

There's no question that SIPs is an impressive technology,
particularly since it reduces hardware dependence (address violation
protection, et al). I was especially taken with the fact that it
facilitates passing pointers, rather than their corresponding data,
but without compromising integrity; something that can potentially
increase system performance by an order of magnitude.

As for this technology making it into Vista; well as stated in the
video "don't hold your breath". It would have taken Ballmer's
infamously failed "rewrite" to accomplish *that* task, assuming that
SIPs was ever part of that erstwhile plan to begin with. SIP's is only
in a reasonably early research phase, after all, despite the existence
of a very basic "busybox" style OE.

I was also very interested in a particular comment made by Calen Hunt
of the MS Operating Systems Group. When replying to a comment about
the fact that many Windows hardware drivers are currently in the
transition of moving out of kernel mode; he said "in which case they
will pay the hardware performance penalty". As if Vista didn't have
enough performance issues with it's heavy handed Uber-gooyey
eye-candy; now the hardware drivers are going to run at a snails pace
too.

--
K.
http://slated.org - Slated, Rated & Blogged
This message has not been photoshopped in any way.

Fedora Core release 5 (Bordeaux) on sky, running kernel 2.6.16-1.2133_FC5
14:00:57 up 63 days, 14:17, 3 users, load average: 0.05, 0.01, 0.00

Rex Ballard

unread,
Aug 20, 2006, 5:39:20 PM8/20/06
to

billwg wrote:
> "Rex Ballard" <rex.b...@gmail.com> wrote in message
> news:1155966509.5...@i42g2000cwa.googlegroups.com...
> >
> > OK wrote:
> >> http://channel9.msdn.com/showpost.aspx?postid=227259
> >
> > Gee, this sounds like something right out of the Linux playbook.
> >
> > Rethink how software is constructed and start from "bare metal"
> > (Linus started with the premise that he wanted to write for the 80386
> > chip).
> > (He studied minix, but started from scratch).
> >
>
> Oh baloney, rex! Even the famous linux gurus agree that much of linux was
> lifted from freeBSD.

True. Libarary routines, applications, and even compatibility
expectations.
But that original 10,000 line version 0.01 that Linus posted to FSF was
unusual because started from "Bare Metal" as an approach. Linux wanted
to play with the 80386 virtual memory management, and at the time he
only had knowledge of Minix.

Many contributors, made suggestions and reccomendations, including
some concepts based on Mach and BSD. The BSD Kernel itself used a
number of critical AT&T algorythms which Linus did not use. Linus had
given them a "pure" kernel which was not infected with AT&T code. This
made it possible to build on that base. But even "off the shelf"
solutions were reexamined, and very rarely were proposals for kernel
changes adopted without some modifications, for both practical and
logistical reasons.

Contributors were required to attest that their code was original, that
they owned the copyright, and that they were licensing this software
under the terms of the GPL

> Bruce Perens went through a many page song and dance a
> while back showing how SCO was dead wrong about linux code being stolen from
> System IV and he showed where it actually came from BSD.

Both Linux and Unix are far more than just kernels. They are more like
"environments", like Windows. There is the kernel, but then there are
libraries, utilities, frameworks, drivers, modules, graphics servers
(X11), Toolkits (athena et al), Window Managers, Desktop Managers, and
applications. The irony is that SCO "owned" none of this technology,
and was only granted nonexclusive unlimited distribution licenses to
any of it.

The only elements which were patented were regular expressions (regex
on unix "compiles" regular expressions into metacode, and executes it,
linux regex simply interprets it), and one of the context switching
algorythms (not the ones used by Linux).

The irony is that SCO has attempted to claim ownership of code which
was actually funded by IBM, and code which was created by IBM for MVS
and CICS which IBM owned. It could be very entertaining for IBM to go
after SCO and the deep pockets funding this lawsuit, for actual fraud
and extortion. If IBM can prove that SCO knew that IBM was the
original author, and that IBM had granted SCO a nonexclusive unlimited
distribution license, but was now trying to claim that SCO "owned" this
code and was demanding substantial sums of money from Linux users based
on this fraudulent claim, there might be some corporate executives at
SCO who will be going to jail, some refunds that will have to be
covered by those deep pockets.

You can bet that there was a very good reason WHY IBM didn't ask the
judge to dismiss those remaining claims. The Judge would have probably
granted a motion for summary dismissal of ALL charges if it had been
requested.

Hadron Quark

unread,
Aug 20, 2006, 6:57:13 PM8/20/06
to
"Rex Ballard" <rex.b...@gmail.com> writes:

Linux is just the kernel/core OS isnt it? It pisses Stallman off to
here a distro referred to as Linux. It isnt.

> libraries, utilities, frameworks, drivers, modules, graphics servers
> (X11), Toolkits (athena et al), Window Managers, Desktop Managers, and
> applications. The irony is that SCO "owned" none of this technology,
> and was only granted nonexclusive unlimited distribution licenses to
> any of it.

Why not just point to one of the very many Wikis available?

http://en.wikipedia.org/wiki/Linux#Linux_and_the_GNU_Project


Rex Ballard

unread,
Aug 20, 2006, 8:13:05 PM8/20/06
to

Hadron Quark wrote:
> "Rex Ballard" <rex.b...@gmail.com> writes:

> >> Bruce Perens went through a many page song and dance a
> >> while back showing how SCO was dead wrong about linux code being stolen from
> >> System IV and he showed where it actually came from BSD.
> >
> > Both Linux and Unix are far more than just kernels. They are more like
> > "environments", like Windows. There is the kernel, but then there are
>
> Linux is just the kernel/core OS isnt it? It pisses Stallman off to
> here a distro referred to as Linux. It isnt.

Linus Torvalds submitted the source code to a kernel, which became the
core of what we now call Linux. Almost since the begining, at least by
February of 1992, less than 4 months after Linus offered his kernel,
which he didn't name, "Linux" referred to distributions. The early
distributions didn't have much, just the kernel, gcc, and some gnu
applications like bash, gmake, and so on.

> > libraries, utilities, frameworks, drivers, modules, graphics servers
> > (X11), Toolkits (athena et al), Window Managers, Desktop Managers, and
> > applications. The irony is that SCO "owned" none of this technology,
> > and was only granted nonexclusive unlimited distribution licenses to
> > any of it.
>
> Why not just point to one of the very many Wikis available?
>
> http://en.wikipedia.org/wiki/Linux#Linux_and_the_GNU_Project

Good reference. As you point out, there are many Wikis out there, and
1.3 billion pages matching the word "Linux" on Google (compared to 2
billion for Microsoft).

The Linux kernel and the Linux distribution are tightly interrelated.
The Linux kernel requires the support of the distribution to be useful,
marketable, and supportable, and the Linux distribution depends on the
Linux kernel for compatibility, functionality, stability, security,
scalability, and performance.

When we refer to BSD Unix, we don't distinguish the kernel as separate
from the libraries.

When we refer to Solaris, we don't refer exclusively to the kernel.

When we refer to AIX, we aren't referring exclusively to the kernel.

Each of these environments are 99.999% identical, all using the same
core functions, including BSD libararies, GNU libraries, X11 toolkits,
and numerous other virtually identical components which have often been
released under multiple licenses, or licenses which permit
redistribution as GPL or Commercial components.

Where things do get interesting, is when you have fixes, patches, and
upgrades to one version, such as the GPL version, which cannot be
implemented by the commercial versions, without each commercial
distributor negotiating directly with the original author. The problem
is that the original authors aren't always so cooperative.

For example, when Apple and Microsoft tried to walk off with the PARC
Alto technology, Xerox got very upset that they were making so much
money from this technology and had made no arrangements to license the
technology. Xerox created the virtual desktop and got a patent on it
in 1992. They then offered to Open Source vendors under X11, but
refused to license it in terms attractive to Apple or Microsoft.
Microsoft attempted a poor imitation as part of the NT 4.0 toolkit, but
it was probably a violation of the patent, and was a poor imitation.

Lawrence D'Oliveiro

unread,
Aug 20, 2006, 10:13:43 PM8/20/06
to
In message <JsMFg.5035$bZ6....@tornado.tampabay.rr.com>, billwg wrote:

> Even the famous linux gurus agree that much of linux was
> lifted from freeBSD.

On the contrary in a fundamental sense, it would seem. *BSD is
microkernel-based, whereas Linus Torvalds has famously questioned the whole
point of microkernels, describing one well-known microkernel-based *BSD
derivative as "crap"
<http://news.com.com/Linux+founder+trashes+Mac+OS+X+foundation/2100-1040_3-255450.html>.

0 new messages