The Kernal can be subdivided into 4 sections, or drivers, each of which control a different aspect of the Operating System, Calculator, e2, and networks, etc. The First is the PIO: The Physical Input/Output System Driver. This controls both the screen and the keyboard, using its own functions and those already in the TI-85 ROM. Next is the RIO: The RAM Input/Output System Driver. It controls the allocation/deallocation of RAM. It also is in charge of organizing it in an efficient manner. This section also relocates the code loaded from the e2 into RAM, allowing it to be run. It can also call programs loaded into RAM. When i say relocation, I mean the Usgard type with some extensions. It is more similar, perhaps, to the kind of relocation a PC does when it loads and executes programs. Third is the CIO: The Communications Input/Output System Driver. Controlling the passage of data and commands between the calculator, e2, other attached devices and networks. It can be subdivided into the protocols it uses to communicate to each. These are the protocols by which the data is sent. Mainly, the data is sent in the e2 protocol and it encapsules the next level protocol to use externally. The main protocols are the e2 protocol, the TI-OS protocol, and the i2c protocol, with its MBus extensions. Lastly is the FIO: The File Input/Output System Driver. this controls the passage of files between the CIO and the RIO. It takes the files from the Communications and puts them into the RAM. Or vice versa. On the diagram, the protocols are white, the physical objects, e.g. RAM, e2,screens, keyboard, network, etc., are green. The kernal is Red, and the ROM is yellow. the PIO is blue, the CIO is purple, the RIO is light blue, and the FIO is light green.