Computers can operate in many different ways requiring different and complex operating systems.
When the computer has to react within a guaranteed time to an input, a real-time operating system (RTOS) is used. For example, the engine management system within a car uses a real-time operating system in order to react to feedback from sensors placed throughout the engine.
A real-time operating system does not necessarily have to be fast. It simply has to be quick enough to respond to inputs in a predictable way. Embedded computers often contain an RTOS as many are used to control something.
Computers operating in real time are often dedicated to the control of systems such as industrial processes, planes and space flights.
Multi-programming is a method of operating such that several programs appear to be running at once.
The operating system switches jobs in and out of processor time according to priority. For example, while one job is being allocated printer time, another will be being processed in memory. The processor is so fast that it seems that many jobs are being processed at the same time.
A batch processing system is where programs or data are collected together in a batch and processed in one go. Typically the processing of payrolls, electricity bills, invoices and daily transactions are dealt with this way.
This method of operation lends itself to jobs with similar inputs, processing and outputs where no human intervention is needed. Jobs are stored in a queue until the computer is ready to deal with them. Often batch processed jobs are done overnight.
An interactive processing system is where the tasks on the computer system require a continual exchange of information between the user and the computer system. It can be seen as the opposite of batch processing.
This isn't just about running more than one application at the same time. Multi-tasking allows multiple tasks to run concurrently, taking turns using the resources of the computer.
Modern personal computers can allow multi-user access. A multi-access (or multi-user) system is one where several users can use the same system together via a LAN.
The CPU deals with users in turn; clearly the more users, the slower the response time. Generally, however, the processor is so fast that the response time at the most is a fraction of a second and the user feels they are being dealt with immediately.