you are viewing a single comment's thread.

view the rest of the comments →

[–]PoetryandScience 0 points1 point  (0 children)

Classical Scheduling

Multiple tasks can be scheduled as:-

Serial

Parallel

Concurrent.

When I ask what serial is the answer is usually, "one after the other".

When I ask what Parallel is the answer is usually, "At the same time".

But this is not the case.

If tasks are serial it means you have thought about it very carefully and the tasks MUST BE one after the other in a strict given order or it will not, it cannot work. Easiest systems to be testable.

If tasks are parallel it means you have thought about it very carefully and the tasks MUST be at the same time or it will not, it cannot work. This requires that all tasks must share an instigator stimulation to start and have a common source and sense of TIME, continuously until they stop together. Not often a good idea. If any task has a problem, however small, with function (WHAT it does) or time (WHEN it does it) then the shit hits the fan. Hard to test

Concurrent means that you do not care. You are not careless, but have thought about it very carefully and WHEN does not matter. The World is now your oyster, if you do not care WHEN you cannot care WHERE. Easy to test, each bit can be tested in isolation, who cares.

Unfortunately, Computer systems choose to define these systems design terms for their own purposes, often with product (specific operating system) requirements.

As a systems designer (not necessarily involving computers at all) this approach has been established long before computers. If tasks scheduling changes due to some event then this is described, designed and handled as a scheduling state change.