z/OS concepts
Previous topic | Next topic | Contents | Glossary | Contact z/OS | PDF

Multiprogramming and multiprocessing

z/OS concepts

z/OS® is capable of multiprogramming, or executing many programs concurrently, and of multiprocessing, which is the simultaneous operation of two or more processors that share the various hardware resources.

The earliest operating systems were used to control single-user computer systems. In those days, the operating system would read in one job, find the data and devices the job needed, let the job run to completion, and then read in another job. In contrast, the computer systems that z/OS manages are capable of multiprogramming, or executing many programs concurrently. With multiprogramming, when a job cannot use the processor, the system can suspend, or interrupt, the job, freeing the processor to work on another job.

z/OS makes multiprogramming possible by capturing and saving all the relevant information about the interrupted program before allowing another program to execute. When the interrupted program is ready to begin executing again, it can resume execution just where it left off. Multiprogramming allows z/OS to run thousands of programs simultaneously for users who might be working on different projects at different physical locations around the world.

z/OS can also perform multiprocessing, which is the simultaneous operation of two or more processors that share the various hardware resources, such as memory and external disk storage devices.

The techniques of multiprogramming and multiprocessing make z/OS ideally suited for processing workloads that require many input/output (I/O) operations. Typical mainframe workloads include long-running applications that write updates to millions of records in a database, and online applications for thousands of interactive users at any given time.

By way of contrast, consider the operating system that might be used for a single-user computer system. Such an operating system would need to execute programs on behalf of one user only. In the case of a personal computer (PC), for example, the entire resources of the machine are often at the disposal of one user.

Many users running many separate programs means that, along with large amounts of complex hardware, z/OS needs large amounts of memory to ensure suitable system performance. Large companies run sophisticated business applications that access large databases and industry-strength middleware products. Such applications require the operating system to protect privacy among users, as well as enable the sharing of databases and software services.

Thus, multiprogramming, multiprocessing, and the need for a large amount of memory mean that z/OS must provide function beyond simple, single-user applications. The related concepts listed below explain the attributes that enable z/OS to manage complex computer configurations.

Copyright IBM Corporation 1990, 2010