Исходный текст
Исходный текст (исходный код) - это текст программы до момента его компиляции в машинный код или байткод. Пишется, как правило, на высокоуровневом языке программирования. Драйверы, а также критичные по скорости выполнения куски программы могут содержать в себе ассемблерные вставки или быть полностью написанными на языке ассемблера.
Для исследования программ, исходный код которых недоступен, часто используют дизассемблеры - преобразователи непонятного для человека машинного кода в ассемблерный код. Лицензиями на проприетарные программы дизассемблирование почти всегда запрещается. Кроме того, изучение полученного таким образом ассемблерного кода обычно затруднительно (а иногда и вовсе невозможно) по следующим причинам:
- Объем его во много раз превышает соответствующий объем кода на языке высокого уровня, и изучение низкоуровнего кода сложнее
- Для запутывания исходного кода применяют обфускаторы
Для защиты исходных текстов собственных программ от копирастов лучше всего подходит лицензия GNU GPL.