4 ms·
It removes a copy. There's still another one in the installation archive. If you have your system set to CompactOS mode, which you would presumably do if you we
by binarycrusader 7y ago
It removes a copy. There's still another one in the installation archive. If you have your system set to CompactOS mode, which you would presumably do if you were worried about space, I think it really would just be removing a link.
This is not true in this case and is probably due to some interpretation of how packages are installed in Desktop editions of Windows.
In Desktop editions of Windows, many OS files (not all) are installed into the Windows "side-by-side" (aka %WINDIR%\WinSxS) grouped by component. What happens is that when the package containing the component(s) is "staged" (prepared for installation), the files are placed there. When the package transitions to an installed state, the files from the WinSxS are "projected" into the main part of the filesystem using hardlinks.
To further elucidate, Windows has two types of "optional features":
1. "Legacy" optional features
These are the ones that work like you describe. They are sometimes informally referred to as "OCs" (optional components). Packages declare a portion of their payload as a "selectable update" that is then exposed by the legacy "Turn Windows features on or off" control panel and by dism [0]. When one of these legacy features is enabled/disabled the selectable updates may cause registry state to change, but largely just "unproject" or "project" the hardlinks I mentioned earlier.
2. Features On Demand
These are the "modern" Windows Optional Features. They are sometimes informally referred to as "FODs" (features on demand). Unlike the legacy features, one or more packages are associated with a feature via what is called a "capability" identifier. When a package declares this identifier, Windows exposes this as a "Feature On Demand" via the "Manage optional features" settings panel and via dism [1].
Unlike "Legacy" optional features, when a FOD is installed or uninstalled, it actually installs or removes all of the packages for that feature and the associated payload, etc.
Where the confusion likely comes is from the fact that installs are still done the same way I described earlier. That is, files are placed in the WinSxS and then projected as hardlinks into the filesystem.
Definitely? Even though they completely removed mspaint.exe from some of the preview builds a while back?
Choices of which product features are supported are orthogonal to the Features On Demand platform technology. With that in mind, consider that unused features don't need to be downloaded, reduce OS footprint, reduce update downtime, and reduce bandwidth usage during updates all of which can benefit both the customer and the supplier.
I have no insight into product feature choices, but I would encourage you to take a broader view of platform technology choices and consider that they may be orthogonal.
[0] https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/enable-or-disable-windows-features-using-dism https://docs.microsoft.com/en-us/windows-hardware/manufactur...
[1] https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/enable-or-disable-windows-features-using-dism https://docs.microsoft.com/en-us/windows-hardware/manufactur...
- deleted 7y ago[deleted]
- Dylan16807 7y agoOh. So it really will save space, but as a FOD you won't be able to install notepad offline. (On a system by itself.) I find that worse. > Choices of which product features are supported are orthogonal to the Features On Demand platform technology. On a technical level they're separate. But on a "we're trying to deprioritize this to get people off of it" level, they're both worth considering.
- binarycrusader 7y agoOh. So it really will save space, but as a FOD you won't be able to install notepad offline. (On a system by itself.) I find that worse. Not strictly speaking true. You can always provide the cab files for the feature via some other means and still install them using the dism command. Note also that this makes the feature removable it does not necessarily mean it won’t be preinstalled. Regardless this is no different than a typical Linux system where you can remove and add packages as desired.
- Dylan16807 7y ago> provide the cab files for the feature via some other means That's why I said 'by itself'. > Regardless this is no different than a typical Linux system where you can remove and add packages as desired. The minimal actual-machine install of a Linux distro pretty much always has a text editor, doesn't it? You'd have to be at sub-busybox levels of features to lack that. To some extent you can remove everything but the package installer but that's not exactly a supported configuration.
- binarycrusader 7y agoThe minimal actual-machine install of a Linux distro pretty much always has a text editor, doesn't it? You'd have to be at sub-busybox levels of features to lack that. While it’s true that most will have it by default my point is that you can remove them and it is supported. Some Linux distros still expose this directly in their installers. To some extent you can remove everything but the package installer but that's not exactly a supported configuration. Sure it is. Ultimately I’m not sure what you’re driving at. This technology is about making things removable and that is a good thing. The choice is in the hands of the customer.