两种手段被同时采用。最常见的技术限制方式是保留能够被大家读懂的源代码，而只发布只有计算机才能读懂的程序（如二进制格式）。法律上的限制包括使用版权（附带软件许可证）和专利。这些程序的源代码往往被其持有者视为商业机密。如果第三方要查看源代码时，往往需要签署保密协议。
与商业化的关系.专有软件并不等同于商业软件。专有软件和自由软件都可以免费或者收费分发。它们之间的区别在于：专有软件的所有者可以决定是否可以分发该软件，以及费用的数额；而自由软件可以被任何持有者随意分发，相关的复制以及服务费