Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
rcore-os
RCore Tutorial V3
提交
48109c34
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,体验更适合开发者的 AI 搜索 >>
提交
48109c34
编写于
1月 01, 2022
作者:
Y
Yifan Wu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Bump to rust nightly-2022-01-01, feature global_asm,asm->stable
上级
45280db1
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
16 addition
and
10 deletion
+16
-10
os/src/main.rs
os/src/main.rs
+3
-3
os/src/mm/memory_set.rs
os/src/mm/memory_set.rs
+2
-1
os/src/sbi.rs
os/src/sbi.rs
+2
-0
os/src/task/switch.rs
os/src/task/switch.rs
+3
-2
os/src/trap/mod.rs
os/src/trap/mod.rs
+1
-0
rust-toolchain
rust-toolchain
+1
-1
user/src/lib.rs
user/src/lib.rs
+1
-2
user/src/syscall.rs
user/src/syscall.rs
+3
-1
未找到文件。
os/src/main.rs
浏览文件 @
48109c34
#![no_std]
#![no_main]
#![feature(global_asm)]
#![feature(asm)]
#![feature(panic_info_message)]
#![feature(alloc_error_handler)]
...
...
@@ -24,6 +22,8 @@ mod sync;
mod
mm
;
mod
fs
;
use
core
::
arch
::
global_asm
;
global_asm!
(
include_str!
(
"entry.asm"
));
global_asm!
(
include_str!
(
"link_app.S"
));
...
...
@@ -54,4 +54,4 @@ pub fn rust_main() -> ! {
loader
::
list_apps
();
task
::
run_tasks
();
panic!
(
"Unreachable in rust_main!"
);
}
\ No newline at end of file
}
os/src/mm/memory_set.rs
浏览文件 @
48109c34
...
...
@@ -15,6 +15,7 @@ use crate::config::{
TRAP_CONTEXT
,
USER_STACK_SIZE
};
use
core
::
arch
::
asm
;
extern
"C"
{
fn
stext
();
...
...
@@ -341,4 +342,4 @@ pub fn remap_test() {
false
,
);
println!
(
"remap_test passed!"
);
}
\ No newline at end of file
}
os/src/sbi.rs
浏览文件 @
48109c34
#![allow(unused)]
use
core
::
arch
::
asm
;
const
SBI_SET_TIMER
:
usize
=
0
;
const
SBI_CONSOLE_PUTCHAR
:
usize
=
1
;
const
SBI_CONSOLE_GETCHAR
:
usize
=
2
;
...
...
os/src/task/switch.rs
浏览文件 @
48109c34
global_asm!
(
include_str!
(
"switch.S"
));
use
super
::
TaskContext
;
use
core
::
arch
::
global_asm
;
global_asm!
(
include_str!
(
"switch.S"
));
extern
"C"
{
pub
fn
__
switch
(
...
...
os/src/trap/mod.rs
浏览文件 @
48109c34
...
...
@@ -21,6 +21,7 @@ use crate::task::{
};
use
crate
::
timer
::
set_next_trigger
;
use
crate
::
config
::{
TRAP_CONTEXT
,
TRAMPOLINE
};
use
core
::
arch
::{
global_asm
,
asm
};
global_asm!
(
include_str!
(
"trap.S"
));
...
...
rust-toolchain
浏览文件 @
48109c34
nightly-202
1-12-15
nightly-202
2-01-01
user/src/lib.rs
浏览文件 @
48109c34
#![no_std]
#![feature(asm)]
#![feature(linkage)]
#![feature(panic_info_message)]
#![feature(alloc_error_handler)]
...
...
@@ -76,4 +75,4 @@ pub fn sleep(period_ms: usize) {
while
sys_get_time
()
<
start
+
period_ms
as
isize
{
sys_yield
();
}
}
\ No newline at end of file
}
user/src/syscall.rs
浏览文件 @
48109c34
use
core
::
arch
::
asm
;
const
SYSCALL_CLOSE
:
usize
=
57
;
const
SYSCALL_PIPE
:
usize
=
59
;
const
SYSCALL_READ
:
usize
=
63
;
...
...
@@ -67,4 +69,4 @@ pub fn sys_exec(path: &str) -> isize {
pub
fn
sys_waitpid
(
pid
:
isize
,
exit_code
:
*
mut
i32
)
->
isize
{
syscall
(
SYSCALL_WAITPID
,
[
pid
as
usize
,
exit_code
as
usize
,
0
])
}
\ No newline at end of file
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录