Слободно како во Слобода на руски: Поглавје 7. Дилемата за апсолутен морал


Слободно како во Слобода на руски: Поглавје 7. Дилемата за апсолутен морал

Слободен како во слобода на руски: Поглавје 1. Фаталниот печатач


Слободно како во слобода на руски: Поглавје 2. 2001: Одисеја на хакери


Слободен како во Слобода на руски: Поглавје 3. Портрет на хакер во младоста


Слободен како во Слобода на руски: Поглавје 4. Откријте го Бога


Слободно како во Слобода на руски: Поглавје 5. А браздичка слобода


Слободен како во слобода на руски: Поглавје 6. Емакс комуна

Дилемата за апсолутен морал

Во дванаесет и пол ноќта на 27 септември 1983 година, се појави необична порака во групата Usenet net.unix-wizards потпишана со rms@mit-oz. Насловот на пораката беше краток и крајно примамлив: „Нова имплементација на UNIX“. Но, наместо некоја готова нова верзија на Unix, читателот најде повик:

Овој Ден на благодарноста, почнувам да пишувам нов, целосно компатибилен со Unix оперативен систем наречен GNU (GNU's Not Unix). Слободно ќе го поделам на сите. Навистина ми треба вашето време, пари, код, опрема - каква било помош.

За искусен развивач на Unix, пораката беше мешавина од идеализам и его. Авторот не само што се обврзал да пресоздаде од нула цел оперативен систем, многу напреден и моќен, туку и да го подобри. Системот GNU требаше да ги содржи сите потребни компоненти како што се уредувач на текст, командна школка, компајлер, како и „голем број други работи“. Тие ветија и исклучително атрактивни карактеристики кои не беа достапни во постоечките Unix системи: графички интерфејс во програмскиот јазик Lisp, датотечен систем толерантен на грешки, мрежни протоколи базирани на мрежната архитектура MIT.

„ГНУ ќе може да работи Unix програми, но нема да биде идентичен со системот Unix“, напиша авторот, „Ќе ги направиме сите потребни подобрувања кои созреаа со текот на годините на работа на различни оперативни системи“.

Очекувајќи скептична реакција на неговата порака, авторот ја дополни со кратка автобиографска дигресија под наслов: „Кој сум јас?“:

Јас сум Ричард Сталман, креатор на оригиналниот уредник EMACS, еден од клоновите на кој веројатно сте налетале. Работам во лабораторијата за вештачка интелигенција на МИТ. Имам долгогодишно искуство во развој на компајлери, уредници, дебагери, толкувачи на команди, ITS и Lisp Machine оперативни системи. Имплементирана поддршка за екранот независна од терминал во ITS, како и датотечен систем толерантен на грешки и два прозорски системи за машините Lisp.

Едноставно се случи сложениот проект на Сталман да не започне на Денот на благодарноста, како што беше ветено. Дури во јануари 1984 година Ричард напредуваше во развој на софтвер во стилот на Unix. Од перспектива на архитект на системи на ИТС, тоа беше како од изградба на мавритански палати до градење на приградски трговски центри. Сепак, развојот на системот Unix исто така понуди предности. ITS, со сета своја моќ, имаше слаба точка - работеше само на компјутер PDP-10 од DEC. Во раните 80-ти, Лабораторијата го напушти PDP-10, а ИТС, кој хакерите го споредија со зафатен град, стана град на духови. Unix, од друга страна, првично беше дизајниран со поглед на преносливост од една компјутерска архитектура на друга, така што таквите проблеми не му се закануваа. Развиен од помлади истражувачи во AT&T, Unix се лизна под корпоративниот радар и најде тивок дом во непрофитниот свет на тинк-тенковите. Со помалку ресурси од нивните браќа хакери во MIT, програмерите на Unix го адаптираа својот систем да работи на зоолошка градина со различен хардвер. Главно на 16-битниот PDP-11, кој хакерите на Lab го сметаа за несоодветен за сериозни задачи, но и на 32-битни мејнфрејмови како VAX 11/780. До 1983 година, компаниите како Sun Microsystems создадоа релативно компактни десктоп компјутери - „работни станици“ - споредливи по моќ со стариот мејнфрејм PDP-10. Сеприсутниот Unix исто така се насели на овие работни станици.

Преносливоста на Unix беше обезбедена со дополнителен слој на апстракција помеѓу апликациите и хардверот. Наместо да пишуваат програми во машинскиот код на специфичен компјутер, како што правеа хакерите на Lab кога развиваа програми за ITS на PDP-10, програмерите на Unix го користеа програмскиот јазик C на високо ниво, кој не беше врзан за одредена хардверска платформа. Во исто време, програмерите се фокусираа на стандардизирање на интерфејсите преку кои делови од оперативниот систем комуницираа едни со други. Резултатот беше систем каде што било кој дел може да се редизајнира без да влијае на сите други делови и без да се наруши нивната работа. И за да се префрли систем од една хардверска архитектура во друга, исто така беше доволно да се преработи само еден дел од системот, а не целосно да се преработи. Експертите го ценеа ова фантастично ниво на флексибилност и практичност, па Unix брзо се прошири низ компјутерскиот свет.

Сталман одлучи да го создаде системот GNU поради пропаѓањето на ITS, омиленото дете на хакерите на AI Lab. Смртта на ИТС беше удар за нив, вклучувајќи го и Ричард. Ако приказната со ласерскиот печатач Xerox му ги отвори очите за неправдата на сопственичките лиценци, тогаш смртта на ITS го турна од одбивност кон затворениот софтвер кон активно противење на него.

Причините за смртта на ИТС, како и неговиот код, одат далеку во минатото. До 1980 година, повеќето од хакерите на Лабораторијата веќе работеа на машина Lisp и оперативен систем за неа.

Lisp е елегантен програмски јазик кој е совршен за работа со податоци чија структура е однапред непозната. Создаден е од пионерот на истражувањето на вештачката интелигенција и креаторот на терминот „вештачка интелигенција“ Џон Мекарти, кој работел во МИТ во втората половина на 50-тите години. Името на јазикот е кратенка за „ЛИСТА Обработка“ или „обработка на список“. Откако Мекарти го напушти MIT во Стенфорд, хакерите на лабораторијата малку го променија Lisp, создавајќи го неговиот локален дијалект MACLISP, каде што првите 3 букви стојат за проектот MAC, благодарение на што, всушност, се појави Лабораторијата за вештачка интелигенција на MIT. Под раководство на системскиот архитект Ричард Гринблат, хакерите на Лабораторијата развија Lisp машина - специјален компјутер за извршување на програми во Lisp, како и оперативен систем за овој компјутер - исто така, се разбира, напишан во Lisp.

До почетокот на 80-тите, конкурентни групи на хакери основаа две компании кои произведуваа и продаваа машини Lisp. Компанијата на Гринблат беше наречена Lisp Machines Incorporated, или едноставно LMI. Тој се надеваше дека ќе направи без надворешни инвестиции и ќе создаде чисто „хакерска компанија“. Но, повеќето од хакерите се приклучија на Symbolics, типичен комерцијален стартап. Во 1982 година тие целосно го напуштија МИТ.

Оние што останаа можеа да се избројат на прстите од едната рака, па на програмите и машините им требаше подолго и подолго за да се поправат, или воопшто не беа поправени. И најлошо од сè, според Сталман, „демографските промени“ започнаа во Лабораторијата. Хакерите, кои претходно беа во малцинство, речиси исчезнаа, оставајќи ја Лабораторијата целосно на располагање на наставниците и учениците, чиј однос кон ПДП-10 беше отворено непријателски.

Во 1982 година, AI ​​Lab доби замена за својот 12-годишен PDP-10 - DECSYSTEM 20. Апликациите напишани за PDP-10 работеа без проблеми на новиот компјутер, бидејќи DECSYSTEM 20 во суштина беше ажуриран PDP -10, но стариот оперативниот систем воопшто не беше соодветен - ITS мораше да се пренесе на нов компјутер, што значи речиси целосно препишано. И ова е во време кога речиси сите хакери кои можеа да го направат ова ја напуштија Лабораторијата. Така, комерцијалниот оперативен систем Twenex брзо го презеде новиот компјутер. Неколкуте хакери кои останаа на МИТ можеа само да го прифатат ова.

„Без хакери да го креираат и одржуваат оперативниот систем, ние сме осудени на пропаст“, ​​велат членовите на факултетот и студентите „Потребен ни е комерцијален систем поддржан од некоја компанија за да може самиот да ги реши проблемите со овој систем. Сталман потсетува дека овој аргумент се покажа како сурова грешка, но во тоа време звучеше убедливо.

Отпрвин, хакерите го гледаа Twenex како уште една инкарнација на авторитарната корпоратократија што сакаа да ја разбијат. Дури и името го одразуваше непријателството на хакерите - всушност, системот беше наречен TOPS-20, што укажува на континуитет со TOPS-10, исто така комерцијален DEC систем за PDP-10. Но, архитектонски, ТОПС-20 немаше ништо заедничко со ТОПС-10. Направен е врз основа на системот Tenex, кој Болт, Беранек и Њуман го развија за PDP-10. . Сталман почна да го нарекува системот „Twenex“ само за да избегне да го нарекува ТОПС-20. „Системот беше далеку од врвни решенија, па не можев да се осмелам да го наречам со неговото официјално име“, се сеќава Сталман, „па ја вметнав буквата „w“ во „Tenex“ за да го направам „Twenex“. (Ова име игра на зборот „дваесет“, т.е. „дваесет“)

Компјутерот што управуваше со Twenex/TOPS-20 беше иронично наречен „Oz“. Факт е дека DECSYSTEM 20 бараше мала машина PDP-11 за да работи со терминалот. Еден хакер, кога првпат го виде PDP-11 поврзан со овој компјутер, го спореди со претенциозна изведба на Волшебникот од Оз. „Јас сум големиот и ужасен Оз! – рецитираше тој. „Само не гледај на ситното месо на кое работам“.

Но, немаше ништо смешно во оперативниот систем на новиот компјутер. Безбедноста и контролата на пристап беа вградени во Twenex на основно ниво, а неговите алатки за примена беа исто така дизајнирани имајќи ја предвид безбедноста. Срамотните шеги за безбедносните системи на Лабораторијата се претворија во сериозна битка за компјутерска контрола. Администраторите тврдеа дека без безбедносни системи, Twenex би бил нестабилен и склон кон грешки. Хакерите уверија дека стабилноста и доверливоста може да се постигнат многу побрзо со уредување на изворниот код на системот. Но, веќе ги имаше толку малку во Лабораторијата што никој не ги слушаше.

Хакерите мислеа дека можат да ги заобиколат безбедносните ограничувања давајќи им на сите корисници „привилегии за управување“ - зголемени права кои даваат можност да прават многу работи што на обичниот корисник му е забрането да ги прави. Но, во овој случај, секој корисник може да ги одземе „привилегиите за управување“ од кој било друг корисник, а тој не може да си ги врати себеси поради недостаток на права за пристап. Затоа, хакерите одлучија да добијат контрола над системот со одземање на „привилегиите за управување“ на сите освен на самите себе.

Погодувањето лозинки и вклучувањето на дебагерот додека системот се подигнува не направи ништо. Откако не успеа во "државен удар“, испрати Сталман до сите вработени во Лабораторијата.

„Досега аристократите беа поразени“, напиша тој, „но сега тие ја добија предноста, а обидот за преземање на власта пропадна“. Ричард ја потпишал пораката: „Радио Слободен ОЗ“ за никој да не погоди дека е тој. Одлично маскирање, имајќи предвид дека сите во Лабораторијата знаеја за односот на Сталман кон безбедносните системи и неговото исмевање со лозинките. Сепак, одбивноста на Ричард кон лозинките беше позната многу подалеку од МИТ. Речиси целиот ARPAnet, прототипот на Интернетот од тоа време, пристапуваше до компјутерите на Лабораторијата под сметката на Сталман. Таков „турист“ беше, на пример, Дон Хопкинс, програмер од Калифорнија, кој преку хакерски збор на уста дозна дека можете да влезете во познатиот ИТС систем на МИТ едноставно со внесување на 3 букви од иницијалите на Сталман како најава и лозинка.

„Засекогаш сум благодарен што МИТ ми даде мене и на многу други луѓе слободата да ги користат своите компјутери“, вели Хопкинс, „тоа ни значеше многу за сите нас“.

Оваа „туристичка“ политика траеше многу години додека живееше ИТС системот, а раководството на МИТ гледаше снисходливо на тоа. . Но, кога машината на Оз стана главен мост од Лабораторијата до ARPAnet, сè се промени. Сталман сепак обезбеди пристап до неговата сметка користејќи познат најава и лозинка, но администраторите бараа тој да ја смени лозинката и да не ја дава на некој друг. Ричард, повикувајќи се на неговата етика, воопшто одбил да работи на машината на Оз.

„Кога лозинките почнаа да се појавуваат на компјутерите на AI Lab, решив да го следам моето верување дека не треба да има лозинки“, рече Сталман подоцна, „и бидејќи верував дека на компјутерите не им требаат безбедносни системи, не требаше да ги поддржам овие мерки за имплементација. нив. "

Одбивањето на Сталман да клекне пред големата и страшна машина Оз покажа дека растат тензиите меѓу хакерите и претпоставените на Лабораторијата. Но, оваа тензија беше само бледа сенка на конфликтот што беснееше во самата хакерска заедница, која беше поделена на 2 табори: LMI (Lisp Machines Incorporated) и Symbolics.

Симболикс доби многу инвестиции однадвор, што привлече многу од хакерите на Лаб. Тие работеа на машинскиот систем Lisp и во MIT и надвор од него. До крајот на 1980 година, компанијата ангажирала 14 вработени во Лабораторијата како консултанти за да развијат сопствена верзија на машината Lisp. Останатите хакери, не сметајќи го Сталман, работеа за LMI. Ричард решил да не зазема страна и, по навика, бил сам.

Отпрвин, хакерите ангажирани од Symbolics продолжија да работат во MIT, подобрувајќи го машинскиот систем Lisp. Тие, како и хакерите на LMI, ја користеа лиценцата на МИТ за нивниот код. Бараше промените да се вратат на МИТ, но не бараше МИТ да ги дистрибуира промените. Меѓутоа, во текот на 1981 година, хакерите се придржуваа до џентлменски договор во кој сите нивни подобрувања беа запишани во машината Lisp на MIT и дистрибуирани до сите корисници на тие машини. Ваквата состојба сè уште зачувала одредена стабилност на хакерскиот колектив.

Но, на 16 март 1982 година - Сталман добро се сеќава на овој ден затоа што му беше роденден - на џентлменскиот договор му дојде крајот. Ова се случи по налог на менаџментот на Symbolics, на тој начин тие сакаа да го задават нивниот конкурент, компанијата LMI, која имаше многу помалку хакери кои работеа за неа. Водачите на Symbolics резонираа вака: ако LMI има многу пати помалку вработени, тогаш излегува дека целокупната работа на машината Lisp е корисна за неа, и ако оваа размена на случувања се прекине, тогаш LMI ќе биде уништен. За таа цел решиле да го злоупотребат писмото од лиценцата. Наместо да прават промени во верзијата на системот MIT, која LMI можеше да ја користи, тие почнаа да го снабдуваат MIT со Symbolics верзијата на системот, која можеа да ја уредуваат како што сакаат. Се испостави дека секое тестирање и уредување на кодот на машината Lisp на MIT оди само во корист на Symbolics.

Како човек одговорен за одржување на машината Лисп во лабораторијата (со помош на Гринблат првите неколку месеци), Сталман беше бесен. Хакерите на Symbolics обезбедија код со стотици промени што предизвикаа грешки. Сметајќи дека ова е ултиматум, Сталман ја прекина комуникацијата на Лабораторијата со Symbolics, вети дека никогаш повеќе нема да работи на машините на таа компанија и најави дека ќе се приклучи на работата на машината MIT Lisp за да го поддржи LMI. „Во моите очи, Лабораторијата беше неутрална земја, како Белгија во Втората светска војна“, вели Сталман, „и ако Германија ја нападне Белгија, Белгија ѝ објави војна на Германија и им се придружи на Британија и Франција“.

Кога директорите на Symbolics забележале дека нивните најнови иновации сè уште се појавуваат на MIT верзијата на машината Lisp, тие се налутиле и почнале да ги обвинуваат хакерите на Lab за кражба на код. Но, Сталман воопшто не го прекршил законот за авторски права. Тој го проучувал кодот обезбеден од Symbolics и направил логични претпоставки за идните поправки и подобрувања, кои почнал да ги спроведува од нула за машината Lisp на MIT. Директорите на Symbolics не веруваа во тоа. Тие инсталираа шпионски софтвер на терминалот на Сталман, кој снимаше се што правеше Ричард. Така тие се надеваа дека ќе соберат докази за кражба на кодови и ќе ги покажат на администрацијата на МИТ, но дури и до почетокот на 1983 година немаше речиси ништо да покажат. Сè што имаа беа десетина места каде кодот на двата системи изгледаше малку слично.

Кога администраторите на Лаб му ги покажаа доказите на Симболикс на Сталман, тој го отфрли, велејќи дека кодот е сличен, но не ист. И тој ја сврте логиката на раководството на Симболикс против него: ако овие зрнца од сличен код се сè што можеа да му откопаат, тогаш ова само докажува дека Сталман всушност не го украл кодот. Ова беше доволно за раководителите на Лабораторијата да ја одобрат работата на Сталман и тој ја продолжи до крајот на 1983 година. .

Но, Сталман го промени својот пристап. За да се заштити себеси и проектот што е можно повеќе од тврдењата на Symbolics, тој целосно престана да ги гледа нивните изворни кодови. Почна да пишува код исклучиво врз основа на документација. Ричард не ги очекуваше најголемите иновации од Symbolics, туку самиот ги имплементираше, а потоа додаде само интерфејси за компатибилност со имплементацијата на Symbolics, потпирајќи се на нивната документација. Тој, исто така, го читаше дневникот за промени во кодот на Symbolics за да види какви грешки поправаат, а тој самиот ги поправа тие грешки на други начини.

Она што се случи ја зајакна решителноста на Сталман. Создавајќи аналози на новите функции на Симболикс, тој го убеди персоналот на Лабораторијата да ја користи верзијата на МИТ на машината Лисп, што обезбеди добро ниво на тестирање и откривање грешки. И верзијата MIT беше целосно отворена за LMI. „Сакав да го казнам Symbolics по секоја цена“, вели Сталман. Оваа изјава покажува не само дека ликот на Ричард е далеку од пацифистички, туку и дека конфликтот околу машината Лисп брзо го допре.

Очајната решителност на Сталман може да се разбере кога ќе размислите како тоа му изгледало - „уништувањето“ на неговиот „дом“, односно хакерската заедница и културата на Лабораторијата за вештачка интелигенција. Леви подоцна го интервјуирал Сталман преку е-пошта, а Ричард се споредил со Иши, последниот познат член на индискиот народ Јахи, кој бил истребен во индиските војни од 1860-тите и 1870-тите. Оваа аналогија им дава на настаните опишани епски, речиси митолошки опсег. Хакерите кои работеа за Symbolics го видоа ова во малку поинаква светлина: нивната компанија не уништи или истреби, туку го направи само она што требаше да се направи одамна. Откако ја премести Lisp машината во комерцијалното поле, Symbolics го промени својот пристап кон дизајнот на програмите - наместо да ги сече според тврдокорните модели на хакерите, тие почнаа да користат помеки и похумани стандарди на менаџерите. И тие го сметаа Сталман не како противнички борец во одбрана на праведна кауза, туку како носител на застарено размислување.

Масло на огнот долеа и личните расправии. Уште пред појавата на Symbolics, многу хакери го избегнуваа Сталман, а сега ситуацијата многукратно се влоши. „Повеќе не бев поканет да одам на патувања во Чајна таун“, се сеќава Ричард, „Гринблат го започна обичајот: кога сакате да ручате, ги обиколувате колегите и ги поканувате со вас или им испраќате порака. Некаде во 1980-1981 година престанаа да ми се јавуваат. Не само што не ме поканија, туку, како што подоцна ми призна едно лице, вршеа притисок врз другите за никој да не ми каже за планираните возови за ручек“.

Извор: linux.org.ru

Додадете коментар