пятница, 29 апреля 2011 г.

Киберпреступники атакуют: итоги 2-го квартала 2010 года!


Несмотря на постоянное усовершенствование существующего и разработку нового программного обеспечения для защиты компьютеров и информационных сетей, только во 2 квартале этого года на планете было предпринято, по самым скромным оценкам, более чем 500 миллионов попыток заражения, предотвращённых лишь защитными продуктами компании Лаборатория Касперского. Согласно недавно опубликованным данным, наибольшее количество атак было предпринято на компьютеры пользователей из Китая, Российской Федерации, Индии, США и Вьетнама. По оценкам специалистов, как и ранее, большинство попыток заражения пользовательских машин происходит с использованием уязвимостей, имеющихся в популярных компьютерных программах и сервисах.Киберпреступники автоматизируют свою деятельность при помощи специальных кодов — эксплойтов. Ситуация меняется быстрее, чем котировки на бирже. За последние 3 месяца было выявлено более 8 миллионов подобных вредоносных программ, многие из которых пытались проникнуть на компьютер конечного пользователя через открытую брешь в защите программы Adobe Reader. В целом за указанный период специалисты Лаборатории Касперского выявили больше 30 миллионов уязвимых файлов и приложений, через которые вредоносные программы могли бы проникнуть в компьютер.
Столь большое число кибернападений связано с ростом активности хакеров, непрестанно наблюдающих за деятельностью разработчиков программного обеспечения для защиты компьютеров. Владея информацией, сетевые преступники опережают производителей антивирусов и используют программные бреши задолго до того, как компании выпустят защитные патчи. Одним из последних хакерских ноу-хау стали письма со специально созданными файлами в формате PDF, наводнившие почтовые ящики пользователей во многих странах. При попытке открыть такой документ, компьютер, не оснащённый самыми свежими противовирусными базами, моментально подвергался заражению вредоносным ботом и в дальнейшем использовался злоумышленниками в собственных целях. Это наверняка успели ощутить на себе многие трейдеры на forex в Омске и других крупных городах, которые работают через Интернет.
Кроме этого, по-прежнему процветает мошенничество и в очень популярных сегодня социальных сетях. Один из самых последних ботов — Likejacking, появившийся в сети Facebook, при активизации пользователем одной из кнопок отправлял ссылку на определённый ресурс всем друзьям, благодаря чему посещаемость этого сайта за считанные часы возрастала в сотни раз. Едва не подверглась нападению хакеров ещё одна популярная социальная сеть — Twitter, администраторы которой лишь в последний момент смогли обнаружить пробитую брешь и заблокировать аккаунты злоумышленников, через которые те планировали создать сеть вредоносных ботов. Однако вероятность «подцепить» вирус, к примеру, через какой-нибудь блог форекс трейдера пока невелика.

Как уберечь электронные деньги от хакеров?


Короче, безопасно жить в Интернете надо так: завязать-перевязать и никаких... А, нет: компьютер с Линуксом и вы на нем — мемуары пишете или новости на Яндексе читаете, и больше никуда.
Шутка. Я знаю, почти все мы тут «виндузятники», а некоторые еще и браузером IE пользуются. (А если и слов таких не знают, тем я поясню: это синенькая буковка «е» на экране, которую вы привыкли называть «Интернет».) И хотя для других операционных систем вирусов гораздо меньше или практически нет, но и в Windows можно работать, если нужно или очень хочется.
Чем же плохо, что на своем личном компьютере я был пользователем с правами администратора?
Права пользователей
Если права пользователя компьютера ограничены, да еще включен контроль учетных записей пользователей, да еще работает брандмауэр, то при возникновении лишней активности (например, при попытке трояна запустить какую-то программу или передать на какой-то сайт логины-пароли-сертификаты) система либо запретит ее, либо переспросит пользователя, либо попросит ввести пароль администратора.
Конечно, раздражает необходимость часто вводить пароли и отвечать на вопросы, но за удобство можно заплатить дороже, чем рассчитывали. И не только деньгами. Мне теперь менять пароли от всех сайтов, на которые я входил, пока в системе сидел вирус.
Хотя это как раз периодически делать нужно! И ни в коем случае не сохранять пароли в браузерах. Во-первых, троян их заберет в первую очередь, а во-вторых, вы же их забудете, если не вспоминать долго.
Можно, впрочем, не помнить и не вспоминать, а пользоваться программами хранения паролей.
Программы хранения паролей
Удобно: вносите свои логины и пароли от всех сайтов, где зарегистрированы (а также пин-коды банковских карт и другую секретную информацию, которую боитесь забыть). Пароли может вам сгенерировать и сама программа, хорошие, стойкие. Вы, главное, основной не забудьте — с которым эту программу запускать надо. Хранят такую программу на флешке, пользуются с любого компьютера. А потеряете флешку — никто ее не расшифрует, не зная пароля к программе. Правда, и вы больше никуда не зайдете... Но вы же не одну копию сделаете, да? Пользоваться просто — программка сама вас авторизует на сайтах, набирать ничего не придется, а значит вирусы-кейлоггеры вам не навредят. (Это те, которые перехватывают и отсылают своему хозяину всё, что вы набираете на клавиатуре.)
Вот представьте, тот хакер, что у меня webmoney увел, вдобавок так перехватил и прочитал абсолютно всё, что я в тот день писал друзьям по аське, в комментариях на форумах, в том числе анонимно. Хорошо еще, что я интимный дневник не веду. С рецензиями на просмотренные порнофильмы, ага... (Да не качал, не качал я порно!)
Правила предохранения:
Защита
Первой программой, которую вы ставите на компьютер до подключения к Интернету, должен быть антивирус.
Антивирус, как любые программы, — лицензионный или бесплатный. С дистрибутивами взломанных антивирусов легко и просто распространяются вирусы.
Периодически подстраховывайте работу антивируса другими средствами проверки, только выбирайте не конфликтующие.
Установите и в процессе работы в Интернете настройте брандмауэр.
Не отключайте обновления системы и программ. Большая их часть — это как раз ликвидация уязвимостей, а не просто совершенствование работы.
Отключите автозапуск внешних носителей. У вас перестанут автоматически запускаться фильмы с DVD, но и вирусы не проникнут на компьютер сразу при вставке флешки или диска.
Установка программ
Флешку или диск с программами, которые вам записал друг, обязательно вручную проверьте антивирусом.
Все бесплатные программы, в том числе драйвера, качайте с официальных сайтов производителей, потому что на других интернет-ресурсах они могут быть и с довесками в виде вирусов.
Пока вы устанавливаете на чистую систему свой привычный набор программ, можете действовать из учетной записи с правами администратора. Установили — перейдите в ограниченную учетную запись или понизьте права текущего пользователя и создайте отдельную учетную запись с правами администратора и паролем. (Если умеете вызвать встроенную учетную запись администратора, просто задайте пароль на ней.) Если нужно еще что-то установить, запускайте файл дистрибутива, кликая на нем правой кнопкой, выбирая «Запуск от имени» и вводя пароль администратора.
Браузер
Браузер — любой, кроме IE. Не верьте заявлениям, что он становится лучше, краше с каждым днем...
Не ходите по сомнительным сайтам, особенно малоизвестных интернет-магазинов. Верьте браузеру, который предупредит вас об опасном содержимом сайта, установите дополнительные средства оценки репутации сайта. Нужна образовательная информация — пользуйтесь поиском edu.mail.ru, чтобы даже случайно не забрести на сайт с рефератами.
Не поддавайтесь заманчивым предложениям браузеров запомнить ваши пароли.
Пароли
Назначайте пароли сложные: достаточно длинные, цифро-буквенные и со спецсимволами, разные для разных сервисов. Не запоминаете — записывайте. В блокнотик, а не в программе Блокнот. Меняйте их достаточно часто. Не блокнотики, пароли. Легче делать это с программой хранения паролей.
Не храните в почте письма с напоминанием паролей от сайтов. Понадобится — снова запросите.
Не устанавливайте в качестве секретных вопросов для напоминания паролей такие, ответы на которые легко получить в вашем окружении или ваших аккаунтах в социальных сетях. Например, на вопрос «Имя домашнего питомца» есть ответ в подписях фото вроде «Это наша Мурка». А девичью фамилию вашей матери можно выяснить у кого-то из ваших родственников, познакомившись с ними в «Одноклассниках».
Платежи
Пользуясь системами электронных платежей, внимательно читайте их инструкции по безопасности и выполняйте их. Главное — вход в систему не должен быть завязан на чисто компьютерные действия (логин-пароль и даже сертификат). Нужно еще что-то, что можете сделать только вы сами: установить сертификат с флешки в хранилище, ввести код с карты кодов безопасности или из SMS интернет-банкинга и т.п.
Резервное копирование
Предполагайте, что ваш компьютер открыт всем ветрам, и не держите на нем компромата, а также важных и нужных вещей — сбрасывайте их на внешние носители, делайте тем больше копий и обновляйте их тем чаще, чем важнее для вас эти файлы.
Правила лечения
Если возникло подозрение на вирусную активность (не открываются сайты разработчиков антивирусов, тормозит система, появляются непонятные папки и файлы там, где их быть не должно, запускаются какие-то процессы) — проверяйтесь. Нужно от Интернета отключиться и всю информацию о вирусе и свежие средства проверки искать с помощью «чистого» компьютера. Зараженный скорее всего и не позволит этого сделать, а время потеряете.
Удалив вирус, обезопасьтесь от последствий. Часто в системе остаются следы, хвосты, а то и живоспособные части, которые могут активизироваться при каких-то условиях. Об этом можно прочитать на тематических форумах, там же предлагаются способы избавления. Обычно нужно зарегистрироваться, скачать какую-то специально разработанную программку, запустить, отчитаться, как она себя ведет, загрузить на форум результаты, выполнить рекомендации разработчиков... Да, долго, нудно, но так совершенствуются антивирусы и пополняются их базы. Поспособствуйте — пригодится не вам, так людям.
Возможно, будет проще переставить систему, но учтите, среди той информации, которую Вы будете сохранять перед переустановкой, могут быть зараженные файлы, так что полечиться перед этим все равно надо. Надежнее — отформатировать диски перед установкой системы и возвращением на компьютер сохраненных данных.
Ну что ж, счастливого и безопасного серфинга по волнам Интернета после серьезной и основательной подготовки!

Проект GNU



  • 27 сентября 1983г. — Ричард Столлмэн объявил, что в рамках проекта GNU должна быть создана Unix-совместимая операционная система.
Первое общество «программной взаимопомощи»
Когда я начинал работать в MIT Artificial Intelligence Lab (Лаборатория искусственного интеллекта Массачусетского Технологического Института, далее AI Lab) в 1971, я стал членом общества «программной взаимопомощи» (software-sharing community), существовавшего уже много лет. Подобная взаимопомощь не была ограничена нашим сообществом: она была столь же стара, как сами компьютеры, подобно тому, как привычка делиться рецептами---ровесница кулинарии. Но мы делали это более активно, чем другие.
В AI Lab использовалась операционная система с разделением времени, называемая ITS (Несовместимая Система Разделения Времени, Incompatible Timesharing System), которую хакеры, работавшие в лаборатории, спроектировали и реализовали на ассемблере Digital PDP-10, одного из тогдашних компьютеров. Мне, как члену этого общества и системному хакеру AI lab, предстояло развивать систему.
Мы не называли наши программы «свободным ПО», поскольку этот термин еще не существовал, хотя они были таковыми. Если сотрудники других университетов или компаний желали перенести программу на свои машины и применять ее для своих целей, мы с радостью позволяли сделать это. Если вы видели, что кто-то использует необычную и интересную программу, всегда было возможно попросить ее исходные тексты, так что вы могли ознакомиться с программой, изменить ее либо использовать ее фрагменты в новой программе.

Гибель сообщества

Ситуация резко изменилась в начале 1980-х, когда Digital отказалась от дальнейшего развития семейства PDP-10. Ее архитектура, элегантная и мощная для 60-х, не позволяла легко увеличить размер адресного пространства, что стало возможным в 80-х. Это значило, что почти все программы, составляющие ITS, устарели.
Сообщество хакеров AI lab распалось незадолго до этого. В 1981 развивающаяся компания Symbolics наняла почти всех хакеров AI lab, после чего наше сообщество обезлюдело настолько, что уже не могло поддерживать само себя. (Книга «Хакеры» (Hackers), Стива Леви (Steve Levy), описывает эти события, также давая четкую картину сообщества в его первозданном виде.) Когда AI lab приобрела новую PDP-10 в 1982, администрация решила использовать несвободную ОС Digital вместо ITS.
Современные компьютеры тех лет, такие, как VAX или 68020, имели собственные операционные системы, но ни одна из них не была свободной: вы обязаны были подписать обязательство нераспространения даже чтобы получить исполнимый код.
Это значило, что первым шагом в использовании компьютера стало обещание не помогать окружающим. Сотрудничество тем самым было запрещено. Собственники программ установили правило: «Если вы поделились программой с вашим соседом, вы пират. Если вам требуются модификации, умоляйте нас реализовать их.»
Идея, что общество, основанное на принципах собственнического ПО--общество, которое запрещает вам делиться либо изменять программы---антисоциально, неэтично и попросту неправильно, может удивить некоторых читателей. Но что еще мы можем сказать о системе, основанной на разобщении людей и оставляющей пользователей беспомощными? Те читатели, которые удивлены нашей идеей, возможно, воспринимают социальную систему собственнического ПО как данность, либо судят о ней в терминах, принятых в программном бизнесе. Производители программного обеспечения на славу потрудились, чтобы убедить общество в существовании единственной точки зрения на проблему.
Когда производители программ рассуждают о «соблюдении» своих «прав» либо «искоренении пиратства», их слова вторичны. Истинное содержание этих заявлений кроется в неявных предположениях, которые полагают, как данность. Подразумевается, что публика примет их без обоснования. Но давайте же все обсудим.
Одним из предположений является то, что компании, производящие программы, располагают не подлежащими обсуждению естественными правами владения ПО, и поэтому имеют власть над всеми его пользователями. (Если это «естественные права», то неважно, какой вред наносится обществу, мы не можем возражать.) Интересно, что Конституция США и правовые традиции отвергают эту точку зрения: авторское право не является естественным, а всего лишь данная правительством монополия, ограничивающая естественное право пользователей копировать это ПО.
Другое подразумеваемое предположение состоит в том, что единственным важным свойством программы является возможность выполнять с ее помощью некоторые действия---т.е. что мы, пользователи, не должны беспокоиться о том, какое общество нам позволено иметь.
Третье предположение в том, что мы никогда не имели бы полезных программ (либо программы для некоторой конкретной задачи), если бы не вручили компании власть над пользователями. Это предположение могло казаться состоятельным, пока движение за свободное ПО не продемонстрировало, что мы можем создать множество полезных программ, не заковывая их в цепи.
Если мы откажемся от этих априорных утверждений и оценим ситуацию, основываясь на общепринятых моральных нормах, наделяя преимуществом пользователей, мы придем к совершенно иным выводам. Оказывается, что пользователям следует иметь право модифицировать программы, чтобы удовлетворить свои нужды, и право распространять программы, поскольку помогать друг другу является основой общества.
Проблема морального выбора
Когда наше сообщество распалось, жить по-прежнему стало невозможным. Вместо этого я очутился перед моральной дилеммой.
Легким путем было бы присоединиться к миру собственнического ПО, подписать соглашение о нераспространении и пообещать не помогать моим приятелям. Вероятнее всего, мне бы далее также пришлось разрабатывать программы, распространяемые на тех же условиях, и этим усилить давление на других людей, вынуждая их тоже предать своих друзей.
Я мог бы зарабатывать деньги этим путем, и возможно, даже наслаждался бы, создавая программы. Но я знал, что в конце своей карьеры оглянусь назад, на годы, потраченные на возведение стен между людьми, и пойму, что истратил свою жизнь, делая наш мир хуже.
Мне уже довелось увидеть, как подписка о неразглашении выполняет свои функции, когда мне и MIT AI lab было отказано в исходных текстах программы, управляющей нашим принтером. (Нехватка некоторых возможностей в этой программе делала использование принтера исключительно неудобным.) После этого я уже не мог сказать себе, что подписка о неразглашении бывает безвредной. Меня очень рассердило то, что с нами отказались поделиться; я не мог в свою очередь поступить так же с кем-то еще.
Другим выбором, прямолинейным и неприятным, было бросить заниматься компьютерами. В этом случае мои способности не были бы использованы во вред, но пропали бы зря. Я не был бы виновен в разобщении и ограничении пользователей компьютеров, но это все равно случилось бы.
Поэтому я начал искать способ, с помощью которого программист будет в состоянии улучшить ситуацию. Я спросил себя, могу ли я написать какую-либо программу или программы, чтобы оживить наше сообщество?
Ответ был ясен: первым делом нам требовалась операционная система. Это ПО критически важно для использования компьютера. Используя ОС, можно делать множество вещей, а без нее вы вообще не запустите компьютер. Располагая свободной ОС, мы смогли бы возродить общество сотрудничающих хакеров, и пригласить в него всех желающих. Каждый смог бы работать, не скрывая ничего и не теряя своих друзей.
Как разработчик операционных систем, я обладал требуемыми для этой работы навыками. Поэтому, хоть я и не ожидал непременного успеха, я чувствовал, что могу выполнить ее. Было решено сделать систему совместимой с Unix и переносимой, так что пользователи Unix могут легко перейти к ней. Название GNU было выбрано согласно хакерским традициям, как рекурсивный акроним «GNU's Not Unix» (GNU, не Unix).
Операционная система---это не только ядро, которого хватает только на то, чтобы запускать другие программы. В 1970-х каждая операционная система, достойная этого названия, включала командные процессоры, ассемблеры, компиляторы, интерпретаторы, отладчики, редакоторы текстов, почтовые программы и многое другое. Все это было в ITS, в Multics, VMS и Unix. Система GNU также должна включать эти компоненты.
Позднее я услышал такие слова, автором которых считается Гиллель:
Если не я за себя, то кто за меня?
Если я только за себя, то зачем я?
Если не сейчас, то когда же?
Решение начать разработку проекта GNU основано на похожих принципах.
"Свободный"---не значит «даром»
Термин «свободное ПО» часто понимают неправильно---он не имеет общего с ценой. Речь ведется о свободе. Таким образом, вот определение свободного ПО: программа является свободной для вас, конкретного пользователя, если:
  • Вы вольны запускать программу с любыми целями.
  • Вы можете модифицировать программу под свои нужды. (Чтобы сделать эту свободу практически эффективной, вы должны иметь доступ к исходным текстам, поскольку изменять программу без них очень сложно.)
  • Вы имеете право распространять копии, как бесплатно, так и за деньги.
  • Вы свободны распространять свои модификации, чтобы общество могло извлечь из них пользу.
Поскольку «свободный» подразумевает свободу, а не цену, нет противоречий между продажей копий и свободным ПО. Фактически, свобода продажи копий является существенной: продажа коллекций свободного ПО на CD-ROM важна для общества и является хорошим способом получить средства на разработку свободного ПО. Следовательно, программы, которые невозможно включить в такие коллекции, не являются свободными.
Вследствие неоднозначности слова «free» (которое в английском языке употребляется как в значении «свободный», так и «бесплатный», --- прим. перев.) многие пытались найти ему замену, но пока что это никому не удалось. Английский язык содержит множество различных способов отображения самых тонких нюансов, но в нем нет простого, однозначного слова, которое подразумевало бы «free», как свободу; ближе всего по смыслу к этому приближается «unfettered» («лишенное оков», «нестесненное»). Такие альтернативы, как «liberated» (освобожденный), «freedom» (свобода) и «open» (открытость) имеют либо неверное значение, либо иные недостатки.
Программы GNU и система GNU
Разработка целой системы---очень большой проект. Чтобы довести его до завершения, я решил приспосабливать и пользоваться существующими свободными программами, когда это было возможно. Например, с самого начала предполагалось применять TeX как основную систему подготовки текстов, несколькими годами позднее было решено воспользоваться X Window System, нежели разрабатывать для GNU другую оконную систему.
Благодаря этому, система GNU не является просто коллекцией всех программ GNU. Система GNU включает программы, которые не созданы в рамках проекта GNU, а были разработаны иными людьми в своих собственных целях, но которые мы можем использовать, поскольку они свободны.
Зарождение проекта
В январе 1984 г. я завершил свою работу в MIT и начал писать программы для проекта GNU. Покинуть MIT было необходимо, чтобы MIT ничем не был связан с распространением GNU, как свободного ПО. Если бы я оставался в штате, в MIT могли бы претендовать на право собственности и навязать свои собственные условия распространения, либо даже превратить программы в собственнические. Я не хотел проделать большую работу, лишь чтобы увидеть, как она становится бесполезной для своей цели: создания нового сообщества, в котором возможно делиться программами друг с другом.
В то же время профессор Уинстон (Winston), глава MIT AI Lab, любезно предложил мне продолжать пользоваться возможностями лаборатории.
Первые шаги
Вскоре после начала проекта GNU я услышал о Free University Compiler Kit (Набор Компиляторов Свободного Университета), также известном как VUCK. (Голландское слово, обозначающее «free», т.е. «свободный», пишется через V.) Этот компилятор был разработан для поддержки множества языков, включая C и Pascal, и множества целевых платформ. Я запросил у автора разрешение использовать его для GNU.
Он ответил с иронией, заявив, что университет свободный, а компилятор---нет. Тогда я и решил, что моей первой разработкой в рамках проекта GNU будет многоязыковый многоплатформенный компилятор.
В надежде избежать разработки компилятора целиком, я раздобыл исходники компилятора Pastel, многоплатформного компилятора, разработанного Lawrence Livermore Lab. Он поддерживал (и сам был написан) расширенный диалект языка Pascal, предназначенный для системного программирования. Я добавил в него поддержку C, и начал переносить его на Motorola 68000. Но мне пришлось отказаться от этого, когда я обнаружил, что компилятору требуются мегабайты под стек, в то время, как доступная на 68000 Unix-система ограничивается лишь 64k.
Оказалось, что компилятор Pastel сначала строил по всему входному файлу дерево разбора, далее конвертировал его в цепочку «инструкций», а затем генерировал целиком выходной файл, вовсе не освобождая памяти. На этом этапе я заключил, что все-таки придется написать новый компилятор с самого начала. Новый компилятор известен сегодня как GCC; никакие части Pastel в нем не использованы, но мне довелось адаптировать и использовать уже написанный мной код поддержки C. Но все это случилось несколькими годами позднее, а в то время я работал над GNU Emacs.
GNU Emacs
Работа над GNU Emacs началась в сентябре 1984 г., и в начале 1985 он уже был пригодным к использованию. Это позволило мне начать использовать Unix-системы для подготовки текстов---не имея желания изучать vi либо ed, я был ранее вынужден заниматься редактированием на других платформах.
В это время общество начало проявлять интерес к GNU Emacs, что подняло вопрос, как его распространять. Конечно, я поместил его на ftp-сервер с анонимным доступом на одном из доступных мне компьютеров MIT. (Этот сервер, prep.ai.mit.edu, стал впоследствие основным ftp-сайтом GNU; несколькими годами позднее он был закрыт, и мы дали это имя нашему новому ftp-серверу.) Но в то время многие заинтересованные люди не имели доступа в Интернет и не могли скачать себе копию. Спрашивается, что я мог предложить им?
Я мог бы им сказать: «Найдите того, кто имеет доступ в Сеть и может скачать его для вас.» Еще я мог поступить, как это было с оригинальной версией Emacs для PDP-10 и заявить: «Вышлите мне ленту и я верну ее вам с Emacs.» Но я не имел работы и разыскивал способы зарабатывать на свободном ПО. Поэтому я объявил, что вышлю всем желающим ленту за $150. Тем самым было положено начало бизнесу, связанному с распространением свободных программ, предшественник фирм, которые сегодня распространяют завершенные системы GNU/Linux.
Свободен ли каждый пользователь программы?
Если программа свободна, когда покидает руки своего автора, это не всегда означает, что она будет свободной для всех пользователей, располагающих копией. Например, программы «общественной собственности» (public domain software, т.е. ПО, не имеющее владельца авторских прав) свободны, но каждый в состоянии выпустить собственническую слегка модифицированную версию. Аналогично, многие свободные программы имеют владельца авторских прав, но распространяются с простыми либеральными лицензиями, которые позволяют выпуск собственнических модификаций.
Классическим примером этой проблемы служит X Window System. Разработанная в MIT и выпущенная как свободное ПО с либеральной лицензией, она вскоре была взята на вооружение множеством компаний. Они включали X в свои собственнические Unix-системы исключительно в виде исполнимых файлов и помещали под ту же самую подписку о неразглашении. Эти копии X были свободны не более, чем Unix.
Разработчики X Window System не считали это проблемой---такого развития событий они ожидали. Их целью была не свобода, а лишь «успех», определяемый как «наличие многих пользователей.» Никого не интересовало, будут ли пользователи свободными, а лишь их многочисленность.
Это ведет к парадоксальной ситуации, когда два разных способа оценить степень свободы программы дают различный ответ на вопрос: «Эта программа свободна?» Если ваша оценка основана на свободе, предоставленной условиями распространения MIT, можно утверждать, что X является свободной системой. Но если измерить свободу среднего пользователя X, придется заключить, что эта система собственническая. Большинство пользователей X применяли собственнические версии, поставляемые с Unix, а не свободные.
Принцип «авторского лева» и GNU GPL
Целью GNU было дать пользователям свободу, а не только завоевать популярность. Следовательно, нам были нужны условия распространения, которые защитят программы GNU от превращения в собственнические. Используемая методика получила название «авторское лево» (в противоположность «праву»), или «copyleft».
«Авторское лево» использует систему авторского права, но в целях, противоположных ее обычному использованию: из способа прихватизации программ она превращается в средство защиты их свободы.
Центральная идея «авторского лева» в том, что мы даем каждому разрешение запускать, копировать, изменять программу и распространять измененные версии---но не разрешение добавлять ограничения от себя. Этим критические свободы, которые определяют «свободное ПО» гарантируются каждому, кто имеет копию, они становятся неотчуждаемыми.
Эффективность «авторского лева» возможна, лишь если модифицированные версии также свободны. Этим обеспечивается, что производные продукты, в случае их публикации, будут доступны нашему обществу. Когда программисты добровольно участвуют в улучшении программ GNU, «авторское лево» защищает их от нанимателей, которые могут сказать: «Вы не можете свободно распространять свои модификации, поскольку мы собираемся сделать их нашей собственнической версией программы.»
Требование, чтобы модификации также были свободны, необходимо, если мы хотим гарантировать свободу каждого пользователя программы. Компании, которые прихватизировали X Window System, обычно вносят в нее некоторые изменения, чтобы приспособить к своей системе и аппаратуре. Эти модификации невелики по сравнению с общим объемом системы X, но они были нетривиальны. Если внесение модификаций может служить оправданием лишению пользователей свободы, найдется много желающих воспользоваться подобным обоснованием.
Аналогичные проблемы возникают при комбинировании свободной программы и несвободного кода. При этом теряется часть свобод: все, что запрещено для несвободной части кода, будет запрещено и для результата в целом. Разрешить эти комбинации означает нанести кораблю свободного ПО пробоину ниже ватерлинии. Следовательно, критически важным требованием «авторского лева» является устранение этой угрозы: все, что добавляется или комбинируется с программой, подчиняющейся «авторскому леву», должно быть таким, что результат должен также быть свободным на условиях «авторского лева».
Частная форма «авторского лева» используется для большинства программ GNU — это Универсальная Общественная Лицензия GNU (GNU General Public License, или GNU GPL). Мы также имеем другие виды «авторского лева» для особых случаев. Документация GNU также подчинена «авторскому леву», но в значительно более мягкой формулировке, поскольку изощренность GNU GPL избыточна для документации.
Фонд Свободного ПО
Интерес к использованию Emacs возрастал, в работу над проектом GNU включались новые участники, и мы решили, что пора снова искать источники финансирования. Поэтому в 1985 нами был создан Фонд Свободного ПО (Free Software Foundation, FSF), благотворительный фонд (tax-exempt charity), поддерживающий разработку свободного ПО. FSF также взял на себя распространение лент с Emacs, позднее на них было добавлено и другое свободное ПО (как GNU, так и не-GNU), а также продажу свободной документации.
FSF принимает пожертвования, но большая часть поступлений приходит от продаж копий свободного ПО и смежных услуг. Сегодня мы продаем компакт-диски с исходными текстами, с бинарниками, красиво оформленные руководства (все это с разрешением свободного распространения и модификации), и Deluxe Distributions (которая представляет собой всю нашу коллекцию программ, откомпилированную под любую платформу на ваш выбор).
Персоналом Free Software Foundation разработаны и сопровождаются многочисленные программные пакеты, к примеру, C-библиотека и командный интерпретатор (shell). Библиотека GNU C используется всеми программами в системе GNU/Linux как посредник в общении прикладной программы с Linux. Она была разработана сотрудником FSF Роландом МакГрафом (Roland McGrath). Командный интерпретатор, использующийся в большинстве систем GNU/Linux — BASH, Bourne Again Shell, написанный служащим FSF Брайаном Фоксом (Brian Fox).
Мы финансировали реализацию этих программ, поскольку проект GNU не был сконцентрирован исключительно на инструментальных средствах. Нашей целью была полноценная операционная система, и эти программы нужны для достижения цели.
Поддержка свободного ПО
Философия свободного ПО отвергает методы, общепринятые в бизнесе, но мы не отвергаем идею бизнеса вообще. Когда предприниматель уважает свободу пользователей, мы желаем ему успеха.
Продажа копий Emacs демонстрирует одну разновидность бизнеса на свободном ПО. Когда этот вид деятельности перешел в руки FSF, мне довелось искать другие способы зарабатывать на жизнь. Я нашел их в продаже сервиса, касающегося свободного ПО, которое было разработано мной. Это включает, к примеру, обучение таким вопросам, как, например, программировать GNU Emacs и настраивать GCC, а также разрабатывать программы, в основном, как переносить GCC на новые платформы.
Сегодня каждая из этих разновидностей бизнеса на свободном ПО практикуется множеством предприятий. Одни распространяют свободное ПО на CD-ROM; другие предлагают платную поддержку, начиная ответами на вопросы и устранением ошибок и завершая добавлением новых возможностей. Начинают появляться даже компании, занимающиеся выпуском новых свободных программ.
Однако, будьте осторожны---многие из тех, кто заявляет о следовании идее «открытых исходных текстов» в действительности основой своего бизнеса делают несвободные программы, которые работают совместно со свободными. Эти компании далеки от свободного ПО, это разработчики собственнических программ, которые искушают пользователей позабыть свободу. Они называют это «добавлением стоимости» (value added), отражая этим ценности, которые хотят навязать нам: удобства превыше свободы. Если мы предпочитаем свободу, нам следует называть подобные программы «с уменьшением свободы» (freedom subtracted).
Технические цели
Принципиальная цель GNU---быть свободным ПО. Даже если система GNU не имела бы технического превосходства над Unix, она обладала бы социальным преимуществом, позволяя пользователям сотрудничать, и этическим, уважая их свободу.
Но можно считать вполне обоснованным применение широко известных «правил хорошего тона»---например, использование динамических структур данных неограниченных размеров, а также поддержка всех возможных 8-битных кодов, когда это имеет смысл.
Дополнительно, мы отвергли принятую в Unix экономию памяти, отказались от поддержки 16-битных машин (было ясно, что 32-битные архитектуры станут общепринятыми, когда система GNU будет готова), и не предпринимали попыток сократить объем используемой памяти, пока он не превышал мегабайта. В программах, для которых работа с очень большими файлами не была важной, мы предлагали программистам сначала считать исходные данные целиком в память, а затем работать уже с ней, не используя ввод/вывод.
Такие решения позволили многим программам GNU превзойти свои Unix-аналоги в надежности и скорости.
Пожертвование компьютеров
С ростом репутации проекта GNU нам стали жертвовать машины с системой Unix. Это было очено полезно, поскольку простейшим способом разработать компоненты системы GNU было сделать это на Unix-системе и заменить ее компоненты одну за одной. Но при этом возникло этическое противоречие: можем ли мы использовать для этой работы Unix?
Система Unix была (и есть) собственнической, а философия проекта GNU гласит, что мы не должны пользоваться собственническим ПО. Но, применив те же доводы, которыет приводят к заключению, что насилие в целях самозащиты правомочно, я решил, что использование собственнического пакета оправдано, если это необходимо для разработки свободного аналога, который поможет другим прекратить применение собственнического.
Но, хоть это и было оправданным злом, оно все-таки оставалось злом. Сегодня мы более не имеем ни одной копии Unix, поскольку заменили их свободными операционными системами. Если мы не были в состоянии заменить на машине ОС, мы вместо этого меняли саму машину.
Список задач проекта GNU
По мере развития проекта GNU и роста количества системных компонент, которые мы разыскивали либо разрабатывали, стало желательным сделать список остающихся прорех. Мы использовали его для привлечения желающих написать недостающие компоненты. Этот список стал известным как «список задач проекта GNU» (GNU project task list). В дополнение к отсутствующим компонентам Unix мы включили в него другие полезные проекты разработки программ и документации, которые, по нашему мнению, должна иметь действительно завершенная система.
Сегодня немногие компоненты Unix остались в списке задач проекта GNU---они все уже сделаны, за исключением нескольких не очень важных. Но в списке по-прежнему много проектов, которые многие считают «приложениями». Любая программа, которая полезна не только узкому кругу пользователей, может быть полезной составной частью операционной системы.
В список задач включались даже игры, и так было с самого начала. Игры входят в состав Unix, и, естественно, так должно быть и в GNU. Но совместимость не является важной в этом случае, так что мы не следовали в точности набору игр, которые были в Unix. Вместо этого мы выбрали широкий спектр игр, которые могут понравиться пользователям.
Библиотечная Лицензия GNU
Библиотека GNU C использует особую разновидность «авторского лева», называемую Библиотечной Лицензией GNU (GNU Library General Public License, в настоящий момент изменила свое название на GNU Lesser General Public License---Прим. перев.), которая дает разрешение компоновать библиотеку с собственническими программами. Зачем сделано это исключение?
Это не было делом принципа: нет принципа, согласно которому разработчикам собственнического ПО дается право использовать наш код. (Зачем нам участвовать в развитии проекта, который определенно не будет сотрудничать с нами?) Использование LGPL для стандартной C-библиотеки либо другой, является стратегическим ходом.
C-библиотека делает общую работу: каждая собственническая система или компилятор поставляется со своей C-библиотекой. Следовательно, если сделать нашу C-библиотеку доступной исключительно для свободного ПО, это не даст свободным программам никаких преимуществ, а лишь уменьшит использование нашей библиотеки.
Одна система является исключением: в системе GNU (включая GNU/Linux), библиотека GNU C — единственная C-библиотека. Поэтому условия распространения библиотеки GNU C определяют, в каких случаях допустима компиляция собственнической программы под систему GNU. Нет повода способствовать появлению собственнических приложений в ее составе, было бы стратегически неверным запрещать их, что лишь сократило бы применение системы GNU, а не поощряло разработку свободных программ.
Вот почему использование Библиотечной Лицензии GNU удобно для C-библиотеки. В случае других библиотек, стратегия их лицензирования должна выбираться индивидуально. Когда библиотека реализует специфические возможности, которые помогают в написании определенных видов программ, то выпуск ее на условиях обычной GPL ограничит сферу ее применения исключительно свободным ПО и даст этим преимущество разработчикам свободных программ над разработчиками собственнических.
Рассмотрим GNU Readline, библиотеку, которая обеспечивает BASH средствами редактирования командных строк. Readline распространяется с обычной GNU GPL, не с библиотечной GPL. Это, возможно, снижает число пользователей Readline, но это для нас не потеря. В то же время, по крайней мере одна полезная программа обрела свободу именно потому, что нуждалась в использовании Readline и это является действительно нужным обществу.
Разработчики собственнических программ имеют преимущество в деньгах, а создатели свободного ПО должны создавать преимущества друг другу. Я надеюсь, что однажды мы соберем обширную коллекцию библиотек, подчиняющихся GPL, которые не будут иметь аналогов среди собственнического ПО, и полезных в качестве строительного материала для новых свободных программ. Этим будет создано большое преимущество для разработчиков свободного ПО.

Профессиональный зуд?

Эрик Реймонд (Eric Raymond) сказал, что: «Работа над каждой хорошей программой начинается автором для удовлетворения своего профессионального зуда» (scratching a developer's personal itch). Возможно, так иногда и бывает, но многие важные составляющие GNU были разработаны с целью создать полноценную свободную ОС. Они появились на свет благодаря нашему видению проблемы и плану действий, а не вследствие импульсивного решения.
Например, мы разработали библиотеку GNU C потому, что Unix-подобная система требует такой библиотеки, и Bourne-Again Shell (bash), поскольку Unix-подобная система требует командного интерпретатора, а также GNU tar, так как аналог Unix должен иметь программу tar. То же самое справедливо и в отношении моих собственных программ — компилятора GNU C, GNU Emacs, GDB и GNU Make.
Некоторые программы GNU разрабатывались, чтобы устранить конкретную угрозу нашей свободе. Так, мы написали gzip взамен программы сompress, которая была потеряна обществом из-за патентованного алгоритма LZW. Мы разыскали желающих реализовать LessTif, а позднее начали проекты GNOME и Harmony, чтобы решить проблемы, созданные некоторыми собственническими библиотеками (см. далее). Нами разрабатывается GNU Privacy Guard для замены популярного несвободного криптографического ПО, поскольку пользователи не должны выбирать между конфиденциальностью и свободой.
Конечно, программы создаются благодаря личной заинтересованности авторов, а многие их возможности добавляются различными людьми для удовлетворения собственных нужд. Но это не единственная причина существования программ.

Незапланированные разработки

В начале работы над проектом GNU я полагал, что нам следует разработать систему GNU целиком, а лишь затем выпустить ее. Все произошло по-другому.
Поскольку каждый компонент системы GNU разрабатывался под Unix, все они могли работать в ней задолго до появления завершенной системы GNU. Некоторые такие программы завоевали популярность и пользователи начали их расширение и перенос на различные несовместимые версии Unix, а также на другие системы.
Этот процесс сделал программы более мощными и привлек к проекту GNU большее количество средств и жертвователей. Но также он возможно задержал выпуск минимальной работающей системы на несколько лет, поскольку разработчики тратили свое время на поддержку пользовательских модификаций вместо разработки очередного компонента.
GNU Hurd
В 1990 система GNU была почти завершена; единственной важной нехваткой было ядро. Мы решили реализовать его как набор процессов-серверов, работающих поверх Mach. Mach — это микроядро, разработанное в университете Карнеги-Меллон (Carnegie Mellon University) и позднее в университете штата Юта (University of Utah); GNU HURD — коллекция серверов, (или ``стадо гну'', ``herd of gnus''), выполняемая поверх Mach и реализующая различные функции ядра Unix. Начало работ было задержано ожиданием выпуска Mach как свободного ПО, как нам пообещали.
Одной из причин выбора такой архитектуры было желание избежать самой тяжелой части работы: отладки ядра без отладчика высокого уровня. Такая работа уже была сделана для Mach, и мы собирались отлаживать серверы HURD как пользовательские программы, при помощи GDB. Но прошло немало времени, пока это стало возможным, и многопотоковые серверы, обменивающиеся сообщениями оказались очень сложны в отладке. Интеграция частей HURD затянулась на много лет.
Alix
Изначально ядро GNU не планировалось называть HURD. Его первым названием было Alix (Аликс) --имя женщины, которую я любил тогда. Она была администратором Unix-системы и однажды заметила, как хорошо ее имя подходит под общий принцип именования клонов Unix. В шутку она сказала своим друзьям: «Кому-то следует назвать ядро в мою честь.» Я промолчал, но решил сделать ей сюрприз, назвав свое ядро Alix.
Но все произошло по-другому. Майкл Бушнел (Michael Bushnell, ныне Thomas), главный разработчик ядра, предпочитал название HURD, и назвал Alix некоторую часть ядра, которая перехватывала системные вызовы и обрабатывала их посылкой сообщений серверам HURD.
В конце концов, Аликс и я разошлись, она сменила имя; в то же время дизайн HURD также изменился и C-библиотека смогла посылать сообщения непосредственно серверам, так что компонент Alix исчез.
Но до того, как это случилось, ее друг набрел на имя Alix в исходных текстах HURD и сообщил ей об этом. Так что имя свою роль все же сыграло.

Linux и GNU/Linux

GNU Hurd еще не готов для реального использования. К счастью, доступно другое ядро. В 1991 г. Линус Торвальдс (Linus Torvalds) разработал Unix-совместимое ядро, которое назвал Linux. В течение 1992 г. ядро Linux было объединено с незавершенной системой GNU в полноценную ОС. (Конечно, такое объединение само по себе было сложной работой.) Именно благодаря Linux мы можем работать с версией системы GNU уже сегодня.
Мы назваем такую версию GNU/Linux, выражая тем самым, что она скомбинирована из системы GNU и Linux в качестве ядра.
Угрозы нашему будущему
Мы доказали нашу способность разработать широкий спектр свободного ПО. Но это не значит, что нас невозможно победить или остановить. Некоторые угрозы делают наше будущее неопределенным; чтобы достойно встретить их, могут потребоваться усилия и непоколебимость, возможно в течение нескольких лет. Нам потребуется уверенность, что люди продемострируют, как они ценят свою свободу и не отдадут ее никому.
Эти угрозы обсуждаются ниже.

Засекречивание оборудования

Производители аппаратного обеспечения все активнее пытаются сохранить в тайне его спецификации. Это затрудняет разработку свободных драйверов, чтобы Linux и XFree86 могли работать с новым «железом». Сегодня мы располагаем полноценной свободной системой, но не будем иметь ее завтра, если не сможем поддерживать компьютеры, которые у нас будут.
Есть два пути решить эту проблему. Программисты могут делать реконструкцию (reverse engineering) устройств, чтобы понять, как с ними работать. Все остальные в состоянии выбирать только те устройства, которые поддерживаются свободным ПО. С ростом нашего сообщества засекречивание спецификаций обернется против его инициаторов.
Реконструкция — сложная работа; найдем ли мы программистов, решимости которых хватит довести дело до конца? Да, если мы создадим в обществе стойкое убеждение, что свобода является делом принципа, и несвободные драйверы неприемлемы. И будет ли большинство из нас тратить дополнительные средства и, возможно, время, чтобы использовать свободный драйвер? Да, если решимость иметь свободу получит широкое распространение.

Несвободные библиотеки

Несвободная библиотека, используемая в свободной ОС, может стать ловушкой для разработчиков свободных программ. Привлекательные возможности этой библиотеки служили приманкой, если вы начинали пользоваться библиотекой, вы оказывались в западне, так как ваша программа уже не может быть частью свободной ОС. (Строго говоря, мы можем включить вашу программу в состав дистрибутива, но вы не сможете запустить ее в отсутствие библиотеки.) Что еще хуже, если такая программа завоюет популярность, это может завлечь в ловушку других ничего не подозревающих программистов.
Первым примером этой проблемы, проявившимся еще в 1980-е годы, был Motif. Хотя в те времена не было свободных ОС, было ясно что Motif создаст множество проблем позднее. Проект GNU ответил двумя путями: призывал разработчиков использовать в своих проектах альтернативные свободные библиотеки X widgets наряду с Motif, и обратился к желающим создать свободный заменитель Motif. Работа потребовала многих лет: LessTif, разработанный Hungry Programmers, приобрел возможности, достаточные для большинства Motif-приложений, лишь в 1997 г.
Между 1996 и 1998 гг. другая несвободная библиотека компонент пользовательского интерфейса, называемая Qt, была использована в значительной коллекции свободных программ, оболочке KDE.
Свободные системы GNU/Linux не могли применять KDE, поскольку не были в состоянии использовать библиотеку. В то же время, некоторые коммерческие дистрибьюторы GNU/Linux, которые не ограничивались исключительно свободным ПО, включали KDE в свои дистрибутивы, получая систему с большими возможностями, но с меньшей свободой. Группа разработчиков KDE активно поощряла все большее количество программистов использовать Qt, и миллионы новых «пользователей Linux» даже и не подозревали о проблеме, скрытой здесь. Ситуация была зловещей.
Ответом общества свободного ПО были GNOME и Harmony.
GNOME (Модель Сетевой Объектной Среды GNU, GNU Network Object Model Environment) является проектом создания GNU-десктопа. Начатый в 1997 Мигелем де Иказа (Miguel de Icaza) и разрабатываемый при поддержке Red Hat Software, GNOME будет поддерживать схожие со своими аналогами возможности, но исключительно при помощи свободного ПО. У него есть и технические преимущества, такие, как поддержка широкого спектра языков, не только C++. Но главной целью была свобода — исключение зависимости от несвободных программ.
Harmony — это библиотека, предназначенная для работы с программами KDE не используя Qt.
В ноябре 1998 г. разработчики Qt объявили об изменении своей лицензии, которое должно сделать Qt свободным ПО. Нельзя утверждать наверняка, но я считаю, что отчасти это следствие жесткой реакции общества на проблемы, созданные Qt, когда она была несвободной. (Новая лицензия неудобна и неуравновешена, так что по-прежнему желательно избегать использования Qt.)
Как мы ответим на очередную соблазнительную несвободную библиотеку? Сможет ли общество понять необходимость обойти эту ловушку? Или многие из нас предпочтут удобство свободе, создав тем самым серьезную проблему? Наше будущее зависит от нашей философии.

Программные патенты

Серьезнейшей угрозой для нас являются патенты, которые лишают разработчиков свободного ПО права использовать алгоритмы и возможности на срок до 20 лет. Патенты на алгоритм сжатия LZW были выданы в 1983, и мы по-прежнему не можем выпустить свободное ПО, генерирующее правильные файлы формата GIF. В 1998 свободная программа сжатия аудиозаписей методом MP3 была исключена из дистрибутива под угрозой патентного иска.
Существуют способы бороться с патентами: можно разыскать доказательства. что патент недействителен, а можно сделать работу другим путем. Но оба эти метода работают не всегда: когда оба они терпят неудачу, патент может лишить свободное ПО некоторых возможностей, которые требуются пользователям. Как они поступят в этом случае?
Те из нас, кто ценит в свободном ПО его свободу, останется с нами в любом случае. Мы сделаем нашу работу, не используя патентованных возможностей. Но те, кто ценит свободное ПО за его техническое превосходство, вероятно, сочтут катастрофой ситуацию, когда патент лишит нас возможности конкурировать на равных. Поэтому недостаточно говорить о практической эффективности «соборной» («cathedral») модели разработки программ, о надежности и богатых возможностях конкретных свободных программ. Мы также должны говорить о свободах и принципах.

Свободная документация

Наиболее дефицитной составляющей свободных операционных систем является на сегодня не программное обеспечение, а хорошие свободные руководства, которые могут включаться в их состав. Многие из наших важнейших программ не полностью документированы. Документация представляет собой неотъемлемую часть любого программного пакета; когда важный свободный программный продукт ее не имеет, в этом его основной недостаток. На сегодня мы имеем много подобных прорех.
Свобода документации, подобно свободному ПО, подразумевает свободу, а не цену. Критерии свободы документации примерно те же, что и свободного ПО: предоставляются ли пользователям определенные свободы. Дальнейшее распространение (включая коммерческое) должно разрешаться, так что руководство может сопутствовать каждой копии программы, причем как на бумаге, так и в электронном виде.
Важной является также свобода модификации. Вообще говоря, я не считаю, что необходимо позволять каждому изменять все виды статей и книг. Продукт писательской деятельности может отличаться от ПО. Например, я не думаю, что вы или я обязаны давать разрешение модифицировать статьи, подобные этой, которые описывают наши действия и взгляды.
Но есть одна ситуация, в которой свобода модификации критична для руководств по свободным программам. Когда люди реализуют свое право модифицировать программы, и добавляют либо изменяют их возможности, то если они добросовестны, эти изменения также будут отражены и в руководстве, так что документация будет точной и полезной для пользователей измененной программы. Руководство, запрещающее программистам проявить добросовестность и завершить работу, не удовлетворяет нужд нашего сообщества.
Некоторые ограничения на проведение модификаций возражений не вызывают. Например, требование сохранить оригинальное уведомление об авторском праве, условия распространения или список авторов вполне обосновано. Также не является проблемой обязательно сообщать для измененных версий, что они были исправлены, либо даже определить целые разделы, которые не могут изменяться либо удаляться, если они затрагивают нетехнические вопросы. Такие разновидности ограничений не создают проблем, так как они не препятствуют добросовестным программистам в адаптации руководства к измененной программе. Другими словами, они позволяют нашему сообществу извлечь из документации максимум пользы.
В то же время, должна быть возможной модификация всего технического содержимого руководства и дальнейшее распространение результата на общепринятых носителях и через стандартные каналы. В противном случае ограничения идут во вред обществу, документация не является свободной и требуется другая.
Найдут ли разработчики свободного ПО достаточные знания и решимость, чтобы выпустить полный набор документации? И в этом случае наше будущее зависит от нашей философии.

Мы должны пропагандировать свободу

Сегодня количество пользователей систем GNU/Linux, таких, как Debian GNU/Linux или Red Hat Linux, оценивается в десять миллионов. Свободное ПО приобрело такие полезные свойства, что пользователи переходят на него даже из чисто практических соображений.
Положительные последствия очевидны: больший интерес к разработке свободного ПО, увеличение количества потребителей услуг бизнеса свободного ПО и возможность поощрять компании к разработке свободных коммерческих программ вместо собственнических.
К сожалению, интерес к программам растет быстрее, чем осведомленность о философии, на которой они основываются, и это ведет к неприятностям. Наша способность противостоять угрозам, описанным ранее, зависит от нашей решимости остаться свободными. Чтобы знать наверняка, что в нашем обществе живет такая решимость, мы должны знакомить с этой идеей всех, кто присоединяется к нам.
Но мы не в состоянии сделать это: способы привлечь в наше сообщество новых членов намного превосходят наши возможности разъяснить им принципы нашего сообщества. Нам нужно заниматься и тем, и другим. но сохранять при этом равновесие.
"Открытые исходные тексты"
Обучать свободе новых пользователей стало еще труднее, когда в 1998 часть нашего сообщества решила не использовать более термин «свободное ПО» («free software»), а вместо него предложила понятие «ПО с открытыми исходными текстами» («open source software»).
Некоторые из сторонников нового термина намеревалась устранить путаницу «свободного» («free») с «бесплатным» («gratis») ---хорошая цель. Другие, в то же время, собирались отправить за борт дух нашего сообщества и те принципы, которые служат мотивацией для движения за свободу ПО и проекта GNU, а вместо них ориентироваться на руководителей компаний и предпринимателей, многие из которых ставят прибыль превыше свободы, превыше интересов общества, превыше моральных принципов. Поэтому ораторские способности сторонников «открытых исходных текстов» направлены на перспективы создания высококачественных и мощных программ, но не на идеи свободы и сотрудничества.
Журналы, посвященные Linux служат ярким примером---они переполнены рекламой собственнических программ, работающих под GNU/Linux. Когда появится очередной Motif или Qt, будут ли эти журналы предостерегать программистов от их использования, или будут рекламировать их?
Поддержка бизнеса может принести пользу нашему обществу может осуществляться многими способами; при прочих равных, все они полезны. Но завоевание привязанности предпринимателей путем замалчивания свободы и наших принципов может быть разрушительным: дисбаланс между ростом сообщества и уровнем сознательности в нем еще более ухудшится.
Термины «свободное ПО» и «ПО с открытыми исходными текстами» описывают, более или менее, одну и ту же категорию ПО, но различаются в том, что именно говорится о программах и о моральных ценностях. Проект GNU продолжает использование понятия «свободное ПО», выражая тем самым, что важна идея свободы, а не просто технологии.
Пытайтесь!
Философия Йоды («Не пытаться») выглядит логично, но не работает в моем случае. Я решал многие из поставленных перед собой задач, сомневаясь в том. смогу ли я сделать это, и в неуверенности, что моей работы окажется достаточно для достижения цели. Но я все же пытался, поскольку больше некому было спасти мой город от завоевателей. К моему удивлению, иногда я достигал успеха.
Бывало, я терпел поражение, и мне приходилось сдавать свои позиции. Но я отыскивал другой город, которому угрожала опасность, и снова готовился к битве. С течением времени я научился определять потенциальную угрозу и становился на ее пути, призывая других хакеров встать рядом.
Сегодня зачастую я не один. С облегчением и радостью вижу я полки хакеров, закрепляющиеся на рубеже обороны, и чувствую, что угроза миновала — сегодня. Но опасность растет с каждым годом, и сегодня Micro$oft явно выбрала мишенью наше сообщество. Мы не вправе полагать будущее свободы как данность. Не воспринимайте ее как данность! Если вы хотите сохранить свою свободу, будьте готовы защитить ее.
автор: Ричард Столлмен (Richard Stallman)
Сергей Короп (пер. с англ.)
впервые опубликовано в книге «Open Sources»

Как изменить экран приветствия LOGON UI в Windows 7?


В этом ответе собрана информация, касающаяся различных приёмов настройки операционной системыWindows 7, как средствами самой ОС, так и с помощью различных вспомогательных программ.
Восстановление классического меню «Пуск» в Windows 7
Восстановить классическое меню пуск, опция возврата к которому в Windows 7 отсутствует, можно с помощью бесплатной программы  CSMenu. Эта утилита создает альтернативную кнопку «Пуск», возвращая ей классический стиль, хорошо известный по интерфейсу Windows 2000. После установки (требуются права администратора) программа оставляет две иконки на рабочем столе. Запустив одну, пользователь запускает сканирование программ, находящихся в стартовом меню. После индексации эту иконку можно удалить, а затем, для того, чтобы изменения вступили в силу, выйти из профиля и опять зайти. После входа в систему, нужно переместить вторую иконку на таскбар — она и будет служить своеобразной кнопкой «Пуск», выполненной в классическом стиле. При этом настоящая кнопка никуда не девается, остается на месте. Скачать CSMenu можно с форума о Windows 7 : windows7forums.com. Там же можно посмотреть и видео о том, как устанавливать программу.
Поиск в интернете через меню «Пуск»
В Windows 7 появилась возможность искать в интернете через меню «Пуск», но по умолчанию эта функция отключена. Чтобы включить поиск в интернете через меню «Пуск» необходимо проделать следующие действия:
1.       Нажмите комбинацию клавиш «Win+R» и введите gpedit.msc.
2.       В редакторе локальной групповой политики перейдите в раздел «Конфигурация пользователя» -> «Административные шаблоны» -> «Меню «Пуск» и панель задач». В окне состояния найдите строку «Добавить ссылку «Поиск в интернете» в меню «Пуск»».
3.       Кликните правой кнопкой на этой строке и выберете пункт «Изменить».
4.       В открывшемся окне необходимо отметить пункт «Включено».
5.       Нажмите «OK» и закройте редактор локальной групповой политики. Теперь в меню «Пуск» можно использовать поиск в интернете.
Включение DreamScene в Windows 7
DreamScene — одна из функций в Windows Vista Ultimate, которая позволяла установить видео в качестве фонового рисунка рабочего стола. Однако эта функция была удалена из Windows 7 и на замену ей пришла функция Desktop Slideshow — функция автоматической смены фоновых рисунков рабочего стола. Возможность включить DreamScene все еще существует. Для того чтобы запустить DreamScene в Windows 7, необходимо проделать следующую процедуру:
1.       Загрузить файл Windows-DreamScene.exe. Существует также альтернативный вариант под названием Windows7-DreamScene-Enable.exe, который не требует для запуска прав администратора.
2.       Запустить Windows7-DreamScene.exe с правами администратора. Это скопирует DreamScene.dll в папку %WinDir%\System32DreamScene.dll.mui в папку %WinDir%\System32\en-US и добавит необходимые ключи и значения реестра. Затем программа автоматически перезагрузит Explorer. Установщик также создаст папку Windows DreamSceneпо адресу %WinDir%\Web\. Вы можете поместить туда любой видеофайл, который хотите установить в качестве фонового рисунка.
3.       Чтобы установить видеоролик (.WMV или .MPG) фоновым рисунком, щелкните правой кнопкой мыши на файле и в контекстном меню выберите «Set as Desktop Background».
Стоит иметь в виду, что DreamScene официально не поддерживается в Windows 7, поэтому его настроек нет в апплетеPersonalization (Персонализации) и на странице конфигурации Desktop Background (Фоновый рисунок рабочего стола). Несмотря на это, все функции DreamScene, включая Play (Воспроизводить), Pause (Приостановить) и аудио поддерживаются.
Восстановление панели быстрого запуска (Quick Launch)
В Windows 7 на смену панели быстрого запуска пришла новая функция, поддерживаемая панелью задач — закрепление приложений на панели задач. Для того чтобы закрепить приложение на панели задач достаточно нажать правую клавишу мыши на окне приложения в панели задач и выбрать пункт «Закрепить программу в панели задач».
Для восстановления панели быстрого запуска (Quick Launch)необходимо создать дополнительно панель инструментов и указать на папку Quick Launch: для этого нужно нажать правой клавишей мыши на панели задач и выбрать в контекстном меню пункт «Панели» и далее «Создать панель инструментов…».  В открывшемся диалоговом окне указать на следующую папку: C:\Пользователи\<Имя пользователя>\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch. (Если папка AppData не видна в диалоговом окне, необходимо открыть панель управления, выбрать пункт «Оформление и персонализация», в нём выбрать пункт «Показ скрытых файлов и папок» и уже в нём выбрать опцию «показывать скрытые файлы, папки и диски») После этого панель инструментов Quick Launch будет добавлена на панель задач. Для классического ее отображения можно нажать правой клавишей мыши на панели и снять отметку с параметров отображения текста Show Text и заголовков Show Title. Удобство классической панели быстрого запуска состоит в том, что пользователю будут доступны иконки приложений, которые помещают свои ярлыки в эту панель.
Изменение панели задач Windows 7 на стиль XP/Vista
Одним из самых явных изменений в Windows 7 является новая панель задач, в которой вместо кнопок отображаются иконки, и все окна приложения объединяются под одну кнопку. Первое, что необходимо сделать, чтобы вернуться к более старому стилю панели задач — это кликнуть правой кнопкой мыши по любому свободному ее месту и из появившегося меню выбрать строку Properties (свойства). Далее на вкладке Taskbar (панель задач) напротив надписи кнопок панели задач Taskbar buttons необходимо выбрать опцию Never combine (никогда не объединять), которая установит отображение в панели задач отдельной кнопки для каждого отдельного окна. Также можно выбрать опциюCombine when taskbar is full (Объединять, если панель задач заполнена), которая будет объединять окна при заполнении панели задач. После выполнения этих действий (и естественно их применения) кнопки будут отображаться с текстовыми надписями… которые, однако, будут выполнены в стиле Windows 7. Чтобы это «подправить», еще необходимо зайти в свойства панели задач и установить пункт использования маленьких иконок Use small icons. Панель задач при этом станет несколько уже и будет очень похожа на панель Vista. Единственной оставшейся проблемой станут «приколотые» иконки, которые все еще будут находиться на панели задач. Однако их можно убрать, кликнув по каждой из них правой кнопкой мыши и выбрав пункт Unpin this program from taskbar (открепить эту программу от панели задач). И после этого панель задач будет выглядеть и работать почти как панель Windows XP/ Vista.
Изменение экрана приветствия LOGON UI в Windows 7
Windows 7 обладает новым экраном приветствия LOGON UI. Экран приветствия, легко можно изменить с помощью бесплатной программы Tweaks Logon Changer. С её помощью экран приветствия можно изменить на любую другую картинку или возвратить изначальную страницу приветствия. Если размер картинки больше 256Кбайт, то Tweaks Logon Changer предложит создать ее копию и автоматически сжать до нужного размера.
Изменить экран приветствия можно и средствами самой системы, без использования дополнительных программ.
Как включить/запустить Windows XP Mode в Windows 7
XP Mode (режим Windows XP) — это дополнение, которое в связке с Virtual PC позволяет обеспечить полную совместимость старых приложений с Windows 7XP Mode представляет собой виртуальную машину с предустановленной системой Windows XP; она запускается из-под самой Windows 7 и предлагает производить запуск старых приложений, не совместимых с Windows 7, как раз в среде Windows XP, за счет чего и достигается полная совместимость.
Важно отметить, что функция Windows XP Mode в обязательном порядке требует аппаратной поддержки виртуализации, кроме того, специалисты корпорации Microsoft рекомендуют использовать компьютер, оснащенный, как минимум, 2 Гб оперативной памяти. В том, что «железо» компьютера удовлетворяет необходимым требованиям, можно убедиться, скачав и запустив представленные на странице microsoft.com/windows/virtual-pc утилиты.
Готовой «суперкнопки» с гордым названием «включить Windows XP Mode» нет. Технология является  внешней по отношению к самой Windows 7, при этом поддерживаются только профессиональные редакции - Professional, Enterprise и Ultimate.  Чтобы установить XP Mode на компьютер под управлением Windows 7,  нужно скачать новую версию Virtual PC (файл Windows6.1-KB958559-x86  ~4,9 Мб) и готовый образ Windows XP (файлVirtualWindowsXP.msi ~445 Мб), в которую уже установлены необходимые службы и драйвера. Для тех же, кто хочет создать свой виртуальный образ — на сайте присутствуют версии обновлений для Vista/XP, установка которых в виртуальную ОС добавляет той поддержку режима Windows XP Mode. После загрузки обоих файлов нужно их установить — сначала Virtual PC для Windows 7, потом сам образ.
В меню «Старт» в «Программах» появляется раздел Windows Virtual PC, а в нем — собственно пункт Virtual Windows XP. При первом старте образ конфигурируется весьма тривиальным образом — запрашивается только пароль будущего пользователя. В стартовом меню, в том же разделе Windows Virtual PC появляется раздел Virtual Windows XP Applicationсо ссылками на виртуальные приложения. Запускать можно как виртуальную машину с Windows XP, так и отдельные программы, установленные внутри виртуального окружения. При этом система обеспечивает абсолютно прозрачную работу с подобного рода приложениями и не накладывает на них никаких функциональных ограничений. Из запущенных внутри Windows XP программ можно работать с файлами родительской системы, взаимодействовать с USB и прочими подключенными к компьютеру устройствами, копировать данные через буфер обмена, отправлять их на печать и т.д.

Как почистить Windows?


Если компьютер «тормозит», возможно, не стоит переустанавливать систему или вызывать специалиста, чтобы он посмотрел, «что там такое?»... Часто проблему можно устранить самостоятельно.
Вот несколько способов того, как немного ускорить работу компьютера и провести профилактическую «чистку» системы. На всякий случай создаётся  контрольная точка для экстренного восстановления системы. (Пуск/ Программы/ Стандартные/ Служебные/ Восстановление системы/ Создать контрольную точку, далее следовать указаниям мастера.)
Если система не позволяет создать контрольную точку, можно воспользоваться программами, вроде Image for Windows, TrueImage и др. Такие программы записывают все настройки системы в один файл и затем позволяют восстановить систему из записи.
  • Первое. Файл подкачки. скорость работы зависит от забитости памяти программами. На  жёстком диске должен оставаться небольшой объём памяти — не больше удвоенной «оперативки» для файла подкачки, в который временно копируются часто используемые данные из оперативной памяти. Посмотреть, какой объём выделяется на диске, можно в «Свойствах системы» (правой кнопкой по «Моему компьютеру», Свойства/ Дополнительно/ Параметры быстродействия/ Дополнительно). Если там установлен фиксированный размер, можно доверить его регулирование системе.
  • Второе. Временные файлы. Существует много программ, позволяющих чистить содержание памяти. Они удаляют все, по их мнению, ненужные файлы. К сожалению, единых расширений для всех типов файлов нет, и если работать не в «стандартных» программах, вроде Word'a и Paint'a, а в чём-нибудь специализированном, есть вероятность удаления документов и даже частей программы. Поэтому я рекомендую использовать встроенную «Очистку диска» (Диск/ Свойства/ Общие/ Очистка диска) — она удалит действительно ненужные временные файлы системы и приложений, сожмёт редко используемые файлы.
  • Третье. Программная очистка реестра. Для этого могут использоваться программы RegCleaner, Norton WinDoctor и другие. Если  с момента установки системы ни разу чем-нибудь таким не пользовались, они наверняка найдут кучу ошибок и, естественно, исправят их. Такими программами, например, можно исправить ошибку с неудаляющейся папкой. Важный момент - очистка Автозагрузки системы (не той, которая в «Пуске»). В нее,могут прописаться всякие программы, напоминающие о регистрации, ускоряющие запуск каких-нибудь приложений и просто ненужные. Всё это занимает оперативную память. Возможно, у вас достаточно памяти для любой нагрузки — но помните, что чем больше сервисов работает, тем больше сервисов ошибается, периодически «завешивая» компьютер в самое неподходящее время.
    Чистить автозагрузку можно с помощью того же RegСleaner'a, но также почти любым твикером (tweaker) — ускоряющей утилитой. Также твикеры могут помочь и в других пунктах, но если  не разбираетесь во всём том, что он предлагает сделать — лучше не делайте. Несомненно, компьютер ускорится, но за счёт снижения стабильности, которая в Windows и так невелика.
  • Четвёртое. Системные службы. Найти их можно в Панели управления/ Администрирование/ Службы. Некоторые из них можно отключить — в дань стабильности. Но не советую вам выключать службы, для которых нет описания или в описании которых вы не разбираетесь.
  • Пятое. Антивирусы. Очень модная сейчас тема. Некоторые, подвинутые на безопасности, ставят у себя по пять антивирусов и сканируют систему каждый час. Некоторые задумываются об антивирусе, когда компьютер уже надёжно заражен. В таком случае антивирус может уже не помочь, и придётся переустанавливать систему. Я рекомендую ставить один антивирус сразу после установки Windows и обновлять его раз в один-два месяца. Таким образом вы будете защищены от всех распространённых вирусов и троянских программ, антивирус вылечит зараженные файлы, попавшие на ваш компьютер, и удалит «теневой» софт — рекламные и следящие программы. Следует помнить, что сам антивирус занимает приличный объём оперативной памяти и некоторую часть интернет-канала.
  • Шестое. Дефрагментация.
  • Суть процесса в том, что файлы, записанные фрагментарно («кусочно») на разные части диска, могут вызываться гораздо медленнее, чем те, которые записаны по порядку в одном секторе. Лично у меня это не вызывает проблем, но бывает, что компьютер от этого начинает работать медленнее. В таком случае можно воспользоваться системным дефрагментатором (Мой компьютер/ Свойства диска/ Сервис/ Выполнить дефрагментацию). А можно использовать утилиту, вроде Vopt XP или Defragmenter Pro. Процесс этот небыстрый, и не позволяет работать на компьютере, так что рекомендую запускать его в последнюю очередь. Причём, запускать его надо через каждые три-четыре месяца как профилактическую процедуру.
  • Cуществует большое количество программ, позволяющих контролировать состояние вашего компьютера. С их помощьюможно понять, что лишнее завелось в системе. Тот же RegСleaner позволяет увидеть и отредактировать списки записей в реестре о программах, что позволяет устранить проблемы с переустановкой. Task Killer выводит список работающих процессов и позволяет их редактировать. Встроенная утилита dxdiag (так и набирать в строке «выполнить») позволяет увидеть мультимедийные возможности и свойства системы.
  • Одиннадцать способов продлить жизнь старому ПК


    Итак, вы приобрели наконец новый ПК. На своем борту он несет несколько процессорных ядер, память большого объема и быструю графическую плату. Старый компьютер теперь отставлен в угол, но даже сама мысль о том, чтобы выбросить его, вызывает у вас чувство вины. В конце концов, ведь он служил вам верой и правдой и до сих пор отлично работает.
    Перечислим несколько способов, которые помогут оживить старую систему.
    Сделайте из ПК сервер
    Если у вас есть домашняя сеть и члены семьи хотят ее использовать, неплохим выходом может стать превращение ПК в сетевое устройство хранения (network-attached storage, NAS) или даже в полноценный сервер. Но просто подключить старый ПК к сети недостаточно. Большинство настольных компьютеров не в состоянии эффективно функционировать в качестве серверов или систем хранения. Во-первых, они, как правило, потребляют слишком много электроэнергии. Если BIOS системной платы поддерживает такую возможность, то в меню управления энергопотреблением имеет смысл перевести вентилятор охлаждения в
    режим, обеспечивающий уменьшение шума. Кроме того, нужно настроить ОС таким образом, чтобы она не выключала компьютер в самое неподходящее время, а переводила его в состояние пониженного энергопотребления в моменты недостаточно активного использования.
    Помните, что сервер лучше сделать безголовым (лишенным монитора) и избавить его от клавиатуры и мыши.
    Во время начальной установки без дисплея и устройств ввода обойтись, скорее всего, не удастся, но затем следует убедиться, что компьютер будет нормально работать и без них.
    Операционная система ПК не слишком хорошо подходит для приложений хранения, особенно если применять их в многопользовательском режиме.
    Windows XP, Vista и Windows 7 успешно справляются с ролью хранилища, если пользователей не больше двух, но вам, наверное, захочется создать учетные записи для каждого участника, которому может понадобиться доступ. Кроме того, хорошо было бы определить квоты на ресурсы хранения.
    Наилучшее решение выглядит следующим образом. Установите подходящую сетевую операционную систему. Одним из вариантов является Windows Home Server. Но эта ОС  стоит около 100 долл.(цены в США) и может потребовать обновления оборудования.
    В качестве альтернативы предлагается FreeNAS. Программное обеспечение с открытым исходным текстом FreeNAS предназначено специально для того, чтобы превратить ПК в устройство хранения, подключаемое к сети. Система построена на основе FreeBSD — одной из разновидностей ОС Unix. Если вы опасаетесь сразу устанавливать на диск незнакомую версию, то используйте FreeNAS в варианте LiveCD. Он представляет собой записанный на компакт-диск образ ISO, загружаемый с оптического дисковода и запускаемый из памяти. Старую операционную систему можно сохранять на жестком диске, пока вы не  почувствуете, что FreeNAS отвечает вашим требованиям.
    Отдайте ПК в школу
    Если ваш ПК не слишком древний, его, наверное, можно подарить местной школе или  больнице. В этом случае он либо займет свое место в компьютерной лаборатории учебного заведения, либо его разберут на запчасти. Если вы решите пойти этим путем, рассмотрите возможность приобретения каких-нибудь недорогих образо- вательных программ и установите их на компьютер до передачи ПК школе.
    Кроме того, отдавая компьютер, удалите с него все ПО, которое перенесли на новый ПК. Не забудьте приложить лицензии на программное обеспечение, которое было установлено на отдаваемом компьютере.
    Превратите ПК в черный ящик для экспериментов
    Вы, вероятно, уже слышали кое-что о Linux, а может быть, даже успели ознакомиться с этой операционной системой. Но желание превратить основной компьютер в систему с двойной загрузкой не дает вам покоя. Для начала можно безопасно поэкспериментировать на старом ПК. Опробуйте Ubuntu (ubuntu.com) — довольно приятный дистрибутив Linux, который так любят технически подготовленные пользователи. Одним из преимуществ Linux является наличие встроенных средств поддержки старого оборудования, благодаря чему установка операционной системы обычно проходит довольно легко. На практике установить Ubuntu оказывается даже проще, чем Windows. А богатство бесплатного программного обеспечения
    для Linux открывает широкий простор для творчества.
    Число операционных систем, созданных на основе Unix, достаточно велико: начиная от FreeBSD и PCBSD (в основу этих ОС положена версия Unix, разработанная в университете Беркли) и заканчивая системой OpenSolaris, проектированием которой занимались специалисты компании Sun Microsystems.
    Отдайте ПК родственникам
    Лично я поступаю так постоянно. Компьютерные потребности моего шурина довольно скромны, поэтому время от времени я дарю ему свои ПК двухлетней давности, дополненные графической платой начального или среднего уровня. Я бы не рекомендовал отдавать устаревшие модели детям, ведь им зачастую нужен даже более мощный ПК, чем обычно требуется вам (если не принимать во внимание игры и обработку фотографий).
    Кроме того, передача компьютера кому-то из членов семьи означает, что отныне вы  автоматически превращаетесь для них в технического консультанта.
    Наверное, имеет смысл полностью отформатировать жесткий диск и установить ОС с нуля. Если речь идет о готовой системе известного производителя, верните ее в первоначальное состояние с помощью раздела восстановления системы или диска восстановления, выполняющего аналогичные функции.
    Примите участие в распределенных вычислениях
    Хотите принести пользу человечеству? Тогда как вы относитесь к включению своего старого ПК в один из многочисленных проектов организации открытых распределенных вычислений?
    Наиболее популярен в мире проект Folding@Home, предусматривающий объединение  вычислительных ресурсов, предоставленных добровольцами из самых разных стран мира, для моделирования свертывания белков. Изучение этого процесса имеет очень важное значение для лечения различных заболеваний. Среди других инициатив распределенных вычислений можно отметить проект SETI@Home (поиск внеземного разума на дому), а
    также различные благотворительные и научные проекты.
    Сделайте из ПК игровой сервер
    Есть ли у вас любимая игра, в которой принимают участие сразу несколько человек? Если это так, стоит рассмотреть возможность превращения старого ПК в игровой сервер. Как ни странно, требования к производительности такого сервера зачастую оказываются достаточно скромны.
    Используйте ПК для старых игр
    Наряду с идеей развертывания игрового сервера, имеет смысл подумать о том, чтобы использовать ПК для старых игр. Установив на него операционную систему Windows 98, можно запускать старые игры для Windows 95 и DOS. Однако есть и другие решения. Ряд интерактивных сервисов (например, Steam или Impulse) предлагают сейчас старые игры, адаптированные к особенностям новых операционных систем. А утилита DOSBox позволяет эмулировать унаследованную среду DOS и запускать там классические игры.
    Пожалуй, наиболее полным в настоящее время пакетом, объединяющим старые игры, является программное обеспечение Good Old Games (www.gog.com). GOG предлагает множество старых игр, прекрасно работающих в среде новых ОС. Таким образом, любому, кто желает вспомнить былое и сыграть в Planescape: Torment, предоставляется неплохая возможность проделать это. Любите аркадные игры? И к ним можно приобщиться, не  выходя из дома.
    Чтобы добиться совместимости со старыми играми, установите на компьютер программное обеспечение MAME (multiple arcade machine emulator). В результате, благодаря получению доступа к постоянной памяти и другим требуемым файлам, вы сможете запускать аркадные игры и программы, написанные для старых игровых приставок. Но сразу предупреждаем: игры не только доставляют массу приятных ощущений, но и отнимают кучу времени. Помните об этом.
    Постройте дополнительный вычислительный сервер
    Если вы занимаетесь созданием новых информационных ресурсов с помощью 3ds Max, Adobe After Effects или Sony Vegas, наличие еще одного ПК, позволяющего организовать распределенный рендеринг, поможет заметно ускорить получение конечного результата при реализации сложных проектов. Каждое приложение управляет распределенным рендерингом посвоему, поэтому для начала уточните детали, обратившись к документации. В общем случае более легкое приложение устанавливается на дополнительную систему рендеринга, которая получает команды и данные от главной системы, а затем доставляет ей полученные результаты. Управление рендерингом в сетевой среде осуществляется главным приложением, находящимся на основном компьютере, или отдельным программным  диспетчером.
    Установите маломощный ПК в гостиной
    У меня в гостиной стоит небольшой ПК, который мы используем для выхода в Сеть и проверки электронной почты, а дети иногда выполняют на нем домашние задания. Такой вариант особенно хорош, если дома имеется сетевое хранилище. Благодаря ему люди могут обращаться к своим файлам независимо от того, сидят ли они за своим персональным компьютером или за машиной общего пользования.
    На общий компьютер желательно установить как можно более надежные средства безопасности. Когда за одним компьютером работают несколько пользователей, кто-нибудь из них рано или поздно зайдет на сайт, распространяющий троянских коней или другие
    вредоносные программы.
    Пустите старый ПК на запчасти
    Если вам нравится делать все своими руками и вы намерены собрать ПК самостоятельно, можно сократить затраты, включив в новую систему отдельные компоненты старого компьютера. Хорошими кандидатами на перенос в новую систему являются корпус ПК (если он соответствует общепринятым стандартам), дисковод для оптических дисков, блок питания, а иногда и модули памяти. При большом количестве повторно используемых компонентов уже трудно сказать, идет ли речь о приобретении новой системы. Покупаем ли мы новую систему или модернизируем старую, заменяя системную плату, процессор, память и основной жесткий диск, но оставляя корпус, блок питания, графическую плату и оптический накопитель? Итак, продление срока службы запчастей можно рассматривать как альтернативу дальнейшему использованию старого ПК.
    Продайте ПК
    На различных аукционах, например на molotok.ru, время от времени появляются покупатели, ищущие подержанные компьютеры. Им либо не хочется тратить достаточно большие деньги на новый, либо речь идет о приобретении второго ПК для кого-нибудь из членов семьи. А ваш старый компьютер, если вы попросите за него разумную цену, — именно то, что им нужно. Если сделка пройдет гладко, все окажутся в выигрыше. Вы получите деньги за старое оборудование, а компьютер найдет нового пользователя, который сумеет оценить его по достоинству.
    * * *
    Итак, старый компьютер может найти множество различных применений, особенно если он находится в хорошем рабочем состоянии. Не всем пользователям нужны четырехъядерные процессоры и графические платы высшего класса. И если старая система пылится в чулане, извлеките ее оттуда — и пусть она работает. Кто знает, может быть, именно ваша машина поймает сигнал, который станет первым свидетельством существования разумной жизни за пределами нашей планеты.

    SMS-ботнет


    Мобильные устройства — лакомый кусочек для хакеров, что наглядно подтверждает статистика: количество малваря, ориентированного на мобильные девайсы, растет день ото дня.
    Однако, если строишь ботнет в мобильных сетях, нужны не сколько отличные от обычных схемы распространения «заразы» И управления зомби-сетью. IР-протокол врядли является в данном случае оптимальным вариантом, ведь мобильные ресурсы скромны и ограниченны, а работа с IР-протоколом получается неудобной и не выгодной — такую активность легко обнаружить.
    Зато если использовать для черных хакерских делишек стек SMS-сообщений с обработчиком ботом, анализирующим входящие сообщения и выполняющим основные функции узла ботнета [DDOS-атака, рассылка спама, установка новых функций и так далее], как было предложено на конференции ShmooCon 2011, получается уже лучше. Представленный концепт SMS-ботнета, продемонстрированный пока на примере Аndrоid, имеет классическую иерарxическую структуру-управляющий бот, распределяющий и подчиненный. При этом средний уровень и защищает «верхушку» от обнаружения, служа своеобразным буфeром, и передает команды управляющего бота нижним звеньям цепи. Пока единственные минусы, которые видит в своем прототипе автор, -немалая вероятность обнаружения странной активности мобильными операторами, а также небольшая длина SMS-сообщений, из-за которой длинные команды приходится кодировать. В остальном схема работоспособна и, можно сказать, удобна. К сожалению (или к счастью), автор не пожелал выкладывать все исходники и наработки в открытый доступ, так как не хочет лишних проблем. Впрочем, со всеми желающими энтузиастами и разработчиками он все же обещал поделиться, нужно лишь попросить. Почитать подробности, посмотреть видео и ознакомиться с кодом можно в блоге автора: http://www.grmn00bs.com/2011/01/30/smartphone-code-release-for-shmoocon.

    Секреты VirtualDub


    Цена на профессиональный видеоредактор может исчисляться тысячами долларов. В основном такие программы представляют собой сложные и громоздкие пакеты, для работы с которыми необходим определенный уровень подготовки. Более дешевые утилиты имеют массу недостатков, с которыми не сможет смириться ни один любитель видеомонтажа — эти приложения дают на выходе видео невысокого качества и содержат ограниченное число функций для редактирования видеоматериала. Программа VirtualDub (www.virtualdub.org) — редкое и потому приятное исключение из правил. Во-первых, эта утилита распространяется бесплатно. Когда ее автор, студент колледжа Эвери Ли (Avery Lee), начинал разработку, он делал все, что называется, «для себя», поэтому программа вышла очень продуманной и гибкой.Во-вторых, VirtualDub способна выполнять некоторые очень важные и полезные операции, которых можно не найти даже в дорогих коммерческих видеоредакторах.

    Конечно, при размере в несколько мегабайт этой утилите не потягаться с такими известными пакетами для обработки видео, как Adobe Premiere Pro, Edius и т. д., однако большинство наиболее важных операций с помощью данного приложения  выполнить удастся. Кроме того, следует отметить высокую скорость и стабильность работы утилиты, обусловленные тем, что она построена по принципу «ничего лишнего». Аскетичный интерфейс, отсутствие второстепенных функций и вдобавок поддержка многопоточности позволяют эффективно использовать аппаратные возможности и максимально задействовать мощности современных процессоров. В этой статье мы рассмотрим восемь востребованных задач, которые можно легко и быстро решить с помощью VirtualDub.
    Сохранение звуковой дорожки
    В некоторых случаях бывает нужно сохранить звуковую дорожку в виде отдельного файла. Например, вы хотите слушать концертную запись в плеере по дороге в институт или на работу либо извлечь аудиоданные из видео-файла, чтобы отредактировать в аудиоредакторе неудачно записанную звуковую дорожку. Подобные задачи VirtualDub решает быстро и качественно. Одно из достоинств программы состоит в том, что она сохраняет аудио- и видеопотоки без повторной компрессии. Она будет очень полезна при сохранении аудиотрека отдельным файлом. Чтобы отделить звук от видео, следует открыть в программе видеофайл и выяснить, находится ли переключатель в меню Audio в положении Direct stream copy. Затем нужно сохранить файл, выбрав команду File • Save as wav. Записать звуковую дорожку можно сразу в определенный формат, к примеру в поддерживаемый каким-нибудь портативным устройством, скажем MP3‑плеером. В результате исходный файл будет конвертироваться в формат, указанный пользователем. Для этого необходимо в меню Audio установить переключатель в положение Full processing mode и выбрать команду Audio • Compression. В появившемся меню нужно указать тип кодека, который будет использоваться для сжатия аудиотрека, а также его параметры — частоту дискретизации и битрейт, определяющие качество сохраняемого файла. Далее следует выбрать команду File • Save as wav. После завершения описанных выше действий программа выполнит конвертирование звуковой дорожки в требуемый формат. Учтите, что файл будет со-
    хранен с расширением.wav, из-за чего не все устройства и приложения сумеют корректно определить его содержимое. А когда программа сконвертирует и запишет аудиофайл на жесткий диск, его разрешение можно изменить вручную в любом файловом менеджере, установив «правильное» MP3 или другое.
    Резка клипа без потерь
    Как уже было отмечено, VirtualDub помогает редактировать видеофайлы без повторной компрессии. Благодаря это-
    му в программе можно, например, вырезать из концертной записи определенную композицию. Чтобы выполнить та-
    кую операцию, откройте исходный файл и передвиньте ползунок в положение, соответствующее началу фрагмен-
    та, который необходимо сохранить на диск отдельным файлом. Обозначьте начало этого клипа, нажав на клавиатуре клавишу или выбрав в меню программы Edit пункт Set selection start. Теперь передвиньте ползунок на конец вырезаемого эпизода и нажмите клавишу или укажите в меню программы Edit пункт
    Set selection End. На временной шкале выделенный промежуток будет обозначен цветом.
    Чтобы избежать повторной компрессии, выберите пункт Direct stream copy в меню Video и аналогичный пункт в меню Audio. Теперь можно сохранить файл с помощью команды File • Save as AVI. Поскольку не требуется повторное сжатие, то процесс сохранения отдельного фрагмента видео занимает очень мало времени и фактически сводится к записи файла на диск.
    Объединение нескольких клипов в один
    Главное неудобство, которое ощущается при работе с VirtualDub, — отсутствие многодорожечного интерфейса. На первый взгляд может даже показаться, что программа работает только с одним клипом. На самом же деле VirtualDub способна выполнять такую полезную операцию, как склейка, объединяя неограниченное число фрагментов в один. Склейка осуществляется двумя способами — по отдельности и пакетно. Объединение двух и более файлов без повторной компрессии выполняется лишь при условии, что они имеют одинаковые параметры. Чтобы присоединить один фрагмент к уже открытому клипу, следует выбрать в меню программы команду File
    • Append AVI segment и указать присоединяемый файл. Убедиться в том, что клипы предварительно склеены, поможет временная шкала — продолжительность видео должна увеличиться. Когда же нужно объединить группу видеофайлов, необходимо назвать их определенным образом: video001.avi, video002.avi, video003.avi и т. д. И тогда при изготовлении из отдельных фрагментов целого видео файлы автоматически встанут в том порядке, в каком они пронумерованы. Пользователю останется добавить лишь первый файл. Далее операция склейки выполняется точно так же, как и при работе с двумя файлами.
    Замена звуковой дорожки
    Выполнять данную операцию имеет смысл, например, при работе с двумя видеофрагментами, скажем парой филь-
    мов. В одном — плохое видео, но качественное звуковое сопровождение, в другом — изображение хорошее, но звук неважный. Значит, для получения требующегося результата нужно будет подменить звуковую дорожку, совместив хорошее качество видео и нормальный звук.
    А чтобы замена аудиодорожки осуществилась корректно, необходимо соблюдать определенные условия. Так, продолжительность аудио не должна сильно отличаться от исходной продолжительности видео. Кроме того, следует учитывать, что некоторые форматы видео совместимы со звуковыми дорожками только определенного формата. Аудиодорожку лучше всего подготовить в другой программе (например, в бесплатном аудиоредакторе
    Audacity), хотя в данной утилите и есть функция импорта аудиотрека из другого видеофайла.
    Для замены звуковой дорожки нужно открыть исходное видео в VirtualDub и выполнить команду Audio • Audio From Another File. А затем следует указать путь к аудио- или видеофайлу и сохранить результат. Пакетная обработка
    видео в VirtualDub Редактор VirtualDub содержит так называемый список заданий (Job List), позволяющий автоматизировать обработку файлов. Например, стоит задача конвертировать с десяток видеофайлов в разные
    форматы. Если бы в программе не было поддержки пакетной обработки, пришлось бы по очереди загружать в нее
    видео, указывать каждый раз новые настройки, ждать, пока она запишет файл на диск, затем открывать следующее
    видео и снова ждать, пока VirtualDub справится с процессом сжатия и т. д. Благодаря поддержке пакетной обработки видео, можно лишь указать, какие операции должны быть выполнены, а затем оставить компьютер без присмотра. Утилита обработает данные, строго придерживаясь оставленных инструкций. Чтобы занести какое-нибудь задание в список Job List, необходимо использовать набор команд в меню File • Queue batch operation.
    Скажем, если нужно последовательно выполнить сжатие двух файлов, необходимо проделать следующие действия.
    Открыть первый файл, указать параметры сжатия и, если потребуется, начало и конец сохраняемого клипа. Потом
    следует выбрать в меню File •Queue batch operation • Save as AVI. После этого программа не будет выполнять никаких дей- ствий, и можно открыть следующий файл, настроить новые параметры его экспорта и еще раз выбрать нужную команду из подменю Queue batch operation. Далее, когда все задания будут составлены, необходимо раскрыть список Job List в меню File • Job control и нажать в нем кнопку Start, чтобы запустить процесс пакетной обработки.
    Многопроходное кодирование
    Если требуется подготовить видео для просмотра на мобильном устройстве или перевести его в определенный формат для публикации на одном из онлайновых сервисов, это поможет сделать VirtualDub. Многие алгоритмы сжатия видео поддерживают кодирование в несколько потоков, однако далеко не все знают, как эту технологию
    применить на практике. Допустим, необходимо сжать файл кодеком x264vfw (он устанавливается дополнительно,
    например, вместе с пакетом кодеков K-lite). Когда файл будет открыт в программе, нужно выбрать в меню Video • Full processing mode, а затем — команду Video • Compression. В списке установленных видеокодеков следует указать пункт x264vfw — H.264/MPEG-4 AVC codec. Затем в правой части окна надо нажать кнопку Configure, чтобы перейти к настройке процесса сжатия. Потом в окне настроек кодека, в раскрывающемся списке Rate Control, нужно выбрать пункт Multipass 1st pass (он обозначает первый проход при многопроходном кодировании) и установить флажок Zero
    Latency, а в поле Target bitrate kbit/s задать скорость потока. Чем больше этот параметр, тем выше будет качество изображения. Далее следует нажать на кнопку Оk и указать формат звуковой дорожки (команда Audio • Compression) и тип кодека, например Mp3 48 кГц 128 kBit/s, stereo. Теперь нужно выбрать в меню программы File • Queue batch operation • Save as AVI. Затем необходимо еще раз перейти к настройкам кодека для сжатия видеодорожки и в списке Rate Control выбрать пункт Multipass Nth pass (проход кодирования, отличный от первого). Никакие другие настройки изменять при втором, третьем и следующих проходах не придется. Далее следует повторно занести команду сохранения файла в список заданий File • Queue batch operation • Save as AVI. Если же понадобится выполнить кодирование в три (или более) прохода, то следует добавить в список заданий команду сохранения файла столько раз, сколько требуется. При каждом выборе этой команды имя файла должно оставаться одним и тем же. Многопроходное кодирование позволит кодеку оцифровать данные в несколько проходов. После каждого цикла компрессии программа записывает, а затем обновляет вспомогательный файл статистики, информация из которого используется алгоритмом многопроходного сжатия при любом очередном проходе.
    Когда все задания будут добавлены в список, нужно открыть список пакетной обработки заданий VirtualDub Job
    Control, нажав клавишу . В нем отображена вся последовательность действий, которые должна выполнить про-
    грамма. Для начала кодирования надо нажать кнопку Start и дождаться окончания обработки файла программой.
    Когда процесс конвертирования видео завершится, в списке заданий напротив каждой строки в колонке Status будет
    стоять Done (Готово). Чтобы не возникло случайных ошибок, при обработке видео не рекомендуется запускать ресурсоемкие приложения и вообще работать в это время на компьютере. Поскольку принцип многопроходного кодирования идентичен независимо от выбираемого кодека, сжатие с его использованием кодеками DivX, VP70 и пр. будет мало отличаться от описанного варианта для x264.
    Применение фильтров
    Чтобы откорректировать цветопередачу, наложить логотип на видео, изменить соотношение сторон и выполнить другие операции с видеофайлом, потребуются видеофильтры. Так вот в VirtualDub их множество, причем самых разных. К одному ролику допустимо применять любое количество фильтров. Чтобы назначить фильтр, необходимо выполнить команду Video • Filters, нажать кнопку Add и выбрать нужный. Если в фильтре присутствуют какие-то настройки, они отобразятся на экране сразу же после его добавления. А чтобы вернуться к ним после выбора фильтра в списке стандартных модулей VirtualDub, достаточно указать в меню команду Video • Filters и, выделив в перечне установленный, нажать кнопку Configure. Среди наиболее полезных фильтров, употребляемых для обработки видео, стоит выделить следующие:
    Deinterlace — устраняет эффек «гребенки», возникающий при наличии в видео смещения четных и нечетных строк изображения. Стандартный фильтр деинтерлейсинга в VirtualDub позволяет устранить этот недостаток изображения, используя несколько алгоритмов решения проблемы.
    Resize — помогает изменить размер картинки обрабатываемого видеофайла. При изменении оригинального размера картинки можно выбирать тип аппроксимации точек, чтобы получить наиболее четкую картинку.
    Logo — позволяет нанести на видео водяные знаки. С помощью данного инструмента легко поместить в любое ме-
    сто экрана картинку из файла формата JPG, TGA, PNG, BMP или JPEG. В настройках фильтра Logo можно использовать параметр прозрачности и маску альфа-канала для накладываемой на видео картинки.
    Rotate — предоставляет возможность подбирать оптимальную ориентацию кадра видео для просмотра на экране мобильного устройства, например смартфона. С его помощью удастся повернуть исходное изображение на 90, 180
    или 270°.
    Rotate2 — действует аналогично предыдущему. Однако в настройках этого фильтра разрешается указывать произвольный угол поворота, а положение смещенных точек кадра аппроксимируется по одному из нескольких алгоритмов. Кроме того, в настройках фильтра предлагается установить цвет поля, которое становится видимым при повороте картинки.
    Помимо стандартных фильтров, в программе VirtualDub можно использовать дополнения сторонних разработчиков, в том числе как бесплатные модули, так и коммерческие.
    Рассинхронизация видео и звука
    Эта проблема часто возникает при воспроизведении некорректно сжатых файлов. Причин рассинхронизации может быть много — от неправильно выбранных настроек кодирования до ошибок при обработке видеопрограммой. К счастью, существует несколько способов решить ее. Если аудиотрек имеет постоянную величину смещения видео относительно звука, необходимо в настройках кодирования указать параметр задержки аудиодорожки. Для этого в меню Audio нужно выбрать пункт Interleaving,  установить флажок Enable audio/video interleaving и в поле Delay audio track by указать значение в миллисекундах, на которое происходит отставание или опережение звука. Если аудио опережает видео, следует указать положительное значение, если отстает — отрицательное.
    Другой способ рассинхронизации — ручное редактирование звуковой дорожки. Попробуйте сохранить аудиотрек
    отдельно и исправить его в стороннем аудиоредакторе, например добавив пустой фрагмент нужной продолжительности в начало дорожки. Также можно обратить внимание на продолжительность трека после извлечения его из видео, а затем использовать специальный инструмент в аудиоредакторе, что-бы изменить продолжительность звучания аудио.
    * * *
    Поскольку VirtualDub имеет открытый код, отдельные энтузиасты создали ряд модификаций этой утилиты.
    Среди наиболее популярных «форков» стоит выделить VirtualDubMod (virtualdubmod.sourceforge.net) и NanDub
    (ndub.sourceforge.net). Если по каким-то причинам вас не устраивает VirtualDub, вы можете поработать с разными версиями данного видеоредактора. Интерфейс, а также основные функции в этих программах совпадают. Однако следует иметь в виду, что оригинальная версия, в отличие от ее ответвлений, регулярно обновляется.