Changeset 4552 for trunk/Ohana/src/opihi/doc/scheduler.txt
- Timestamp:
- Jul 14, 2005, 8:18:09 AM (21 years ago)
- File:
-
- 1 edited
-
trunk/Ohana/src/opihi/doc/scheduler.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/opihi/doc/scheduler.txt
r4452 r4552 1 2 2005.07.14 3 4 I am still exploring the scheduler / controller interactions. the 5 automatic interactions seem to work pretty well now. The area of 6 confusion is in the user interface, both in terms of checking on the 7 status of things (both controller and scheduler) and in terms of 8 having user control over aspects of the controller. 9 10 I have defined user functions which execute the controller commands 11 'status' and 'check'. These are straightforeward since they simply 12 send a command to the controller and echo the output (or give an error 13 condition message). 14 15 Should the user have the ability to define a job, independent of a 16 task? This could be implemented purely as a controller action: the 17 controller commands 'job', 'kill', 'delete', 'stderr', 'stdout' would 18 be available from the scheduler, and the commands simply passed 19 along. This adds a bit to the complexity: if the 'delete' command is 20 passed along, nothing prevents the user from deleting a job scheduled 21 by the scheduler from a task. the scheduler may then get confused 22 when it tries to interact with that job in the future from the 23 automatic loop. 24 25 Another option is to simply have these commands interact with the 26 scheduler's job stack. this has the advantage of limiting the 27 scheduler / controller responsibility errors (scheduler, not user, is 28 always responsible to sending/harvesting jobs to/from the 29 controller, though we still need to handle the cases if a job is lost 30 or dropped by the controller). the diffficulty here is deciding how 31 to handle the job completion. we would need a way to define a set of 32 exit macros, which could then do something useful with the output. 33 34 Another possibility is to define limits on how many times a task may 35 spawn a job. There would then be no 'job' function. If we define 36 this limitation, we will still need a way of killing and deleting a 37 specific job. Thus a 'kill' and 'delete' function would examine and 38 modify the scheduler's job stack. The stderr and stdout functions are 39 then already part of the task commands. 40 41 Other task options might include: 42 43 - a list of allow / exclude time periods (which should be time-of-day 44 ranges and day-of-week ranges). 45 46 - a function to delete an existing task (which would have to stop the 47 spawning of new jobs, at least until no more jobs for that task 48 remain). 49 50 - allow the 'periods' command to define defaults when outside of a 51 task 52 53 - 1 54 2 55 2005.07.05
Note:
See TracChangeset
for help on using the changeset viewer.
