So over-provisioning is no longer needed for this purpose.
That depends. While unallocated space is unused storage on a drive that can be utilized for various purposes (i.e., it can be allocated for data storage or other purposes as needed), overprovisioning is a
deliberate allocation of a portion of the SSD's capacity for wear leveling, garbage collection, and other maintenance tasks to enhance the SSD's performance, longevity, and overall reliability.
Remember that the TRIM command that gets sent by the OS does not force the SSD firmware to immediately erase the blocks that no longer are in use. It only marks
these blocks data stored within these blocks as invalid. There is no way to tell when these blocks will actually be erased, if ever. I have already explained this fact on numerous occasions.
Factory over-provisioning cannot be disabled. As its name suggests, it's baked into the SSD by factory design. That's just because it is very much needed of course. Typically, the negative effects caused by excessive
write amplification are the main reason why that is. How much
additional space the user needs to assign (if any) as over-provisioning space to ensure smooth performance, longevity, and reliability depends on factors.
The SSD does still need some unused space for performing its wear leveling algorithms and data consolidation within its blocks, else it will slow down on writes. But it is not a lot of space.
See above. It depends. For the average user under the vast majority of "everyday-normal" circumstances, ideally the additional OP space does not have to exceed 10% of the SSD's total capacity, but in corporate environments setting it to 30% is not uncommon, and this can actually go all the way up to 50% or sometimes even higher.
Because of TRIM, any unused space on an SSD is equivalent as far as providing this free space. Say 5% free is needed (I don't know the best number actually), these are all equivalent: partitioning all of the space on the SSD and not filling it up to more than 95% with files; partitioning only 95% of the SSD and leaving 5% unallocated;, or creating an unused partition of 5%. Also should mention that SSD have a small amount of over-provisioning built into them.
See above. The use of TRIM does not guarantee that, each time when the firmware performs the various maintenance tasks, enough blocks will have already been erased
beforehand to make these tasks produce similar results in such a way that would make them equally as efficient.
When the firmware detects that not enough blocks have been erased so they still contain data that has been marked as invalid, write operations result in writing to blocks that either have never been written to or have already previously been erased. It doesn't erase the blocks and write to them immediately after. That is, excepting only when it has no other choice, as erasing them takes time causing these writes to be delayed which hurts performance.
Yes, it tries to erase enough blocks in advance to avoid slowdowns, but no, it doesn't do that immediately as soon as possible. To the contrary, the vast majority of SSDs actually wait this out until the very last moment, as that in fact is central to what enables them to attempt to more aggressively avoid those specific writes that, in the ongoing internal analytic processes of the SSDs themselves, show a high (or growing...) potential to being able to be avoided. This predictive nature of the SSDs' internal optimization strategy has a few downsides. Predictions aren't always accurate so, it can happen that the SSD waits too long to erase more blocks. Setting additional OP space can be one effective way to overcome this obstacle. Which it very often is.