On 7 Dec 2024, at 18:01, Henry Bent <henry.r.bent(a)gmail.com> wrote:
Sadly, that's the answer I was expecting - the
locking didn't really work in practice. That might go some way towards explaining
why this concept of multiple DOS sessions under UNIX didn't really have widespread
adoption.
I cannot honestly see how it could be made to work - locking, even in Unix, was very much
a case of “let’s hope we all use the same function call” and, in the specific case of
MS-DOS, was hardly necessary since it was a single-user OS running a single application at
a time. The arrival of networking probably introduced locking to MS-DOS in the same way
hopeful way.
There was no real expectation on our part that the DB would not be corrupted by multiple
MS-DOS sessions writing to it, even if using C-ISAM, because the assumption would have
always been “one machine, one user, one task”. Fortunately the port to Unix fixed this
because C-ISAM was conscious of the concept of multiple accesses to the database.
There were always all sorts of "DOS under
UNIX" ideas, from these early concepts through all the way to Sun's physical PC
boards, but none of them ever really seemed to gain significant traction. The only
connecting concept seems to be that DOS just wasn't meant to be a multi-user OS, and
certainly not a networked one.
Even on the i286 there were attempts at having MS-DOS running within a multi-user OS.
Remember that OS/2 on the 80286 used a triple fault to get you back into real mode to
execute an MS-DOS program.
"Running MS-DOS” was really important in those days and a lot of effort was expended
trying to get that to work in some way[1].
Arrigo
[1] I am a (very) guilty party for flooring my CPUs and making fans sound like 747s by
running Simcity 2000 and Railroad Tycoon in dosbox on Linux.