  ,    jiffies   ,
   delay,      ,  
 10   .    86  -
  HZ,  1000,    10 .

    .

unsigned long delay = jiffies + 2*HZ; /*   */

while (time before(jiffies, delay))
/

     ,    2*HZ  -
 ,    2 ,     -
.

       .   , 
          
!      ""     -
 ,    ,       
 .     -    .

     ,   
  ,    :

unsigned long delay = jiffies + 5*HZ;

while (time before(jiffies, delay))
cond_resched() ;

  cond_resched ()    , 
  ,    need_resched.  ,  -
   ,    ,   -
  ,   .   , ,
  ,      
,     .    
  ,      
  (      !).  , -
  ,  ,     -
     .

    ,   ,  -
    ?     -
      .     
,   jiffies      .
  ,    jiffies   
 ,        ,    -
 .        <linux/
jiffies.h>   volatile.   volatile  -
,        ,    
 ,     ,    -
.  ,    ,   .

228  10