Распечатка 7.2 Управление интервалами времени процесса SCHED_RR

Предыдущая  Содержание  Следующая V*D*V

Распечатка 7.2.

 

/* sched_rr.c */

 

#include <sched.h>

int main(){

  struct sched_param param;

  struct timespec ts;

  param.sched_priority = sched_get_priority_max(SCHED_RR);

 

  /* Необходим максимальный интервал времени */

  nice(-20);

  sched_setscheduler(0, SCHED_RR, &param);

  sched_rr_get_interval(0, &ts);

  printf ("max timeslice = %d msec\n", ts.tv_nsec/1000000);

  /* выводит -> max timeslice = 199 msec */

 

  /* Необходим минимальный интервал времени. Обратите также

   * внимание, что аргументом для nice является "приращение",

   * а не абсолютное значение. Таким образом, выполнение

   * nice(39) приводит к работе с приоритетом nice +19

   */

  nice(39);

  sched_setscheduler(0, SCHED_RR, &param);

  sched_rr_get_interval(0, &ts);

  printf ("min timeslice = %d", ts.tv_nsec/1000000);

  /* output -> min timeslice = 9 msec */

 

  return ;

}

 

Предыдущая  Содержание  Следующая