home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky comp.os.msdos.programmer:8954 comp.os.msdos.misc:4989
- Newsgroups: comp.os.msdos.programmer,comp.os.msdos.misc
- Path: sparky!uunet!destroyer!sol.ctr.columbia.edu!eff!world!jkenton
- From: jkenton@world.std.com (Jeff Kenton)
- Subject: Re: Why ms-dos is non reentrant
- Message-ID: <Btwvtz.J7s@world.std.com>
- Organization: Kenton Systems Corporation, Weston MA
- References: <92245.122042A10742@TRMETU.BITNET> <bws.35@ccs.carleton.ca> <1992Sep1.160133.19060@mits.mdata.fi>
- Date: Tue, 1 Sep 1992 18:10:46 GMT
- Lines: 30
-
- In article <1992Sep1.160133.19060@mits.mdata.fi> kennu@mits.mdata.fi (Kenneth Falck) writes:
- >
- >So, the question remains, why don't the Microsoft programmers bang
- >their brains together and rewrite MSDOS to be fully re-entrant and
- >all the routines to use dynamic memory allocation instead of static?
- >
- >If this really is so difficult for them, I must have understood
- >something wrong about this.
- >
-
-
- Because some of the data is naturally not sharable between routines
- which can interrupt each other. Consider the FAT (allocation table)
- for a disk. You don't want a routine to start allocating a new disk
- sector for a file, and have it interrupted by another routine which
- allocates the same sector.
-
- Now, you can put software locks around critical data structures to
- avoid this, but it's a lot of work to add this to a system and it
- won't buy you much in DOS. In a system that supports multi-processing,
- it's a requirement, and all such systems do it. You won't find it
- added to DOS until it supports multi-processing. That's what NT is
- all about (that, and real 32-bit software).
-
-
- --
- -------------------------------------------------------------------------
- = Jeff Kenton (617) 894-4508 =
- = jkenton@world.std.com =
- -------------------------------------------------------------------------
-