Consider a program that performs the following steps repeatedly: Use the CPU for 4 milliseconds. By issuing an I/O, use the disk for 14 milliseconds. Use the CPU for 10 milliseconds. By issuing an I/O, use network for 18 milliseconds. Assume that each step depends on data obtained from the previous step (e.g., step 3 cannot start before step 2 is completed. Also assume that each resource (CPU or disk or network) can be used by one process at a time. Answer the following questions: (a) Draw 3 time-line diagrams (horizontal axis is the time line; one line for each resource. That is, 3 parallel rows in the resulted figure.) that illustrate the utilizations of the CPU, disk, and network over the execution of two iterations of the program above by a single process. (b) What are the average utilizations of the CPU, disk and network over these two iterations? (Please note that the “total time” should be the same across all resources, from the entire system starts until all work on any resource has been done.)  (c & d) Assume that there are two independent processes in a multiprogramming system (i.e., when a process blocks for I/O, another process can get the CPU) and each process runs one iteration of the program above. Answer parts (a) and (b) for this case showing which part belongs to which process. You can ignore the time spent in context switching.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter10: Classes And Data Abstraction
Section: Chapter Questions
Problem 19PE
icon
Related questions
Question

Consider a program that performs the following steps repeatedly:

  1. Use the CPU for 4 milliseconds.
  2. By issuing an I/O, use the disk for 14 milliseconds.
  3. Use the CPU for 10 milliseconds.
  4. By issuing an I/O, use network for 18 milliseconds.

Assume that each step depends on data obtained from the previous step (e.g., step 3 cannot start before step 2 is completed. Also assume that each resource (CPU or disk or network) can be used by one process at a time.

Answer the following questions:

(a) Draw 3 time-line diagrams (horizontal axis is the time line; one line for each resource. That is, 3 parallel rows in the resulted figure.) that illustrate the utilizations of the CPU, disk, and network over the execution of two iterations of the program above by a single process.

(b) What are the average utilizations of the CPU, disk and network over these two iterations? (Please note that the “total time” should be the same across all resources, from the entire system starts until all work on any resource has been done.) 

(c & d) Assume that there are two independent processes in a multiprogramming system (i.e., when a process blocks for I/O, another process can get the CPU) and each process runs one iteration of the program above. Answer parts (a) and (b) for this case showing which part belongs to which process. You can ignore the time spent in context switching. 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Knowledge Booster
Types of Storage Devices
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning