Loading...
Searching...
No Matches
- Member InitTaskContext (cpu_io::CalleeSavedContext *task_context, void(*entry)(void *), void *arg, uint64_t stack_top)
- x86_64 实现待补充
- Member InitTaskContext (cpu_io::CalleeSavedContext *task_context, cpu_io::TrapContext *trap_context_ptr, uint64_t stack_top)
- x86_64 实现待补充
- Member Interrupt::BroadcastIpi () -> Expected< void > override
默认使用 SGI 0 作为 IPI 中断
- Member Interrupt::SendIpi (uint64_t target_cpu_mask) -> Expected< void > override
默认使用 SGI 0 作为 IPI 中断
- Member interrupt_test () -> bool
- 等用户态调通后补上
- Member SchedPolicy
- 为什么要定义 TaskStatusId 与 TaskStatus 两个命名空间?可以直接用 TaskStatus 吗?
- Member sys_futex (int *uaddr, int op, int val, const void *timeout, int *uaddr2, int val3) -> int
实现 FUTEX_REQUEUE
应该返回实际唤醒的线程数
- Member sys_sched_setaffinity (int pid, size_t cpusetsize, const uint64_t *mask) -> int
- 如果当前任务不在允许的 CPU 上运行,应该触发迁移
- Member sys_set_tid_address (int *tidptr) -> int
- 需要在 TaskControlBlock 中添加字段保存 tidptr
- Member sys_write (int fd, const char *buf, size_t len) -> int
- 应该检查 buf 是否在用户空间合法范围内
- Member Syscall (uint64_t, cpu_io::TrapContext *context_ptr) -> void
-
- Member TaskAuxData::fd_table
- 优先级继承相关
- Member TaskControlBlock::TaskControlBlock (const char *name, int priority, uint8_t *elf, int argc, char **argv)
-
- Member TaskManager::Clone (uint64_t flags, void *user_stack, int *parent_tid, int *child_tid, void *tls, cpu_io::TrapContext &parent_context) -> Expected< Pid >
当前未实现文件系统,此标志暂时仅记录
当前未实现信号机制,此标志暂时仅记录
当前未实现文件系统,此标志暂时仅记录
- Member TaskManager::Exit (int exit_code=0) -> void
- 通知父进程 (发送 SIGCHLD)
- Member TaskManager::ReparentChildren (TaskControlBlock *parent) -> void
当前的 pid 是自增的,需要考虑多核情况
实现向 init 进程发送 SIGCHLD 信号
- Member TaskManager::SignalThreadGroup (Pid tgid, int signal) -> void
- 实现信号机制后,向线程组中的所有线程发送信号
- Member user_task_test () -> bool
- Implement user task tests when ELF loading path is testable
- Class virtio::PciTransport
- 实现 PCI Modern (1.0+) 传输层