Pmr_task
/* $Id: pmr_task.x 233 2010-06-16 18:36:13Z gerd $ -*- c -*- */
/* The easy-going interface of task servers */
#ifndef PMR_TASK
#define PMR_TASK
typedef string longstring<>;
typedef longstring longstrings<>;
program Mapred_task {
version V1 {
void null (void) = 0;
longstring exec(int, longstrings, longstring) = 1;
/* let r = exec(req_id, args, t):
Executes the encoded task t and returns the encoded result r.
*/
/* TODO:
.- get_req_id : void -> int
.- status : int -> bool (running/not running)
*/
void kill(int) = 2;
/* Kill the started task with this req ID */
void kill_all(void) = 3;
/* Kill all started tasks */
void configure(hyper, hyper) = 4;
/* configure(shm_low, shm_high):
.- shm_low: low-water mark for shm
.- shm_high: high-water mark for shm
*/
} = 1;
} = 0x80013001;
#endif