I assume the OP is only talking about desktop computer, as servers are a whole different world (there UPSes are basically ubiquitous, and things like storage arrays and disk/raid controllers even have their own battery backed RAM)
It just is a matter of complexity against usefulness...
Let's start off by saying that there are very, very few workloads where a power outage is actually an issue, mainly workstations running long simulations (days to weeks long). otherwise a power failure is nothing more than a nuisance. So from the start the benefits of designing something outage proof are minimal.
Now apart from when performing certain kinds of major updates, the OSes are actually designed so that the disk always stays in a consistent state, so in case of a power outage the system is still bootable and stable, thus the downside is only the loss of what is in memory.
The addition of outage resiliency would also be extremely complex in the current market for economic/technical reasons:
- Backward compatibility: anything you do, if you want any hope of widespread adoption, it must be backward compatible with the ATX standard, mostly dating back to the 90's, so good luck.
- all PSUs now need to be intelligent enough to reliably detect a power loss and report it to the main processor, realistically the only way is coaxing intel into adding it to the ATX standard, because:
A) it needs to be universal, not a different communication method for eack PSU OEM
B) you actually need the OEMs to implement it in something other than their halo products, which is of questionable feasibility given the already razor thin margins in what ammounts to a commodity market
- Also software will probably need to be aware of emergency shutdown, as you only need to save the bare minimum to resume work (trying to save 16-32 GB to a bunch of spinning rust would realistically require way too much energy
- The solution will need to be batteryless (you can't expect a consumer to regularly replace batteries every couple of years, and beside good luck trying to find spare batteries for old motherboards