News for hackers. Stuff that matters.
Re:I help seniors with technology issues. A regular came in ... by kevincox on Monday October 24, 2022 @09:16AM (#33316227)
This is the key. Lots of systems have seamless updates where the only real interruption is a reboot.

Android does an A/B update and after a only slightly slow reboot is in the new version. It then does some optimization in the background that can have a slight performance impact.

NixOS must be the gold standard here. It downloads and completely installs the new version in the background then a regular-speed reboot is enough to be running the new system. (~10s on my system)

But Windows and macOS both have crazy slow update processes. When I had a mac for work I was dumbfounded by how slow the update process was. It regularly took >30min! Those machines are crazy fast, it seems like it could have written a TiB of data in that time so IDK what it is actually doing.

Re:I help seniors with technology issues. A regular came in ... by atonse on Monday October 24, 2022 @10:03AM (#33316744)
100% agree with this.

Point updates of macOS take 20+ minutes on an M1 Max with 32GB of memory and a blazing fast SSD. What could it possibly be doing?

Even iOS updates are a bit faster.

Is apple even interested in fixing this?

Re:I help seniors with technology issues. A regular came in ... by shadowgovt on Monday October 24, 2022 @10:31AM (#33317141)
> What could it possibly be doing?

If memory serves: point-symbol optimizations to make code calls into The objective-C libraries performant.

Under The hood, objective-C really does use strings to reference library functions. So when the OS is updated, the string interning table is updated and all of the installed software has to have its string to symbol caches rewritten to account for the new API.

There are almost certainly better ways to do this but if I understand correctly, Apple inherited the existing solution without putting enough thought into how it would scale and now changing the solution would break an indeterminate amount of software depending upon the current implementation.

Re:I help seniors with technology issues. A regular came in ... by saagarjha on Monday October 24, 2022 @10:45AM (#33317352)
No, installed software is not patched on updates.
Re:I help seniors with technology issues. A regular came in ... by shadowgovt on Monday October 24, 2022 @11:02AM (#33317607)
Not "installed software patched;" caches rebuilt.
Re:I help seniors with technology issues. A regular came in ... by saagarjha on Monday October 24, 2022 @11:03AM (#33317623)
They come from Apple on a signed system image that cannot be modified.
Re:I help seniors with technology issues. A regular came in ... by shadowgovt on Monday October 24, 2022 @11:27AM (#33317967)
Sorry, can you clarify? What is the "they" in that sentence?

EDIT: a sibling comment jogged my memory; the thing I was doing a bad job of remembering was prebinding. https://opensource.apple.com/source/cctools/cctools-622.5.1/...

When a new version of the OS is installed, the OS re-runs prebinding for applications to the dynamic libraries they rely on because the dynamic libraries may have changed. The alternative is to have a big latency bump every time an app is launched for the first time as the caches are rebuilt on-the-fly.

(I think this is the step that used to be called "Making Your Macintosh Happy" during an install, but the veracity of that notion has fallen too far down the Google search hole for me to easily pull up a reference to confirm or deny it).

Re:I help seniors with technology issues. A regular came in ... by plorkyeran on Monday October 24, 2022 @12:10PM (#33318574)
That's no longer done on install. The modern equivalent of it is part of the signed image that you download from Apple.
Re:I help seniors with technology issues. A regular came in ... by batman-farts on Monday October 24, 2022 @11:12AM (#33317776)
Yes, it’s been like this since the 10.0/public beta days at least. I remember wondering about it back then. I believe the command the system updater always runs is something like update_prebinding -root /
Re:I help seniors with technology issues. A regular came in ... by atonse on Tuesday October 25, 2022 @07:57AM (#33329326)
And they can’t precompute those caches for particular libraries and ISA combinations? They know exactly what hardware it’ll run on.
Re:I help seniors with technology issues. A regular came in ... by saagarjha on Monday October 24, 2022 @10:46AM (#33317358)
Ventura improves update times to 5-10 minutes on my computer.
Re:I help seniors with technology issues. A regular came in ... by pooper on Monday October 24, 2022 @10:14AM (#33316890)
I think practically all the problems with Windows will go away with one simple change. Do not ever reboot a computer without a user's consent. Any feature that requires automatic reboot should be opt-in.

However, this exposes the real challenge. We cannot have informed consent without informed users. I think this problem will haunt us repeatedly in the future. We need users to know at least a little bit about their options. Only then can they make informed choices on what option to pick. This means people can't glaze over the details and not worry about them. This does not mean you have to be a computer wizard. You just need to know what you want and pick an option that is good for you. For example, I run this on Fedora:

    sudo dnf offline-upgrade download -y && time sudo dnf offline-upgrade reboot
Any update requires a reboot. However, I am ok with it because I am positive each update comes after a lot of testing. More importantly, I am in control of when to run this update. I can't accidentally run it because it requires my sudo password.

I used to wonder why no corporation complains about Windows Update. Then I learned that virtually all companies use group policy to change Windows Update behavior to suit their organization. Therefore, this is a non-issue for them. Welp.

Re:I help seniors with technology issues. A regular came in ... by hinkley on Monday October 24, 2022 @11:58AM (#33318405)
> Do not ever reboot a computer without a user's consent.

That also includes never crashing, which Microsoft has historically struggled with.

If you don’t reboot in an orderly way, then the machine crashes while the user is doing something, and when it restarts everything is different. “Don’t restart” is insufficient for good UX here.

Re:I help seniors with technology issues. A regular came in ... by TheRealDunkirk on Monday October 24, 2022 @01:03PM (#33319291)
The problem here is that a modern OS should only need to be rebooted when the kernel is updated, and Microsoft's security model requires updating the kernel all the time. On Linux, kernel security updates are usually, "Hey, update this when you get a chance, because a bad actor already on your system could escalate privilege in a rare scenario." With Windows, it's an almost-weekly, "Hey, update right now, because someone in another country is pwning all unpatched machines that aren't air-gapped from the internet."
Re:I help seniors with technology issues. A regular came in ... by pooper on Monday October 24, 2022 @04:19PM (#33322094)
> a modern OS should only need to be rebooted when the kernel is updated

You can still choose to reboot for every update. The point though is that it is a choice.

   sudo dnf offline-upgrade download -y && time sudo dnf offline-upgrade reboot
It doesn't nag me at all other than ask me for my sudo password. It is perfect.

Here is what I understand about dnf offline-upgrade

> The process of restarting, applying updates, and then restarting again is called Offline Updates. Your computer boots into a special save-mode, where all other systems are disabled and where network access is unavailable. It then applies the updates and restarts.

https://fedoramagazine.org/offline-updates-and-fedora-35/

> With Windows, it's an almost-weekly, "Hey, update right now, because someone in another country is pwning all unpatched machines that aren't air-gapped from the internet."

I see. I feel like I don't quite understand the extent of the problem. In any case, I am not qualified to even attempt to propose a fix. My mode of thinking was Google Chrome and derivatives are able to slowly walk along with increasingly scarier visible warnings asking users to restart the web browsers but they don't (as far as I know) reboot the web browser while the user is still using it. Even Google Chrome OS didn't do that (well, it didn't back when I had my cr-48). When I updated Mozilla Firefox on my Fedora machine, existing tabs continued to work. New tabs would come with a warning for me to close Firefox and open it again. This is the kind of warning I was getting rid of with offline-upgrade.

I agree with my parent comment though. Updates are too bloated. Windows updates should be very fast with a modern processor (Intel eighth gen, AMD equivalent or greater), enough memory, and a fast SSD. Even DNF which has a very renowned reputation (at least among Fedora users) of being slow, is pretty reliably fast. I think the point that my parent comment was making was make people not dread rebooting their machine. My thought was

1. educate the users why reboots are essential 2. allow the users to postpone reboots indefinitely

However, I don't know what to say if there is an active remote command exploitation in the wild. It is important to get the update to the user before the exploit. However, that goes against everything I've said so far. I guess this leads us to the status quo. Those who have the know-how to use group policy can opt out of certain Windows Update behavior. The rest can either learn to do this: and set up their own Windows Update server? Periodically check CVE and gate update releases? Not sure how it works...

The reason I hesitate and say automatic reboot should be OPT-IN is sometimes I like to do some simple long running task like stitch photos I took into a video using ffmpeg. It can take hours on a slow laptop processor. It would really suck to do something like that and come back to see the computer rebooted itself.

Re:I help seniors with technology issues. A regular came in ... by tgsovlerkhgsel on Tuesday October 25, 2022 @01:41AM (#33326663)
Aren't Windows updates outside of the monthly update cycle exceptionally rare?