2025 05 29 HackerNews

2025-05-29 Hacker News Top Stories #

  1. 讨论了当今社会对质量和真实性的关注度下降,以及AI生成内容对媒体和社会的影响。
  2. 介绍了LLM CLI工具的新功能,支持通过Python代码或插件扩展LLM的能力,实现复杂任务。
  3. 介绍了Desktop Docs,一款高级图像和视频搜索平台,支持通过内容、颜色和对象进行AI驱动的搜索。
  4. 认为笔和笔记本是开发者最重要的工具,强调写作和思考在解决问题中的重要性。
  5. 介绍了Mullvad推出的隐私聚焦搜索引擎Leta,通过代理访问搜索结果并采用无盘系统提高隐私保护。
  6. 探讨了在软件工程中过度依赖大型语言模型的风险,可能导致代码质量下降和开发者能力退化。
  7. xAI向Telegram投资3亿美元,将Grok聊天机器人集成至应用,双方分享订阅收入。
  8. 提出了一种优化大型语言模型性能的方法,通过合并模型前向传递为单一"megakernel",提高GPU利用率和速度。
  9. 讲述了因反向工程Waffle House网站创建"Waffle House指数"而收到停止侵权通知的经历。
  10. 介绍了一种在启动前环境中协商PoE+电源的解决方案,通过UEFI应用程序实现高电力水平的协商。

The Who Cares Era #

https://dansinker.com/posts/2025-05-23-who-cares/

本文讨论了我们当前所处的“谁在乎时代”,在这个时代,人们似乎已经失去了对质量和真实性的关注。作者指出,最近发现芝加哥太阳时报和费城询问报都发表了由 AI 聊天机器人生成的“特别补充”,其中包含完全虚构的事实、专家和书名。这种事件表明,整个过程中,包括作者、编辑、商业人员和读者在内的所有人都缺乏对质量的关注。

作者认为,人工智能是这一时代的中心,通过大量资源生成“足够好”的内容,但这些内容往往缺乏真实性和深度。许多人使用人工智能快速生成内容,而不是投入时间和精力创造有价值的东西。作者指出,虽然有一些人使用人工智能创造了有意义的东西,但大多数人只是使用它来生成平庸的内容。

作者还分享了自己与一家播客制作公司的经历,他们最初讨论制作一档关于多元宇宙的深度报道节目,但最终被简化为一个关于互联网的日常聊天节目。这种经历让作者感到失望,认为这是当前时代的一个缩影,即人们更愿意消费平庸的内容,而不是投入时间和精力创造有价值的东西。

此外,作者提到了 Hanif Abdurraqib 关于内容消费方式的变化的观点,即现在很多内容都是设计为在做其他事情时被消费的。作者认为,这种趋势是“谁在乎时代”的一个特征,即人们更愿意接受平庸的内容,而不是投入时间和精力创造有价值的东西。

作者最后指出,在这种时代,人们可以通过真正关心和创造有价值的东西来反抗“谁在乎时代”的趋势。通过支持创造真实内容的艺术家和作家,人们可以促进质量和真实性的回归。作者鼓励读者在日常生活中关心和创造,拒绝平庸的内容,选择真实和有价值的东西。


HN 热度 564 points | 评论 551 comments | 作者:NotInOurNames | 10 hours ago #

https://news.ycombinator.com/item?id=44115620

  • 现代社会存在一种文化上的漠不关心和对平庸的接受,人们对工作的自豪感和责任感下降。
  • 许多大型雇主不愿意为员工提供应有的关心和支持,导致员工难以对自己的工作感到自豪。
  • 有些雇主明确鼓励员工做到中规中矩,压制了员工的积极性和创造力。
  • 过度追求短期利益和财务压力导致了企业的长期价值被忽视,员工的工作积极性也受到了影响。
  • 如果员工的努力和贡献得不到认可和奖励,反而受到不公平的对待,他们就会失去工作的动力和自豪感。
  • 商业飞行的安全性提高是由于商业飞行的监管和系统的改进,而不是企业的努力。
  • 企业的衰落往往是由于长期忽视安全和质量,优先考虑短期利益而导致的。

Show HN: My LLM CLI tool can run tools now, from Python code or plugins #

https://simonwillison.net/2025/May/27/llm-tools/

LLM 0.26 版本发布了一个重要的新功能:工具支持。用户现在可以使用 LLM CLI 工具和 Python 库来授予 LLM 访问任何可以表示为 Python 函数的工具。LLM 还引入了工具插件,允许用户安装插件来添加新功能到当前使用的模型中。

要使用这个新功能,用户需要安装最新的 LLM 版本,可以使用 pip 或 uv 等工具进行安装。然后,用户需要设置 OpenAI API 密钥,并运行第一个工具。LLM 提供了一个简单的 demo 工具,名为 llm_version,用户可以使用 –tool 选项来启用这个工具。

LLM 支持多种模型,包括 OpenAI、Anthropic、Gemini 和 Ollama。用户可以使用 -m 选项来指定使用的模型。LLM 还提供了一个 –td 选项,用于输出工具调试信息,帮助用户了解工具的调用过程。

除了内置工具外,LLM 还支持插件。用户可以安装插件来添加新工具,例如 llm-tools-simpleeval 插件,提供了简单的数学表达式求值功能。用户可以使用 –functions 选项来定义自定义工具,例如搜索博客的工具。

LLM 的工具功能可以帮助用户扩展模型的能力,实现更复杂的任务。用户可以使用 Python 函数来定义工具,并使用 LLM 来调用这些工具。LLM 的工具功能为用户提供了一个强大的工具,帮助用户实现更高级的功能。

LLM 的作者还提到,工具功能的开发过程中遇到了很多挑战,但最终实现了一个强大的功能。作者还提到,LLM 的工具功能可以帮助用户实现更多的功能,例如数学计算、数据查询等。LLM 的工具功能为用户提供了一个新的可能性,帮助用户实现更高级的功能。

总的来说,LLM 0.26 版本的工具功能是一个重要的更新,提供了用户一个强大的工具来扩展模型的能力。用户可以使用 LLM 的工具功能来实现更复杂的任务,例如数学计算、数据查询等。LLM 的工具功能为用户提供了一个新的可能性,帮助用户实现更高级的功能。


HN 热度 484 points | 评论 156 comments | 作者:simonw | 1 day ago #

https://news.ycombinator.com/item?id=44110584

  • Streaming Markdown 渲染器是一个非常有用的工具,可以快速显示流式 LLM 输出
  • 语义路由可以定义基于 mdast 的路由规则,实现终端渲染和工具调用
  • 实现一个高效的 Streaming Markdown 渲染器是一个非常具有挑战性的问题,需要考虑到字符宽度、语言类型和 word wrap 等因素
  • 可以使用 markdown-it-py 库来解决 Streaming Markdown 渲染的问题
  • bat 和 syntax highlighting 可以用于提供快速的命令行访问和输出格式化
  • ai-grep 可以建立在 http 之上,提供透明的查询和映射功能
  • LLM 工具可以通过插件和语义路由来扩展其功能和用途
  • 可以使用 ZSH 插件和 keystroke 来实现 English 到 shell 命令的翻译
  • LLM 工具可以通过编译和格式化来实现不同语言和框架的支持

Show HN: I rewrote my Mac Electron app in Rust #

https://desktopdocs.com/?v=2025

Desktop Docs 是一个全面的平台,用于高级图像和视频搜索。该平台允许用户通过内容、颜色、对象和组成等方面来分析和搜索图像和视频,而不仅仅是文件名。用户可以使用自然语言查询、内容匹配和瞬间结果等功能来快速找到所需的文件。

Desktop Docs 的主要特点包括 AI 理解、100% 私密、闪电般快速和一次性付款等。该平台使用 AI 技术来分析文件内容,而不需要将文件上传到云端,从而确保用户的数据安全。同时,Desktop Docs 还支持多种文件格式,包括图像文件(HEIC、JPG、PNG、GIF、BMP、WEBP)和视频文件(MP4、AVI、MOV、MKV、WEBM)。

该平台已被全球各地的专业人士所信赖,包括制作工作室和内容创作者。用户可以使用 Desktop Docs 来组织和搜索大量的文件,从而提高工作效率。同时,Desktop Docs 还提供了一个结构化的知识库,帮助用户将数字混乱转化为有序的创造力。

Desktop Docs 的工作原理是使用 AI 技术来分析图像和视频的内容,而不仅仅是文件名。用户可以使用参考图像或描述所需的内容来进行搜索。该平台还支持图像相似性搜索,允许用户找到相似的图像或视频。

在文件兼容性方面,Desktop Docs 支持所有主要的图像和视频格式,包括 HEIC、JPG、PNG、GIF、BMP、WEBP、MP4、AVI、MOV、MKV 和 WEBM。同时,Desktop Docs 还提供了一个 FAQ 部分,回答了用户常见的问题,包括高级图像搜索的工作原理、支持的文件格式、图像识别是否在本地进行等。

总的来说,Desktop Docs 是一个强大的平台,用于高级图像和视频搜索。它提供了 AI 理解、100% 私密、闪电般快速和一次性付款等特点,支持多种文件格式,并已被全球各地的专业人士所信赖。


HN 热度 347 points | 评论 252 comments | 作者:katrinarodri | 6 hours ago #

https://news.ycombinator.com/item?id=44118023

  • 使用 Tauri 重写 Electron 应用可以减小应用大小,提高性能和稳定性
  • Tauri 和 Electron 的主要区别在于 Tauri 使用 Rust 作为后端语言,而 Electron 使用 Node.js
  • Tauri 的社区还不够成熟,但它在性能、内存安全和包大小方面有优势
  • 渲染引擎的差异可能会导致跨平台 UI 问题,但可以通过 polyfills 和自动化测试来解决
  • 使用系统 Web 视图可能会遇到不同平台和版本的兼容性问题
  • Tauri 的文档和迁移过程可能会比较困难,尤其是从 1.x 到 2.0 的迁移
  • 重写应用可以简化 UI,提高性能和用户体验,但也需要考虑跨平台支持和兼容性问题

As a developer, my most important tools are a pen and a notebook #

https://hamatti.org/posts/as-a-developer-my-most-important-tools-are-a-pen-and-a-notebook/

这是一篇博客文章,作者是 Juha-Matti Santala,题目是“作为开发者的最重要工具是笔和笔记本”。作者在文章中分享了他作为软件开发者的经历和思考,强调了笔和笔记本在他的工作中扮演的重要角色。

作者提到,在开始新工作之前,他会花时间选择一本新的笔记本,并且认为这本笔记本是他作为开发者的最重要工具。因为在编写代码之前,作者需要花时间思考和设计解决方案,而笔记本帮助他将抽象的想法转化为具体的文字和图表。作者喜欢在笔记本上写下他的想法和设计,然后再开始编写代码。

作者还提到,写作是他思考的重要工具,帮助他发现问题和错误,并且可以将他的想法组织成一个清晰的结构。同时,作者也喜欢将他的代码解释给别人听,这样可以帮助他发现代码中的问题和改进的空间。作者认为,写作是他最喜欢的重构工具,因为它可以帮助他改进代码的质量和可读性。

在文章的最后,作者分享了他如何使用笔记本记录他的工作过程和思考,并且认为这是一种有效的方式来记录他的想法和经验。作者还提到,他喜欢与其他人讨论他的想法和经验,并且希望在 2025 年与更多的人进行深入的讨论。


HN 热度 338 points | 评论 231 comments | 作者:ingve | 17 hours ago #

https://news.ycombinator.com/item?id=44113210

  • 切换工具或环境可以帮助开发者摆脱自动化思维,提高创造力和专注力
  • 使用笔和纸可以带来新的视角和思考方式
  • 频繁切换工具或环境可以提高大脑的适应能力和创造力
  • 写作可以帮助开发者保持思维敏捷和专注力
  • 不同的媒体和工具可以带来不同的优势和劣势,代表不同的思考方式
  • 切换工具或环境可以带来新的视角和思考方式,帮助开发者摆脱困境
  • 频繁切换工具或环境可以提高大脑的适应能力和创造力,帮助开发者保持思维敏捷和专注力

Mullvad Leta #

https://leta.mullvad.net

Leta 是由 Mullvad 提供的一个隐私聚焦的搜索引擎。其名称 “Leta” 在瑞典语中意为 “寻找”、“猎取” 或 “侦察”,发音为 “Lea-tah”。Leta 的主要功能是提供文本搜索结果,用户可以通过 Leta 进行互联网搜索,它会根据用户的选择,通过代理访问 Google 和 Brave 搜索引擎的结果。

用户可以将 Leta 设置为默认搜索引擎,只需在浏览器中访问 https://leta.mullvad.net,并在 URL 栏中右键单击添加。若浏览器不支持直接添加,可以手动设置一个自定义搜索引擎。

Leta 并不是从零开始开发的搜索引擎,而是作为 Google 和 Brave 搜索 API 的前端,代理用户的搜索请求。Leta 的目的是提供一个可靠和可信的私密搜索方式。尽管如此,如果用户已经使用了完美的无日志 VPN、隐私专注的 DNS 服务以及抵御指纹识别的浏览器等,Leta 可能在这些条件下显得无用。

Leta 使用 RAM 缓存来存储每次搜索,缓存的搜索结果最多保留 30 天。每当进行搜索时,首先会检查缓存,如果未命中,则会直接调用 Google 或 Brave 搜索 API。为了增强隐私,所有搜索查询都会进行哈希处理并存储在缓存中,而在 Leta 应用程序重启后,会生成新的秘密哈希,使得之前的搜索记录不可见。

Leta 服务器使用 STBooted RAM 服务器,运行最新的 Ubuntu LTS 操作系统,结合 Mullvad 定制的 VPN 内核。Leta 服务是基于 NodeJS 的应用程序,负责代理请求或从缓存中返回结果。此外,Leta 还收集与缓存搜索和直接搜索数量相关的指标,以了解服务的价值,并监控 CPU 和 RAM 使用情况,以确保服务的顺利运行。


HN 热度 294 points | 评论 152 comments | 作者:microflash | 9 hours ago #

https://news.ycombinator.com/item?id=44116503

  • Mullvad 的广告策略令人质疑,他们的广告投放规模如此之大,是否值得信任。
  • Mullvad 的搜索引擎 Leta 使用内存缓存搜索结果,缓存结果会在 30 天后失效,如果服务器重启,缓存结果将丢失。
  • Mullvad 的服务器使用无盘系统,运行在内存中,提高了隐私保护。
  • Mullvad 的搜索引擎 Leta 可能使用分布式缓存技术,实现多个服务器之间的缓存共享。
  • Mullvad 的广告投放可能是由于获得了资金注入或其他原因,导致他们的扩张。
  • Mullvad 的名称可能需要更改,以避免与其他品牌混淆。
  • Mullvad 的隐私保护措施值得肯定,但他们的广告策略可能会产生反作用。

AI: Accelerated Incompetence #

https://www.slater.dev/accelerated-incompetence/

这篇文章讨论了在软件工程中过度依赖大型语言模型(LLM)的风险。作者认为,LLM 虽然可以快速生成代码,但也带来了许多问题,包括输出风险、输入风险、未来速度和用户婴儿化等。输出风险指的是 LLM 生成的代码可能存在错误或逻辑漏洞,而输入风险则是指 LLM 无法挑战有缺陷的提示或上下文。未来速度问题是指 LLM 生成的代码可能会迅速降低代码库的质量,而用户婴儿化则是指开发人员过度依赖 LLM 会导致他们自己的问题解决能力和批判性思维能力的退化。

作者还提到了程序理论和程序熵的概念。程序理论是指程序员对程序的设计和实现的理解和洞察力,而程序熵则是指程序的复杂性和混乱度。作者认为,LLM 无法真正理解程序理论和程序熵,因为它们仅仅是基于文本的预测模型,无法进行抽象思考和概念理解。因此,LLM 生成的代码可能会增加程序的复杂性和熵,而不是减少它们。

最后,作者得出结论,LLM 并不能取代人类工程师的工作,反而可能会加速人类的无能为力。作者建议开发人员应该谨慎使用 LLM,并且应该注重自己的问题解决能力和批判性思维能力的发展。同时,作者也指出,LLM 的使用可能会带来长期的成本和风险,公司应该谨慎考虑 LLM 的使用和投资。


HN 热度 275 points | 评论 252 comments | 作者:stevekrouse | 12 hours ago #

https://news.ycombinator.com/item?id=44114631

  • AI 辅助编码的讨论反映了软件工程师和数据科学家/机器学习工程师之间的差异,他们对待不确定性和错误的态度不同。
  • 机器学习工程师习惯于处理概率和错误,而软件工程师则更注重确定性和可靠性。
  • 有些团队过度依赖机器学习,而忽视了传统的工程方法,这可能导致问题。
  • 有效的解决方案需要问题理解、技术、数据和基础设施的正确结合。
  • 人类设计的系统在某些情况下可以优于机器学习,特别是当机器学习被当作黑盒处理时。
  • 机器学习团队和产品团队之间的脱节可能导致错误和问题。
  • 机器学习模型的准确率和错误率必须在商业背景下被理解和评估。

xAI to pay telegram $300M to integrate Grok into the chat app #

https://techcrunch.com/2025/05/28/xai-to-invest-300m-in-telegram-integrate-grok-into-app/

Telegram 与 Elon Musk 的 AI 公司 xAI 达成合作伙伴关系,xAI 将向 Telegram 支付 3 亿美元现金和股权,以便在 Telegram 上分发其聊天机器人 Grok,并将其集成到 Telegram 平台上的应用程序中。Telegram 的 CEO Pavel Durov 表示,Telegram 还将获得通过应用程序购买的 xAI 订阅收入的 50%。

该合作伙伴关系使得 Grok 可以被 pin 在聊天窗口的顶部,用户可以从搜索栏向 Grok 提问。Grok 还可以用于写作建议、聊天记录、链接和文档的总结,以及创建贴纸。它还将帮助企业回答问题并协助内容审核。

此外,TechCrunch 还宣布了即将举行的 TechCrunch Sessions: AI 会议,会议将于 6 月 5 日在加利福尼亚州伯克利举行。会议将邀请 OpenAI、Anthropic、Khosla Ventures 等公司的领导者进行演讲和工作坊。注册会议的用户可以享受 300 美元的折扣,并可以以半价购买第二张票。


HN 热度 248 points | 评论 309 comments | 作者:freetonik | 8 hours ago #

https://news.ycombinator.com/item?id=44116862

  • 如果这项服务是用户真正想要的,Telegram 应该向 xAI 支付费用,而不是相反。
  • 这笔交易可能是 xAI 为获得更多用户和数据而做出的投资。
  • Telegram 的决定可能是出于商业考虑,希望通过与 xAI 的合作获得更多利润。
  • 有人认为 xAI 的做法类似于 Google 向 Apple 支付费用,以保持其搜索引擎在 iOS 设备上的默认位置。
  • 这种合作可能会导致 AI 服务中出现广告或其他形式的盈利模式。
  • 有人质疑 xAI 为什么要向 Telegram 支付 3 亿美元,是否有其他目的或潜在利益。
  • 这笔交易可能是 xAI 为扩大其用户基数和提高其服务知名度而做出的战略举动。
  • 有人认为,这种合作可能会改变人们搜索和购买商品的方式,尤其是在旅行和酒店预订等领域。
  • 这种模式可能会让 AI 服务提供商获得更多的用户数据和商业机会。

Look Ma, No Bubbles: Designing a Low-Latency Megakernel for Llama-1B #

https://hazyresearch.stanford.edu/blog/2025-05-27-no-bubbles

本文讨论了如何优化大型语言模型(LLM)的性能,特别是在低延迟应用中。作者指出,现有的 LLM 推理引擎在运行 Llama-1B 模型时,只能利用 GPU 带宽的 50%,这是因为模型的前向传递被分解成多个小内核,每个内核执行特定的操作。这种方法会导致内存 pipeline bubbles,GPU 在等待内核完成和加载权重时会处于空闲状态。

为了解决这个问题,作者提出了一种新的方法,即将整个模型前向传递合并成一个单一的"megakernel"。这种方法可以消除内核边界,减少内存 pipeline bubbles,提高 GPU 利用率。作者使用了一种 on-GPU 解释器来执行 megakernel,解释器可以执行一系列指令,每个指令对应一个特定的操作。这种方法可以重用指令序列,减少计算开销。

作者还讨论了 megakernel 的三个关键问题:如何融合多个操作,如何防止资源竞争,如何同步 GPU。作者提出了一种机制来解决这些问题,包括使用 on-GPU 解释器,共享硬件资源,和高效的同步方法。实验结果表明,megakernel 方法可以提高 GPU 利用率,达到 78%,并且在低延迟应用中比现有的方法快 1.5 倍。

总的来说,本文提出了一种新的方法来优化 LLM 的性能,特别是在低延迟应用中。这种方法可以提高 GPU 利用率,减少内存 pipeline bubbles,提高模型的推理速度。作者的实验结果表明,megakernel 方法是一种有效的方法,可以提高 LLM 的性能。


HN 热度 221 points | 评论 28 comments | 作者:ljosifov | 23 hours ago #

https://news.ycombinator.com/item?id=44111673

  • 本文的写作风格很好,易于理解,希望更多的论文也能采用这种风格。
  • 论文中提到的 megakernel 方法在减少 CUDA 图形的开销方面取得了不错的效果,但缺乏与 CUDA 图形的比较数据。
  • CUDA 图形在重复启动时可以比流式处理更快,但创建和实例化图形的开销很高。
  • megakernel 方法可能对小模型更有用,因为大模型的总时间中,内核切换的时间占比较小。
  • 希望能看到对不同模型大小和批次大小的理论结果和实际测试数据。
  • 认为 Nvidia 应该提供更好的同步原语来支持这种优化方法。
  • megakernel 方法不仅限于 CUDA,也可以在其他 LLM 引擎和 GPU 上实现。
  • 随着 LLM 的广泛使用,可能会出现操作系统级别的服务来降低首次令牌的时间,但这也会带来一些问题,如内存占用和计算资源竞争。

Getting a Cease and Desist from Waffle House #

https://www.jack.bio/blog/wafflehouse

这篇文章讲述了作者在 2024 年 9 月份,飓风 Helene 即将登陆佛罗里达州时,利用空闲时间对 Waffle House 的网站进行反向工程的经历。作者的目的是创建一个"Waffle House 指数",这个指数可以用来衡量自然灾害的严重程度。Waffle House 是一家著名的连锁早餐店,以其即使在最恶劣的天气条件下也坚持营业的精神而闻名。

作者首先解释了为什么要创建 Waffle House 指数。由于 Waffle House 的网站没有提供实时的店铺关闭信息,作者决定利用网站的数据来创建一个地图,显示哪些店铺关闭了。作者使用 Next.js 和 React Server Components 来获取数据,并使用 Python 进行数据处理和缓存。最终,作者成功创建了一个实时地图,显示了关闭的 Waffle House 店铺。

然而,作者的创作并没有被 Waffle House 忽视。公司的市场和法律团队联系了作者,要求其停止使用 Waffle House 的商标和数据。作者最初对此感到惊讶,但最终还是删除了网站。尽管如此,作者仍然对这段经历感到兴奋,并认为这是一个有趣的编程挑战。

在整个过程中,作者与 Waffle House 的团队进行了交流,包括一位高级官员。作者对 Waffle House 的回应感到惊讶,但最终还是尊重了公司的要求。作者还感谢 Waffle House 的团队对其创作的认可,并对这段经历感到感激。

这篇文章不仅讲述了作者的编程经历,还涉及了商标和数据使用的法律问题。作者的创作虽然最终被删除,但仍然为读者提供了一个有趣的案例,展示了编程和法律的交叉点。同时,文章也展示了作者对编程的热情和创造力,以及对 Waffle House 品牌的喜爱。


HN 热度 219 points | 评论 138 comments | 作者:lafond | 7 hours ago #

https://news.ycombinator.com/item?id=44117302

  • 网站使用了沃夫勒屋的商标和标志,应该移除这些元素后继续运行网站
  • 沃夫勒屋的法律部门出于保护商标的需要发送了停止侵权通知
  • 网站主人应该与沃夫勒屋协商,达成协议后继续运行网站
  • 沃夫勒屋可以考虑授权网站使用其商标和标志
  • 网站的关闭可能是由于沃夫勒屋担心数据抓取问题
  • 数据抓取在某些情况下是允许的,沃夫勒屋的法律部门应该更明确地说明他们的需求
  • 网站的关闭可能是由于沃夫勒屋的营销部门和法律部门没有有效沟通
  • 沃夫勒屋指数并不是一个官方的指数,而是一个口语化的衡量标准
  • 网站主人应该寻求法律咨询,了解如何处理停止侵权通知和商标使用问题
  • 移除商标和标志元素后,网站可以继续运行,不需要完全关闭
  • 沃夫勒屋的法律部门可能会更新他们的服务条款,以禁止未经授权的数据抓取
  • 网站主人可能由于经济原因,无法承担与沃夫勒屋进行法律纠纷的费用
  • 数据抓取在某些情况下是允许的,但需要遵守相关法律法规和服务条款

Negotiating PoE+ Power in the Pre‑Boot Environment #

https://roderickkhan.com/posts/2025-05-16-poe-uefi-solution

这篇文章讲述了作者 Roderick Khan 在 2015 年工作的一个项目中遇到的一个挑战。这个项目是关于开发 PoE(Power over Ethernet)供电的嵌入式 x86 计算机和数字标牌系统。这些系统是全功能的 Windows 10 Professional 机器,使用 Intel Atom 处理器,旨在简化部署过程通过直接从以太网线中获取电力。

然而,作者遇到了一个问题:这些设备需要的电力超过了标准 PoE(802.3af)的最大输出电力(15.4W)。一些网络交换机不愿意提供额外的电力,这导致了设备无法正常启动。作者需要找到一种方法来协商更高的 PoE+ 电力,但是在操作系统启动之前。

为了解决这个问题,作者研究了 UEFI(统一可扩展固件接口)应用程序的概念。UEFI 应用程序是一种可以在计算机启动前环境中运行的软件,能够访问低级系统功能,包括网络、文件系统和输入/输出设备。作者找到了一个名叫 Piotr Król 的自由职业者,他曾是 Intel 的 BIOS 软件工程师,来帮助他开发一个 UEFI 应用程序。

Piotr 开发了一个名为 PoePwrNegotiator 的 UEFI 应用程序,能够传输 LLDP-MED(链路层发现协议-媒体端点发现)数据包并请求更高的电力水平。这个应用程序被部署在所有生产设备中,并且工作得非常好。

作者将 PoePwrNegotiator 开源,以便其他人可以使用和修改它。这个项目的目标是提供一个独特的解决方案来解决 PoE 供电的 x86 系统中的电力协商问题。作者希望这个项目能够帮助其他人解决类似的挑战,并且能够为人们提供一个学习 UEFI 网络行为的机会。

作者还对他的团队成员 Carlos 和 Piotr 表示感谢,感谢他们在这个项目中的贡献和支持。作者认为这个项目是一个很好的例子,说明创新往往来自于解决限制和挑战,而不是仅仅依赖于现有的资源。


HN 热度 209 points | 评论 59 comments | 作者:pietrushnic | 23 hours ago #

https://news.ycombinator.com/item?id=44111609

  • 单板计算机依赖 USB-PD 供电,需要在 5 秒内完成电源协商,否则会导致供电切断或出现问题。
  • USB-PD 协商通常在 Linux 中处理,但在系统启动前需要完成协商,否则会导致系统卡在启动循环中。
  • 有些设备使用薄型 USB-C 控制器,需要驱动程序来处理电源协商,这可能会导致安全问题和客户服务问题。
  • USB 控制器芯片应该提供非易失性存储来设置电源配置,避免启动时出现问题。
  • 部分设备使用 USB-C 供电,但不支持 USB-PD,需要使用默认 5V 的电源适配器。
  • 高于 5V 的电源输出需要设备和电源之间进行握手协商,确保设备可以处理更高的电源输出。
  • Ethernet 或 USB 物理层不应将电源协商存储在小型非易失性存储中,并在启动前处理电源协商。
  • 部分设备在关闭状态下仍可以通过电源适配器充电,但需要电源适配器支持慢充功能。
  • Apple 设备通过硬件处理电源协商,避免了软件处理的复杂性和潜在问题。
  • USB Power Delivery(PD)标准允许设备请求特定的电源水平,但需要设备和电源之间进行协商。
  • 电源协商需要考虑电缆类型、距离和设备电源需求等因素,确保安全和可靠的供电。
  • 部分网友认为,电源标准不应设定固定的电压和电流限制,而应允许设备宣传其能力,并通过协商确定电源水平。