11.20.09

Gemini version available ♊︎

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 in other sites/networks: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Reddit
  • email

Decor ᶃ Gemini Space

Below is a Web proxy. We recommend getting a Gemini client/browser.

Black/white/grey bullet button This post is also available in Gemini over at this address (requires a Gemini client/browser to open).

Decor ✐ Cross-references

Black/white/grey bullet button Pages that cross-reference this one, if any exist, are listed below or will be listed below over time.

Decor ▢ Respond and Discuss

Black/white/grey bullet button If you liked this post, consider subscribing to the RSS feed or join us now at the IRC channels.

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.

DecorWhat Else is New


  1. No More Twitter, Mastodon, and Diaspora for Tux Machines (Goodbye to Social Control Media)

    People would benefit from mass abandonment of such pseudo-social pseudo-media.



  2. Links 28/05/2023: New Wine and More

    Links for the day



  3. Links 27/05/2023: Plans Made for GNU's 40th Anniversary

    Links for the day



  4. Social Control Media Needs to be Purged and We Need to Convince Others to Quit It Too (to Protect Ourselves as Individuals and as a Society)

    With the Tux Machines anniversary (19 years) just days away we seriously consider abandoning all social control media accounts of that site, including Mastodon and Diaspora; social control networks do far more harm than good and they’ve gotten a lot worse over time



  5. Anonymously Travelling: Still Feasible?

    The short story is that in the UK it's still possible to travel anonymously by bus, tram, and train (even with shades, hat and mask/s on), but how long for? Or how much longer have we got before this too gets banned under the false guise of "protecting us" (or "smart"/"modern")?



  6. With EUIPO in Focus, and Even an EU Kangaroo Tribunal, EPO Corruption (and Cross-Pollination With This EU Agency) Becomes a Major Liability/Risk to the EU

    With the UPC days away (an illegal and unconstitutional kangaroo court system, tied to the European Union in spite of critical deficiencies) it’s curious to see EPO scandals of corruption spilling over to the European Union already



  7. European Patent Office (EPO) Management Not Supported by the EPO's Applicants, So Why Is It Still There?

    This third translation in the batch is an article similar to the prior one, but the text is a bit different (“Patente ohne Wert”)



  8. EPO Applicants Complain That Patent Quality Sank and EPO Management Isn't Listening (Nor Caring)

    SUEPO has just released 3 translations of new articles in German (here is the first of the batch); the following is the second of the three (“Kritik am Europäischen Patentamt – Patente ohne Wert?”)



  9. German Media About Industry Patent Quality Charter (IPQC) and the European Patent Office (EPO)

    SUEPO has just released 3 translations of new articles in German; this is the first of the three (“Industrie kritisiert Europäisches Patentamt”)



  10. Geminispace Continues to Grow Even If (or When) Stéphane Bortzmeyer Stops Measuring Its Growth

    A Gemini crawler called Lupa (Free/libre software) has been used for years by Stéphane Bortzmeyer to study Gemini and report on how the community was evolving, especially from a technical perspective; but his own instance of Lupa has produced no up-to-date results for several weeks



  11. Links 27/05/2023: Goodbyes to Tina Turner

    Links for the day



  12. HMRC: You Can Click and Type to Report Crime, But No Feedback or Reference Number Given

    The crimes of Sirius ‘Open Source’ were reported 7 days ago to HMRC (equivalent to the IRS in the US, more or less); but there has been no visible progress and no tracking reference is given to identify the report



  13. IRC Proceedings: Friday, May 26, 2023

    IRC logs for Friday, May 26, 2023



  14. One Week After Sirius Open Source Was Reported to HM Revenue and Customs (HMRC) for Tax Fraud: No Response, No Action, Nothing...

    One week ago we reported tax abuses of Sirius ‘Open Source’ to HMRC; we still wait for any actual signs that HMRC is doing anything at all about the matter (Sirius has British government clients, so maybe they’d rather not look into that, in which case HMRC might be reported to the Ombudsman for malpractice)



  15. Links 26/05/2023: Weston 12.0 Highlights and US Debt Limit Panic

    Links for the day



  16. Gemini Links 26/05/2023: New People in Gemini

    Links for the day



  17. IRC Proceedings: Thursday, May 25, 2023

    IRC logs for Thursday, May 25, 2023



  18. Links 26/05/2023: Qt 6.5.1 and Subsystems in GNUnet

    Links for the day



  19. Links 25/05/2023: Mesa 23.1.1 and Debian Reunion

    Links for the day



  20. Links 25/05/2023: IBM as Leading Wayland Pusher

    Links for the day



  21. IRC Proceedings: Wednesday, May 24, 2023

    IRC logs for Wednesday, May 24, 2023



  22. Links 25/05/2023: Istio 1.16.5 and Curl 8.1.1

    Links for the day



  23. Gemini Links 25/05/2023: On Profit and Desire for Gemini

    Links for the day



  24. SiliconANGLE: Sponsored by Microsoft and Red Hat to Conduct the Marriage Ceremony

    SiliconANGLE insists that paying SiliconANGLE money for coverage does not lead to bias, but every sane person who keeps abreast of SiliconANGLE — and I read their entire feed every day — knows that it’s a ludicrous lie (Red Hat/IBM and the Linux Foundation also buy puff pieces and “event coverage” from SiliconANGLE, so it’s marketing disguised as “journalism”



  25. Links 24/05/2023: Podman Desktop 1.0, BSDCan 2024, and More

    Links for the day



  26. Gemini Links 24/05/2023: Razors, Profit, and More

    Links for the day



  27. [Meme] When the Patent Office Controls Kangaroo Patent Courts and Judges

    The EPO has been hijacked by industry and its lobbyists; now the same is happening to EU patent courts, even though it is illegal and unconstitutional



  28. The Illegally 'Revised' Unified Patent Court Agreement (UPCA) is Disgracing the Perception of Law and Order in the European Union

    The Unified Patent Court (UPC) isn’t legal, the Unified Patent Court Agreement (UPCA) is being altered on the fly (by a person patently ineligible to do so), and so it generally looks like even patent courts across Europe might soon become as corrupt as the European Patent Office, which has no basis in the Rule of the Law and is basically just a front for large corporations (most of them aren’t even European)



  29. Sirius 'Open Source', With High-Level Political Clients, Reported to Politicians

    The crimes of Sirius ‘Open Source’ are of interest to the British public sector; we’ve begun contacting relevant people



  30. IRC Proceedings: Tuesday, May 23, 2023

    IRC logs for Tuesday, May 23, 2023


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

Home iconSite Home: Background about the site and some key features in the front page

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

Recent Posts