📄 write.c
字号:
#include "../include/kernel/sys.h"
#include "../include/kernel/types.h"
//system_call3(int,write,int,fd,char *,buf,off_t,count)
/*
* 该宏定义了一个系统调用enter_super(),
* 他使当前的任务特进入System特权级
*/
inline system_call0(int,enter_super);
/*
* 根据spsr对当前任务的特权级进行设置
*/
void exit_super(int spsr)
{
write_cpsr(spsr);
}
int write(int fd,char * buf,off_t count)
{
unsigned int csp=read_cpsr(); //保存当前任务的特权级
enter_super(); //当前任务进入System特权级
//从这里开始任务是运行在System特权级下了
sys_write(fd,buf,count);
exit_super(csp); //当前任务恢复为原来的特权级
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -