| 
      
 An operating
system is a set of programs
that manages the operation of a computer. 
Operating systems have become increasingly  large and
complex with the development of computer hardware and the use of multi-user
systems. 
The most frequently used sections of the operating system
must be loaded into memory and stay there while applications are being run. When
a computer is first switched on, the OS must be transferred from disc to memory.
This process is called 'booting'
the system. 
There has to be a small program held in  ROM which
initiates the booting process. 
The main functions of an Operating
System. 
  - Resource management
 
    All operating systems must be able to  load
    programs from backing storage devices,  store them in memory
    and start them running; more complex operating systems have to allocate CPU
    time, memory and I/O resources to different programs. 
   - Memory management
 
    Where more than one process is to be run, the operating system has to allocate
    sections of memory (partitions) to each,
    and to make sure that one process does not use the memory allocated to
    another...or else...crash!!! Inactive partitions may be swapped
    on to backing store. 
   - Backing store management
 
    Including the creation, updating and deletion of files. Managing the FAT
    (File Allocation Table) and the directory of files. 
   - I/O Control
 
    Controlling data flow to and from peripherals. 
   - Interrupt handling
 
    Detecting and servicing interrupts. 
   - Operator interface
 
    Receiving and processing instructions from the operator. Reporting errors. 
   - Security
 
    Maintaining logging in codes and passwords; keeping a log
    of each user's time on the system. 
   
 
Most operating systems also have utility
programs for file management, editing files,
reorganising disc space, making backups, copying files,  etc... 
       
        | 
      A process may be a program
        (application) or a service (a sort of behind-the-scenes task such as a
        network listener or a virus checker). |