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…
Reference in a new issue