Expand description
教程阅读建议:
_start展示用户程序最小运行时(初始化控制台、堆、调用 main);- 其余辅助函数(sleep/pipe_*)展示了常见 syscall 组合用法。
Modules§
- native
- 非 riscv64 架构的 stub 实现。
Macros§
Structs§
- ClockId
- 时钟类型标识(与
clock_gettime等接口配合使用)。 - Open
Flags - Signal
Action - 信号处理函数的定义
- Stat
- 文件状态信息
- Stat
Mode - 文件类型标志
- Syscall
Id - 系统调用号。
- Time
Spec - 秒 + 纳秒表示的时间结构。
Enums§
- Signal
No - 信号编号。
Constants§
Functions§
- _start
- clock_
gettime - 获取时钟时间。
- close
- 关闭文件描述符。
- condvar_
create - 创建条件变量。
- condvar_
signal - 唤醒等待条件变量的线程。
- condvar_
wait - 等待条件变量。
- count_
syscall - enable_
deadlock_ detect - 启用死锁检测。
- exec
- 执行新程序。
- exit
- 退出当前进程。
- fork
- 创建子进程。
- fstat
- 获取文件状态。
- get_
time - getchar
- getpid
- 获取当前进程 ID。
- gettid
- 获取当前线程 ID。
- kill
- 向进程发送信号。
- link
- 创建一个文件的一个硬链接。
- mmap
- 映射内存。
- munmap
- 取消内存映射。
- mutex_
create - 创建互斥锁。
- mutex_
lock - 获取互斥锁。
- mutex_
unlock - 释放互斥锁。
- open
- 打开文件。
- pipe
- 创建管道
- pipe_
read - 从管道读取数据 返回实际读取的总字节数,负数表示错误
- pipe_
write - 向管道写入数据 返回实际写入的总字节数,负数表示错误
- read
- 从文件描述符读取数据。
- sbrk
- 调整进程堆大小
- sched_
yield - 主动让出 CPU。
- semaphore_
create - 创建信号量。
- semaphore_
down - 获取信号量(P 操作)。
- semaphore_
up - 释放信号量(V 操作)。
- set_
priority - 设置进程优先级。
- sigaction
- 设置信号处理函数。
- sigprocmask
- 设置信号掩码。
- sigreturn
- 从信号处理函数返回。
- sleep
- spawn
- 创建并运行一个新进程。
- thread_
create - 创建新线程。
- trace
- 记录系统调用。
- trace_
read - trace_
write - unlink
- 取消一个文件路径到文件的链接。
- wait
- 等待任意子进程退出。
- waitpid
- 等待指定子进程退出。
- waittid
- 等待指定线程退出。
- write
- 向文件描述符写入数据。