• MystikIncarnate@lemmy.ca
    link
    fedilink
    English
    arrow-up
    0
    ·
    3 months ago

    I’m just saying, but we did.

    Pretty much every electronic thing you own that resembles a computer (phones, tablets, laptops, desktops, even your damned TV) uses UTC. Every. Single. One. Translates that time to “local” whenever it needs to.

    So when your TV goes from 9:32 to 9:33, is just showing the converted time from UTC each time.

    Almost every device on the planet is keeping time in UTC.

    Just because you don’t see UTC time on your device, doesn’t mean that’s not what’s happening. I had an issue where I needed to get into my computer’s bios for something, as soon as the BIOS loaded and showed the time, it was “wrong” because it was in UTC. I’m sure plenty of newer BIOS dialogs are configured to account for timezones now, so yeah. I might be unique in this. It’s still there.

    • Cethin@lemmy.zip
      link
      fedilink
      English
      arrow-up
      0
      ·
      3 months ago

      Almost all computers count time as seconds from the epoch (midnight 1/1/1970). That then gets converted into a readable time, which may go through UTC to be converted first, but that’s not how it’s storing it.

      • MystikIncarnate@lemmy.ca
        link
        fedilink
        English
        arrow-up
        0
        ·
        3 months ago

        You’re referring to UNIX time. And you’re correct.

        It’s a count of how many seconds from midnight, January first, 1970, UTC.

        Local computers update that time, still in UTC, from time servers, usually over NTP, then translate that time reading from UNIX time in UTC, to a human readable format in the local time zone.

        All computers are still keeping track of time from Epoch in UTC.

      • zarenki@lemmy.ml
        link
        fedilink
        English
        arrow-up
        0
        ·
        3 months ago

        Unix time is far less universal in computing than you might hope. A few exceptions I’m aware of:

        • Most real-time clock hardware stores datetime as separate binary-coded decimal fields representing months, days, hours, minutes, and seconds as one byte each, and often the year too (resulting in a year 2100 limit).
        • Python’s datetime, WIN32’s SYSTEMTIME, Java’s LocalDateTime, and MySQL’s DATETIME similarly have separate attributes for year, month, day, etc.
        • NTFS stores a 64-bit number representing time elapsed since the year 1601 in 100-nanosecond resolution for things like file creation time.
        • NTP uses an epoch of midnight 1900-01-01 with unsigned seconds elapsed and an unusual base-2 fractional part
        • GPS uses an epoch of midnight 1980-01-06 with a week number and time within the week as separate values.

        Converting between time formats is a common source of bugs and each one will overflow in different ways. A time value might overflow in the year 2036, 2038, 2070, 2100, 2156, or 9999.

        Also, Unix time is often managed with a separate nanoseconds component for increased resolution. Like in C struct timespec, modern *nix filesystems like ext4/xfs/btrfs/zfs, etc.

    • zarenki@lemmy.ml
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      as soon as the BIOS loaded and showed the time, it was “wrong” because it was in UTC

      Because you don’t use Windows. Windows by default stores local time, not UTC, to the RTC. This behavior can be overriden with a registry tweak. Some Linux distro installer disks (at least Ubuntu and Fedora, maybe others) will try to detect if your system has an existing Windows install and mimicks this behavior if one exists (equivalent to timedatectl set-local-rtc 1) and otherwise defaults to storing UTC, which is the more sane choice.

      Storing localtime on a computer that has more than one bootable OS becomes a particularly noticable problem in regions that observe DST, because each OS will try to change the RTC by one hour on its first boot after the time change.

      • MystikIncarnate@lemmy.ca
        link
        fedilink
        English
        arrow-up
        0
        ·
        3 months ago

        That’s a nice theory, it would be a shame if I was only running Windows 10 on my desktop.

        Spoiler: I am. No Linux or any other os or bootloader in sight.

        • zarenki@lemmy.ml
          link
          fedilink
          English
          arrow-up
          0
          ·
          3 months ago

          That’s strange. As far as I can tell from any web searches, every version Windows still defaults to storing local time to the hardware clock and there are no reports of that changing with an update, nor is there any exposed setting control to configure this behavior outside of regedit. If you’re curious enough, you can check the current setting in the registry at HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation. Windows maintains the current time as UTC if and only if the RealTimeIsUniversal key is present and nonzero.

          I expect it’s more likely some other issue would make the BIOS display an hour that’s inconsistent with your local timezone. For example, maybe a bug in the BIOS, maybe a timezone offset setting within the BIOS, or maybe a dead clock battery.

    • thegoodyinthehoody@sh.itjust.works
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      But would the moon work on a 24 hour system at all?

      I can’t believe I just typed that as a serious comment

      Didn’t Bajor have a 28 hour day? I’m now voting for Universal Bajoran Time

    • Kilamaos@lemmy.world
      cake
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      Honestly quote irrelevant. It’s hidden away. It’s not shown to us. It could use literally any frame of reference, like farts since the beginning of times, if it’s converted for you, then it’s not.