zircon syscall
系统调用
用户空间代码使用系统调用与内核空间对象交互。Zircon 有执行低层操作的系统调用,如:
- 内存管理
- 任务和进程管理
- 进程间通信(IPC)与同步
- 异常处理
- 硬件支持服务(时钟、熵、设备 I/O)
用户空间进程通过 libzircon.so 访问系统调用,这是一个
[虚拟动态共享对象][glossary.virtual-dynamic-shared-object](virtual Dynamic Shared Object,vDSO)。
Zircon vDSO 是 ELF 格式的共享库,它被内核映射到每个新进程的地址空间。
这个库被称为“虚拟”,是因为它是直接由内核映像暴露,而非从文件加载的。
大多数系统调用直接操作一个或多个[句柄][glossary.handle]。
句柄是进程内部对内核空间对象的引用,表示为32位整数(zx_handle_t)。
每个句柄声明了持有者具有的对句柄自身或引用的对象执行操作的特权,即权利(right)。
glossary.virtual-dynamic-shared-object /glossary/README.md#handle
最后更新:
2022 年 12 月 31 日(Saturday) 21:07 CST