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

1992/0622/power/main.c (diff list | history)

1992/0610/sys/src/9/power/main.c:6,431992/0622/sys/src/9/power/main.c:6,22 (short | long | prev | next)
1990/0227    
#include	"io.h" 
#include	"init.h" 
 
1990/0424    
/* 
1991/0425    
 * software tlb simulation 
 */ 
Softtlb stlb[4][STLBSIZE]; 
1992/0622    
Softtlb stlb[MAXMACH][STLBSIZE];		/* software tlb simulation */ 
int	_argc;					/* args passed by boot process */ 
char 	**_argv; 
char	**_env; 
char 	argbuf[128];				/* arguments passed to initcode */ 
int	argsize; 
char	consname[NAMELEN];			/* environment vars from NVRAM */ 
char	diskless[NAMELEN]; 
char	confbuf[4*1024];			/* config file read by boot program */ 
int	ioid;					/* IO board type */ 
1991/0425    
 
/* 
1990/0424    
 *  args passed by boot process 
 */ 
int _argc; char **_argv; char **_env; 
                 
1990/0504    
/* 
 *  arguments passed to initcode 
 */ 
1992/0610    
char argbuf[128]; 
1990/0427    
int argsize; 
1990/0424    
                 
1990/0504    
/* 
1992/0610    
 *  environment variables extracted from NVRAM 
1990/0504    
 */ 
1992/0610    
char consname[NAMELEN]; 
char diskless[NAMELEN]; 
1990/0504    
                 
/* 
 *  configuration file read by boot program 
 */ 
char confbuf[4*1024]; 
                 
1990/0826    
/* 
1990/0907    
 *  IO board type 
1990/0826    
 */ 
int ioid; 
                 
1990/0227    
void 
main(void) 
{ 
1992/0610/sys/src/9/power/main.c:47,661992/0622/sys/src/9/power/main.c:26,45
1990/0504    
	arginit(); 
1992/0610    
	confinit(); 
1990/0227    
	lockinit(); 
1992/0622    
	xinit(); 
1990/0227    
	printinit(); 
1991/0607    
	duartspecial(0, &printq, &kbdq, 9600); 
1992/0622    
	pageinit(); 
xsummary(); 
1990/0227    
	tlbinit(); 
	vecinit(); 
	procinit0(); 
1991/0705    
	initseg(); 
	grpinit(); 
1990/0227    
	chaninit(); 
	clockinit(); 
1990/0826    
	ioboardinit(); 
1990/0227    
	chandevreset(); 
	streaminit(); 
1991/0705    
	swapinit(); 
1990/0227    
	pageinit(); 
	userinit(); 
	launchinit(); 
	schedinit(); 
1992/0610/sys/src/9/power/main.c:521,5271992/0622/sys/src/9/power/main.c:500,506
1990/0504    
	/* 
	 *  copy configuration down from high memory 
	 */ 
	strcpy(confbuf, (char *)(0x80000000 + 4*1024*1024 - 4*1024)); 
1992/0622    
	strcpy(confbuf, (char *)(0x80000000 + (4*MB) - BY2PG)); 
1990/0504    
 
	/* 
	 *  size memory 
1992/0610/sys/src/9/power/main.c:528,5341992/0622/sys/src/9/power/main.c:507,513
1990/0504    
	 */ 
1990/0227    
	x = 0x12345678; 
1990/0322    
	for(i=4; i<128; i+=4){ 
1990/0227    
		l = (long*)(KSEG1|(i*1024L*1024L)); 
1992/0622    
		l = (long*)(KSEG1|(i*MB)); 
1990/0227    
		*l = x; 
		wbflush(); 
		*(ulong*)KSEG1 = *(ulong*)KSEG1;	/* clear latches */ 
1992/0610/sys/src/9/power/main.c:541,5481992/0622/sys/src/9/power/main.c:520,530
1990/0614    
	conf.npage = conf.npage0; 
1991/0803    
	conf.npage1 = 0; 
	conf.base1 = 0; 
1992/0209    
	conf.maxialloc = 16*1024*1024; 
1990/0504    
 
1992/0622    
	conf.upages = (conf.npage*70)/100; 
	i = conf.npage-conf.upages; 
	if(i > (12*MB)/BY2PG) 
		conf.upages +=  i - ((12*MB)/BY2PG); 
1990/0504    
	/* 
1990/0907    
 	 *  clear MP bus error caused by sizing memory 
	 */ 
1992/0610/sys/src/9/power/main.c:554,5801992/0622/sys/src/9/power/main.c:536,550
1990/0504    
	 */ 
1990/1127    
	conf.nmach = 1; 
1992/0101    
	conf.nproc = 100; 
1990/1202    
	conf.npgrp = conf.nproc / 4; 
	conf.npgenv = 4 * conf.npgrp; 
1992/0622    
	conf.npgenv = 4 * conf.nproc; 
1990/1202    
	conf.nenv = 4 * conf.nproc; 
1990/0911    
	conf.nenvchar = 20 * conf.nenv; 
1990/1202    
	conf.nmtab = conf.nproc; 
1991/0705    
	conf.nseg = 4 * conf.nproc; 
	conf.npagetab = conf.nseg*3; 
1992/0209    
	conf.nswap = 262144; 
1991/0705    
	conf.nimage = 200; 
1990/1202    
	conf.nchan = 20 * conf.nproc; 
	conf.nmntdev = conf.nproc; 
	conf.nmntbuf = conf.nproc; 
	conf.nmnthdr = conf.nproc; 
	conf.nstream = 2 * conf.nproc; 
1992/0325    
	conf.nalarm = 2500; 
1990/1202    
	conf.nmount = 500; 
1992/0101    
	conf.nsrv = 20; 
1990/1202    
	conf.nurp = 25; 
1991/1115    
	conf.dkif = 1; 
1990/11151    
	conf.nqueue = 5 * conf.nstream; 
1990/0911    
	conf.nblock = 10 * conf.nstream; 
1991/0424    
	conf.ipif = 8; 
	conf.ip = 64; 
	conf.arp = 32; 
1992/0610/sys/src/9/power/main.c:582,5881992/0622/sys/src/9/power/main.c:552,557
1990/0430    
 
1990/0504    
	confread(); 
 
1991/0125    
	conf.npipe = conf.nstream/2;	/* must be after confread */ 
1990/0504    
	if(conf.nmach > MAXMACH) 
		panic("confinit"); 
 
1992/0610/sys/src/9/power/main.c:597,6031992/0622/sys/src/9/power/main.c:566,573
1992/0610    
 * 
 *  also grab any environment variables that might be useful 
1990/0504    
 */ 
1992/0610    
struct{ 
1992/0622    
struct 
{ 
1992/0610    
	char	*name; 
	char	*val; 
}bootenv[] = { 
1992/0610/sys/src/9/power/main.c:718,7241992/0622/sys/src/9/power/main.c:688,694
1990/1231    
	 *  space 
	 */ 
	len = (lp->nrrb + lp->ntrb)*sizeof(Etherpkt); 
	lp->rp = (Etherpkt*)ialloc(len , 1); 
1992/0622    
	lp->rp = (Etherpkt*)xspanalloc(len , BY2PG, 0); 
1990/1231    
	lp->tp = lp->rp + lp->nrrb; 
	x = (ulong)lp->rp; 
	lp->lrp = (Etherpkt*)(x & 0xFFF); 


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