Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
X
xv6-public
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
问题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
银宸时代
OS Lab Group
奖励实验
xv6-public
提交
ff40af6e
提交
ff40af6e
1月 16, 2012
创建
作者:
Silas Boyd-Wickizer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Build usertests
上级
7281e73a
显示空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
10 行增加
和
12 行删除
+10
-12
Makefile
Makefile
+3
-1
usertests.c
usertests.c
+7
-11
没有找到文件。
Makefile
浏览文件 @
ff40af6e
...
...
@@ -76,6 +76,7 @@ ULIB := $(addprefix $(O)/, $(ULIB))
UPROGS
=
\
_cat
\
_echo
\
_init
\
_forkexectree
\
_forkexecbench
\
...
...
@@ -85,7 +86,8 @@ UPROGS= \
_maptest
\
_sh
\
_thrtest
\
_halt
_halt
\
_usertests
UPROGS
:=
$
(
addprefix
$(O)
/,
$(UPROGS)
)
all
:
$(O)/kernel
...
...
usertests.c
浏览文件 @
ff40af6e
...
...
@@ -5,7 +5,6 @@
#include "fcntl.h"
#include "syscall.h"
#include "traps.h"
#include "mtrace.h"
char
buf
[
2048
];
char
name
[
3
];
...
...
@@ -663,7 +662,7 @@ concreate(void)
int
i
,
pid
,
n
,
fd
;
char
fa
[
40
];
struct
{
u
short
inum
;
u
16
inum
;
char
name
[
14
];
}
de
;
...
...
@@ -1240,7 +1239,7 @@ sbrktest(void)
{
int
fds
[
2
],
pid
,
pids
[
32
],
ppid
;
char
*
a
,
*
b
,
*
c
,
*
lastaddr
,
*
oldbrk
,
*
p
,
scratch
;
u
int
amt
;
u
ptr
amt
;
printf
(
stdout
,
"sbrk test
\n
"
);
oldbrk
=
sbrk
(
0
);
...
...
@@ -1275,7 +1274,7 @@ sbrktest(void)
// can one allocate the full 640K?
// less a stack page and an empty page at the top.
a
=
sbrk
(
0
);
amt
=
(
632
*
1024
)
-
(
u
int
)
a
;
amt
=
(
632
*
1024
)
-
(
u
ptr
)
a
;
p
=
sbrk
(
amt
);
if
(
p
!=
a
){
printf
(
stdout
,
"sbrk test failed 632K test, p %x a %x
\n
"
,
p
,
a
);
...
...
@@ -1351,7 +1350,7 @@ sbrktest(void)
for
(
i
=
0
;
i
<
sizeof
(
pids
)
/
sizeof
(
pids
[
0
]);
i
++
){
if
((
pids
[
i
]
=
fork
(
0
))
==
0
){
// allocate the full 632K
sbrk
((
632
*
1024
)
-
(
u
int
)
sbrk
(
0
));
sbrk
((
632
*
1024
)
-
(
u
ptr
)
sbrk
(
0
));
write
(
fds
[
1
],
"x"
,
1
);
// sit around until killed
for
(;;)
sleep
(
1000
);
...
...
@@ -1396,12 +1395,12 @@ void
validatetest
(
void
)
{
int
hi
,
pid
;
u
int
p
;
u
ptr
p
;
printf
(
stdout
,
"validate test
\n
"
);
hi
=
1100
*
1024
;
for
(
p
=
0
;
p
<=
(
u
int
)
hi
;
p
+=
4096
){
for
(
p
=
0
;
p
<=
(
u
ptr
)
hi
;
p
+=
4096
){
if
((
pid
=
fork
(
0
))
==
0
){
// try to crash the kernel by passing in a badly placed integer
validateint
((
int
*
)
p
);
...
...
@@ -1444,9 +1443,8 @@ bsstest(void)
void
bigargtest
(
void
)
{
int
pid
,
ppid
;
int
pid
;
ppid
=
getpid
();
pid
=
fork
(
0
);
if
(
pid
==
0
){
char
*
args
[
32
+
1
];
...
...
@@ -1548,8 +1546,6 @@ main(int argc, char *argv[])
{
printf
(
1
,
"usertests starting
\n
"
);
mtrace_enable_set
(
1
,
"xv6-forktest"
);
if
(
open
(
"usertests.ran"
,
0
)
>=
0
){
printf
(
1
,
"already ran user tests -- rebuild fs.img
\n
"
);
exit
();
...
...
编写
预览
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论