並列処理の説明として, 適切なものはどれか。
平成28年度 秋期 ITパスポート試験 問94
This question's explanation and your answers so far.
問 94
- ア
正解 Parallel processing refers to a method that divides a series of processes into multiple processing units that can run simultaneously, and executes them concurrently on multiple CPUs (processors). Choice ア is exactly this definition: it satisfies both key points, dividing the work and running it on multiple CPUs at the same time, so it is correct. The essence of parallel processing is to shorten the overall processing time (improve throughput) by adding CPUs to increase how many processes run at once.
Incorrectイ
Grouping multiple related processes into a single processing unit is the idea of combining work and processing it in a batch (such as batch processing or executing transactions together), which has nothing to do with parallel processing that runs work on multiple CPUs at once. It merges the work instead of dividing it, so it goes in the opposite direction from parallel processing.
Incorrectウ
Assigning business logic and database processing to the server side and user interface processing to the client side describes the division of roles in a client-server system (multi-tier architecture), not the concurrent execution of processes.
Incorrectエ
Dividing the processing time of a single CPU into short units (time slices) and allocating them in turn to multiple application programs describes time-sharing (multitasking), where one CPU is shared by time division. Here there is still only one CPU that switches and runs the programs in turn, so it differs from parallel processing, which runs work on multiple CPUs at the same time.
- Parallel processing = a method that divides work into units that can run simultaneously and executes them concurrently on multiple CPUs (processors). Its goal is to shorten processing time and improve throughput.
- Distinguish it from confusing concepts: do not mix it up with time-sharing that switches a single CPU by time division (エ), batch processing that groups work together (イ), or the client-server division of roles (ウ).