:: Re: [Dng] FW: Devuan commitments - …
Top Page
Delete this message
Reply to this message
Author: Jude Nelson
Date:  
To: T.J. Duchene
CC: dng@lists.dyne.org
Subject: Re: [Dng] FW: Devuan commitments - will trade-off be applied?
> What X really needs is to be gutted: a complete rewrite, while providing a
> compatibility layer for X11. Rather than do that, the Linux crowd chose

to go
> with Wayland, which could be described as much the same thing. Fair
> enough, and even reasonable. At least it would be, except for the fact

that
> Wayland is designed to work only on KMS, which makes it dependent on
> Linux. (Deliberate sarcasm: what a shock.)


Wayland is basically just that--a complete rewrite of X, built around
design requirements that were not present when X11 was designed. Think of
Wayland as X12, and think of Xwayland as the X11 compatibility layer.

Also, userspace mode setting these days is a racy prospect at best that is
incredibly difficult to coordinate without the kernel's help. This is
because the sequencing of low-level hardware events from contemporary video
devices (i.e. DMA, power changes, suspend/resume, external displays) can
interfere with the sequence of user mode setting ioctl()'s to the point
where the state of the video hardware can easily get out-of-sync with
userspace's understanding of it, causing userspace to issue ioctls that
leaving you with a locked-up display. The kernel *should* be handling
mode-setting requests these days, because only the kernel is in a position
to correctly sequence mode-setting requests with ongoing low-level hardware
events (such as by blocking or deferring the relevant hardware interrupts).

This isn't a Linux-only thing, by the way. All the BSDs have or (in
NetBSD's case) will soon have KMS enabled by default. Windows NT has had
it for decades.

> I say this with respect, but I think you are dreaming, Diedler. That

spirit of
> KISS is dying with the minority of the "old school UNIX" and Linux is
> becoming something completely unrecognizable. In another decade or so,

I
> do not expect Linux to be compatible with anyone else. Another example

is
> GTK. It is being "molded" around Gnome 3's needs, and has subsequently
> been abandoned by projects who switch to Qt. Right now, Linux userspace

is
> being "molded" around systemd.


KISS is not dying. What OS researchers have discovered is that KISS and
DOTADIW are actually very, very, very hard to get right. It's *easy* to
write a ball of mud--I was doing that since I was 12 years old, on TI
graphing calculators no less. It's hard to write software that is
functionally decomposed into independent, interchangeable, reusable
modules, because it's not clear what factorization will lead to future
reusability (even for short time horizons). It's even harder to do so when
you're on a budget or deadline, where adding layering violations and
unnecessarily coupling in order to get a product shipped on time is
preferable to designing it right, because missing the deadline means you're
not getting paid (i.e. capitalistic software development works against
sound design).

-Jude

On Mon, Mar 23, 2015 at 2:16 PM, T.J. Duchene <t.j.duchene@???> wrote:

>
>
> > > >
> > >      True. This description of the project contains already a lot of
> > > the ideas we are shaking on the list.

> > >
> > >      There are still concerns about the fact that some of the software
> > > we use are big hairballs and enforce technical lock-ins. Eg. the Linux
> > > kernel and the X- Window system.

>
> This is going to be a bit of a rant, and while I think it is "on topic",
> some might
> not. I'm old school UNIX: VAX, Solaris, Digital and so on. Linux is
> nice, but it
> really is just the "Johnny-come-lately" as they used to say. When I make
> these comments about Linux, please understand where I am coming from.
>
>
> What you are describing to me, is the ham-fisted attitude of Linux, that
> Linux
> is somehow self-contained, and not part of a larger whole. Everyone else
> can be damned. There is a lot of resistance to the "old guard" notion that
> Linux should follow any standard beyond its own. Linux does not care about
> portability anymore.
>
> The whole X/Wayland thing is yet another example. No one in their sane
> mind denies that X isn't a total (bleep) disaster. The source code is
> such a
> mess that not even the people who maintain it can unscramble it, and that
> is
> not exaggerating. There are blocks of code that no one knows why they
> were added, but if they are removed it breaks compatibly with things. A
> lot
> of the screen rendering is out of date and very slow. That is why DRI was
> added. DRI bypasses a lot of the cruft to render things directly, but
> since the
> core of X is essentially network transparent, you are still wasting a lot
> of
> overhead on network calls that could be done far more efficiently if X were
> redesigned.
>
>
> What X really needs is to be gutted: a complete rewrite, while providing a
> compatibility layer for X11. Rather than do that, the Linux crowd chose
> to go
> with Wayland, which could be described as much the same thing. Fair
> enough, and even reasonable. At least it would be, except for the fact
> that
> Wayland is designed to work only on KMS, which makes it dependent on
> Linux. (Deliberate sarcasm: what a shock.)
>
>
> > There's also the issue of non-free binary blobs, like
> > > proprietary firmwares and drivers. We must accept some of these for
> > > the sake of having a working OS.
>
> On that we agree. The simple fact of the world is that even if someone
> like
> NVidia or AMD WANTS to make a completely open driver, they can't. The
> video cards use technology that has been licensed from someone else, and
> those license agreements prevent them from disclosing all of the details
> needed to make a driver that works as well as the blobs. The only way to
> get
> around that would be to get legal consent from all parties, and that is
> not
> going to happen. It's a shame that the patent system works as it does,
> but
> that is life. As for the Linux fans who demand completely open drivers,
> they
> are going to have a very long wait: probably on the order of 20 years for
> the
> patents to expire.
>
> > >
> > >      BUT, everywhere there is choice, the solution(s) in the spirit of
> > > KISS and UNIX shall be preferred and the others rejected. Only when we
> > > haven't the choice will we install the non-KISS/non-UNIX.

> > >
> > >      For the moment, the only replacement for X-Window, Wayland is
> > > certainly also a big hairball; this may simply mean that it can't be
> > > otherwise. Same for the Linux kernel.

> > >
> > >      But for system startup/shutdown and service supervision, there's
> > > a host of solutions. This also means systemd violates KISS and UNIX
> > > not by necessity but either by inconsideration or by intention.

>
> I say this with respect, but I think you are dreaming, Diedler. That
> spirit of
> KISS is dying with the minority of the "old school UNIX" and Linux is
> becoming something completely unrecognizable. In another decade or so, I
> do not expect Linux to be compatible with anyone else. Another example
> is
> GTK. It is being "molded" around Gnome 3's needs, and has subsequently
> been abandoned by projects who switch to Qt. Right now, Linux userspace
> is
> being "molded" around systemd.
>
> While init systems like systemd are arguably not covered by POSIX,
> following
> an interface standard is the only way to prevent source code from being
> tied
> to things like systemd. Unfortunately, no one seems to consider that a
> benefit. More than once, I've heard calls for Linux to completely
> abandon
> POSIX in favor of doing its own thing. To me, that sounds exactly like
> the
> same arguments that Microsoft used to make regarding Windows when they
> backed out of the POSIX standard in 2000. We all know what happened
> there: code lock-in. How the wheel turns. Linux has become its own worst
> enemy, because it has become too successful, just as Microsoft once did.
>
> I would have a lot less objection to a lot of what the majority of the
> Linux
> community does if they would learn to play nice, with everyone else and
> just
> work with POSIX rather than think that they can ignore it all the time.
>
> T.J.
>
>
> _______________________________________________
> Dng mailing list
> Dng@???
> https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
>