EditorsAbout the SiteComes vs. MicrosoftUsing This Web SiteSite ArchivesCredibility IndexOOXMLOpenDocumentPatentsNovellNews DigestSite NewsRSS

11.20.09

Why Windows Seems Like a Dead End

Posted in Microsoft, Vista 7, Windows at 9:48 am by Dr. Roy Schestowitz

Summary: Yesterday’s USENET post from Richard Rasker quoted verbatim

Subject: Windows 7’s dirty secrets revealed
From: Richard Rasker <spamtrap@linetec.nl> (Linetec)
Date: Thursday 19 Nov 2009 18:07:34
Groups: comp.os.linux.advocacy


An interesting look under the hood of Windows -- and in particular Vista 7:

http://www.theregister.co.uk/2009/11/18/windows_7_heart/

It would appear that quite a bit of criticism on the technical
implementation of Windows and the knowledge of Microsoft's programmers
actually isn't all that far off the mark:

- Criticism: Windows is such a convoluted mess that even Microsoft doesn't
understand it any more:

 "the operating system is full of internal dependencies, and as Russinovich
  admitted: "We don't really understand those dependencies".
  Engineers have added features to low-level APIs that assume the presence
  of dynamic link libraries (DLLs) that belong with higher level APIs, and
  when you try to extract just those low-level components, they break."

The upside here is of course that they're actually working on improving
things in this respect, even though I think that the *nix way of dealing
with libraries is far superior.

- Criticism: Windows depends heavily on dirty hacks to offer at least the
illusion of speed:

 "Microsoft has been in the habit of combining unrelated APIs into the same
  DLL for performance reasons."

and

 "Microsoft also picked out 300 common user actions, such as clicking the
  Start menu or opening Control Panel, and gave them intensive optimisation
  to improve perceived performance."

- Criticism: Windows encourages sloppy, messy programming:

 "How about reliability? This was fascinating. Microsoft observed that 15
  per cent of all user-mode crashes and 30 per cent of shutdown crashes were
  caused by heap corruption: applications that try to access freed memory,
  or memory beyond what is allocated. Its solution was a feature called the
  Fault Tolerant Heap (FTH).
  ...
  "The user gets better reliability at the expense of performance, which
  suffers by up to 15 per cent or so, while buggy applications work better
  than you would expect."

I really don't think that this is a good idea. If there's one way to make a
computer behave less predictable and perhaps make programmers lazy and
sloppy, it's to implement fault tolerance for software bugs.

Richard Rasker
Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • Reddit
  • co.mments
  • DZone
  • email
  • Google Bookmarks
  • LinkedIn
  • NewsVine
  • Print
  • Propeller
  • Slashdot
  • Technorati
  • TwitThis
  • Webnews
  • YahooMyWeb

If you liked this post, consider subscribing to the RSS feed or join us now at the IRC channel. To use your own IRC client, join channel #boycottnovell in FreeNode.

Pages that cross-reference this one

12 Comments

  1. David Gerard said,

    November 20, 2009 at 3:32 pm

    Gravatar

    This sort of thing is why I’m amazed Wine works so well. And why I’m not surprised Alexandre Julliard is *incredibly* fussy about what gets into Wine.

    Natasiel Reply:

    This remember me a post on Slashdot, and I have read it somewhere else too. As a sample example:

    Civilisation II has been released on Windows 3.11 then somewhere in the code, the application freed some memory. Due to a bug in Windows 3.11, the memory was not properly freed and Civilisation had to access this “not properly freed memory” to read some data. This bug has been fixed in Windows 95, but the proper fix broke Civilisation II. So, binary speaking, to keep backward compatibility, Windows 95 had a hack to verify if the calling application was civ2.exe before freeing memory.

    This is but one known of the many “features” inside the hidden Windows code. Wine has a better win32 API implementation than any Windows. Otherwordly, to be 100% compatible, Wine has to implement bugs.

    -Dominic

    David Gerard Reply:

    Yeah, that example was from Raymond Chen’s blog. Which everyone should read, because it’s a shining example of what ensuring backward compatibility means in the real world: http://blogs.msdn.com/oldnewthing/ Fantastic stuff.

    The problem is that if you buy Windows 95 and your old programs don’t work, you’re not going to blame the old program – you’re going to blame the new OS. So they have to do stuff like that. That’s the pain of selling an OS for proprietary software. With free software, people are used to recompiling – GNU/Linux has extremely bad backwards binary compatibility, because it doesn’t need it.

    Wine is so far resisting app-specific hacks (Crossover has a few, but the winehq tree doesn’t), but yeah, eventually it’ll have to implement them. At the moment it confines itself to accurately reproducing more general Windows bugs ;-) Test-driven development, no new features without a conformance test, etc.

    Roy Schestowitz Reply:

    That’s also why Microsoft can’t quite depart from x86.

    David Gerard Reply:

    Well, yeah. Backwards compatibility is the only reason to keep buying this stuff. Let’s duplicate Win32 on ARM! Uh, what? HORRIBLE programming interface.

    Yuhong Bao Reply:

    Get The Old New Thing book too. Among other things, it has an example where a journalist wrote a bad review on Win95. MS ended up calling in the journalist to investigate the bad review, and it turned that the journalist installed it via XCOPY, and not only that was unsupported, it caused a third-party control panel to hit an untested error path and crash due to a double-free. Also look at the comments on the Louderback review of Windows 7. It was obvious from the review itself that the problem that caused the bad review was the lack of drivers.

    Yuhong Bao Reply:

    Yea, in the Alpha NT days DEC had FX!32 and MS was going to create it’s own solution to run x86 Win32 apps too. BTW, guess why a solution to run x86 DOS and Win16 apps came with non-x86 NT but not x86 Win32 apps?

    Roy Schestowitz Reply:

    It was obvious from the review itself that the problem that caused the bad review was the lack of drivers.

    Vista architecture. See? That’s why it’s called Vista 7.

    Yuhong Bao Reply:

    “Vista architecture. See? That’s why it’s called Vista 7. ”
    Yes I know, but not the problem. MS do try to ensure driver backward compatiblity, XP and Vista drivers often do work in 7. It was mentioned in the comments, and by DaemonFC on IRC too when I was discussing why my old Palm device did not work on Vista.

    Roy Schestowitz Reply:

    So that’s the “post-Vista” era of Windows; still, leaving a trail of almost-obsolete binaries.

    Yuhong Bao Reply:

    What helped, I think, was the five-year gap between XP and Vista.

    Roy Schestowitz Reply:

    It’s not about duration.

What Else is New


  1. IRC: #boycottnovell @ FreeNode: March 20th, 2010

    IRC Log for March 20th, 2010



  2. Señor de Icaza Meets Other Microsoft MVPs

    José, Miguel, and other boosters of Microsoft Corporation have a get-together at the company's annual event



  3. SCO Roundup: SCO Group Receives a $2 Million Cash Infusion

    News from the SCO case, including a few major developments



  4. Novell Staff Shrank by ~10% and Hovsepian Allegedly Plays Hard to Get With Elliott Associates

    It's rutting season for Novell's Ron Hovsepian and Elliott Associates' Singer as the company keeps diminishing but wants to be valued more generously



  5. Novell News Summary - Part III: Clarifications from Elliott Associates, Hosted Conferencing, and BrainShare 20TEN

    Elliott Associates still insists that Novell will stay in tact; Utah prepares for the annual Novell pilgrimage



  6. Novell News Summary - Part II: IBM, Novell, SUSE Appliances, and Ingres

    News about SLES, especially as an appliance but also as a server that IBM commonly uses



  7. Novell News Summary - Part I: FLISOL 2010, Linux Tage 2010, and OpenSUSE 11.3 Milestone 3

    Another restful week for "Geeko" and some news from events that featured OpenSUSE



  8. Patents Roundup: Android/Linux Defended by HTC; Monsanto and Ghana

    News about patents where the system has gone awry (the Apple-HTC case and GMO in Africa)



  9. Microsoft and Its Front Group, Association for Competitive Technology (ACT), Organise Software Patents Lobby Events in Europe

    The Microsoft PR effort to marginalise or illegalise Free software overseas carries on quietly (using proxies, as usual)



  10. Microsoft MVP de Icaza: Microsoft “Shot the .NET Ecosystem in the Foot” Because of Patent Threats

    Despite awakening and realisation of the obvious, Novell carries on promoting and spreading .NET, knowing damn well the consequences for others



  11. Links 19/3/2010: Google’s TV Project, OpenOffice.org Turning 10, OSBC

    Links for the day



  12. IRC: #boycottnovell @ FreeNode: March 19th, 2010

    IRC Log for March 19th, 2010



  13. Novell Hires More Mono People (Despite Sacking SUSE Developers) and Microsoft Buys an OSBC Spot/Seat

    Novell and Microsoft continue to fund development with the desired bias of using Microsoft APIs; Microsoft pays for its share of OSBC (again) and gets to set the tone with a keynote speech



  14. Patents Roundup: Europe, ACTA, Aldi Attacked by the MPEG Cartel, and More

    Europe's policy on software patents and the ACTA factor; the MPEG patent pool turns out to be not much of a sleeping giant but an awake one; patents relating to cancer genes continue to needlessly cost lives



  15. Linux is Not Against Software Patents (and Why Linus Torvalds Should Speak Up)

    An inconvenient truth about the Linux Foundation is brought up again now that Linux is attacked with software patents that are named



  16. Microsoft Sued by VirnetX (Again) and Kodak Alleges That Microsoft's Patent Troll Bullies Companies Along With Ray Niro

    Intellectual Ventures is said to be attacking companies using its proxies and Microsoft suffers the wrath of the very practice it advocated with investments (patent trolling)



  17. Democracy is Not the Same as Freedom

    People have lost track of real mistakes that Canonical is making and instead they focus on buttons and themes



  18. Amazon and Dell: Friends or Foes of GNU/Linux?

    What Amazon does not want to tell us about software patents in its recent deal with Microsoft; more reasons to suspect that Dell pays Microsoft for Ubuntu GNU/Linux



  19. Unsolicited Mail from Microsoft Canada Wants Developers to Create/Increase Government's Windows Lock-in

    Microsoft wants volunteers to help their countries become hostages of Redmond



  20. Elinor Mills Finally Calls Out Windows

    CNET's (CBS) Elinor Mills, who improved her coverage by naming Microsoft and Windows as part of the problem, deserves some credit



  21. Links 18/3/2010: Steam and Linux; Red Hat's CEO Talks

    Links for the day



  22. IRC: #boycottnovell @ FreeNode: March 18th, 2010

    IRC Log for March 18th, 2010



  23. Former Microsoft Employees and Boosters Call Microsoft MVP Miguel de Icaza and Other Microsoft Apologists “Most Powerful Voices” in Open Source

    Microsoft folks have decided on 'our behalf' who is important to Open Source and who is not



  24. Magalhães + Microsoft = Corruption

    Microsoft accused of blocking GNU/Linux and more leaks about this scandal are high in demand



  25. Open Irony: Microsoft Creates/Sponsors OpenMainframe.org to Attack GNU/Linux

    War is peace and Microsoft is the new "open"; Details on the latest attack of Microsoft against GNU/Linux, using proxies



  26. Microsoft Brings MPEG-LA-LA Land to the Web and Threatens GNU/Linux With Software Patent Lawsuits

    Microsoft is trying to sneak patents-encumbered MPEG formats into the Web using Internet Explorer 9 (IE 9); Microsoft threatens (again) to go after Linux legally



  27. IMAX -- Not Just Apple -- Attacks Free Software With Software Patents

    Another legal attack against Free software comes in the form of a threat (issued against Sandy3D) and Apple's reason for suing Android seems like gradual iPhone defeat (Linux is winning)



  28. Links 18/3/2010: Many IBM Headlines, Mandriva Enterprise Server 5.1

    Links for the day



  29. IRC: #boycottnovell @ FreeNode: March 17th, 2010

    IRC Log for March 17th, 2010



  30. Microsoft -- Like Gates Foundation -- Still Uses Own 'Studies' for PR and Lobbying Purposes

    Some of Microsoft's latest 'studies' (from the past week) are looked upon more closely for their true purpose to be understood


RSS 64x64RSS Feed: subscribe to the RSS feed for regular updates

Home iconSite Wiki: You can improve this site by helping the extension of the site's content

Chat iconIRC Channel: Come and chat with us in real time

Recent Posts