{"id":"mb-20261017-88d259","kind":"deep","title":"撑起全球几十亿台手机时间的，居然只是几个老程序员维护的纯文本文件","summary":"现代计算机只负责计算流逝的秒数，而决定几点几分的时区规则，全由各国政治与法律决定。从萨摩亚抹掉的一整天到黎巴嫩分裂的时区，全球软硬件之所以能对齐时间，全靠开源志愿者三十多年手工维护的 tzdata 纯文本文件，以及法律对客观历史事实的捍卫。","body":"你的手机到底怎么知道现在几点了？\n头顶上有几十颗 GPS 卫星，地底下有原子钟。\n手机里的芯片连上网，就能精确知道从 1970 年元旦到现在过去了多少秒。\n但是，这些顶尖的物理学设备，完全不知道你现在几点。\n物理学管得了时间的流逝，管不了人类的法律。\n\n有人可能会想：按经度算不就行了吗？\n地球自转一圈 24 小时，经度每差 15 度就是一个时区。\n写三行代码就能搞定的事，有什么难的？\n要是事情真这么简单，全世界的程序员做梦都能笑醒。\n现实是，时区从来不是地理问题，它是政治问题。\n各国政客改起时间来，从来不按常理出牌。\n\n2011 年，南太平洋岛国萨摩亚嫌自己和主要贸易伙伴澳大利亚差了一整天，做生意太麻烦。\n政府大笔一挥，决定直接跳过国际日期变更线。\n2011 年 12 月 29 日晚上，全国老百姓上床睡觉。\n第二天一睁眼，日历直接变成了 12 月 31 日。\n12 月 30 日这一整天，在萨摩亚的建国史上直接被凭空抹掉了。\n如果你的手机按数学公式算，那一天它该怎么跳？\n\n还有更让人头疼的突发政令。\n2016 年夏天，埃及议会突然决定取消夏令时。\n什么时候通知的？\n距离夏令时生效只剩三天。\n航空公司的订票系统、银行的计息程序、手机的自动闹钟，全在屏幕前傻眼了。\n2023 年 3 月，黎巴嫩总理临时下令，把夏令时推迟一个月，方便大家过斋月。\n离生效只剩 48 小时。\n结果当地的基督教马龙派教会拒绝服从，宣布按原时间改。\n整个国家当场裂成两个时区。\n同一座城市里，马路这边的学校和马路对面的医院，硬生生过着两个不同的时间。\n\n既然全世界的政客这么能折腾，你的手机又是怎么做到从不出错的？\n难道苹果、谷歌、微软在每一个国家都派了专员盯议会开会吗？\n并没有。\n全球几十亿台手机、服务器和航班系统，背后全靠一个叫 tzdata 的数据库撑着。\n听名字像是个极其庞大的跨国工程。\n你把它从网上下载下来解压，会发现它简陋得让人不敢相信。\n里面就是几个最普通的纯文本文件。\n记事本就能打开。\n文件名按大洲排：africa、asia、europe、northamerica。\n每一行就是一段最朴素的文本：地名、哪一年哪一月改了时间、拨快还是拨慢几个小时。\n\n那谁在维护这份纯文本文件？\n它不是联合国管的，也不是哪家科技巨头养的专业团队。\n从 1980 年代开始，这套关乎全球运转的数据，主要靠几个老程序员在邮件列表里当志愿者。\n最早由美国国家卫生研究院的阿瑟·戴维·奥尔森（Arthur David Olson）发起。\n后来加州大学洛杉矶分校的计算机系教授保罗·埃格特（Paul Eggert）接手主编，一管就是三十多年。\n全球任何一个地方的政客半夜发通知改时间，邮件列表里的志愿者就会去翻那个国家的官方公报、报纸甚至是列车时刻表。\n核实清楚后，埃格特教授在文本文件里敲上一行新规则。\n然后运行一个叫 zic 的编译器，把文本打包成二进制规则文件。\n苹果、谷歌、微软和各大 Linux 操作系统，再把这个小更新包抓回去，推送到全球几十亿台设备里。\n你第二天早上的闹钟才没有迟响一个小时。\n\n这么关键的东西，难道没人找过麻烦吗？\n还真有。\n2011 年，一家做占星软件的商业公司 Astrolabe，突然把奥尔森和埃格特告上了法庭。\n这家公司声称：他们曾经出版过两本世界历史时区工具书，tzdata 里记录的历史时区数据，抄了他们的书，侵犯了版权。\n面对巨额索赔，两位义务干活的老人根本无力承担，只能被迫把服务器关停。\n全球技术圈瞬间炸锅：要是没有这个数据库，全人类的操作系统全部要乱套。\n最后电子前沿基金会（EFF）免费接下了这场官司。\n理由特别干脆：\n历史上某年某月某日政府改了时钟，这是客观发生的事实。\n法律保护独创性表达，不保护客观事实。\n任何人都没有权利把历史时间据为己有。\n占星公司眼看毫无胜算，不仅撤了诉，还公开签了道歉声明。\n这场风波之后，负责全球互联网基础协议的机构 ICANN 正式把它收编为全球官方标准，由埃格特教授继续主持。\n\n我们每天划着最新的智能手机，看着大模型和火箭升空。\n总觉得数字世界是一座精密坚固的现代大楼。\n真要顺着地基一层层扒开看，很多承重梁就是几个老头在几十年前敲下的几行纯文本。\n他们不是为了发财，也没成立什么跨国公司。\n只是觉得既然没人管，那我就顺手把它记下来。\n全世界几十亿台设备，今天就这么安安静静地跑在这些纯文本上。","topic":"撑起全球几十亿台手机时间的，居然只是几个老程序员维护的纯文本文件","frame_type":["机制"],"citations":[],"channel_note":"","identity_notice":"","source_type":"generated","status":"published","generated_at":"2026-10-17 08:16:55","legal_anchor_count":0,"transcript_citation_count":0}