• Espi@lemmy.world
    link
    fedilink
    arrow-up
    75
    arrow-down
    1
    ·
    1 year ago

    This is a byproduct of one of the largest and more ignored differences between windows and linux. The fact that Linux let’s you modify files while they are open whereas windows doesn’t.

    This means that you can update a linux system by just replacing the files with the new ones while it runs. On the other side, Windows can’t modify its own files while it runs, so instead it has a second entire OS to update itself, and requires a reboot to unload all the files and boot from the updater without locking windows files.

    • vacuumflower@lemmy.sdf.org
      link
      fedilink
      arrow-up
      13
      ·
      1 year ago

      In some sense this would even seem an advantage of Windows. (I know it’s the fundamental reason for many hangs and freezes, but the idea that a file is a lockable resource doesn’t seem that bad.)

      • uis@lemmy.world
        link
        fedilink
        arrow-up
        6
        arrow-down
        1
        ·
        1 year ago

        There is flock/fcntl for you. But locking is bad for performance too, especially in multithreaded enviroments.

      • Espi@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        arrow-down
        3
        ·
        1 year ago

        I think files being locked is really intuitive, which greatly helps new users. Allowing files to be modified or deleted while they are open makes it really easy to shoot yourself in the foot. For example in the video of Linus switching to Linux he was uncompressing a file and tried to open it while it was still uncompressing, which failed since the file wasn’t complete. He didn’t understand why the file wasnt uncompressing correctly. That can’t happen on Windows, since the file being uncompressed would be locked.

        I think there should be a ‘lockable mode’, and for distributions oriented to new users the home directory should be mounted like that.

        • uis@lemmy.world
          link
          fedilink
          arrow-up
          9
          ·
          1 year ago

          There IS ‘lockable mode’ since System V era. It is extensively used by package managers and similar stuff.

          Deleting file does not actually deletes it from disk until last program closes it. And there are ways to open file such that changes to file will not be seen in program.

          • Espi@lemmy.world
            link
            fedilink
            arrow-up
            1
            arrow-down
            1
            ·
            edit-2
            1 year ago

            Yeah with “lockable mode” I mean locking by default instead of requiring every program to specifically call for locking.

            It would probably break lots of software, but only using such mode for the users home (or maybe even specific Downloads/documents/desktop/etc folders within the home directory) could reduce the impact.

            [Edit] wait I think there is whole fs locking mode on mounting, with the “mand” option, going to test it.

      • Espi@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        1 year ago

        No, silverblue does all the work before you restart the computer, and the actual work doesn’t involve replacing the OS itself but basically downloading some files and just checking a different git branch when booting.