Home >Common Problem >What is the difference between multiprogramming and multiprocessing?

What is the difference between multiprogramming and multiprocessing?

青灯夜游
青灯夜游Original
2020-11-05 11:34:536722browse

Difference: Multi-programming automatically schedules execution between jobs and shares system resources. It does not truly execute multiple jobs at the same time; while a multi-processing system is configured with multiple CPUs and can truly execute multiple programs at the same time. To use multiprocessing effectively, multiprogramming techniques must be adopted, and multiprogramming does not in principle require the support of a multiprocessing system.

What is the difference between multiprogramming and multiprocessing?

Multi-programming

Multi-programming is the automatic scheduling and execution of jobs and the sharing of system resources. It is not Truly execute multiple jobs simultaneously.

Multi-programming technology is to store several independent programs in the computer memory at the same time, so that they can run interspersed with each other under the control of the management program. Two or more programs are in the same place in the computer system. The state between the start and end of these programs sharing computer system resources. The counterpart is single-programming, which allows only one program to run in the computer's memory.

For a single-CPU system, it is only a macro concept that programs are running at the same time. Although they have all started running, from a micro perspective, there is only one program running on the CPU at any time. .

Multiple processing

Multiple processing is also called "multi-pass processing", which has two meanings. ① A computer executes multiple programs or multiple instruction sequences at the same time; ② A multiprocessor executes multiple instruction sequences at the same time.

Multiple processing systems are configured with multiple CPUs and can truly execute multiple programs simultaneously.

Features

  • Multiple channels. Multiple programs can reside in the memory at the same time and allow them to execute concurrently, thereby effectively improving resource utilization and system throughput.

  • Disorder. There is no strict correspondence between the order in which multiple jobs are completed and the order in which they are entered into memory.

  • Scheduling. From the time a job is submitted to the system until it is completed, it needs to go through job scheduling and process scheduling.

Note: To use multiprocessing effectively, multiprogramming technology must be used, and multiprogramming does not necessarily require the support of a multiprocessing system in principle.

The above is the detailed content of What is the difference between multiprogramming and multiprocessing?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn