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

1992/0902/port/devroot.c (diff list | history)

1992/0711/sys/src/9/port/devroot.c:16,301992/0902/sys/src/9/port/devroot.c:16,30 (short | long | prev | next)
1991/1206    
 
	Qboot, 
	Qcfs, 
	Qkfs, 
1992/0902    
	Qfs, 
1990/0227    
}; 
 
1991/0214    
extern long	cfslen; 
1991/0216    
extern ulong	cfscode[]; 
1991/0910    
extern long	kfslen; 
extern ulong	kfscode[]; 
1992/0902    
extern long	fslen; 
extern ulong	fscode[]; 
1991/1206    
extern ulong	bootlen; 
extern ulong	bootcode[]; 
1992/0902    
extern uchar	bootcode[]; 
1991/0214    
 
1990/0227    
Dirtab rootdir[]={ 
1991/1112    
	"bin",		{Qbin|CHDIR},	0,			0777, 
1992/0711/sys/src/9/port/devroot.c:37,431992/0902/sys/src/9/port/devroot.c:37,43
1990/0227    
#define	NROOT	(sizeof rootdir/sizeof(Dirtab)) 
1991/0615    
Dirtab rootpdir[]={ 
1991/1112    
	"cfs",		{Qcfs},		0,			0777, 
	"kfs",		{Qkfs},		0,			0777, 
1992/0902    
	"fs",		{Qfs},		0,			0777, 
1991/0615    
}; 
Dirtab *rootmap[sizeof rootpdir/sizeof(Dirtab)]; 
1991/0214    
int	nroot; 
1992/0711/sys/src/9/port/devroot.c:67,731992/0902/sys/src/9/port/devroot.c:67,73
1991/0615    
	i = 0; 
	if(cfslen) 
		rootmap[i++] = &rootpdir[0]; 
1991/0910    
	if(kfslen) 
1992/0902    
	if(fslen) 
1991/0913    
		rootmap[i++] = &rootpdir[1]; 
1991/0615    
	nroot = NROOT + i; 
1990/0227    
} 
1992/0711/sys/src/9/port/devroot.c:142,1481992/0902/sys/src/9/port/devroot.c:142,148
1990/0227    
			return 0; 
1991/1206    
		if(offset+n > bootlen) 
			n = bootlen - offset; 
1991/0411    
		memmove(buf, ((char*)bootcode)+offset, n); 
1992/0902    
		memmove(buf, bootcode+offset, n); 
1991/0214    
		return n; 
 
1991/0312    
	case Qcfs:		/* cfs */ 
1992/0711/sys/src/9/port/devroot.c:153,1641992/0902/sys/src/9/port/devroot.c:153,164
1991/0411    
		memmove(buf, ((char*)cfscode)+offset, n); 
1991/0910    
		return n; 
 
	case Qkfs:		/* kfs */ 
		if(offset >= kfslen) 
1992/0902    
	case Qfs:		/* fs */ 
		if(offset >= fslen) 
1991/0910    
			return 0; 
		if(offset+n > kfslen) 
			n = kfslen - offset; 
		memmove(buf, ((char*)kfscode)+offset, n); 
1992/0902    
		if(offset+n > fslen) 
			n = fslen - offset; 
		memmove(buf, ((char*)fscode)+offset, n); 
1990/0227    
		return n; 
 
	case Qdev: 


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