my comment is wrong, exec handles BSS fine
This commit is contained in:
		
							parent
							
								
									4587b35847
								
							
						
					
					
						commit
						05d66b0629
					
				
					 2 changed files with 16 additions and 3 deletions
				
			
		
							
								
								
									
										3
									
								
								exec.c
									
										
									
									
									
								
							
							
						
						
									
										3
									
								
								exec.c
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -48,9 +48,6 @@ exec(char *path, char **argv)
 | 
			
		|||
  }
 | 
			
		||||
  iunlockput(ip);
 | 
			
		||||
 | 
			
		||||
  // XXX rtm: what about the BSS? shouldn't there be some
 | 
			
		||||
  // bzero()ing here?
 | 
			
		||||
 | 
			
		||||
  // Allocate and initialize stack at sz
 | 
			
		||||
  sz = spbottom = PGROUNDUP(sz);
 | 
			
		||||
  if(!(sz = allocuvm(pgdir, sz, sz + PGSIZE)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										16
									
								
								usertests.c
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								usertests.c
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1419,6 +1419,21 @@ validatetest(void)
 | 
			
		|||
  printf(stdout, "validate ok\n");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
char uninit[10000];
 | 
			
		||||
void
 | 
			
		||||
bsstest(void)
 | 
			
		||||
{
 | 
			
		||||
  int i;
 | 
			
		||||
  printf(stdout, "bss test\n");
 | 
			
		||||
  for(i = 0; i < sizeof(uninit); i++){
 | 
			
		||||
    if(uninit[i] != '\0'){
 | 
			
		||||
      printf(stdout, "bss test failed\n");
 | 
			
		||||
      exit();
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  printf(stdout, "bss test ok\n");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int
 | 
			
		||||
main(int argc, char *argv[])
 | 
			
		||||
{
 | 
			
		||||
| 
						 | 
				
			
			@ -1430,6 +1445,7 @@ main(int argc, char *argv[])
 | 
			
		|||
  }
 | 
			
		||||
  close(open("usertests.ran", O_CREATE));
 | 
			
		||||
 | 
			
		||||
  bsstest();
 | 
			
		||||
  sbrktest();
 | 
			
		||||
  validatetest();
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue