Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
X
xv6-public
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
问题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
银宸时代
OS Lab Group
奖励实验
xv6-public
提交
1c260e53
提交
1c260e53
4月 06, 2012
创建
作者:
Austin Clements
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Use userptr for the arguments to sys_{map,unmap,exec}
Previously these were type-less uptrs.
上级
70d922ff
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
7 行增加
和
6 行删除
+7
-6
kernel.hh
include/kernel.hh
+4
-3
sysfile.cc
kernel/sysfile.cc
+1
-1
sysproc.cc
kernel/sysproc.cc
+2
-2
没有找到文件。
include/kernel.hh
浏览文件 @
1c260e53
...
@@ -6,6 +6,7 @@ extern "C" {
...
@@ -6,6 +6,7 @@ extern "C" {
#include "atomic.hh"
#include "atomic.hh"
#include "memlayout.h"
#include "memlayout.h"
#include "userptr.hh"
#include <stdarg.h>
#include <stdarg.h>
#define KCSEG (2<<3)
/* kernel code segment */
#define KCSEG (2<<3)
/* kernel code segment */
...
@@ -263,7 +264,7 @@ struct sockaddr;
...
@@ -263,7 +264,7 @@ struct sockaddr;
int
sys_chdir
(
const
char
*
);
int
sys_chdir
(
const
char
*
);
int
sys_close
(
int
);
int
sys_close
(
int
);
int
sys_dup
(
int
);
int
sys_dup
(
int
);
int
sys_exec
(
const
char
*
,
u
64
);
int
sys_exec
(
const
char
*
,
u
serptr
<
userptr
<
const
char
>
>
);
int
sys_exit
(
void
)
__attribute__
((
noreturn
));
int
sys_exit
(
void
)
__attribute__
((
noreturn
));
int
sys_fork
(
int
);
int
sys_fork
(
int
);
int
sys_fstat
(
int
,
struct
stat
*
);
int
sys_fstat
(
int
,
struct
stat
*
);
...
@@ -281,8 +282,8 @@ int sys_unlink(const char*);
...
@@ -281,8 +282,8 @@ int sys_unlink(const char*);
int
sys_wait
(
void
);
int
sys_wait
(
void
);
ssize_t
sys_write
(
int
,
const
void
*
,
size_t
);
ssize_t
sys_write
(
int
,
const
void
*
,
size_t
);
u64
sys_uptime
(
void
);
u64
sys_uptime
(
void
);
int
sys_map
(
u
ptr
,
size_t
);
int
sys_map
(
u
serptr
<
void
>
,
size_t
);
int
sys_unmap
(
u
ptr
,
size_t
);
int
sys_unmap
(
u
serptr
<
void
>
,
size_t
);
int
sys_halt
(
void
);
int
sys_halt
(
void
);
int
sys_socket
(
int
,
int
,
int
);
int
sys_socket
(
int
,
int
,
int
);
int
sys_bind
(
int
xsock
,
const
struct
sockaddr
*
xaddr
,
int
xaddrlen
);
int
sys_bind
(
int
xsock
,
const
struct
sockaddr
*
xaddr
,
int
xaddrlen
);
...
...
kernel/sysfile.cc
浏览文件 @
1c260e53
...
@@ -420,7 +420,7 @@ sys_chdir(const char *path)
...
@@ -420,7 +420,7 @@ sys_chdir(const char *path)
}
}
int
int
sys_exec
(
const
char
*
upath
,
u
64
uargv
)
sys_exec
(
const
char
*
upath
,
u
serptr
<
userptr
<
const
char
>
>
uargv
)
{
{
ANON_REGION
(
__func__
,
&
perfgroup
);
ANON_REGION
(
__func__
,
&
perfgroup
);
static
const
int
len
=
32
;
static
const
int
len
=
32
;
...
...
kernel/sysproc.cc
浏览文件 @
1c260e53
...
@@ -90,7 +90,7 @@ sys_uptime(void)
...
@@ -90,7 +90,7 @@ sys_uptime(void)
}
}
int
int
sys_map
(
u
ptr
addr
,
size_t
len
)
sys_map
(
u
serptr
<
void
>
addr
,
size_t
len
)
{
{
ANON_REGION
(
__func__
,
&
perfgroup
);
ANON_REGION
(
__func__
,
&
perfgroup
);
...
@@ -115,7 +115,7 @@ sys_map(uptr addr, size_t len)
...
@@ -115,7 +115,7 @@ sys_map(uptr addr, size_t len)
}
}
int
int
sys_unmap
(
u
ptr
addr
,
size_t
len
)
sys_unmap
(
u
serptr
<
void
>
addr
,
size_t
len
)
{
{
ANON_REGION
(
__func__
,
&
perfgroup
);
ANON_REGION
(
__func__
,
&
perfgroup
);
...
...
编写
预览
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论