+ /**
+ * Set scheduler timeout and add file descriptors to fd sets.
+ *
+ * This function controls the timeout value for the next call to
+ * select(2). It may decrease the current timeout but shall never
+ * increase it. The second purpose of this function is to add file
+ * descriptors to the two fd sets of the sched structure. The
+ * descriptors in these sets will be watched by the subsequent
+ * select(2) call.
+ */
+ void (*pre_select)(struct sched *s, void *context);