Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Windows Businesses Microsoft Open Source Operating Systems Linux

Microsoft Developer Explains Why Windows Kernel Development Falls Behind 347

New submitter mha writes "In a response that truly seems to be from a core Microsoft developer, we are told about why Windows kernel development continues to fall further and further behind that of the Linux kernel. He says, 'The cause of the problem is social. There's almost none of the improvement for its own sake, for the sake of glory, that you see in the Linux world. ... There's no formal or informal program of systemic performance improvement. We started caring about security because pre-SP3 Windows XP was an existential threat to the business. Our low performance is not an existential threat to the business. See, component owners are generally openly hostile to outside patches: if you're a dev, accepting an outside patch makes your lead angry (due to the need to maintain this patch and to justify in in shiproom the unplanned design change), makes test angry (because test is on the hook for making sure the change doesn't break anything, and you just made work for them), and PM is angry (due to the schedule implications of code churn). There's just no incentive to accept changes from outside your own team. You can always find a reason to say "no," and you have very little incentive to say "yes."'"
This discussion has been archived. No new comments can be posted.

Microsoft Developer Explains Why Windows Kernel Development Falls Behind

Comments Filter:
  • NTFS (Score:5, Informative)

    by wallyhall ( 665610 ) on Saturday May 11, 2013 @12:44PM (#43695783) Homepage
    "Oh god, the NTFS code is a purple opium-fueled Victorian horror novel [...]" -- lol!
  • by Anonymous Coward on Saturday May 11, 2013 @01:04PM (#43695925)

    The link's gone from HN, but it's still up here:

    http://blog.zorinaq.com/?e=74 [zorinaq.com]

  • Re:Keeping people. (Score:4, Informative)

    by loufoque ( 1400831 ) on Saturday May 11, 2013 @02:37PM (#43696461)

    C++ is made by a standards committee mostly composed of industrials and a couple of academics.
    The features that are added are added due to demand of members of the committee.

    There are at least two major people on the committee that are from Microsoft.

  • by Error27 ( 100234 ) <error27.gmail@com> on Saturday May 11, 2013 @03:54PM (#43696979) Homepage Journal

    I am a fairly active linux contributor. I have patches all over the kernel tree. I also review drivers/staging code.

    Most of the patches that I send are things that I cannot test because I don't have the hardware. Even though I'm careful, there are still a few times where I have introduced bugs. The most recent example was code like this "if (!attributes & 0x4000)". That has a precedence bug so the condition is always false. Unfortunately changing it to "if (!(attributes & 0x4000))" disabled certain graphics card. The correct thing was to delete the condition.

    Breaking stuff is just a part of development, you try your best but don't let fear of breaking things stop you from applying patches.

    Probably over 5% of the 10,000 patches in every new kernel are cleanups. We're always merging API changes and unlike Microsoft we don't care if it affects out of tree drivers. There isn't any subsystem where the owner says, "This code is stable now and I'm only accepting actual bug fixes."

    The other thing that helps is the short release cycle. If something does break, it's easy to fix.

    Some people find linux development frustrating. One developer told me, "Ever since XXX took over the YYY subsystem he has been constantly changing the API and re-writing my code. Does he ever sleep? I don't know how anything works any more."

    It's hard on reviewers as well. I have reviewed literally over 3000 cleanup patches to the comedi subsystem. I have mornings when I feel lazy and it doesn't fill me with joy to see 40 new cleanup patches in my inbox. The process is expensive.

    But I do feel a great deal of pride in the work.

  • by transporter_ii ( 986545 ) on Saturday May 11, 2013 @06:50PM (#43698009) Homepage

    My understanding is this can be turned off. It is less Windows and more Windows Defender:

    "Windows 8, set for release on 26 October, automatically deletes entries in the HOSTS file for specific domains. Try, for example, to prevent attempts to access Facebook.com, Twitter.com or ad servers such as ad.doubleclick.net by rerouting them to 127.0.0.1 by adding entries to the HOSTS file and the relevant entries will soon disappear from the HOSTS file as if by magic, leaving nothing but an empty line."

    This behavior is due to Windows Defender in Windows 8 thinking it has discovered malicious modification of the Hosts file. Windows Defender is enabled by default in Windows 8. Users who would like to continue using the Hosts file as a simple, albeit effective method of blocking certain sites, can do so by adding the Hosts file to Defender's exceptions list. Of course, that means that Defender will never be able to notice any actual malicious changes to the Hosts file.

    Windows 8 seems to be rather prejudicial about which entries in the Hosts file Defender will automatically delete. It automatically deletes Twitter, Facebook, doubleclick and other ad sites but other domains such as "heise.de" it leaves intact.

    www.h-online.com/security/news/i927.html

  • by saleenS281 ( 859657 ) on Saturday May 11, 2013 @09:55PM (#43699171) Homepage
    Great rant, except that over 75% of the Linux code contributed is contributed by paid corporate employees that are simply doing their job. They aren't contributing because they love the code and doing it of their own free will and volition. They're doing it to put food on the table just like MS employees are. They may or may not love coding and love their job just like MS employees. Working on open source doesn't mean you love open source or that you love coding. Correlation != causation.
  • by Voline ( 207517 ) on Saturday May 11, 2013 @10:28PM (#43699393)

    Great rant, except that over 75% of the Linux code contributed is contributed by paid corporate employees that are simply doing their job.

    Supporting evidence for this assertion:

    "It is worth noting that, even if one assumes that all of the “unknown” contributors were working on their own time, over 75% of all kernel development is demonstrably done by developers who are being paid for their work."

    Corbet, Jonathan, Greg Kroah-Hartman, and Amanda McPherson. Linux Kernel Development: How Fast it is Going, Who is Doing It, What They are Doing, and Who is Sponsoring It [linuxfoundation.org] . San Francisco: Linux Foundation, March 2012. 9.

  • Re:NTFS (Score:5, Informative)

    by Yvanhoe ( 564877 ) on Sunday May 12, 2013 @02:01AM (#43700345) Journal
    You don't seem to understand that the problem is not with Windows, Linux, Microsoft or Torvalds, but about the driver developers.

    Driver developers target Windows. Period. Windows does not develop the ATI driver, the Nvidia driver, provides just a stack for developing the thousands of wireless drivers out there.

    If you had a clue about what you are talking about, you would see that driver interfaces in linux are good, are working, are really good to develop with. They are documented, they do change at a pace that's much less insane than Windows'.

    Every hardware that does work at all under linux (and honestly, I had more luck with linux in recent times when installing new drivers or usb camera than windows) works because someone in the OSS world wrote a driver for it. This work is not done by Microsoft for windows, so don't compare apples and oranges.

    If you want to shout against someone for the lack of graphical cards driver support (that must be it, because, seriously, wireless and sound have been working correctly for ages on most hardware) you will have to shout at ATI and NVidia. The binary blobs you are probably referring to are made by them, not by anyone in the kernel develoment team. And yes, they often break, they often have unfixed bugs. Preferentially shout a bit more at NVidia because while ATI doesn't open source its driver, it at least opens its specifications and allows the OSS driver developer to at least not code blindfolded.
  • Re:NTFS (Score:4, Informative)

    by something_wicked_thi ( 918168 ) on Sunday May 12, 2013 @03:32PM (#43703407)

    Funny that when I upgraded my laptop from Windows 7 to Windows 8, the video stopped working, as did the accelerometer, and the bluetooth controller. Fixing the drivers required completely uninstalling all video drivers and reinstalling them. Even now, I've been unable to upgrade the video drivers in that computer past that one version I have working because new drivers cause it to BSOD.

    And then, masochist that I am, I upgraded my desktop computer. The sound didn't work anymore. Popped the sound card out and plugged it into my Linux desktop. Wouldn't you know, it worked fine. Reinstalled the driver. No go. Some people claim it's a problem with SoundBlaster sound card drivers on a machine that has a flash hard drive. But apparently it worked fine in Windows 7. I ended up having to use the built-in sound on that computer.

    None of this is to say that Linux is perfect and Windows is horrible. All in all, I've had more weird-ass hardware problems on Linux. But Windows is definitely not the panacea you make it out to be. I remember even as far back as upgrading from Windows 98 to Windows XP, the video card I had at the time didn't work at all on the new OS. There's a reason Microsoft publishes tools for checking if new versions of Windows will work with your hardware and software. It's because their shit stinks, too.

"Gravitation cannot be held responsible for people falling in love." -- Albert Einstein

Working...