No, I explain this clearely
Since 1998, a standard has been published and explained the different unit to be used in space size.
Sorry, but I will use french notation since I don't know the US one.
1 o=1 octet= 8 bits= 1 byte.
1Go= 1000 Mo
1Gio= 1024 Mo.
So:
128 Go= 128 000 Mo = 119.7 * 1.024 Go = 119.7 Gio
What you really have is 119.7 Gio or 128 Go (it is exactly the same thing!!).
Windows will give you 119.7 Go instead of Gio!!
It doesn't mean that you loose space, just that windows doesn't know how to count!
It is like I would give you the value of a distance in feet while I did measure it in meters...
So, due to this windows mistake, you will indeed see:
samsung 128 GB -> 119.3 GB
Intel 120GB -> ~111 GB
It has nothing to do with overprovisioning.
Overprovisioning is space reserved to prevent your SSD from prematurely failing. It extends your life expectancy (some way equivalent to the old rule "don't use more than 90% of your HDD space").
Usually, 8 GB are reserved and this feature is REALLY helpfull!
So, what you will REALLY have:
Intel -> 111.79 Gio or 120 Go including 8 GB (Go) overprovisioning
Samsung -> 119.3 Gio or 128 Go but with no overprovisioning.
If you want overprovisioning, then you get: 119.3 - 8 = 111.3 Gio or 120 GB.
Windows would give you 111.3 GB but as explained, he is wrong