Identifying parallelism, Operating System

Assignment Help:

Identifying parallelism

A formal way to identify parallelism in an activity is to draw a task dependence graph in a directed graph in which each vertex represents a task to be completed. An edge from vertex u to vertex means that task u must be completed before task v begins, so that task v "depends on" u. If there is no path from u to v, then the tasks are independent and may be performed concurrently. Consider the following problem: Alice is the leader of a crew of workers who maintain a large estate. There are four principal tasks: mowing the lawns, pruning the trees and hedges, repairing the fences, and inspecting the work to ensure it has all been done satisfactorily. Mowing must be completed before the work is inspected, as must the pruning and fence repair. The estate has a security system which must be switched off before work commences (i.e. before Alice and her team arrives), and switched on again after the team leaves.

  • Draw the dependence graph corresponding to the above problem, showing all the tasks involved. (In a project management plan, this scheme is often referred to as a "work breakdown structure").
  • Alice has 8 people in her crew, including herself. (The crew members are: Alice, Bert, Cressida, Dominic, Edgar, Frank, Gus and Harriet). Alice will be solely responsible for inspecting the work, but decides that she herself and three other people (Bert, Dominic and Gus) will mow the estate's four lawns (referred to as north, south, west and east lawns, each of which are of equal area), two other people (Cressida and Frank) will prune the trees, whilst Edgar and Harriet will repair the fences. Redraw the graph to show the allocation of the crew to particular tasks. (Hint: a single task in the original graph may be come multiple tasks in the revised version, each of which is performed by a particular person).
  • Alice is a fast worker, and can mow any of the lawns in one hour, as can Dominic. Frank and Gus can complete any of the manual tasks in two hours. Bert, Cressida, Edgar and Harriet take three hours to do their work. If the manual work starts at 10:00 a.m. in the morning, at what time scan Alice inspect the work? In your answer, refer to the dependence graph showing the allocation of crew to tasks.

Since mowing is done first and then all team members start the work simuntaneosly and Alice can only inspect after each has finished their task the time taken by the slowest team members will be seen here.

Harriert/Bert/Credessia and Edgar take 3 hrs each to complete their task.

The manual work starts at 10.00 AM so the inspection will start 3+3 =6 hrs after that.


Related Discussions:- Identifying parallelism

Define implementation of segmentation with an example, IMPLEMENTATION OF SE...

IMPLEMENTATION OF SEGMENTATION WITH AN EXAMPLE Segmentation is a memory-management scheme that represents the user view of memory. A logical address space is the collection of

Introduction to paging, We will brie?y introduce paging to ?nish off this l...

We will brie?y introduce paging to ?nish off this lecture. When a process is loaded, not all of the pages are immediately loaded, since it's possible that they will not all be need

Explain signal handling, Signal handling A signal is used in UNIX syste...

Signal handling A signal is used in UNIX systems to inform a process that a particular event has occurred. 1. A signal is produced by the occurrence of a particular event.

Constructional techniques - copper clad circuit board, For the first assign...

For the first assignment you are required to construct a logic circuit onto a copper clad circuit board (vero board). This construction will require the use of planning the positio

List antivirus techniques used for protection purposes, Question: a) Th...

Question: a) There are main goals of data security. List them and elaborate on how they provide protection. b) Describe threats associated with data security. c) Describe

What is busy waiting, What is busy waiting? The repeated implementation...

What is busy waiting? The repeated implementation of a loop of code while waiting for an event to happen is known as busy-waiting. The CPU is not engaged in any actual producti

Explain fixed partitioning in memory management, FIXED PARTITIONING Us...

FIXED PARTITIONING Using fixed partitioning we are able to allocate the memory Here we are dividing the memory into a few fixed partitions.Every partition may not be of the si

What are the drawbacks of spiral model, What are the drawbacks of spiral mo...

What are the drawbacks of spiral model? I. It is based on customer communication. If the communication is not proper then the software product that gets developed will not be t

An operating system for a real-time environment, Q. What is the major diffi...

Q. What is the major difficulty that a programmer should overcome in writing an operating system for a real-time environment? Answer: The major difficulty is keeping the oper

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd