Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
rcore-os
RCore Tutorial V3
提交
982b369a
R
RCore Tutorial V3
项目概览
rcore-os
/
RCore Tutorial V3
上一次同步 1 年多
通知
15
Star
793
Fork
260
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
4
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
RCore Tutorial V3
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
4
Issue
4
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
982b369a
编写于
2月 07, 2021
作者:
Y
Yifan Wu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Bump rustsbi to 0.1.1 && make config of qemu/k210 different
上级
58897f47
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
68 addition
and
2 deletion
+68
-2
bootloader/rustsbi-k210.bin
bootloader/rustsbi-k210.bin
+0
-0
bootloader/rustsbi-qemu.bin
bootloader/rustsbi-qemu.bin
+0
-0
os/Makefile
os/Makefile
+12
-2
os/src/config.rs
os/src/config.rs
+6
-0
os/src/linker-k210.ld
os/src/linker-k210.ld
+0
-0
os/src/linker-qemu.ld
os/src/linker-qemu.ld
+50
-0
未找到文件。
bootloader/rustsbi-k210.bin
浏览文件 @
982b369a
无法预览此类型文件
bootloader/rustsbi-qemu.bin
浏览文件 @
982b369a
无法预览此类型文件
os/Makefile
浏览文件 @
982b369a
...
...
@@ -3,13 +3,20 @@ TARGET := riscv64gc-unknown-none-elf
MODE
:=
release
KERNEL_ELF
:=
target/
$(TARGET)
/
$(MODE)
/os
KERNEL_BIN
:=
$(KERNEL_ELF)
.bin
KERNEL_ENTRY_PA
:=
0x80020000
DISASM_TMP
:=
target/
$(TARGET)
/
$(MODE)
/asm
# BOARD
BOARD
?=
qemu
SBI
?=
rustsbi
BOOTLOADER
:=
../bootloader/
$(SBI)
-
$(BOARD)
.bin
K210_BOOTLOADER_SIZE
:=
131072
# KERNEL ENTRY
ifeq
($(BOARD), qemu)
KERNEL_ENTRY_PA
:=
0x80200000
else
ifeq
($(BOARD), k210)
KERNEL_ENTRY_PA
:=
0x80020000
endif
# Run K210
K210-SERIALPORT
=
/dev/ttyUSB0
...
...
@@ -35,7 +42,10 @@ $(KERNEL_BIN): kernel
kernel
:
@
cd
../user
&&
make build
@
echo
Platform:
$(BOARD)
@
cp
src/linker-
$(BOARD)
.ld src/linker.ld
@
cargo build
--release
--features
"board_
$(BOARD)
"
@
rm
src/linker.ld
clean
:
@
cargo clean
...
...
@@ -59,7 +69,7 @@ ifeq ($(BOARD),qemu)
-device
loader,file
=
$(KERNEL_BIN)
,addr
=
$(KERNEL_ENTRY_PA)
else
@
cp
$(BOOTLOADER)
$(BOOTLOADER)
.copy
@
dd
if
=
$(KERNEL_BIN)
of
=
$(BOOTLOADER)
.copy
bs
=
131072
seek
=
1
@
dd
if
=
$(KERNEL_BIN)
of
=
$(BOOTLOADER)
.copy
bs
=
$(K210_BOOTLOADER_SIZE)
seek
=
1
@
mv
$(BOOTLOADER)
.copy
$(KERNEL_BIN)
@
sudo chmod
777
$
(
K210-SERIALPORT
)
python3
$
(
K210-BURNER
)
-p
$
(
K210-SERIALPORT
)
-b
1500000
$(KERNEL_BIN)
...
...
os/src/config.rs
浏览文件 @
982b369a
pub
const
USER_STACK_SIZE
:
usize
=
4096
*
2
;
pub
const
KERNEL_STACK_SIZE
:
usize
=
4096
*
2
;
pub
const
KERNEL_HEAP_SIZE
:
usize
=
0x20_0000
;
#[cfg(feature
=
"board_k210"
)]
pub
const
MEMORY_END
:
usize
=
0x80600000
;
#[cfg(feature
=
"board_qemu"
)]
pub
const
MEMORY_END
:
usize
=
0x80800000
;
pub
const
PAGE_SIZE
:
usize
=
0x1000
;
pub
const
PAGE_SIZE_BITS
:
usize
=
0xc
;
...
...
os/src/linker.ld
→
os/src/linker
-k210
.ld
浏览文件 @
982b369a
文件已移动
os/src/linker-qemu.ld
0 → 100644
浏览文件 @
982b369a
OUTPUT_ARCH(riscv)
ENTRY(_start)
BASE_ADDRESS = 0x80200000;
SECTIONS
{
. = BASE_ADDRESS;
skernel = .;
stext = .;
.text : {
*(.text.entry)
. = ALIGN(4K);
strampoline = .;
*(.text.trampoline);
. = ALIGN(4K);
*(.text .text.*)
}
. = ALIGN(4K);
etext = .;
srodata = .;
.rodata : {
*(.rodata .rodata.*)
}
. = ALIGN(4K);
erodata = .;
sdata = .;
.data : {
*(.data .data.*)
}
. = ALIGN(4K);
edata = .;
sbss_with_stack = .;
.bss : {
*(.bss.stack)
sbss = .;
*(.bss .bss.*)
}
. = ALIGN(4K);
ebss = .;
ekernel = .;
/DISCARD/ : {
*(.eh_frame)
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录