PKUOS - Pintos
Pintos source browser for PKU Operating System course
src
tests
userprog
sc-bad-sp.c
Go to the documentation of this file.
1
/** Invokes a system call with the stack pointer (%esp) set to a
2
bad address. The process must be terminated with -1 exit
3
code.
4
5
For Project 3: The bad address lies approximately 64MB below
6
the code segment, so there is no ambiguity that this attempt
7
must be rejected even after stack growth is implemented.
8
Moreover, a good stack growth heuristics should probably not
9
grow the stack for the purpose of reading the system call
10
number and arguments. */
11
12
#include "
tests/lib.h
"
13
#include "
tests/main.h
"
14
15
void
16
test_main
(
void
)
17
{
18
asm
volatile
(
"movl $.-(64*1024*1024), %esp; int $0x30"
);
19
fail
(
"should have called exit(-1)"
);
20
}
fail
void fail(const char *format,...)
Definition:
lib.c:40
lib.h
main.h
test_main
void test_main(void)
Invokes a system call with the stack pointer (esp) set to a bad address.
Definition:
sc-bad-sp.c:16
Generated on Thu Nov 4 2021 19:31:01 for PKUOS - Pintos by
1.9.2