back to article Linus looses Linux 4.3 on a waiting world

With fewer ugly incidents than might have been expected, and after an expletive-laden rant directed not at a coder but at code, Linux Torvalds has announced that Linux 4.3 has gone general availability. His note to the Linux Kernel Mailing List note that most of the changes from release candidate 7 were dominated by changes to …

  1. This post has been deleted by a moderator

    1. RIBrsiq

      Professor Tanenbaum, in '92: "Of course 5 years from now that will be different, but 5 years from now everyone will be running free GNU on their 200 MIPS, 64M SPARCstation-5."

      So prescient! It's like he had a time machine!!

      None of the deluge of downvotes is from me, BTW. For what it's worth, I personally agree that drivers probably don't belong inside a kernel. But I know next to nothing about kernel design, so I would be the first to disregard my opinion on the matter.

      1. Daniel Palmer

        >that drivers probably don't belong inside a kernel

        Stuff like GPU drivers have a kernel component and a userspace component in a lot of cases so it's not true that "GPU drivers are in the kernel" unless all you are thinking about are dumb framebuffer devices.

    2. Anonymous Coward
      Anonymous Coward

      Sorry, but I don't understand your rant. Firstly you are going on about OS requiring kernel updates to handle new hardware, and then you exclaim about the ability of Windows 7 to recover from faults in poorly written and inadequately tested device drivers. The two issues are <u>not</u> connected in any way.

      In fact Windows 7 does need updates in order to support new hardware. This is not done by MS of course (they do not dirty their hands writing device drivers) but by the hardware manufacturers through the release of update drivers. So your first argument is looking a bit shaky.

      Regarding the use of microkernels, subsequent research has identified quite a few problems with them largely due to the increased data transfer overheads associated with moving larger volumes of low-level information between user-space and kernel-space (the amount of information that moves between user-space and kernel-space in a monolithic kernel can be very low - examine the source of the GLIBC libraries if you want evidence for that). Basically this means that an OS based on a micro-kernel will less efficient than an OS based on a monolithic kernel for most hardware platforms (there are exceptions of course, but these tend to be experimental or highly-specialised platforms).

      It is important to note that no mainstream OS (which I define as those commonly used in the commercial world) are based on microkernel architectures; they all use monolithic kernels (with or without loadable module support). Microsoft tried to use a microkernel architecture in NT3, but it provided such a big failure that they abandoned that approach and went back to the drawing board.

      BTW, Windows 7 uses a monolithic kernel architecture which is essentially the same as Linux. The difference is MS that device drivers are typically implemented in DLLs; unfortunately DLLs span the kernel-space/user-space boundary which means they introduce all sorts of security headaches which non-one (including MS) has managed to resolve. In fact it can be argued that DLLs are the main reason that Windows is so vulnerable to viruses et al. There are arguments for saying that Linux kernel modules are similar to DLLs, however it is important to note that kernel modules operate completely in kernel-space, and do not intrude into user-space.

      1. david 12

        >"In fact Windows 7 does need updates in order to support new hardware. This is not done by MS of course (they do not dirty their hands writing device drivers) but by the hardware manufacturers through the release of update drivers"

        WTF? MS writes many important / default device drivers, and all the model / framework device drivers.

        And many (but not all) device driver updates written by hardware manufacturers are provided by MS through MS update,

        When win7 was first released, one of the things enterprise users liked about it (compared to XP) was the higher level of support from MS for driver installation and update.

      2. patrickstar

        Not that it matters much, but:

        Windows drivers (.SYS files) are kernel-mode shared-objects, i.e. PE DLL files

        Linux drivers (.ko files) are kernel-mode shared-objects, i.e. ELF SO files

        The APIs and file formats are different ofcourse, but there is no conceptual difference; .SYS files are loaded entirely in kernel mode just like .ko files, to fill the same function. I have, in fact, read the source doing that in both Windows and Linux and can confirm that they do the same thing for all practical purposes.

        Maybe you are confusing it with the user-mode driver framework in Windows, where the drivers are standard user-mode DLL files loaded into WUDFHOST. That would be roughly comparable to something like the user-mode filesystem support in Linux.

        Finally, NT has never been a true microkernel and apart from the move of the Win32 subsystem from userland (CSRSS) to kernel mode in NT4 (which is, again, what you might be thinking of), hasn't undergone any change making it more or less of one since the days of NT OS/2 (i.e. before NT3, the first release). To be pedantic it does have a microkernel-like division into subsystems with specific purposes, but it has always been running entirely in ring 0 (or whatever the equivalent was on the CPU NT was originally developed for, N-Ten).

  2. MacroRodent Silver badge


    Note that ext3 file system support was not removed, because the ext4 code can also handle the older file system automatically. There is a good description of the issue here:

  3. MrWibble

    I've been reading too many internet comments - I read the headline as "loses", and got confused.

    1. cambsukguy

      Easily done when everybody seems to think that lose is spelled loose these days.

      1. Michael H.F. Wilkinson

        Confusion can be a real problem. Confusing the order "loose the dogs" with "lose the dogs" could have bad consequences for the canine companions, especially in certain shady circles

      2. Wilseus

        "Easily done when everybody seems to think that lose is spelled loose these days."

        Not everybody. Only illiterate morons.

        1. Desidero

          And my Android autocorrect spelling. Some of the mistakes are truly ambitious - far more than a mere moron could aspire to.

        2. Anonymous Coward
          Anonymous Coward

          Illiterate morons can't spell much at all. I suspect they'd say "I don't know. Hang on. Siri, how do you spell lose?"

          Oh, yes, topic. Hooray, a new kernel.

  4. CFWhitman

    Mispellings and binary interfaces

    The problems with people spelling "lose" wrong are compounded by the fact that even if they know how to spell it, and just made a typo and wrote "loose" instead, it's still a correct word and so doesn't get flagged by a spell checker. Still, I'm astounded by how often I see that error. They can't all be typos.

    I imagine the rant about Linux drivers (though I didn't actually see it) was intended to be an attack on the fact that the binary interface for kernel modules (and thus drivers) is not frozen and can change. Thus people can't write a driver and have it continue to work indefinitely after kernel updates. The poster was assuming that this had something to do with the kernel being monolithic and drivers being modules. That's not actually the case.

    Some would like to see a frozen binary interface for drivers. However, Linus sees a frozen binary interface as a bug rather than a feature. This is certainly true if you want the kernel to be portable between architectures. If a frozen binary interface for drivers were supported, then Linux could end up being very dependent on whatever platform it was most popular on. This is out of line with the goals of kernel developers. There will be no frozen binary interface for drivers, and that's a good thing. That way Linux can work not only on x86, but also on ARM, MIPS, Power, etc. with the least amount of developer effort necessary.

    1. phil dude

      Re: Mispellings and binary interfaces

      in principle, the binary interface could a be separate component. I mean, assuming you had some way of indicating the arguments would be interpreted correctly.

      I had this thought when I first used C++ overloading at school.

      What else are we going to use our faster chips on other than template compilation!!!!


  5. Richard Lloyd

    Loose can mean to release or to set free...

    ...but it's normally used in the context of an object that's tied up tight in the first place and I'd probably use "loosens" myself anyway. I don't think you can use the word to refer a kernel that's already gone through several RC versions, because that's hardly tied up or tight :-)

  6. Anonymous Coward
    Anonymous Coward

    inspirational stuff...

    Lots of small fixes and a bunch of new drivers. Wow. Just wow.

    Lets all collectively gush over the moral and technical superiority of Linux, and renew our fist-shaking efforts at any that dare consider using an alternative (especially Windows 10)

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Biting the hand that feeds IT © 1998–2022