ABSTRACT

One major difference that you will see throughout this chapter is that the DOS-C design does not worry about smaller systems. This is really a reflection of the times. DOS-C expects to work in systems with at least 256Kb of memory, whereas MS-DOS expected only 64Kb (although the current kernel is much larger than the minimum memory requirements of MS-DOS vl.O). Also, you no longer need to worry

about saving disk space for small floppy disks because you can expect systems that have over seven times more storage than the original PC disks. Finally, I want to use a high-level language in the implementation so I won't waste time trying various assembly language techniques to minimize size or maximize speed. As you will see in the final kernel, the penalty you pay for the convenience of rapid coding in a higher level language is far less than some programmers would like you to believe. So with this in mind, start examining the architecture of DOS-C.