16.7. Вопросы лицензирования

16.7. Вопросы лицензирования

Любое произведение, которое не является общедоступным, охраняется авторским правом, а возможно, даже не одним.

Закон об авторском праве не дает полного и четкого понятия о том, кого следует считать автором, особенно для программного обеспечения, которое создается стараниями многих людей. Именно по этой причине важны лицензии. Они могут санкционировать различные способы использования кода, которые в противном случае, согласно закону об авторском праве, были бы недопустимы. Лицензии, написанные соответствующим образом, способны защитить пользователей от судебного преследования со стороны правообладателей.

В мире коммерческого программного обеспечения лицензионные условия направлены на защиту авторских прав. Они характеризуют способ, гарантирующий пользователям только несколько прав, тогда как для владельца (правообладателя) резервируется как можно большая "легальная территория". Правообладатель в данном случае играет очень важную роль, а лицензионная логика настолько ограничивает использование, что точные технические подробности лицензионных условий обычно второстепенны.

Как будет отмечено ниже, правообладатель обычно использует авторское право для защиты лицензии, делающей код легкодоступным согласно условиям, которые правообладатель намерен сохранять неограниченное время. В противном случае резервируются только некоторые права, а пользователю предоставляется возможность выбора. В частности, правообладатель не может изменить условия использования той копии, которая уже имеется у пользователя. Таким образом, в программном обеспечении с открытым исходным кодом правообладатель почти несущественен, а условия лицензии очень важны.

Обычно правообладателем проекта является его нынешний лидер или финансирующая организация. Передача проекта новому лидеру часто обусловлена сменой правообладателя. Однако данная практика не является жестким правилом. Многие проекты с открытым исходным кодом имеют нескольких правообладателей, и пока не зафиксировано случаев возникновения правовых проблем. В некоторых проектах авторское право передается Фонду свободного программного обеспечения, который заинтересован в защите открытого исходного кода и имеет штат подготовленных юристов.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

1.2. Вопросы

Из книги Программирование на языке Пролог автора Клоксин У.

1.2. Вопросы Имея некоторую совокупность фактов, мы можем обращаться к Прологу с вопросами о них. В Прологе вопрос записывается почти так же, как и факт, за исключением того, что перед ним ставится специальный символ. Специальный символ состоит из вопросительного знака и


Вопросы

Из книги Win2K FAQ (v. 6.0) автора Шашков Алексей


19.3. Логика лицензирования: как выбрать лицензию

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

19.3. Логика лицензирования: как выбрать лицензию Выбор лицензионного соглашения предполагает решение о том, какие ограничения, если они есть, налагаются автором на использование созданного им программного обеспечения.Если разработчик вообще не хочет ограничивать


Вопросы, вопросы…

Из книги Что вы все о копирайте, лучше бы книжку почитали автора Мошков Максим

Вопросы, вопросы… Какая политика твоей библиотеки? нужно ли авторское право в том виде которое есть? какую культорологическую роль библиотека Мошкова играет? нужны ли в стране (может быть в мире) подобные библиотеки? Может ли быть подобное на Западе?Политика — брать все


16.7. Вопросы лицензирования

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

16.7. Вопросы лицензирования Любое произведение, которое не является общедоступным, охраняется авторским правом, а возможно, даже не одним.Закон об авторском праве не дает полного и четкого понятия о том, кого следует считать автором, особенно для программного обеспечения,


19.3. Логика лицензирования: как выбрать лицензию

Из книги Основы объектно-ориентированного программирования автора Мейер Бертран

19.3. Логика лицензирования: как выбрать лицензию Выбор лицензионного соглашения предполагает решение о том, какие ограничения, если они есть, налагаются автором на использование созданного им программного обеспечения.Если разработчик вообще не хочет ограничивать


Вопросы

Из книги Язык Си - руководство для начинающих автора Прата Стивен

Вопросы Приведенное выше определение послужит отправной точкой для обсуждения ОО-метода. Оно не только дает ответ на некоторые относящиеся к ОО-проектированию вопросы, но и побуждает задать много новых вопросов таких, как: [x]. Как находить релевантные типы объектов? [x].


Вопросы

Из книги автора

Вопросы 1. Напишите функцию, возвращающую сумму двух целых чисел.2. Какие изменения должны были бы произойти с функцией из вопроса 1, если вместо целых складывались бы два числа типа float?3. Напишите функцию alter( ), которая берет две переменные х и у типа int и заменяет


Вопросы

Из книги автора

Вопросы 1. Что может сделать наш алгоритм сортировки неэффективным?2. Как следует изменить нашу программу сортировки, чтобы она сортировала и по рядке возрастания, а не убывания?3. Измените функцию print( ) таким образом, чтобы она печатала по 5 чисел в строке.4. Как следует


Вопросы

Из книги автора

Вопросы 1. Ниже приведены группы операторов, содержащих по одному и более макроопре делений, за которыми следуют строки исходных кодов, использующих эти макро определения. Какой результат получается в каждом случае? Правилен ли он?a. #define FPM 5280 /* футов в миле */dist = FPM * miles; б.


Вопросы

Из книги автора

Вопросы 1. Что напечатается в результате работы этой программы? #define PC(X, Y)printf(" %с %c ", X, Y)char ref[ ] = { D, О, L, Т};main( ){char *ptr;int index;for(index =0; ptr = ref; index < 4; index++, ptr++)    PC(ref[indcx], *ptr);}2. Почему в вопросе 1 массив ref описан до оператора main( )? 3. Определите значение *ptr и *(ptr + 2) в каждом


Вопросы

Из книги автора

Вопросы 1. Что неправильно в этом шаблоне? structure {char itible;int num [20];char *togs;};2. Вот фрагмент программы; что она напечатает? struct house {    float sqft;    int rooms;    int stories;    char *address; };main ( ) {static struct house fruzt = { 1560.0, 6, 1, " 22 Spiffo Road";struct house *sign;sign = &fruzt;printf(" %d %d " , fruzt.rooms, sign-> stories);printf(" %s ",


Вопросы

Из книги автора

Вопросы 1. Что неправильно в этой программе? main( ){ int *fp;int k;fp = fopen("желе");for(k = 0; k < 30; k++)fputs(fp, "Нанетта ест желе.");fclose("желе");}2. Что будет делать следующая программа? #include <stdio.h>#include <ctype.h>main(argc, argv)int argc;char *argv[ ];{ int ch;FILE *fp;if((fp=fopen(argv[1], "r")) == NULL)exit(1);while((ch=getc(fp)) != EOF)  if(isdigit(ch))