• DavidGA@lemmy.world
      link
      fedilink
      arrow-up
      8
      ·
      1 year ago

      This is a common misconception, and it’s funny that people still believe it all these years later.

      While it’s true that Windows 95 relied on MS-DOS for bootstrapping and provided a DOS-like interface for running legacy applications, it wasn’t “just a shell” on top of DOS. Windows 95 introduced a 32-bit multitasking environment, a completely new user interface, and a separate set of APIs for software development (Win32). It had its own kernel that provided services like memory management and hardware abstraction, separate from DOS.

      The integration with DOS was mainly for backward compatibility, allowing users to run older software. But once you were in the Windows 95 environment, DOS was essentially sidelined, and Windows 95’s own features and architecture took over.

      • Karl Baron@bitbang.social
        link
        fedilink
        arrow-up
        7
        ·
        edit-2
        1 year ago

        Exactly, here’s the canonical The Old New Thing post on the topic. https://devblogs.microsoft.com/oldnewthing/20071224-00/?p=24063

        tldr:
        “MS-DOS served two purposes in Windows 95: It served as the boot loader. It acted as the 16-bit legacy device driver layer.”

        “Among other things those drivers did was “suck the brains out of MS-DOS,” transfer all that state to the 32-bit file system manager, and then shut off MS-DOS.”

    • duncesplayed
      link
      fedilink
      English
      arrow-up
      6
      ·
      1 year ago

      It’s a bit more complicated than that. Windows 95 used MSDOS to boot, but once it was booted, it completely removed any trace of MSDOS and replaced it with its own MSDOS subsystem. It’s more like MSDOS was a shell on top of Win95, but MSDOS was required to get the kernel loaded.