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. IRC Proceedings: Friday, January 28, 2022

    IRC logs for Friday, January 28, 2022



  2. Links 28/1/2022: GStreamer 1.20 RC1 and DXVK-NVAPI 0.5.2

    Links for the day



  3. Microsoft Staff Trying to Subvert the Freedom of Gemini (Without Disclosure of the Paymaster)

    Looking back at the past couple of years, it seems like Microsoft staff and boosters were more than eager to steer developers away from freedom and into Microsoft's cage



  4. Gemini Gone Mainstream: German Media Now in Geminispace

    With the likes of TAZ embracing Geminispace/Gemini Protocol we seem to have reached some sort of inflection point; taz.de did in fact add official presence to Geminispace



  5. Links 28/1/2022: LSFMM 2022 and 2021 UI Study Results From Elementary's Distro

    Links for the day



  6. IRC Proceedings: Thursday, January 27, 2022

    IRC logs for Thursday, January 27, 2022



  7. Links 28/1/2022: GNU Poke 2.0 and OPNsense 22.1 Released

    Links for the day



  8. Links 27/1/2022: Archinstall 2.3.1 and Nix 2.6.0

    Links for the day



  9. On the Internet, Trust Should Not Become Centralised

    “Trust” is a word that lost its meaning in the era of “TPM” and fancier names for 'Palladium'; we need to reject this idea that computers need to check with Microsoft if the operating system is trusted (not just Windows!), check with Gulag/Chrome if a Web site is trusted, and whether it's OK to run some application/s on one's own computer (as if Jim Zemlin et al get to decide what is trusted)



  10. Microsoft-Connected Publishers Suffer and Perish With Microsoft (While Peddling 'Fake News' for Their Beloved Sponsor)

    IDG and other fake news outlets/networks/sites (selling to companies flattering articles about themselves or renting out 'news space' to them, not just ad space) want us to think Microsoft is doing very well, but it's just that same old Ponzi scheme



  11. Links 27/1/2022: Mabox Linux 21.11 Herbolth and PipeWire 0.3.44

    Links for the day



  12. IRC Proceedings: Wednesday, January 26, 2022

    IRC logs for Wednesday, January 26, 2022



  13. [Meme] EPO: Pursuing an Eastern and Western District of Europe (for Patent Trolls and Software Patents)

    With the EPO so flagrantly lying and paying for misinformation maybe we should expect Benoît Battistelli and António Campinos to have delusions of grandeur… such as presiding over the Eastern and Western District of Europe, just like Mr. Gilstrap and Mr. Albright (political appointment by Donald Trump, ushering in “the swamp”)



  14. Gemini at 2,000: 86% of Capsules Use Self-Signed Certificate, Just Like the Techrights Web Site (WWW)

    As shown in the charts above (updated an hour ago), the relative share of ‘Linux’ Foundation (LE/LF; same thing, same office) in the capsules’ certificates has decreased over time; more and more (in terms of proportion) capsules choose to sign their own certificate/s; the concept of ‘fake security’ (centralisation and consolidation) should be rejected universally because it leaves nobody safe except plutocrats



  15. [Meme] UPC: Many Lies as Headlines, Almost Exclusively in Publishers Sponsored by EPO and Team UPC to Produce Fake News (Lobbying Through Misinformation)

    Lest we forget that EPO dictators, like Pinky and the Brainless Benoît Battistelli and António Campinos, have long littered the EPO's official Web site as well as publishers not directly connected to the EPO (but funded by it) with disinformation about the UPC



  16. EPO as the 'Ministry of Truth' of Team UPC and Special Interests

    The 'Ministry of Truth' of the patent world is turning the EPO's Web site into a propaganda mill, a misinformation farm, and a laughing stock with stock photography



  17. Microsoft 'Delighted' by Windows 11 (Vista 11) Usage, Which is Only 1% Three Months After Official Launch and Six Months After Release Online

    Microsoft boosters such as Bogdan Popa and Mark Hachman work overtime on distraction from the failure Vista 11 has been (the share of Windows continues to fall relative to other platforms)



  18. Links 27/1/2022: Preinstalled GNU/Linux (Ubuntu) and Arch Linux-Powered Steam Deck 30 Days Away

    Links for the day



  19. Don't Fall for Microsoft's Spin That Says Everything is Not Secure and Cannot be Secured

    Microsoft keeps promoting the utterly false concept that everything is not secure and there's nothing that can be done about it (hence, might as well stay with Windows, whose insecurity is even intentional)



  20. At Long Last: 2,000 Known Gemini Capsules!

    The corporate media, looking to appease its major sponsors (such as Web/advertising giants), won't tell you that Gemini Protocol is rising very rapidly; its userbase and the tools available for users are rapidly improving while more and more groups, institutions and individuals set up their own capsule (equivalent of a Web site)



  21. Links 26/1/2022: Gamebuntu 1.0, PiGear Nano, and Much More

    Links for the day



  22. IRC Proceedings: Tuesday, January 25, 2022

    IRC logs for Tuesday, January 25, 2022



  23. Links 26/1/2022: No ARM for Nvidia, End of EasyArch, and WordPress 5.9 is Out

    Links for the day



  24. Why the Unified Patent Court (UPC) is Still Just a Fantasy and the UPC's Fake News Mill Merely Discredits the Whole Patent 'Profession'

    Patents and science used to be connected; but now that the patent litigation 'sector' is hijacking patent offices (and even courts in places like Texas) it's trying to shove a Unified Patent Court (UPC) down the EU's throat under the disingenuous cover of "community" or "unity"



  25. Links 25/1/2022: Vulkan 1.3 Released, Kiwi TCMS 11.0, and antiX 19.5

    Links for the day



  26. Gemini Milestones and Growth (Almost 2,000 Known Gemini Servers Now, 39,000 Pages in Ours)

    The diaspora to Gemini Protocol or the transition to alternative 'webs' is underway; a linearly growing curve suggests that inertia/momentum is still there and we reap the benefits of early adoption of Gemini



  27. [Meme] Get Ready for Unified Patent Court (UPC) to be Taken to Court

    The Unified Patent Court (UPC) and Unitary Patent system that’s crafted to empower EPO thugs isn’t legal and isn’t constitutional either; even a thousand fake news 'articles' (deliberate misinformation or disinformation) cannot change the simple facts because CJEU isn’t “trial by media”



  28. The EPO Needs High-Calibre Examiners, Not Politicians Who Pretend to Understand Patents and Science

    Examiners are meant to obstruct fake patents or reject meritless patent applications; why is it that working conditions deteriorate for those who are intellectually equipped to do the job?



  29. Free Software is Greener

    Software Freedom is the only way to properly tackle environmental perils through reuse and recycling; the mainstream media never talks about it because it wants people to "consume" more and more products



  30. Links 25/1/2022: Git 2.35 and New openSUSE Hardware

    Links for the day


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