Unix 纪元时间何时从 1971 年修改为当前的 1970 年值?

2024-02-29

根据第一版Unix 程序员手册 http://cm.bell-labs.com/cm/cs/who/dmr/pdfs/man22.pdf, Unix 时间定义为“自 1971 年 1 月 1 日 00:00:00 以来的时间,以六十分之一秒为单位测量”

该值何时更改为 1970 年 1 月 1 日午夜 (UTC) 的当前值?


在第一版 Unix(1971 年 11 月)中,time 系统调用的手册页 http://man.cat-v.org/unix-1st/2/sys-time声明它返回“自 1971 年 1 月 1 日 00:00:00 以来的时间,以六十分之一秒为单位”。这是一个 32 位值,因此即使视为无符号,它也只能跟踪该日期之后大约 2.26 年。然而手册页和源码注释 http://minnie.tuhs.org/cgi-bin/utree.pl?file=V1/u2.s将系统调用描述为“获取一年中的时间”,年份不能是set http://man.cat-v.org/unix-1st/1/sdate,以及date http://minnie.tuhs.org/cgi-bin/utree.pl?file=V3/man/man1/date.1命令和ctime() http://man.cat-v.org/unix-1st/3/ctime函数(用于格式化日期和时间)无法格式化年份,甚至无法正确处理大于 1 年的时间值,因此可能预计每年都会手动重置日期,并且手册页中的 1971 年为意义不大。好吧,除了 1972 年多了一天这个小问题之外;对此,note http://minnie.tuhs.org/cgi-bin/utree.pl?file=V3/man/man3/ctime.3后来添加到错误部分:“例程必须为闰年重新组装”。好的。

1972 年,时间系统调用的手册页是changed http://minnie.tuhs.org/cgi-bin/utree.pl?file=V3/man/man2/time.2声明它返回自“1972 年 1 月 1 日 00:00:00”以来的时间,并附注:“时间以 32 位存储。这保证每 2.26 年发生一次危机。”

在第四版 Unix 中(1973 年 11 月)时间系统调用 http://minnie.tuhs.org/cgi-bin/utree.pl?file=V4/man/man2/time.2更改为返回“自 1970 年 1 月 1 日 00:00:00 GMT 以来的时间,以秒为单位”。 (手册页的日期为 1973 年 8 月 5 日,因此可能是最初进行更改的时间。)这基本上是当前的定义,除了历史术语GMT已被更精确的协调世界时并对闰秒进行了澄清。在将其作为有符号 32 位数字返回的系统上,这将一直有效,直到2038年 http://en.wikipedia.org/wiki/Year_2038_problem。幸运的是,现在许多系统都使用 64 位作为该值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Unix 纪元时间何时从 1971 年修改为当前的 1970 年值? 的相关文章

  • 命令行参数中的“-”(破折号)有什么魔力?

    例子 创建 ISO 映像并将其直接刻录到 CD mkisofs V Photos r home vivek photos cdrecord v dev dev dvdrw 更改到上一个目录 cd 侦听端口 12345 并解压发送到该端口的数
  • 使用 setcap 功能运行时 JLI_InitArgProcessing 的 Java“符号查找错误”

    我们在服务器上安装了 Java 11 旨在监视网络接口的流量 初始安装后 yum install java 11 openjdk devel x86 64 the java命令对两者都适用root and a 普通用户 但是 我们的 Jav
  • 操作系统崩溃的常见原因[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有兴趣了解 操作系统崩溃 不限于Windows崩溃 最常见的技术原因 从操作系统编程的角度 有哪些 我正在寻找一个不像 打开太多应用
  • 如何拆分一行并重新排列其元素?

    我在一行中有一些数据 如下所示 abc edf xyz rfg yeg udh 我想呈现如下数据 abc xyz yeg edf rfg udh 以便打印备用字段并用换行符分隔 有没有这样的衬里 下列awk脚本可以做到这一点 gt echo
  • shell 脚本:错误的解释器:使用 pwd 时没有这样的文件或目录

    我想用 for 循环遍历目录中的文件 但这出现了 echo bad interpreter No such file or directory code bin bash count 0 dir pwd echo dir FILES ls
  • linux下如何获取昨天和前天?

    我想在变量中获取 sysdate 1 和 sysdate 2 并回显它 我正在使用下面的查询 它将今天的日期作为输出 bin bash tm date Y d m echo tm 如何获取昨天和前天的日期 这是另一种方法 对于昨天来说 da
  • Python 用静态图像将 mp3 转换为 mp4

    我有x文件包含一个列表mp3我想转换的文件mp3文件至mp4文件带有static png photo 似乎这里唯一的方法是使用ffmpeg但我不知道如何实现它 我编写了脚本来接受输入mp3文件夹和一个 png photo 然后它将创建新文件
  • 如何在Unix中将相对路径转换为绝对路径[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想转换 相对路径 home stevin data APP SERVICE datafile txt to 绝对路径 home stev
  • tar 和 zip 有什么区别? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 tar 和 zip 有什么区别 每个的用例是什么 tar其本身只是将文件捆绑在一起 结果称为tarball 尽管zip也应用压缩 通常你使用gzip随
  • 为什么总是./configure;制作;进行安装;作为 3 个单独的步骤?

    每次从源代码编译某些内容时 都会经历相同的 3 个步骤 configure make make install 我明白 将安装过程分为不同的步骤是有意义的 但我不明白 为什么这个星球上的每个编码员都必须一次又一次地编写相同的三个命令才能完成
  • Python 中的 Unix cat 函数 (cat * > merged.txt)? [复制]

    这个问题在这里已经有答案了 一旦建立了目录 有没有办法在Python中使用Unix中的cat函数或类似的函数 我想将 files 1 3 合并到 merged txt 我通常会在 Unix 中找到该目录 然后运行 cat gt merged
  • 抑制 makefile 中命令调用的回显?

    我为一个作业编写了一个程序 该程序应该将其输出打印到标准输出 分配规范需要创建一个 Makefile 当调用它时make run gt outputFile应该运行该程序并将输出写入一个文件 该文件的 SHA1 指纹与规范中给出的指纹相同
  • 如何通过 UNIX mailx 命令发送电子邮件?

    如何通过 UNIX 发送电子邮件mailx命令 一个例子 echo something mailx s subject email protected cdn cgi l email protection 发送附件 uuencode fil
  • 从 shell 命令调用 SOAP 请求

    我使用curl 向Web 服务发送SOAP 请求 并使用shell 脚本获取响应 请在下面找到我正在使用的命令 curl H Content Type text xml charset utf 8 H SOAPAction d sample
  • 如何查看正在运行的 tcsh 版本?

    如何查看我的 UNIX 终端中运行的 tcsh 的当前版本 看着那 这version多变的 echo version tcsh 6 14 00 Astron 2005 03 25 i386 intel linux options wide
  • ssh远程变量赋值?

    以下内容对我不起作用 ssh email protected cdn cgi l email protection k 5 echo k 它只是返回一个空行 如何在远程会话 ssh 上分配变量 Note 我的问题是not关于如何将本地变量传
  • 是否可以创建一个脚本来保存和恢复权限?

    我正在使用 Linux 系统 需要对一组嵌套文件和目录进行一些权限实验 我想知道是否没有某种方法可以保存文件和目录的权限 而不保存文件本身 换句话说 我想保存权限 编辑一些文件 调整一些权限 然后将权限恢复到目录结构中 将更改的文件保留在适
  • 在退出脚本之前等待后台进程完成

    在退出脚本 TCL Bash 之前 如何确保所有后台进程已完成执行 我正在考虑将所有后台进程 pid 写入 pid 文件 然后最后 pgrep pidfile 以查看在退出之前是否有任何进程仍在运行 有一些更简单的方法可以做到这一点吗 TC
  • 安装 R 包。包含目录为空。开发标头

    我目前正在尝试运行一些最初在 2 11 0 下运行的 R 代码 我使用的 R 版本 2 14 1 无法运行该代码 我不熟悉 R 及其向后兼容性 据我所知 我的问题可能与版本无关 我会很高兴得知这是我做错的事情 其余的代码是无关紧要的 即使我
  • C# 中的 Unix 套接字

    我正在尝试使用 Mono 的 UnixEndPoint 但在使用它之前就失败了 我在 64 位 Windows 7 系统上运行 Xamarind net 4 5 下面是一些代码 证明单一组合不起作用 foreach SocketType s

随机推荐

  • 实施到我的应用程序的深层链接后,应用程序图标不出现

    我正在 Android Studio 中开发一个应用程序 它运行得很好 但是在实现了到我的启动活动的深层链接后 我的应用程序没有出现在菜单中的应用程序图标 我知道该应用程序已安装 因为它出现在 设置 gt 应用程序 中 我知道问题出在man
  • 如何将 python 字符串转换为 ucs2 十六进制?

    我一直在寻找这个 但找不到 尽管它看起来很简单 我需要在 url 中发送 ucs2 十六进制字符串 但我不知道如何将 python 字符串转换为 ucs2 十六进制 有什么想法吗 gt gt gt encode utf16 b xff xf
  • 将视频字幕与文本转语音同步

    我尝试创建一个文本视频 其中的文本通过文本转语音进行叙述 为了创建视频文件 我使用VideoFileWriter of Aforge Net如下 VideoWriter new VideoFileWriter VideoWriter Ope
  • R 中通过列值的排列进行聚合

    背景 我正在处理出发地 目的地数据 我想计算每对城市之间的比例流量 但是 我发现很难按每对城市聚合数据 因为这些城市对涉及列条目的排列 我可以使用大量 for 循环和条件通过暴力来完成此操作 但这需要很长时间才能计算 具体来说给定以下形式的
  • 在 React-Redux 中实时重新排序列表的最佳方法?

    I m currently build an app that have a realtime list the view of list as bellow picture 当触发以下操作之一时 此列表将实时更新 有消息更新 update
  • 如何以角反应形式保存价值?

    当用户导航到不同的组件 例如隐私策略 并返回表单时 我希望在角度表单输入字段中保留值 当用户从隐私政策返回到表单时 他应该看到之前输入的数据 单击 保存 按钮后如何保留数据 当用户单击 保存 按钮时 我们调用下面的方法 它会删除旧密钥并将新
  • 计算移动平均/滚动函数的快速方法,允许自定义权重

    一个可以用TTR SMA or TTR EMA 但这些不允许自定义权重 我想出的一种解决方案是使用data table frollapply library data table x lt data table type rep 1 100
  • 从另一个程序分配特定的内存地址,并更改它的值

    最近我请假几天 想做一个用 C 处理内存地址的小程序实验 我想看到的是 当前正在运行的程序 我们称之为程序 A 创建了一个指向堆中 int 对象的指针 是否可以被另一个程序看到并被修改 程序 B 所以对于程序A 这是我的基本代码 Progr
  • Scala 的 Cake Pattern 可以在 Haskell 中实现吗?

    使用 Scala 中的许多较新的语言功能 可以实现可组合组件系统并使用 Martin Odersky 在论文中描述的所谓的 Cake 模式创建组件可扩展的组件抽象 http lampwww epfl ch odersky papers Sc
  • 使用icalendar 通过 Python 解析 iCal feed

    我正在尝试使用 python 中的icalendar lib 来解析具有多个事件的提要 summary description 等工作正常 但对于 dtstart 和 dtend 它返回我 icalendar prop vDDDTypes
  • C# MVC 4 ViewModel 不接受 null DateTime

    我在学习 C 和 mvc4 时遇到了一些麻烦 问题出现在我的应用程序的过滤器部分 我有一个 ViewModel 它获取数据库的 Listar Produtos 列表 以及一些用于搜索选项的字段 我打算做的是让过滤器接受任何字段 即使它是空值
  • 无法保存到数据库或从中检索(正确的信息)

    我使用以下命令 成功 将数据保存到数据库 try Save the new Client now Profile profile new Profile Salutation Salutation FirstName FirstName M
  • 事务隔离级别很好的解释[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 获取WM_KEYDOWN消息中lParam参数的第30位

    我需要获取随 WM KEYDOWN 消息传递的 lParam 参数的第 30 位 这一点如所写here http msdn microsoft com en us library ms646280 28v vs 85 29 aspx让我知道
  • gnuplot 中的文件名完成未完成边界

    我使用 gnuplot 很长时间了 我总觉得有一个问题是它没有关闭 在选项卡上完成文件名 例如 gnuplot gt p fo
  • IllegalStateException 编译 Clojure-Contrib

    我正在尝试使用 Maven 编译我自己的 clojure contrib 版本 但出现以下异常 Exception in thread main java lang IllegalStateException Can t dynamical
  • iOS 6 像消息一样共享,而不是像照片那样共享(UIActivityViewController 和 UIDocumentInteractionController)

    在 iOS 6 中 点击照片应用中的操作按钮会显示标准的 UIActivityViewController 在消息中执行相同的操作会提供一组不同的选项 在我看来 它就像使用 UIDocumentInteractionController a
  • 内存映射 - 部分基于磁盘的算法

    对于可溢出数据结构 即队列 是否有任何好的资源或书籍 当存储大型对象时 它可能会填满所有内存 但是如果您可以将该队列结构中最常用的项目保留在内存中 并将其余项目保留在磁盘上 有点像分页 同样 这个问题也适用于其他结构 例如链表 数组 哈希表
  • Matplotlib:具有从主轴映射的值的辅助轴

    I have a graph showing x4 vs y y 是其他变量的对数 例如 q 即 y log q q 的值是外行人在阅读该图时会理解的值 我想在图表的右侧设置一个辅助轴 其中线条与左侧轴处于相同的垂直位置 但标签被等效的 q
  • Unix 纪元时间何时从 1971 年修改为当前的 1970 年值?

    根据第一版Unix 程序员手册 http cm bell labs com cm cs who dmr pdfs man22 pdf Unix 时间定义为 自 1971 年 1 月 1 日 00 00 00 以来的时间 以六十分之一秒为单位