Live data from Hacker News

Xv6, a simple Unix-like teaching operating system

pdos.csail.mit.edu

51–60 of 100 posts

Re: Xv6, a simple Unix-like teaching operating system

#51
post #12

Why Unix v6? Why teach with a 50 years old design? I feel to teach the fundamentals of an operating system, i.e. scheduling, IPC, address space management, a microkernel design would be better.

Because it doesn't really matter. Processor design hasn't changed much in its fundamentals. KISS. Just KISS.

Re: Xv6, a simple Unix-like teaching operating system

#53
post #12

Why Unix v6? Why teach with a 50 years old design? I feel to teach the fundamentals of an operating system, i.e. scheduling, IPC, address space management, a microkernel design would be better.

> Why teach with a 50 years old design?

> a microkernel design would be better.

why re-hash a 30 year old debate? [0]

0: https://en.wikipedia.org/wiki/Tanenbaum%E2%80%93Torvalds_deb...

Re: Xv6, a simple Unix-like teaching operating system

#54
post #32
post #29

Earlier quoted context omitted.

Actually, z/OS (descendant of System/370) is more microkernel than Linux is. But the problem with microkernels is similar to the problem with microservices - you have to make the executive decisions somewhere, and that unfortunately ends up being the bulk of "business logic" that the OS does. In theory, I like the concept of functional core, imperative shell - the imperative shell provides various functions as a kind…

i admit to not being very familiar with the current version of os/360; can you elaborate? btw, when you say 'z/OS (descendant of System/370)', i think you are confusing hardware and software; system/370 was the hardware (obsolete), os/360 the software (sadly, not obsolete; later renamed os/370, mvs, and z/os in a series of increasingly desperate attempts to escape its reputation) generally the functional/imperative c…

Ah, sorry for the inaccuracies. I mean MVS as a predecessor of z/OS, of course.

What I mean by functional core/imperative shell is similar to what you mean by (the "kernel" is the "imperative shell" and the "userspace" is the "functional core"):

"for the most part operating systems design is an exercise in delegating as much as possible of those 'executive decisions' to userspace. 'mechanism, not policy' is the mantra for kernels and for system software in general, including things like device drivers and window servers"

And z/OS does that a lot, much more than Linux. On a typical z/OS, many of the functions that would be normally running inside Linux kernel are running in a separate address spaces, with limited authority.

But the intractable problem IMHO is, to decide the policy, you still need the authority to do so (you need to be able to invoke the commands to the kernel), so you can still wreak havoc in the system.

Re: Xv6, a simple Unix-like teaching operating system

#56

I have ways wanted to understand the Windows NT kernel -- maybe the earlier versions as they are simpler. I heard the first version is close to VMS. Is it true? Is there any material on VMS? OpenVMS is open sourced but the version is too high.

Huh? OpenVMS was open sourced?

Re: Xv6, a simple Unix-like teaching operating system

#57
post #38
post #12

Why Unix v6? Why teach with a 50 years old design? I feel to teach the fundamentals of an operating system, i.e. scheduling, IPC, address space management, a microkernel design would be better.

That is how we end with students always cloning UNIX on their projects, instead of going alternative roots like Redox or SerenityOS.

GNU/Hurd it's interesting. It replicates Unix, but it gives far more power to the user.

Re: Xv6, a simple Unix-like teaching operating system

#58
post #42

Earlier quoted context omitted.

You right, it is run by a pile of containers in Kubernetes clusters, on top of type 1 hypervisors. The irony.

And? What's wrong with k8s and containerized setups? Linux evolved numerous features over the years responding to server room challenges. Some of them look monolithic, others are decomposable, in any case linux became the default dev target platform for everything. Minix might be nice, but linux has won, and it was NEVER about os architecture.

Because it is travesty of what is effectively a microkernel architecture.

A free beer UNIX clone won, that is quite different than any technical advantages.

Even Android does the same with Binder IPC, since Project Treble.

Re: Xv6, a simple Unix-like teaching operating system

#59
post #57
post #38

Earlier quoted context omitted.

That is how we end with students always cloning UNIX on their projects, instead of going alternative roots like Redox or SerenityOS.

GNU/Hurd it's interesting. It replicates Unix, but it gives far more power to the user.

Interesting are systems like Xerox PARC Workstations (Mesa, Cedar, Smalltalk, Interlisp-D), ETHZ Oberon, Inferno, Apollo/Domain, Tru64, QNX.

Re: Xv6, a simple Unix-like teaching operating system

#60
post #58

Earlier quoted context omitted.

And? What's wrong with k8s and containerized setups? Linux evolved numerous features over the years responding to server room challenges. Some of them look monolithic, others are decomposable, in any case linux became the default dev target platform for everything. Minix might be nice, but linux has won, and it was NEVER about os architecture.

Because it is travesty of what is effectively a microkernel architecture. A free beer UNIX clone won, that is quite different than any technical advantages. Even Android does the same with Binder IPC, since Project Treble.

Android, SteamOS, WebOS and all the numerous Linux-based projects, mostly show that the world needs a stable target platform everybody can do a meaningful contribution to (and then make sure nobody steals the work later).

Linux literally ate the world with its POSIX-compatible open-source proposition. I don't have a single device without Linux at home, and this includes a NAS, 5 notebooks, 1 PC, a handheld gaming console, my TV, a bunch of mobile phones, a washing machine.

The world just couldn't care less if it is a microkernel, a hybrid or a monolithic kernel. Like you said, it's not about some boring technical advantages, and it never was.

Post reply on HN