plan 9 kernel history: overview | file list | diff list

1991/0209/power/clock.c (diff list | history)

1990/1214/sys/src/9/power/clock.c:81,1091991/0209/sys/src/9/power/clock.c:81,106 (short | long | prev | next)
1990/0731    
 
 
1990/0227    
void 
1990/0731    
clock(ulong n, ulong pc) 
1991/0209    
clock(Ureg *ur) 
1990/0227    
{ 
1990/1211    
	int i; 
1990/0227    
	Proc *p; 
 
	if(n&INTR2){ 
1991/0209    
	if(ur->cause & INTR2){ 
1990/0227    
		i = *CLRTIM0; 
1990/1214    
		USED(i); 
1990/0227    
		m->ticks++; 
		if(m->machno == 0){ 
			p = m->proc; 
			if(p == 0) 
				p = m->intrp; 
			if(p) 
				p->time[p->insyscall]++; 
			for(i=1; i<conf.nmach; i++){ 
				if(active.machs & (1<<i)){ 
					p = MACHP(i)->proc; 
					if(p && p!=m->intrp) 
1991/0209    
					if(p) 
1990/0227    
						p->time[p->insyscall]++; 
				} 
			} 
			m->intrp = 0; 
			printslave(); 
		} 
		if(active.exiting && active.machs&(1<<m->machno)){ 
1990/1214/sys/src/9/power/clock.c:111,1191991/0209/sys/src/9/power/clock.c:108,123
1990/0227    
			exit(); 
		} 
1990/1211    
		checkalarms(); 
1991/0209    
		p = m->proc; 
		if((ur->status&IEP) && p && p->state==Running){ 
			if(anyready()) 
				sched(); 
			if(u->nnote && (ur->status&KUP)) 
				notify(ur); 
		} 
1990/0227    
		return; 
	} 
	if(n & INTR4){ 
1991/0209    
	if(ur->cause & INTR4){ 
1990/0731    
		extern ulong start; 
 
1990/0227    
		i = *CLRTIM1; 


source code copyright © 1990-2005 Lucent Technologies; see license
Plan 9 distribution
comments to russ cox (rsc@swtch.com)