For example, such services may include one or more of the following: recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk, sharing memory between multiple application programs, controlling the time and order that application programs run, controlling peripheral devices such as disk drives and printers, and other services.