Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
X
xv6-public
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
问题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
银宸时代
OS Lab Group
奖励实验
xv6-public
提交
c73483e4
提交
c73483e4
4月 25, 2012
创建
作者:
Silas Boyd-Wickizer
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'scale-amd64' of
git+ssh://amsterdam.csail.mit.edu/home/am0/6.828/xv6
into scale-amd64
上级
28ead2d3
a40317e9
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
13 行增加
和
10 行删除
+13
-10
kernel.ld
kernel/kernel.ld
+8
-0
main.cc
kernel/main.cc
+5
-2
sperf.cc
kernel/sperf.cc
+0
-8
没有找到文件。
kernel/kernel.ld
浏览文件 @
c73483e4
...
@@ -18,6 +18,14 @@ SECTIONS
...
@@ -18,6 +18,14 @@ SECTIONS
*(.prof)
*(.prof)
}
}
PROVIDE(eprof = .);
PROVIDE(eprof = .);
PROVIDE(sctors = .);
.ctors : {
KEEP(*(SORT(.ctors.*)));
KEEP(*(.ctors));
}
PROVIDE(ectors = .);
. = ALIGN(0x1000);
. = ALIGN(0x1000);
.data : {
.data : {
*(.data .data.* .gnu.linkonce.d.*)
*(.data .data.* .gnu.linkonce.d.*)
...
...
kernel/main.cc
浏览文件 @
c73483e4
...
@@ -36,7 +36,6 @@ void initnet(void);
...
@@ -36,7 +36,6 @@ void initnet(void);
void
initsched
(
void
);
void
initsched
(
void
);
void
initlockstat
(
void
);
void
initlockstat
(
void
);
void
initwq
(
void
);
void
initwq
(
void
);
void
initsperf
(
void
);
void
initidle
(
void
);
void
initidle
(
void
);
void
initcpprt
(
void
);
void
initcpprt
(
void
);
void
initfutex
(
void
);
void
initfutex
(
void
);
...
@@ -133,6 +132,11 @@ cmain(u64 mbmagic, u64 mbaddr)
...
@@ -133,6 +132,11 @@ cmain(u64 mbmagic, u64 mbaddr)
{
{
extern
u64
cpuhz
;
extern
u64
cpuhz
;
// Call global constructors
extern
const
uptr
sctors
[],
ectors
[];
for
(
const
uptr
*
ctorva
=
ectors
;
ctorva
>
sctors
;
)
((
void
(
*
)())
*--
ctorva
)();
initpg
();
initpg
();
inithz
();
// CPU Hz, microdelay
inithz
();
// CPU Hz, microdelay
initpic
();
// interrupt controller
initpic
();
// interrupt controller
...
@@ -144,7 +148,6 @@ cmain(u64 mbmagic, u64 mbaddr)
...
@@ -144,7 +148,6 @@ cmain(u64 mbmagic, u64 mbaddr)
initacpi
();
initacpi
();
initseg
();
initseg
();
initsperf
();
inittrap
();
inittrap
();
initlapic
();
initlapic
();
initcmdline
();
initcmdline
();
...
...
kernel/sperf.cc
浏览文件 @
c73483e4
...
@@ -9,11 +9,3 @@ using namespace scopedperf;
...
@@ -9,11 +9,3 @@ using namespace scopedperf;
static
tsc_ctr
tsc
;
static
tsc_ctr
tsc
;
ctrgroup_chain
<
tsc_ctr
>
perfgroup
(
&
tsc
);
ctrgroup_chain
<
tsc_ctr
>
perfgroup
(
&
tsc
);
// but xv6 doesn't run static constructors, so call them explicitly below..
void
initsperf
()
{
new
(
&
tsc
)
tsc_ctr
();
new
(
&
perfgroup
)
ctrgroup_chain
<
tsc_ctr
>
(
&
tsc
);
}
编写
预览
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论