DOS-C started in 1988 as an experiment in writing device drivers in C for 
Microsoft's MS-DOS.  Both block and character device drivers were written, 
along with special C data structures to match the MS-DOS request packet.  It 
was then recognized that using the same techniques, an operating system 
could be written that would take advantage of the C language features and 
would require much less time to develop than the traditional assembly 
language techniques.  Although UNIX had proven this earlier, it was not 
tried with a traditional pc operating system.

At this time, a minimal operating system using the device drivers written 
earlier along with a new 8086 interrupt API was developed.  It was called 
XDOS and proved to be a functional operating system.  This new operating 
system was used to develop booting techniques and a C library SDK was 
developed for it.

XDOS enhancements were started in 1989 and MS-DOS was chosen as the new API.  
A more advanced architecture was also developed.  This included the use of 
an IPL (intermediate program loader) to set up the operating environment 
prior to loading the operating system itself and reentrant system calls 
facilitating real-time applications.  This version, know as NSS-DOS, was 
completed and demonstrated in 1991.  As a result of these demonstrations, 
NSS was approached to supply source license for this operating system by a 
major defense contractor.  The only new requirement - it had to run on 68K 
processors.

This presented a new challenge.  Due to the MS-DOS model used for the API, 
NSS-DOS relied heavily on a segmented architecture.  To meet this challenge, 
a major redesign of NSS-DOS was undertaken.  New proprietary techniques were 
developed that allowed the same source to be compiled on a variety of hosts 
and with a wide range of compilers.  This new version, DOS/NT, was the result o
of this new project.  The kernel was redesigned as a micro kernel along with 
logical separation of the filesystem, memory and task managers.  A new DOS 
API was designed along with a new DOS SDK to guarantee portability.  
Additionally, all processor unique code was separated from the core 
functions.  The result is  the highly portable operating system that DOS/NT 
represents.

After a number of successful commercial applications, DOS/NT became part of
both dosemu and FreeDOS.

This version, DOS-C, is the subject of an upcoming book and is intended for 
binary redistribution, free of any royalty.  See the accompanying 
license.txt file for details.  If you have not received this file, contact 
me at the address below and I will send a copy to you.

The DOS-C kernel is also the FreeDOS kernel.  FreeDOS is a project designed 
to provide an alternative to MS-DOS, PC-DOS and DR-DOS that is freely 
available.  See the FreeDOS manifesto for details.

Source code for DOS-C is available as part of the book.  Also, a GPL version 
will be available in the future.  This will be announced through the FreeDOS 
project.

MS-DOS is a trademark of Microsoft Corporation.
UNIX is a trademark of USL, Inc.


Author
------
Pat Villani (Pat_Villani@vos.stratus.com)

Copyright
---------
(c) Copyright 1995 by Pasquale J. Villani
All Rights Reserved.

License
-------
May be freely redistributed provided that:

1. Copright notice remains intact.

2. Changes are clearly marked with date and identification of individual(s) 
making the change.

3. Information regarding where to obtain package is distributed with this 
file.



November 22, 1994





