December 6, 2024

CP/M and BIOS

 

Basic Input/Output System acts as the means of communication between the computer hardware and the OS. By separating that part of CP/M controlling the hardware (an abstraction layer), Kildall enabled each company to write a new BIOS for each kind of machine. In doing so, they avoided the need to write a correspongingly new OS.

This method of abstraction, now taken for granted when developing an OS, works like this:

  1. The user of CP/M entered a command via keyboard input. Many of these (go here) will be familiar to users of MSDOS, since DOS copied significant parts of CP/M.
  2. The command was passed to a CCP (Command Control Processor) and converted into high level instructions. In other words, these assembly language instructions were not, at this stage, processed directly at the machine level.
  3. The CCP passed these instructions to the BDOS (Basic Disk Operating System).
    Note: Kildall originally developed CP/M for an IBM compatible 8 inch floppy disk, which was capable of storing 1mb of data.
  4. BDOS provided the basic functions, e.g. file handling functions for opening, closing, searching for, reading of and writing to files. Furthermore, it acted as the interface between the machine and application software (typically something like WordStar). Any high-level instructions were processed by BDOS and converted to low-level (machine) instructions.
  5. BDOS passed these low-level instructions to the BIOS, which was specific to each manufacturer's machine and no longer tied to the IBM disk. To provide portability for his OS, initially to the Intel 8080-based IMSAI, Kildall had removed the BIOS from his original version of CP/M, implementing it as a separate module for the specified machine.
    Note: The specification of a typical machine employing Intel's 8-bit 8080 chip, or more typically the Zilog Z80, had a 16-bit memory address i.e. 64K of memory. Only 8K was required for storing CP/M leaving room to load an application such as WordStar (approx. 40K)

You can find the original manual for CP/M (in PDF) here.

 

You can read more about Gary Kildall here

Back to « Notes on Cringely Chapter 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Up to top of page