5 что такое компьютерная программа. Компьютерные программы, для чего они нужны

Из чего состоит программа

Для начала стоит понять, что программу нельзя читать и писать как книгу: от корки до корки, сверху вниз, строку за строкой. Любая программа состоит из отдельных блоков. Начало блока кода в C/C++ обозначается левой фигурной скобкой { , его конец - правой фигурной скобкой } .

Блоки бывают разных видов и какой из них когда будет исполняться зависит от внешних условий. В примере минимальной программы вы можете видеть 2 блока. В этом примере блоки называются определением функции . Функция - это просто блок кода с заданным именем, которым кто-то затем может пользоваться из-вне.

Решение затем защищается в целом, а не сама программа. Многие компании стараются контрабандно пронести свою компьютерную программу, создав патентное описание. С этой целью они указывают, что все решение состоит из компьютера и программного обеспечения. Это не всегда успешно, и если да, то в Европейском патентном ведомстве, которое является более либеральным в этом вопросе. Польское патентное ведомство постоянно отказывается патентовать эти виды изобретений.

Например, одной из польских компаний удалось запатентовать метод создания баз данных с помощью компьютера. Если вас интересует то, что находится в этом решении, прочитайте его. Граница между непатентной компьютерной программой и автоматизированным запатентованным изобретением нелегко обнаружить. Это означает, что даже если вам удастся получить такой патент, конкуренция может и, вероятно, попытается отозвать его.

В данном случае у нас 2 функции с именами setup и loop . Их присутствие обязательно в любой программе на C++ для Arduino. Они могут ничего и не делать, как в нашем случае, но должны быть написаны. Иначе на стадии компиляции вы получите ошибку.

Классика жанра: мигающий светодиод

Давайте теперь дополним нашу программу так, чтобы происходило хоть что-то. На Arduino, к 13-му пину подключён светодиод. Им можно управлять, чем мы и займёмся.

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

Как защитить компьютерную программу и мобильное приложение с использованием авторских прав?

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

void setup() { pinMode(13 , OUTPUT) ; } void loop() { digitalWrite(13 , HIGH) ; delay(100 ) ; digitalWrite(13 , LOW) ; delay(900 ) ; }

Скомпилируйте, загрузите программу. Вы увидите, что каждую секунду светодиод на плате помигивает. Разберёмся почему этот код приводит к ежесекундному миганию.

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

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

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

Теперь давайте поймём в каком порядке исполняются сами блоки, т.е. функции setup и loop . Не задумывайтесь пока что значат конкретные выражения, просто понаблюдайте за порядком.

    Как только Arduino включается, перепрошивается или нажимается кнопка RESET , «нечто» вызывает функцию setup . То есть заставляет исполняться выражения в ней.

    Элементы программы, вытекающие из ее технической функции, не будут защищены. Например, в текстовом редакторе это будет белый фон, похожий на лист бумаги. Также помните, что сам факт ввода в эксплуатацию внешней компании для создания программы не дает вам права на авторское право. Просто оплачивать счет-фактуру недостаточно. Это произойдет только при подписке.

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

    Как только работа setup завершается, сразу же «нечто» вызывает функцию loop .

    Как только работа loop завершается, сразу же «нечто» вызывает функцию loop ещё раз и так до бесконечности.

Если пронумеровать выражения по порядку, как они исполняются, получится:

void setup() { pinMode(13 , OUTPUT) ; ❶ } void loop() { digitalWrite(13 , HIGH) ; ❷ ❻ ❿ delay(100 ) ; ❸ ❼ … digitalWrite(13 , LOW) ; ❹ ❽ delay(900 ) ; ❺ ❾ }

Ещё раз напомним, что не стоит пытаться воспринимать всю программу, читая сверху вниз. Сверху вниз читается только содержимое блоков. Мы вообще можем поменять порядок объявлений setup и loop .

Как защитить компьютерную программу и мобильное приложение с использованием промышленных образцов?

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

Согласно польскому законодательству о промышленной собственности. Промышленный дизайн - это новый и индивидуальный характер продукта или его части, приписываемый ему особенностями линий, контуров, форм, цветов, фактуры или материала продукта и его орнаментом.

void loop() { digitalWrite(13 , HIGH) ; ❷ ❻ ❿ delay(100 ) ; ❸ ❼ … digitalWrite(13 , LOW) ; ❹ ❽ delay(900 ) ; ❺ ❾ } void setup() { pinMode(13 , OUTPUT) ; ❶ }

Результат от этого не изменится ни на йоту: после компиляции вы получите абсолютно эквивалентный бинарный файл.

Что делают выражения

Теперь давайте попробуем понять почему написанная программа приводит в итоге к миганию светодиода.

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

Упрощение, промышленный дизайн защищает внешний вид изделия. Промышленные конструкции - это кожа, в которой технология покрыта. Регистры содержат много примеров промышленных образцов, которые включают графический интерфейс пользователя. Здесь лидер компании Стив Джобс.

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

Это делается выражением в функции setup:

PinMode(13 , OUTPUT) ;

Выражения бывают разными: арифметическими, декларациями, определениями, условными и т.д. В данном случае мы в выражении осуществляем вызов функции . Помните? У нас есть свои функции setup и loop , которые вызываются чем-то, что мы назвали «нечто». Так вот теперь мы вызываем функции, которые уже написаны где-то.

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

Существует какой-то миф, что только 20% различий достаточно, чтобы обойти закон, но не верьте. Существует общее впечатление о нарушении закона. Уровень внимания ориентированного пользователя отличается в зависимости от шаблона. Приложения. Вы можете защитить внешний вид компьютерной программы или мобильного приложения с использованием промышленных образцов. Преимущество этого решения заключается в том, что вы будете являться владельцем прав в сертификате регистрации, выпущенном Управлением. Это значительно упрощает утверждение.

Конкретно в нашем setup мы вызываем функцию с именем pinMode . Она устанавливает заданный по номеру пин в заданный режим: вход или выход. О каком пине и о каком режиме идёт речь указывается нами в круглых скобках, через запятую, сразу после имени функции. В нашем случае мы хотим, чтобы 13-й пин работал как выход. OUTPUT означает выход, INPUT - вход.

Как защитить компьютерную программу и мобильное приложение с использованием товарных знаков?

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

Уточняющие значения, такие как 13 и OUTPUT называются аргументами функции . Совершенно не обязательно, что у всех функций должно быть по 2 аргумента. Сколько у функции аргументов зависит от сути функции, от того как её написал автор. Могут быть функции с одним аргументом, тремя, двадцатью; функции могут быть без аргументов вовсе. Тогда для их вызова круглые скобка открывается и тут же закрывается:

Проблема с защитой имени мобильного приложения «во всем мире»

В качестве стандарта можно продлить его на последующие периоды этого типа. Важно отметить, что вы не можете зарегистрировать «всемирный» знак. Защита всегда является территориальной и может включать, например. Польша; Европейский союз или выбранный пакет стран. . Один из читателей моего блога указал мне, что принцип территориальной защиты товарных знаков поражает людей, которые пишут мобильные приложения. Такие приложения ориентированы на людей со всего мира. Все, что вам нужно - это смартфон и доступ в Интернет.

NoInterrupts() ;

На самом деле, вы могли заметить, наши функции setup и loop также не принимают никакие аргументы. И загадочное «нечто» точно так же вызывает их с пустыми скобками в нужный момент.

Вернёмся к нашему коду. Итак, поскольку мы планируем вечно мигать светодиодом, управляющий пин должен один раз быть сделан выходом и затем мы не хотим вспоминать об этом. Для этого идеологически и предназначена функция setup: настроить плату как нужно, чтобы затем с ней работать.

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

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

Перейдём к функции loop:

void loop() { digitalWrite(13 , HIGH) ; delay(100 ) ; digitalWrite(13 , LOW) ; delay(900 ) ; }

Она, как говорилось, вызывается сразу после setup . И вызывается снова и снова как только сама заканчивается. Функция loop называется основным циклом программы и идеологически предназначена для выполнения полезной работы. В нашем случае полезная работа - мигание светодиодом.

Вам нужна помощь патентного поверенного?

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

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

Пройдёмся по выражениям по порядку. Итак, первое выражение - это вызов встроенной функции digitalWrite . Она предназначена для подачи на заданный пин логического нуля (LOW , 0 вольт) или логической единицы (HIGH , 5 вольт) В функцию digitalWrite передаётся 2 аргумента: номер пина и логическое значение. В итоге, первым делом мы зажигаем светодиод на 13-м пине, подавая на него 5 вольт.

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

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

Как только это сделано процессор моментально приступает к следующему выражению. У нас это вызов функции delay . Функция delay - это, опять же, встроенная функция, которая заставляет процессор уснуть на определённое время. Она принимает всего один аргумент: время в миллисекундах, которое следует спать. В нашем случае это 100 мс.

Пока мы спим всё остаётся как есть, т.е. светодиод продолжает гореть. Как только 100 мс истекают, процессор просыпается и тут же переходит к следующему выражению. В нашем примере это снова вызов знакомой нам встроенной функции digitalWrite . Правда на этот раз вторым аргументом мы передаём значение LOW . То есть устанавливаем на 13-м пине логический ноль, то есть подаём 0 вольт, то есть гасим светодиод.

После того, как светодиод погашен мы приступаем к следующему выражению. И снова это вызов функции delay . На этот раз мы засыпаем на 900 мс.

Как только сон окончен, функция loop завершается. По факту завершения «нечто» тут же вызывает её ещё раз и всё происходит снова: светодиод поджигается, горит, гаснет, ждёт и т.д.

Если перевести написанное на русский, получится следующий алгоритм:

    Поджигаем светодиод

    Спим 100 миллисекунд

    Гасим светодиод

    Спим 900 миллисекунд

    Переходим к пункту 1

Таким образом мы получили Arduino с маячком, мигающим каждые 100 + 900 мс = 1000 мс = 1 сек.

Что можно изменить

Давайте пользуясь только полученными знаниями сделаем несколько вариаций программы, чтобы лучше понять принцип.

Вы можете подключить внешний светодиод или другое устройство, которым нужно «мигать» на другой пин. Например, на 5-й. Как в этом случае должна измениться программа? Мы должны всюду, где обращались к 13-му пину заменить номер на 5-й:

Компилируйте, загружайте, проверяйте.

Что нужно сделать, чтобы светодиод мигал 2 раза в секунду? Уменьшить время сна так, чтобы в сумме получилось 500 мс:

void setup() { pinMode(5 , OUTPUT) ; } void loop() { digitalWrite(5 , HIGH) ; delay(50 ) ; digitalWrite(5 , LOW) ; delay(450 ) ; }

Как сделать так, чтобы светодиод при каждом «подмигивании» мерцал дважды? Нужно поджигать его дважды с небольшой паузой между включениями:

void setup() { pinMode(5 , OUTPUT) ; } void loop() { digitalWrite(5 , HIGH) ; delay(50 ) ; digitalWrite(5 , LOW) ; delay(50 ) ; digitalWrite(5 , HIGH) ; delay(50 ) ; digitalWrite(5 , LOW) ; delay(350 ) ; }

Как сделать так, чтобы в устройстве были 2 светодиода, которые мигали бы каждую секунду поочерёдно? Нужно общаться с двумя пинами и работать в loop то с одним, то с другим:

void setup() { pinMode(5 , OUTPUT) ; pinMode(6 , OUTPUT) ; } void loop() { digitalWrite(5 , HIGH) ; delay(100 ) ; digitalWrite(5 , LOW) ; delay(900 ) ; digitalWrite(6 , HIGH) ; delay(100 ) ; digitalWrite(6 , LOW) ; delay(900 ) ; }

Как сделать так, чтобы в устройстве были 2 светодиода, которые переключались бы на манер железнодорожного светофора: горел бы то один то другой? Нужно просто не выключать горящий светодиод тут же, а дожидаться момента переключения:

void setup() { pinMode(5 , OUTPUT) ; pinMode(6 , OUTPUT) ; } void loop() { digitalWrite(5 , HIGH) ; digitalWrite(6 , LOW) ; delay(1000 ) ; digitalWrite(5 , LOW) ; digitalWrite(6 , HIGH) ; delay(1000 ) ; }

Можете проверить другие идеи самостоятельно. Как видите, всё просто!

О пустом месте и красивом коде

В языке C++ пробелы, переносы строк, символы табуляции не имеют большого значения для компилятора. Там где стоит пробел, может быть перенос строки и наоборот. На самом деле 10 пробелов подряд, 2 переноса строки и ещё 5 пробелов - это всё эквивалент одного пробела.

Пустое пространство - это инструмент программиста, с помощью которого можно или сделать программу понятной и наглядной, или изуродовать до неузнаваемости. Например, вспомним программу для мигания светодиодом:

void setup() { pinMode(5 , OUTPUT) ; } void loop() { digitalWrite(5 , HIGH) ; delay(100 ) ; digitalWrite(5 , LOW) ; delay(900 ) ; }

Мы можем изменить её так:

void setup( ) { pinMode(5 , OUTPUT) ; } void loop () { digitalWrite(5 ,HIGH) ; delay(100 ) ; digitalWrite(5 ,LOW) ; delay(900 ) ; }

Всё, что мы сделали - немного «поработали» с пустым пространством. Теперь можно наглядно видеть разницу между стройным кодом и нечитаемым.

Чтобы следовать негласному закону оформления программ, который уважается на форумах, при чтении другими людьми, легко воспринимается вами же, следуйте нескольким простым правилам:

1. Всегда, при начале нового блока между { и } увеличивайте отступ. Обычно используют 2 или 4 пробела. Выберите одно из значений и придерживайтесь его всюду.

Плохо:

void loop() { digitalWrite(5 , HIGH) ; delay(100 ) ; digitalWrite(5 , LOW) ; delay(900 ) ; }

Хорошо:

void loop() { digitalWrite(5 , HIGH) ; delay(100 ) ; digitalWrite(5 , LOW) ; delay(900 ) ; }

2. Как и в естественном языке: ставьте пробел после запятых и не ставьте до.

Плохо:

DigitalWrite(5 ,HIGH) ; digitalWrite(5 , HIGH) ; digitalWrite(5 ,HIGH) ;

Хорошо:

DigitalWrite(5 , HIGH) ;

3. Размещайте символ начала блока { на новой строке на текущем уровне отступа или в конце предыдущей. А символ конца блока } на отдельной строке на текущем уровне отступа:

Плохо:

void setup() { pinMode(5 , OUTPUT) ; } void setup() { pinMode(5 , OUTPUT) ; } void setup() { pinMode(5 , OUTPUT) ; }

Хорошо:

void setup() { pinMode(5 , OUTPUT) ; } void setup() { pinMode(5 , OUTPUT) ; }

4. Используйте пустые строки для разделения смысловых блоков:

Хорошо:

Ещё лучше:

void loop() { digitalWrite(5 , HIGH) ; delay(100 ) ; digitalWrite(5 , LOW) ; delay(900 ) ; digitalWrite(6 , HIGH) ; delay(100 ) ; digitalWrite(6 , LOW) ; delay(900 ) ; }

О точках с запятыми

Вы могли заинтересоваться: зачем в конце каждого выражения ставится точка с запятой? Таковы правила C++. Подобные правила называются синтаксисом языка . По символу; компилятор понимает где заканчивается выражение.

Как уже говорилось, переносы строк для него - пустой звук, поэтому ориентируется он на этот знак препинания. Это позволяет записывать сразу несколько выражений в одной строке:

void loop() { digitalWrite(5 , HIGH) ; delay(100 ) ; digitalWrite(5 , LOW) ; delay(900 ) ; }

Программа корректна и эквивалентна тому, что мы уже видели. Однако писать так - это дурной тон. Код гораздо сложнее читается. Поэтому если у вас нет 100% веских причин писать в одной строке несколько выражений, не делайте этого.

О комментариях

Одно из правил качественного программирования: «пишите код так, чтобы он был настолько понятным, что не нуждался бы в пояснениях». Это возможно, но не всегда. Для того, чтобы пояснить какие-то не очевидные моменты в коде его читателям: вашим коллегам или вам самому через месяц, существуют так называемые комментарии.

Это конструкции в программном коде, которые полностью игнорируются компилятором и имеют значение только для читателя. Комментарии могут быть многострочными или однострочными:

/* Функция setup вызывается самой первой, при подаче питания на Arduino А это многострочный комментарий */ void setup() { // устанавливаем 13-й пин в режим вывода pinMode(13 , OUTPUT) ; } void loop() { digitalWrite(13 , HIGH) ; delay(100 ) ; // спим 100 мс digitalWrite(13 , LOW) ; delay(900 ) ; }

Как видите, между символами /* и */ можно писать сколько угодно строк комментариев. А после последовательности / / комментарием считается всё, что следует до конца строки.

Итак, надеемся самые основные принципы составления написания программ стали понятны. Полученные знания позволяют программно управлять подачей питания на пины Arduino по определённым временны́м схемам. Это не так уж много, но всё же достаточно для первых экспериментов.

Компьютерные программы являются одним из важнейших объектов интеллектуальной собственности. Существует несколько определений компьютерных программ. Рассмотрим одно из них.

Компьютерные программы - это упорядоченные совокупности команд и данных для получения определенного результата с помощью компьютера.

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

Компьютерные программы - относительно новый объект охраны, поскольку массовое производство персональных компьютеров, разработка и распространение компьютерных программ начались лишь в конце XX в.

Признание компьютерных программ объектами авторского права относится к 1964 г., когда их стали регистрировать в Регистре авторского права США. В соответствии с принятым в 1976 г. Законом США "Об авторском праве" компьютерные программы стали охраняться как литературные произведения.

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

В Европейской патентной конвенции*(139) заявлено, что компьютерные программы не являются объектом патентной охраны. Тем самым фактически признано, что компьютерные программы должны охраняться авторским правом. Однако несмотря на это, Европейское патентное ведомство уже выдало патенты на десятки тысяч компьютерных программ.

Международное признание компьютерных программ объектами авторского права началось с разработки в 1989 г. предложений ВОИС по охране компьютерных программ, которые в 1991 г. вошли в Директиву Европейского союза "О правовой охране компьютерных программ"*(140) .

Такой же подход к компьютерным программам подтвержден в Соглашении ТРИПС: "Компьютерные программы в исходном или выходном виде охраняются как литературные произведения в соответствии с Бернской конвенцией"*(141) . Эта норма подтверждена в Договоре ВОИС по авторскому праву, в соответствии с которым "компьютерные программы охраняются как литературные произведения в смысле ст. 2 Бернской конвенции"*(142) .

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

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

Несмотря на то, что последние изменения в Бернскую конвенцию об охране литературных и художественных произведений были внесены в 1979 г., когда компьютерные программы были весьма широко распространены, однако прямого упоминания о правовой охране компьютерных программ в Конвенции нет. Правда, Бернская конвенция устанавливает, что "термин "литературные и художественные произведения" охватывает все произведения в области литературы, науки и искусства, каким бы способом и в какой бы форме они ни были выражены"*(143) . В соответствии с этим положением компьютерные программы можно рассматривать как объекты авторского права, поскольку любая компьютерная программа имеет все признаки произведений "в области литературы, науки и искусства".

Во-первых, исходный текст компьютерной программы имеет черты письменного литературного произведения. Это сходство дополняется и тем, что текст компьютерной программы может быть написан на разных языках программирования - Ассемблере, Си, Яве, Модуле, Паскале, Бейсике и т.д., как и любое иное литературное произведение - на английском, русском, японском и т.д.

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

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

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

1. Независимость охраны компьютерных программ от их вида. Национальное законодательство обычно устанавливает, что правовая охрана распространяется на все виды программ, включая прикладные программы и операционные системы. Такая формулировка представляется избыточной, поскольку компьютерные программы относятся либо к операционным системам, либо к прикладным программам. Безоперационной системы прикладные программы не могут выполняться, поскольку любая операционная система образует среду, в которой выполняются иные прикладные программы.

Количество операционных систем невелико (Windows, Unix, Linux, MacOS, BeOS, FreeBSD, OS/2, DOS и др.). С другой стороны, количество прикладных программ огромно: для каждой операционной системы существуют тысячи и десятки тысяч прикладных программ. Прикладные программы могут выполняться, как правило, только в той операционной системе, для которой они написаны и скомпилированы. Существуют специальные программы-эмуляторы (WINE, CrossOver, VMachine), которые позволяют выполнять некоторые программы, написанные для определенной операционной системы, в среде другой операционной системы.

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

3. Независимость охраны компьютерных программ от формы выражения. Международные договоры и национальное законодательство признают охрану компьютерных программ в виде:

исходного кода или текста;

объектного или выходного кода.

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

исходные тексты компьютерных программ являются секретной информацией производителя и поэтому не разглашаются;

объектные коды компьютерной программы являются технически защищенными.

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

Для того чтобы реализовать компьютерную программу на рынке, в большинстве случаев недостаточно объектный код (исполняемые, библиотечные и иные модули программы) перенести на материальный носитель (обычно диски CD или DVD), добавить документацию, упаковать и получить компьютерный товар под тем или иным наименованием.

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

Другими словами, в товаре, который используется для установки компьютерной программы на компьютер пользователя в большинстве случаев нет действующих программ, поэтому приобретенный товар нельзя вставить в дисковод компьютера и начать использовать компьютерную программу: ее вначале нужно установить на компьютер. Лишь самые простые или специально созданные программы (portable programs и live-CD) можно запускать с материального носителя. Итак, компьютерный товар, предлагаемый производителем, в действительности содержит не компьютерную программу, а специальные модули, называемые дистрибутивом компьютерной программы.

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

Итак, современные компьютерные программы существуют, по меньшей мере, в трех формах:

1) компьютерная программа в исходном виде или тексте;

2) дистрибутив компьютерной программы;

3) действующая компьютерная программа в конечном или объектном виде.

Из смысла международных договоров*(144) и национального законодательства*(145) следует, что охрана авторским правом распространяется на все формы компьютерных программ, т.е. и на их дистрибутивы.

Как отмечалось выше, исходный код программы разработчик и производитель охраняют по высшему уровню секретности, а конечный код является технически защищенным и его копирование на другой компьютер не имеет смысла. С другой стороны, дистрибутивы компьютерных программ в подавляющем большинстве случаев легко копируются. Дистрибутив компьютерной программы - это наиболее уязвимая форма компьютерных программ.

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

С появлением современных программ-монстров полное декомпилирование программ стало почти бессмысленным, хотя "взлом" программ продолжается, например, для того, чтобы сделать демонстрационную (Trial Version) версию программы полнофункциональной, обойти регистрацию программы (Serial Number, Patch), создать регистрационный номер (Key-generator) и т.д.

4. Охрана текстов компьютерных программ. В рамках модели коммерческих компьютерных программ исходные тексты программ являются собственностью производителей компьютерных программ и охраняются как закрытая информация.

Ситуация изменилась в последние годы, когда реальную конкуренцию коммерческим (Proprietary) компьютерным программам составили свободные программные продукты. Причем если на первых порах речь шла о так называемых бесплатных (Freeware) и условно-бесплатных программах (Shareware), то появление программ со свободными исходными текстами или кодами привело к изменению ситуации на рынке программного обеспечения.

Программы с открытыми (свободными) исходными тестами (Open Source) создали серьезную конкуренцию коммерческим программным продуктам. Причем многие важнейшие программные составляющие Интернета - это программы с открытыми исходными текстами. Были созданы программные продукты, которые не только стали популярными у обычных пользователей, но и вторглись в корпоративную сферу, в которой господствуют такие крупные производители компьютерных программ, как Microsoft, Adobe, IBM, Oracle, Apple, Novell и т.д.

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

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

Таким образом, программные продукты с открытыми исходными текстами представляют собой значительное явление на рынке программных продуктов. Развитие данного вида программного обеспечения поддерживается такими фирмами, как IBM, Sun, Intel, Oracle, Corel, в основном, правда, как альтернатива Microsoft Windows.

Теорию и практику компьютерных программ с открытыми текстами определяет Фонд свободного программного обеспечения (Free Software Foundation, FSF). Главный принцип фонда - исходные тексты программ должны быть открытыми, общедоступными и бесплатными. Такие программы можно изучать, изменять, использовать и распространять.

Использование компьютерных программ с открытыми текстами происходит на иных условиях, чем использование коммерческих программных продуктов, и определяется специальными лицензиями, наиболее распространенной из которых является Генеральная публичная лицензия (General Public License, GPL).

Главная особенность почти любой лицензии на компьютерные программы с открытыми исходными текстами - это так называемый принцип "авторского лева" (CopyLeft). Назван этот принцип таким неологизмом для того, чтобы показать его принципиальное отличие от принципа авторского права (CopyRight), несмотря на то, что сами программы охраняются нормами авторского права.

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

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

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

5. Названия компьютерных программ. Часто названия компьютерных программ охраняются как товарные знаки. В этом заключается отличие компьютерных программ от большинства других видов произведений, названия которых могут охраняться авторским правом только в том случае, если их можно считать результатом творческого труда, т.е. если в названии произведения есть нечто качественно новое, неповторимое, уникальное и оригинальное. Охрана названий произведений как товарных знаков характерна также для электронных баз данных, аудиовизуальных, мультимедийных, сетевых и некоторых других видов произведений.

6. Декомпилирование компьютерных программ. Проблемы, связанные с использованием компьютерных программ, обострились в последние годы. Законодательное закрепление охраны компьютерных программ в большинстве стран происходило в условиях доминирования программных продуктов и вычислительной техники, произведенных в основном фирмами IBM и DEC. В то давнее время многие страны Европы были уверены, что они сумеют догнать США, если предоставят своим разработчикам компьютерных программ право на декомпилирование компьютерных программ, т.е. получение исходного кода программы из компилированной программы.

Декомпилирование продолжает рассматриваться большинством стран как панацея от экспансии конкурентных программных продуктов. Право на декомпилирование признано рядом международных договоров, модельных положений, национальных законов. Наиболее известным документом в этой связи является Директива Европейского союза "О правовой охране компьютерных программ", ст. 6 которой посвящена декомпилированию компьютерных программ.

Страны Европейского союза включили в свое национальное законодательство аналогичные положения. Например, в законодательство об авторском праве Франции*(146) ст. L.122-6-1.-IV практически слово в слово повторяет ст. 6 Директивы Европейского союза. В законе об авторском праве Дании ст. 37 также повторяет содержание вышеупомянутой нормы. В законе об авторском праве и смежных правах Германии ст. 69е повторяет все те же нормы Директивы Европейского союза*(147) . Даже в законе об авторском праве Швейцарии, которая не является членом Европейского союза, в ст. 21 также говорится о прямом декодировании компьютерных программ*(148) .

Подтверждено право на декомпилирование компьютерных программ и в Гражданском кодексе Российской Федерации. В соответствии со ст. 1280(3) Гражданского кодекса "лицо, правомерно владеющее экземпляром программы для ЭВМ, вправе без согласия правообладателя и без выплаты дополнительного вознаграждения воспроизвести и преобразовать объектный код в исходный текст (декомпилировать программу для ЭВМ)"*(149) . Разработчики проигнорировали либо не знали, что полный исходный текст из объектного кода получить невозможно.

Аналогичные нормы существуют и в законодательстве других стран с переходной экономикой, за исключением Республики Беларусь.

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

7. Адаптация компьютерных программ. В законодательстве ряда стран вместо положений о декомпилировании компьютерных программ введены нормы об адаптации компьютерных программ, которые имеют несколько иной смысл, но по существу аналогичное предназначение. Допускается, что лицо, правомерно владеющее экземпляром некоторой компьютерной программы, вправе адаптировать ее для обеспечения совместной работы с разрабатываемыми им программами. В такой норме отсутствуют смысл и логика, поскольку разработчик сам должен создавать такие программы, которые могут работать совместно с уже созданными программами, а не изменять чужие программы. Единственное, что запрещено "адаптатору", - это использовать информацию, полученную при адаптации сторонних программ, для создания аналогичных компьютерных программ. Однако именно создание конкурентных продуктов методами реинжиниринга является подлинной целью "адаптации".

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

Обычными формами адаптации считаются сервис-паки (Service Pack) и всевозможные патчи (Patch), т.е. дополнительные компьютерные программы, которые позволяют улучшить основную компьютерную программу или ее совместное функционирование с другими программами. Однако такие "заплатки" выпускают разработчики программ, а не пользователи. "Заплатки" иных разработчиков очень часто представляют собой средства несанкционированного доступа к содержанию изучаемой компьютерной программы.

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

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

Другими словами, предоставление лицу, правомерно владеющему дистрибутивом компьютерной программы, право изготовить его копию следует понимать как право копирования дистрибутива программы с целью последующего восстановления дистрибутива и установки программы в соответствии с условиями лицензионного соглашения, прилагаемого к дистрибутиву компьютерной программы.

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

Рациональное поведение пользователя легко установить. Если правомерно приобретенная программа используется только самим пользователем, то не имеет значения, каким образом он создаст работоспособную архивную копию. Если же архивная копия становится объектом обмена (прямого или виртуального), то интересы производителя могут быть нарушены. Следовательно, такие действия пользователя неправомерны.

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

Неправомерная установка компьютерной программы на нескольких компьютерах считается одной из распространенных форм нарушений авторского права в развитых странах и даже в государственных учреждениях, в частности США*(150) . Поскольку лицензия на установку компьютерной программы на нескольких компьютерах гораздо дешевле однопользовательской лицензии, многие организации, в том числе и государственные, с целью экономии средств очень часто оказываются нарушителями авторского права.

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

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

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

Если же программа приобретается в виде цифровой копии в Интернет, то пользователь вначале должен оплатить стоимость дистрибутива компьютерной программы и только потом скопировать его на свой компьютер. При установке этой программы пользователю будут предоставлены условия лицензионного соглашения, которые он может принять или нет. Однако это лишь формальная свобода выбора, поскольку программа оплачена и возвратить ее и получить обратно оплату практически невозможно. Точно в такой же тупиковой ситуации оказывается пользователь, если он согласился с условиями лицензионного соглашения, но его не удовлетворили функциональные свойства программы.

10. Прокат компьютерных программ. На международном уровне нормы о прокате компьютерных программ установлены в Соглашении ТРИПС и в Договоре ВОИС по авторскому праву, в соответствии с которыми авторы компьютерных программ пользуются правом разрешать прокат дистрибутивов своих компьютерных программ. Однако право на прокат не применяется, если сама компьютерная программа не является основным объектом проката.

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

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

Следует признать, что прокат дистрибутивов компьютерных программ не является столь распространенным, как прокат фонограмм, видеофильмов и т.д.

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

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

В ряде стран под давлением крупных производителей компьютерных программ патентные ведомства патентуют компьютерные программы. Такое патентование широко практикуется в США, Японии и в Европейском союзе. Несмотря на то, что Европейская патентная конвенция не признает компьютерные программы объектом патентной охраны, Европейское патентное ведомство с 1978 г. выдало более 30 тыс. патентов на компьютерные программы. Для легализации этой деятельности, противоречащей Европейской патентной конвенции, в 2002 г. был разработан проект Директивы Европейского союза "О патентовании изобретений, включающих компьютерные программы". Эта инициатива вызвала крайне отрицательную реакцию большинства программистов, которые интерпретировали ее как стремление крупных производителей компьютерных программ добиться усиления своего монопольного положения, поскольку отдельные программисты, а также малые и средние предприятия, в том числе венчурные, не могут позволить себе патентную охрану, требующую значительных средств как на получение охранных документов, так и на поддержание их в силе. Пока руководству Европейского союза не удается добиться принятия этой Директивы.

12. Ограничения на разработку вредоносных программ. В отношении компьютерных программ ограничения вводятся не столько на содержание исходных текстов компьютерных программ, сколько на назначение и использование программ.

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

Для нарушения авторского права и смежных прав могут быть использованы любые компьютерные программы - все зависит от воображения и недобросовестной изощренности пользователя. Даже простейшая команда операционной системы, связанная с копированием файлов, может рассматриваться как действие, могущее привести к нарушению авторского права или смежных прав, поскольку любое несанкционированное копирование признается нарушением законодательства. На такие противоправные действия указано в согласованных заявлениях к Договору ВОИС по авторскому праву и к Договору ВОИС по исполнениям и фонограммам. В соответствии с этими согласованными заявлениями размещение объекта авторского права или смежных прав "в цифровой форме в электронном средстве является воспроизведением"*(151) . Законодательство по авторскому праву и смежным правам относит право на воспроизведение к одному из исключительных имущественных прав и делает законным размещение объекта в электронном средстве только при наличии разрешения правообладателя. Таким образом, признается нарушением законодательства не возможность, предоставленная компьютерной программой, совершать противоправные действия, а действия пользователя. В случае нарушения авторского права или смежных прав меры должны приниматься не к разработчикам компьютерных программ широкого назначения, а к тем пользователям, которые совершают противоправные действия, используя программы обработки текста, звука и изображения, распознавания символов, машинного перевода и т.д.

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

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

Во-вторых, запрещается разрабатывать и использовать компьютерные программы, которые позволяют устранять или изменять электронную информацию об управлении правами без разрешения правообладателя.

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



Похожие статьи