simple Distributed system tasks code help -Java

Kailin-an
distributed_systems_java_help.docx

Can someone create a Java program that performs the following distributed systems tasks? This should be easy for a Java programmer. 

 

The following tasks should be performed within the code:

-Seqeuncing

This means a Task cannot complete until another task is fulfilled, example 

T1->T2->T3 

this means transaction 2 cannot happen unless T1 is done, as well as T3 cannot happen until T2 is done. 

-parallelism

The tasks here are done in parallel 

T1 and T2 are done together (T1||T2) 

or chain parallel (T1||T2||T3) means all three transactions are done together 

T1||T2->T3||T4

this means that both T3 and T4 can't start in parallel until both T1 and T2 are done in parallel. 

 

-Nesting

this task is self-explanatory, you can use both parallelism and seqeuencing .

-hard wired tasks 

here I  need you to help me express, at a basic level, what a task does.

T1 = some calculations

this assignment is  about building a data structure and generating a SCHEDULE for the task graph, calculation is one of:

sum N - sum the numbers from 1 to N in a loop. N can be up to 64-bit integers. sleep N - sleep for N seconds using system sleep.

T1 ::= sleep 15

Defines a task T1 that sleeps for 15 seconds.

T2 ::= sleep 10

Defines a task T2 that sleeps for 10 seconds.

T3 ::= sum 10000000

Defines a task T3 that sums the numbers from 1 to 10000000

you can come up with an input, an example of an input  would be :

T1 -> T2 || T3 -> T4

T1 := sleep 10 T2:= sleep 50 T3 := sum 100000 T4:= sum 1000000

A second more complex example would be :

T1-> (T2 -> T3 || (T4 -> T5)) -> T6 T1:= sleep 10 T2 := sleep 50 T3 := sum 100000 T4:= sum 1000 T5 := sleep 25 T6 := sum 10000010

Please help me with this ASAP, I need it by the 12th of september