The ability to run streams in parallel depends on the number of processors
available.
If the processor is single, parallel execution is impossible in
principle (only one thread can be executed at any one time). If the number
of processors is N > 1, parallel execution
can only be implemented
for N threads (one thread per processor).
The main purpose of scheduling for a single-processor system is to arrange
multiple threads on a single processor that would give the system user the
impression that they are running at the same time. This definition can be
extended to multiprocessor systems if a scheduling
task occurs when the
number of threads exceeds the number of available processors.
Consider the basic types of planning,
their principles, and algorithms.
General Principles Of Planning
Consider the basic principles underlying planning.
Features Of Thread Execution
In
terms of scheduling, flow can be depicted as a cycle of alternating
computation (CPU usage) and I / O periods. The time interval during which
the flow executes only the instructions of the processor is called the CPU
usage interval (CPU burst), the time interval
when the flow is waiting
for I / O, the I / O burst interval. Most of these intervals are from 2 to 8 ms.
Streams that spend more time computing and less - on the IO
referred
disabilities processor (CPU bound) .
They actively use the
processor. Their main characteristic is the time spent on computing, the
intervals of CPU usage for them are longer. Flows
that take most of the time
are pending IO referred
disabled input-output ( I / O bound ). Such threads
load the processor much less, and the average length of the processor usage
interval for them is small. The higher the clock speed of the processor, the
more flows can be attributed to the second category.
Processor-limited flow (matrix multiplication)
I / O restricted stream (text editor)
Interval input-output ( I / O bound )
and the interval CPU usage ( CPU bound )