每日HackerNews RSS

## Xbox 360 与熔毁/幽灵的前兆 2005年,在Xbox 360的CPU(三核IBM PowerPC芯片)上工作时,我发现了一个危险的设计缺陷。为了在显著的内存延迟问题下提高性能,增加了一条新的指令——`xdcbt`。这条指令绕过L2缓存,直接将数据提取到L1缓存,但关键的是,它破坏了内存一致性。 最初,崩溃被追溯到我自己的内存复制例程,该例程使用了`xdcbt`,预取略微超出缓冲区边界导致数据损坏。修复例程解决了直接问题。然而,游戏*继续*崩溃,即使没有直接使用该指令。 根本原因远更险恶:推测执行。CPU的分支预测器可以*预测* `xdcbt` 指令,即使分支未被执行,也会启动预取。这种推测执行与真实的`xdcbt` 具有相同的有害影响,在核心之间创建不一致的内存视图。 一个简单的测试——用未命中的断点替换`xdcbt`——证实了这个问题。这条指令风险太高;控制推测执行是不可能的。这段经历,在熔毁和幽灵事件发生之前多年,凸显了绕过缓存一致性机制的危险,展示了*甚至未执行*的指令如何导致系统故障。最终,该指令被认为对发布的游戏来说过于危险,无法使用。

概述:Kalpa 是一款原子化和事务性的 Linux 桌面环境,提供 Plasma 桌面,源自 KDE 项目。桌面环境基于 Tumbleweed,基础系统基于 MicroOS,是 openSUSE 项目的成员。 下载安装介质:安装 ISO 请参阅文档页面。 感谢:Aeon 在 Kalpa 实现过程中提供的巨大帮助,Codeberg 提供网站托管,Zola 使网站部署不再令人头疼,Juice 使网站更易于阅读。

## OpenSUSE Kalpa 摘要 OpenSUSE Kalpa 是一个基于 KDE 的新型 Linux 发行版,建立在 MicroOS 基础上,旨在实现“原子化”和事务性的系统管理方式。这意味着更新被处理为完整的系统快照,允许在出现问题时轻松回滚,并通过不可变性提高系统稳定性。 用户报告安装程序简洁易用,但强制使用 Btrfs 全盘加密并禁用交换空间,转而使用 zram。虽然体验总体上是积极的,但也强调了非自由编解码器需要手动配置,以及需要像 Distrobox 这样的工具来管理 Flatpak 之外的软件。 Kalpa 与 Tumbleweed 等标准滚动发行版不同之处在于,它优先考虑一致且可恢复的系统状态。它面向重视稳定性和易于迁移的用户——理念是简单地将主目录和 distrobox 转移到新硬件。然而,它仍然处于 alpha 阶段,可能比传统发行版需要更多的技术专业知识,尤其是在复杂的设置中。该项目是对相关 AeonOS 发行版中缺乏 KDE 支持的回应。

本文提出了一种关于幸福的争议性重新分类:将其定义为一种精神疾病,称为“重度情感障碍,愉悦型”,并提倡将其纳入诊断手册。作者认为幸福在统计上不常见,表现出一致的症状,与认知扭曲相关,并且可能源于神经系统异常。 该提议借鉴现有文献,通过提出即使是积极的偏离常态也应被视为一种疾病,来挑战人们对心理健康的传统观念。作者预先驳斥了幸福本质上是积极的这一常见反对意见,认为这种价值判断与科学分类无关。本质上,该论点基于这样的想法:就像精神疾病代表大脑功能的异常一样,过度的幸福也同样如此,值得临床关注。

## 远程工作与生育之间的意外联系 最新研究(Davis 等人,2026 年)揭示了一种令人惊讶的联系:远程工作显著提高生育率。该研究分析了 38 个国家和美国的数据,估计远程办公 (WFH) 每年可增加约 291,000 名美国新生儿——这一数字超过了所有早期儿童支出计划的影响,且*无需任何纳税人成本*。 这种效应是通过促使现有父母生育更多孩子来实现的,而不是创造新的父母。 尽管如此,在 2025-26 年,亚马逊和摩根大通等公司推动下,强烈的“回归办公室”(RTO) 运动势头迅猛。 这种转变实际上是“反生育主义”的,尤其具有讽刺意味的是,埃隆·马斯克和马克·安德森等直言不讳的“生育主义者”在资助生育技术的同时,*也在*拆除工作场所的灵活性。 讽刺的是,2026 年霍尔木兹海峡危机迫使几个亚洲政府*强制*实行远程办公以节约燃料,无意中恢复了已被美国企业放弃的安排。 尽管这场危机造成的经济困难最终会抑制出生率,但强制 WFH 表明了一种现成、经济高效的政策,可以提高已经计划生育家庭的生育能力。 关键要点? 混合模式(每周 1-2 天在办公室)可以在解决协作问题同时,捕捉到大部分生育益处。 然而,目前的趋势优先考虑办公室出勤,而非基于证据的、支持家庭增长的政策。

桑迪亚国家实验室开发了 LAPIS 编译器框架,以提高稀疏线性代数计算的效率。LAPIS 基于多层中间表示 (MLIR) 构建,优先考虑生产力、性能和跨各种硬件架构的可移植性。 一项关键创新是 Kokkos 方言,它能够将代码从高级语言翻译成特定于架构的实现,并促进与科学机器学习 (SciML) 的集成。对于分布式内存系统,新的分区方言管理稀疏张量分布并优化通信模式。 LAPIS 明显提高了 GPU 上稀疏和稠密内核的性能,这得益于线性代数级别的优化——传统编程面临的挑战。其应用包括稀疏线性代数、图内核、TenSQL 数据库和子图同构算法,展示了其多功能性和可移植性。最终,LAPIS 为解决涉及稀疏数据的复杂计算问题提供了一个强大的工具。

最近的 Hacker News 讨论围绕一篇论文,该论文详细介绍了使用线性代数感知编译器进行高效稀疏计算(由 osti.gov 发布,预计 2025 年)。核心思想是为科学发现中常见的计算负载(如稀疏回归 (SINDy))优化编译器,在问题规模扩大时,计算效率成为瓶颈。 评论者质疑这种新方法与现有工具(如 MATLAB、SciPy 和 Julia)相比如何,有人认为它类似于“带有 MLIR 的 SciPy”。另一些人指出与 OpenXLA 和 PyTorch 等框架的相似之处,并注意到生成 Kokkos C++ 内核的潜在好处。 一个关键的争论在于,是否需要构建一个新的编译器框架,或者为现有项目(如 Torch Inductor 或 OpenXLA)做出贡献。一些人认为,一个更简单、限制更少的框架将是一项有价值的贡献,而另一些人则想知道该项目相对于新兴语言(如 Mojo)的地位。

🛡️ 快速验证 我们正在检查您的连接以防止自动化滥用 为什么我看到这个? 有问题吗?联系客服

## 龙宫小行星样本揭示生命基石 龙宫小行星的样本中包含所有五种核碱基——DNA和RNA的基本构成单元。phys.org报道称,这一发现加强了小行星可能将这些关键成分输送到地球,从而为地球播下生命种子的理论。 这一发现支持了生命起源并非完全是地球内部过程的观点。虽然生命的形成本身仍然是个谜,但这些构成单元的广泛存在表明它们在整个太阳系中都很常见。 讨论的重点在于这些成分是否能够经受住前往地球的旅程,一些人认为大气层进入会摧毁它们。另一些人则指出输送的时间——在地球最初形成后补充地球耗尽的供应——以及生命可能起源于火星,然后通过陨石撞击转移的可能性。这场争论凸显了从无机物产生生命的挑战以及持续探索生命起源的努力。

将受保护的品牌字体复制粘贴到Google文档中,无需授权。Google Workspace允许付费的品牌将自定义公司字体嵌入到文档和幻灯片中。通常,这些字体仅限于购买自定义字体的品牌使用,但有一个漏洞:复制/粘贴。以下是一些你可以这样做的品牌字体。享受吧。(但这在Google移动应用上不起作用) 找到你想要“走私”到Google文档中的字体 点击字体将其复制到剪贴板 打开Google文档或幻灯片文档并粘贴。

最近的调查显示,Meta正在大力资助一项超过20亿美元的游说活动,通过众多非营利组织(如数字儿童联盟)伪装,以推动美国通过年龄验证法案。这些法案将要求苹果和谷歌在其操作系统中构建监控基础设施,允许应用程序持续验证用户年龄——本质上是创建永久数字身份。 值得注意的是,Meta自己的平台将免于这些要求,从而获得竞争优势。这种策略通过分散资金绕过了典型的选举支出透明度规定。 拟议的系统与欧盟的做法形成鲜明对比,欧盟优先使用零知识证明来进行年龄验证,以保护隐私。专家警告说,这些美国法律可能会损害设备安全,并迫使甚至注重隐私的操作系统实施侵入式身份检查,最终将Meta的利益置于用户隐私之上。

← 返回首页 示例 点击或拖动画布与模拟互动。 标签 ▾ 实时演示 多人物理 实时服务器权威模拟 — 移动角色,推动物体,实时查看其他玩家。 开始游戏 → 原始 Haxe 引擎由 Luca Deltodesco 制作 • JS 编译器由 Andrew Bradley 制作 • TypeScript 封装由 Istvan Krisztian Somoracz 制作 MIT 许可

## 软糖几何:一个混乱的物理游乐场 一款名为“软糖几何”(newkrok.github.io)的新型网页玩具,因其令人愉悦的不稳定物理效果而备受关注。用户可以创建和互动各种形状,并很快发现缺乏明确的指导会导致不可预测且常常令人捧腹的结果。 用户报告说,他们创造出奇特、相互连接的形态,这些形态会颤抖并“争夺”稳定性,看起来像挣扎的人物或几何细菌。巧妙的互动包括建造蹦床、锚定形状,甚至将它们丢出画面。 开发者NewKrok使用了nape-js物理引擎,承认存在一些不稳定因素,但也指出它比许多类似的2D求解器更稳定。尽管在一些浏览器(特别是Firefox)上存在兼容性问题,但该演示仍然极具吸引力,评论者认为它具有成为类似《愤怒的小鸟》的休闲游戏的潜力,并包含解谜和竞争元素。它被形容为“疯狂的乐趣”和“明显具有生物性”。

## 构建一个玩具 Shell:深入剖析 这个项目详细介绍了创建一个简化的 shell(“andsh”)的过程,旨在理解 shell 内部机制,而不仅仅是*使用*它们。作者从头开始构建这个 shell,专注于核心功能,例如读取-求值-打印循环(REPL)、命令执行和管道。 最初的 shell 提供了一个基本的提示符,读取用户输入,并可以执行外部命令。开发进一步进行,通过标记化输入并使用 `fork()` 和 `execvp()` 来启动进程,从而处理命令行参数。添加了处理 `$?` 退出状态和将 `cd` 实现为内置命令等基本功能。 进一步的增强包括环境变量扩展(例如 `echo $HOME`)和管道(`cmd1 | cmd2`),使用 `pipe()` 和 `dup2()` 连接进程流。最后,shell 通过集成 readline 库来实现历史记录和选项卡补全,从而显著改善了用户体验。 虽然“andsh”功能可用,但仍不完整,缺乏诸如引用和重定向之类的功能。然而,该项目提供了对底层系统调用和 shell 实现中涉及的复杂性的宝贵见解,突出了功能与复杂性之间的权衡。完整的代码可在 [healeycodes/andsh](https://github.com/healeycodes/andsh) 获取。

## 构建 Shell:一则 Hacker News 讨论总结 最近 Hacker News 上进行了一场关于构建 Shell 的讨论。原始帖子详细描述了一位开发者的经验,强调了构建核心功能带来的乐趣,但也承认了复杂字符串解析带来的挫败感。 许多评论者表达了相同的感受,指出 Shell 解析与典型的编程语言解析不同,并且可能很快变得难以应对。讨论的解决方案包括利用词法分析器模式和代数数据类型来简化流程,以及使用现有的 `readline` 库来实现编辑和 Tab 补全等功能。 几位用户分享了他们自己的 Shell 构建项目,强调了从中获得的宝贵学习经验——特别是对进程管理(如 `execve` 和 `clone3`)和作业控制的复杂性的理解。 还有人指出了 Codecrafters 和 OpenBSD ksh 等资源作为极佳的学习工具。一个反复出现的主题是,虽然 Shell 的概念很简单,但它隐藏着巨大的复杂性,构建一个 Shell 可以深入了解操作系统的工作原理。

更多

联系我们 contact @ memedata.com