匿名管道重构&增加IrqArch trait以及IrqFlags及其守卫 (#253)

* 实现匿名管道

* 增加IrqArch trait以及IrqFlags及其守卫

---------

Co-authored-by: longjin <longjin@RinGoTek.cn>
This commit is contained in:
hanjiezhou
2023-04-23 21:05:10 +08:00
committed by GitHub
parent 8a1e95abb5
commit f678331a33
14 changed files with 508 additions and 43 deletions

View File

@ -37,7 +37,8 @@ extern uint64_t sys_shutdown(struct pt_regs *regs);
extern uint64_t sys_accept(struct pt_regs *regs);
extern uint64_t sys_getsockname(struct pt_regs *regs);
extern uint64_t sys_getpeername(struct pt_regs *regs);
extern uint64_t sys_pipe(struct pt_regs *regs);
extern uint64_t sys_mkdir(struct pt_regs *regs);
/**
* @brief 关闭文件系统调用
*
@ -400,12 +401,6 @@ void do_syscall_int(struct pt_regs *regs, unsigned long error_code)
ul ret = system_call_table[regs->rax](regs);
regs->rax = ret; // 返回码
}
uint64_t sys_pipe(struct pt_regs *regs)
{
return -ENOTSUP;
}
extern uint64_t sys_mkdir(struct pt_regs *regs);
system_call_t system_call_table[MAX_SYSTEM_CALL_NUM] = {
[0] = system_call_not_exists,

View File

@ -82,14 +82,6 @@ uint64_t sys_sbrk(struct pt_regs *regs);
*/
uint64_t sys_mkdir(struct pt_regs *regs);
/**
* @brief 创建管道
* 在pipe.c中实现
* @param fd(r8) 文件句柄指针
* @param num(r9) 文件句柄个数
* @return uint64_t
*/
uint64_t sys_pipe(struct pt_regs *regs);
ul sys_ahci_end_req(struct pt_regs *regs);