Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. MiMo v2.6(xiaomi.com)
    369comments
  2. Spymarks, Not Watermarks(brand.io)
    82comments
  3. Can gzip be a language model?(nathan.rs)
    discuss
  4. Transformers Explained Visually(poloclub.github.io)
    55comments
  5. MiMo-v2.6-Pro: Intelligence, Performance and Price Analysis(artificialanalysis.ai)
    6comments
  6. Attention is all you have(alicegg.tech)
    218comments
  7. What Sun got wrong(dtrace.org)
    326comments
  8. I don't want to read what you didn't write(colinbreck.com)
    214comments
  9. AI coding has made CI a bottleneck, so we reworked ours to keep up(linear.app)
    223comments
  10. NASA’s Mars Sample Return mission is dead(science.org)
    308comments
  11. Apple Music to open concert venue in Battersea Power Station(bbc.com)
    45comments
  12. Looking forward to Git 2.56 – and 3.0(lwn.net)
    43comments
  13. Divide by depth for instant 3D(gabrieloc.com)
    23comments
  14. Engineering Memory: On learning to memorize first 100 digits of pi (2024)(gregorygundersen.com)
    1comments
  15. The Advisory Group on Mathematics and Artificial Intelligence(terrytao.wordpress.com)
    59comments
  16. Socrates vs. the Written Word (2011)(wondermark.com)
    14comments
  17. World Wide Words(worldwidewords.org)
    discuss
  18. PDF Forgeries Are Surprisingly Rare (2022)(gwern.net)
    26comments
  19. How do traffic signals work? (2019)(practical.engineering)
    57comments
  20. Claude Status – Elevated errors for multiple models(claude.com)
    74comments
  21. Python Workers are now generally available(cloudflare.com)
    36comments
  22. Frontier AI on Your Own Hardware(timdettmers.com)
    75comments
  23. HERMES radio enables voice and data communication over vast distances(ieee.org)
    54comments
  24. Grok 4.7(x.ai)
    472comments
  25. Turn off and restrict access to Apple Intelligence features on Mac(support.apple.com)
    192comments
  26. Apple Copland D11E4 Booting in the Browser(pagetable.com)
    37comments
  27. More floating point alternatives(wizardzines.com)
    19comments
  28. First Shader from Zero in Godot 4(gdquest.com)
    7comments
  29. Why does mathmain need an encrypted loader?(safedep.io)
    36comments
  30. Roboharm: Do frontier robot policies refuse unsafe instructions?(robocurve.org)
    22comments

Epoll and Kqueue: How Operating Systems Learned to Wait Efficiently

11 pointsby 1d agothecodinggopher.substack.com
2 comments
1h agoHN ↗

It's slop

But kqueue goes further. It’s not just about file descriptors.

This inversion changes the cost model entirely. Idle connections are cheap. Active connections drive work. Scale becomes feasible.

epoll and kqueue didn’t just improve performance—they changed how systems are designed.

epoll and kqueue are not just APIs. They are acknowledgments

(And that's if you give it cookies. If you don't give the site cookies, it just crashes outright; the content is there, but then some JS wipes it just to tell you "Oh no—this page croaked.")

…and a fair bit of the content is just flagrantly incorrect, but that's par for LLMs. The two biggest things that are just glaringly wrong is that kqueue is a more general interface; most of the alleged "counter-examples" that supposedly make kqueue more general are well-supported¹ by epoll(2).

The article also claims that epoll "won", or something, but never mentions the competing IOCP model, which has seen renewed interest, especially on Linux, in the form of io_uring in recent years. IOCP is pretty fundamentally different, but it has some advantages to (less copying comparing to readiness polling) but some disadvantages (In a naïve implementation, each pending read is holding a buffer, and that can mean a lot of memory use; io_uring has answers to this, but that adds complexity. There's also complexity regarding ownership and cancellation; there are good write-ups about AsyncDrop from the Rust community, but the problem is more general than Rust.)

¹with file I/O being the notable exception. The problem is tractable, in userspace. And … honest nothing stops a readiness model, or even epoll, from working with disk I/O, just, AFAIK, Linux doesn't wanna.

1h agoHN ↗

I was just wondering about that. It's hard to pin down exactly why it's so annoying, but it's like, sentences that are grammatically correct but effectively meaningless. I came to your comment with:

Final thought > epoll and kqueue are not just APIs. They are acknowledgments that waiting is the dominant cost in networked systems—and that waiting must be handled efficiently.

Already copied as an example of a sentence that is technically english but adds no meaning to the whole article.

I wish I could downvote this stuff.