[HN Gopher] A blast from the past: Disassembling DOS (2020)
___________________________________________________________________
A blast from the past: Disassembling DOS (2020)
Author : userbinator
Score : 74 points
Date : 2024-07-03 03:16 UTC (4 days ago)
(HTM) web link (www.softwarelitigationconsulting.com)
(TXT) w3m dump (www.softwarelitigationconsulting.com)
| navjack27 wrote:
| Why does this have so many layout errors or typographical errors
| or something going on? There are just a lot of repeated
| paragraphs or sentences for seemingly no reason.
| trollbridge wrote:
| This is from a book that was formerly intended for print only.
| From the bottom of the page:
|
| "[Many thanks to Samuel Okei from Texas Tech Univ. for his
| skilled conversion and reformatting of what was a complex
| 25-year-old file with obscure and obsolete typesetting codes,
| into HTML.]"
| unixhero wrote:
| Probably troff o nroff
|
| No tan dificil hombre
| anthk wrote:
| Groff no es dificil, pero (g)eqn/pic/tbl... si ;)
| msla wrote:
| > The "what" part is difficult to answer, except to note that DOS
| is in many ways what textbooks on operating systems call a
| microkernel. DOS provides a small bare minimum of services, on
| top of which other, more sophisticated, services can be built.
|
| I think I heard Tanenbaum twitch.
| userbinator wrote:
| I think DOS is closer to a "library OS" or unikernel.
|
| https://en.m.wikipedia.org/wiki/Unikernel
|
| _OS virtualization can overcome some of these drawbacks on
| commodity hardware._
|
| ...and that 's exactly what Windows/386 and later did.
| anthk wrote:
| DOS is basically a wrapper around the BIOS.
| rnd0 wrote:
| Functionally (not conceptually) like UEFI, kinda?
| dfox wrote:
| I always wondered how it is possible that MSCDEX is not an actual
| driver but mere TSR and now I know: CDs look like network shares
| to DOS. I suspect that there is some reasoning behind this
| "design" (different filename conventions on ISO-9660?), but it
| stills seems like one giant kludge.
| trollbridge wrote:
| Starting with DOS 3.0, the way to do installable file systems
| was identical to adding a network drive. (DOS 4.0 had explicit
| IFSes; nobody used them to my knowledge and it chewed up RAM,
| and the code was removed in 5.0.)
|
| A "network redirector" basically hooks every possible file I/O
| operation; DOS simply dispatches to it for any operations on
| that drive letter.
| bonzini wrote:
| DOS only supports two kinds of device drivers: character
| devices and block devices. It does not have any kind of support
| for custom file system device drivers, as block device drivers
| will only use FAT. So in order to support ISO9660, sectors that
| aren't 512 bytes, device sizes larger than 32MB (65536 * 512),
| the device driver (for example ATAPI.SYS) is actually a dummy
| character device and MSCDEX talks to it to expose the
| filesystem as a network drive.
| userbinator wrote:
| Alternatively, the abstraction of a network drive just
| happens to be the right one for local filesystem drivers too.
| There's some more interesting details on the redirector API
| development here: http://www.os2museum.com/wp/redirectors-
| and-dos-3-0/
| lproven wrote:
| > It does not have any kind of support for custom file system
| device drivers
|
| This was true of MS-DOS 1.x and 2.x but not subsequently.
|
| The IFS layer was added in MS-DOS 3.1:
|
| http://www.bitsavers.org/pdf/microsoft/_MSDOS_releases.txt
|
| Although Wikipedia claims MS-DOS 4:
|
| https://en.wikipedia.org/wiki/Installable_File_System
| ForOldHack wrote:
| This is some brilliant interpretation. Wish he would take a look
| at both the origin of task switching and the Xenix boot loader.
| fourthark wrote:
| I saw Schulman present how he discovered the dirty tricks
| Microsoft used to hobble Windows betas on DR-DOS, using similar
| techniques. This was at Ralph Nader's Appraising Microsoft
| conference in 1997.
|
| It's covered in another of his books, Undocumented Windows.
|
| Impressive work, and very brave at the time.
| lproven wrote:
| This was called the AARD code:
|
| https://en.wikipedia.org/wiki/AARD_code
|
| And it was Geoff Chappell, not Andew Shulman. Shulman helped
| write it up for publication.
|
| https://www.geoffchappell.com/notes/windows/archive/aard/ind...
___________________________________________________________________
(page generated 2024-07-07 23:02 UTC)