It All Boils Down to Encryption
When a program is compiled, the resulting binary is effectivly encrypted. With no source, it cannot be reconstructed. This is the application-level version of using encryption against its users.
A vendor, or any other party, has power over their users with full-spectrum control when combining;
- Vendor-controlled network encryption - one cannot see what an application is passing through one's NIC, since you do not control the keys.
- Vendor-controlled content encryption - conventional DRM.
- Vendor-controlled storage encryption - ex: see Apple and locking user data to hardware decryption.
- Vendor-controlled firmware encryption - UEFI "secure" boot, Intel ME, AMD PSP, cryptographically signed whitelisted hardware (laptop NICs, etc) etc.
- Vendor-controlled application/operating system encryption - textbook definition proprietary software, also necessary to facilitate the enforcement of items 1. through 4.
Every computer is a castle, and he who holds the keys is it's reigning king.