spoiler

made you look

  • 0 Posts
  • 34 Comments
Joined 9 months ago
cake
Cake day: July 27th, 2024

help-circle
rss
  • 2011? That’s basically last week right?

    Support for it (and UEFI ) came with their push into servers, they were forced to make the platform a lot less special and more general purpose like x86 traditionally has been.

    End user facing hardware is a different matter though, like I know you can boot the Raspberry Pi via UEFI/ACPI (It builds the ACPI tables in the bootloader), but then Apple doesn’t use it at all for their ARM hardware and it uses something closer to a modern OpenFirmware.


  • I think x86 is basically the only platform that’s used ACPI, other hardware usually ships a fixed hardware list in firmware that the bootloader/kernel can read (Since it’s not like the motherboards are modular, e.g. the RTC is never going to randomly be connected to a different controller)

    Historically ARM didn’t even do that, it was mostly used in tightly linked systems so you’d just build those assumptions into the software itself (e.g. a Gameboy always has a directional pad on specific pins, so you just read those pins directly) I remember the early days of the Raspberry Pi involved device dependent kernel images because they had to code the specific initialisation routines into the drivers, it took a while for them to gain “device tree” support so you could have a generic kernel.



  • A place I worked at did it by duplicating and modifying a function, then commenting out the existing one. The dev would leave their name and date each time, because they never deleted the old commented out functions of course, history is important.

    They’d also copy the source tree around on burnt CDs, so good luck finding out who had the latest copy at any one point (Hint: It was always the lead dev, because they wouldn’t share their code, so “merging to main” involved giving them a copy of your source tree on a burnt disk)








  • I think the biggest issue would be a lack of interfaces to the C side code, they’re slowly being fleshed out and each one enables more functionality for the Rust modules.

    e.g. the test Ext2 driver a MS dev wrote last year after enough of the filesystem interfaces got hooked up

    But even then, I don’t think the maintainers would accept one that replaces the existing C driver, that’d break non-Rust builds and architectures, and that’s a sure-fire way to get Linus on your case. Best you can hope for is one that complements a C driver, and even then I think you’d need a good reason to have two drivers for the same hardware.




  • NTFS was designed back in the mid 90s, when the plan was to have the single NT kernel with different subsystems on top of it, some of those layers (i.e. POSIX) needed case sensitivity while others (Win32 and OS/2) didn’t.

    It only looks odd because the sole remaining subsystem in use (Win32) barely makes use of any of the kernel features, like they’re only just now enabling long file paths.






  • Better, kid friendly urban infrastructure like dedicated bike paths protected from car traffic, better pedestrian areas, parks and so on. Kids will get outside their house if there is a kid friendly outside. A greener, more human friendly outside where you can socialize with other humans would always be preferred over doom scrolling online.

    Good luck with that, people and politicians love cars, parking lots and highways, and the media is demonising kids as criminals.