豫豫言文档API ATLAS
入口包说明.html
62 模块1862 名称
← 全部模块

模块 / 41

苹底层。豫

苹底层。豫

44公开名称

苹底_目录当前

公开
「整数」

文言:豫言操作系统底层接口之苹果(macOS)后端:经 libSystem。柄即文件描述符,三为根目录,暂存与 Linux 共用。开以 O_RESOLVE_BENEATH,取径之状以 AT_RESOLVE_BENEATH;建删改名、读链接先受界开父目录。ENOTCAPABLE 为无能力七十六。状态取自 fstatat 之 struct stat,目录取自 __getdirentries64。汉语:豫言操作系统底层接口的 macOS 后端经 libSystem 调用;3 号是根目录句柄,暂存区与 Linux 共用。打开加 O_RESOLVE_BENEATH,路径状态加 AT_RESOLVE_BENEATH;建删目录、改名和读链接先在边界内打开父目录。越界的 ENOTCAPABLE 映成状态码 76。状态取自 fstatat/fstat 的 struct stat(macOS ARM64 布局:st_mode 在 4、st_nlink 在 6、st_ino 在 8、时间在 32、48、64、st_size 在 96),目录项取自 __getdirentries64。待办事项:旧版 macOS 不支持边界标志时的回退、父目录打开后并发改名的竞态。

苹底_初始化

公开
化「有」而「有」

文言:初始化:取暂存,开根目录而置于三号。汉语:初始化:向动态区取 256 KiB 暂存(布局同 Linux 后端),打开根目录“/”(O_RDONLY|O_CLOEXEC)并用 dup2 放到 3 号。

苹底_填状态

公开
化「整数」而「有」

文言:苹果之模式化为底层之类型,同 Linux 之 S_IFMT。汉语:st_mode 的类型位与 Linux 相同,沿用 林底_模式类型。 文言:struct stat 化为状态块。汉语:把 macOS 的 struct stat(在 状缓)换成 64 字节状态块。

苹底_柄模式

公开
化「整数」而「整数」

暂无说明。

苹底_绝对

公开
化「整数」而化「整数」而「爻」

暂无说明。

苹底_开标志

公开
化「整数」而「整数」

文言:打开之标志化为苹果之 O_ 位;常加 RESOLVE_BENEATH,末段不随则加 NOFOLLOW。汉语:把打开标志换成 macOS 的 O_ 位,并总加 O_CLOEXEC 与 O_RESOLVE_BENEATH;接口标志 128 加 O_NOFOLLOW。

苹底_打开

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_取状态

公开
化「整数」而化「整数」而「整数」

暂无说明。

苹底_取路径状态

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_转目录项们

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

文言:苹果之目录项(ino 八、seekoff 八、reclen 二、namlen 二、type 一、名以零终)化为接口之项。汉语:把 __getdirentries64 的记录(d_ino 8、d_seekoff 8、d_reclen 2、d_namlen 2、d_type 1、名字)换成接口目录项(下一游标 8、索引节点 8、名长 4、类型 1、填充 3、名字),类型换算同 Linux。

苹底_读尽目录

公开
化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_读目录

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_父柄

公开
化「整数」而化「整数」而化「整数」而「整数」

文言:父目录以 RESOLVE_BENEATH 原子开之;末名另存,供无守界标之诸调用。汉语:用 O_RESOLVE_BENEATH 安全打开父目录,另存末段名称,供 mkdirat、unlinkat、renameat、readlinkat 使用。

苹底_关父

公开
化「整数」而化「整数」而「有」

暂无说明。

苹底_父码

公开
化「整数」而「整数」

暂无说明。

苹底_建目录

公开
化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_删文件

公开
化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_删目录

公开
化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_改名

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_读链接

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_计数果

公开
化「整数」而化「整数」而「整数」

文言:句柄之术。汉语:句柄包:读写、定位读写、寻址、关闭、同步、设长度、设非阻塞、建管道、初始句柄与句柄类别。

苹底_读

公开
化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_写

公开
化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_定位读

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_定位写

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_寻址

公开
化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_关闭

公开
化「整数」而「整数」

暂无说明。

苹底_同步

公开
化「整数」而化「整数」而「整数」

暂无说明。

苹底_设长度

公开
化「整数」而化「整数」而化「整数」而「整数」

暂无说明。

苹底_设非阻塞

公开
化「整数」而化「整数」而「整数」

暂无说明。

苹底_建管道

公开
化「整数」而化「整数」而「整数」

暂无说明。

苹底_取句柄类别

公开
化「整数」而化「整数」而「整数」

暂无说明。

苹底_读钟

公开
化「整数」而化「整数」而「整数」

文言:基础:时钟、随机、处理器之数。汉语:基础包:时钟(单调时钟编号 6)、随机(getentropy 每次至多 256 字节)、处理器数(sysctlbyname hw.ncpu)。取初始句柄、退出、查询中断、取平台同 Linux 后端之义,另写于此。

苹底_读单调纳秒

公开
化「整数」而「整数」

暂无说明。

苹底_读墙钟纳秒

公开
化「整数」而「整数」

暂无说明。

苹底_取时钟精度

公开
化「整数」而化「整数」而「整数」

暂无说明。

苹底_填随机字节

公开
化「整数」而化「整数」而「整数」

暂无说明。

苹底_退出

公开
化「整数」而「有」

暂无说明。

苹底_取平台

公开
化「整数」而「整数」

暂无说明。

苹底_取处理器数

公开
化「整数」而「整数」

暂无说明。

苹底_设终端模式

公开
化「整数」而化「整数」而「整数」

文言:终端之模(苹果):TIOCGETA 取七十二字节之 termios(诸标八字节,c_cc 在三十二),原始之模去 BRKINT、ICRNL、INPCK、ISTRIP、IXON 与 ECHO、ICANON、IEXTEN、ISIG,置 CS8,VMIN 一 VTIME 零;行模复其原态;TIOCSETA 置之。汉语:macOS 设终端模式:TIOCGETA(0x40487413)取 72 字节的 termios(各标志 8 字节:输入 0、输出 8、控制 16、本地 24,c_cc 在 32 起,VMIN 下标 16、VTIME 下标 17),第一次取时保存原状态(与 Linux 共用 杂+160 与标志 杂+232);原始模式与 Linux 相同地去掉 BRKINT(0x2)、ICRNL(0x100)、INPCK(0x10)、ISTRIP(0x20)、IXON(0x200) 与 ECHO(0x8)、ICANON(0x100)、IEXTEN(0x400)、ISIG(0x80),置 CS8(0x300);行模式恢复原状态;再用 TIOCSETA(0x80487414)写回。

苹底_取终端尺寸

公开
化「整数」而化「整数」而「整数」

暂无说明。

苹读行核

公开
化「整数」而化「整数」而「整数」

文言:苹果之读行:同 Linux,自标准入逐字读至换行,不回显。汉语:macOS 读行:与 Linux 相同,逐字节读到换行或文件尾,不回显,去掉行尾回车。

苹读行

公开
化「有」而「整数」

暂无说明。