btime应该如何指定?

btime应该如何指定?

我读到Unix系统没有指定btime或者一般像POSIX一样,没有关于btime的规范。有提到btime。

因此问题是,btime 应该如何指定,或者 btime 可以设置为用户想要的任何内容吗?应该指定 bti​​me 吗?如果是这样,已经有人建议将其添加到 POSIX 或 POSIX 的后继者中。如果有人能告诉我可以在哪里发送提案,那就太好了。

答案1

我假设“btime”是指“出生时间”或“文件创建时间”。你是对的,POSIX 目前没有指定这一点,并且有标准中提到了“btime”,甚至在当前的 202x 草案中也是如此。它确实提到了“文件创建时间”,一次,与pax

正如中提到的罗艾玛的回答,该标准确实允许添加额外的字段struct stat。然而,一些平台却回避了这一点;例如,在 Linux 上,文件创建时间可在struct statx,由函数返回statx。添加字段struct stat本身会产生与标准的未来问题发生冲突的风险。

如果你想改变这一点,你需要参与奥斯汀集团,负责更新 POSIX。您应该计划投入大量时间来熟悉其工作方式,并在提出更改建议之前被动参与。您可以首先查看标准当前如何定义现有时间戳以及提及它们的位置(包括导致更新它们的每个函数)。

请注意,在很大程度上,POSIX 并不是合适的场所驾驶改变;一旦它们在某个地方得到支持并证明自己有用,它就会倾向于记录功能并将其规范化。

答案2

POSIX才不是定义btime。但是,它确实允许在统计结构,”其中至少应包括以下成员”,所以我认为非 POSIX 实现没有理由不能包含btime并仍然保持 POSIX 兼容。

...
struct timespec st_atim    Last data access timestamp. 
struct timespec st_mtim    Last data modification timestamp. 
struct timespec st_ctim    Last file status change timestamp. 
...

相关内容