Дыроверт операционных систем — КиберПедия 

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Дыроверт операционных систем

2021-01-29 61
Дыроверт операционных систем 0.00 из 5.00 0 оценок
Заказать работу

 

ОпСистема «Юних» всегда держалась провокационно на фоне войн операционных систем, подобно Русской Армии. Большинство людей знают только ее репутацию, и предположения о ее репутации, по типу как в мультфильме про Дильберта, смутны. Но все кажется согласны, что если бы она могла только проявить себя и перестать сдавать обширные пространства богатой сельскохозяйственной земли и сотни тысяч военнопленных в войне с наступающими захватчиками, она могла бы размазать их (и всю другую оппозицию) по стенке.

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

Hole Hawg является сверлильной установкой, выпускаемой компанией Milwaukee Tool. Если вы осмотритесь в типичном инструментальном магазине, вы можете найти меньшие дрели «от Милуоки» но не «Дыроверт», который является слишком мощным и слишком дорогим для частников. «Дыроверт» не имеет пистолетного дизайна дешевой домашней дрели. Это куб твердого металла с торчащей ручкой с одной стороны и патроном, установленным на другой. Куб содержит «возмутительно» мощный электрический двигатель. Вы можете удерживать ручку и нажимать триггер вашим указательным пальцем, но если вы не исключительно сильны, то не можете управляться с весом «Дыроверта» одной рукой; он, так сказать, «по-любому двуручный». Чтобы бороться с обратным вращающим моментом «Дыроверта», вы используете отдельную ручку (поставляемую с ним), которую привинчиваете на одну сторону железного куба или на другую в зависимости от того, используете ли вы вашу левую или правую руку, чтобы обслуживать триггер. Эта ручка не гладкая, эргономически разработанная фиговина, как у домашней дрели. Это — просто футовой длины кусок обычной гальванизированной трубы, прошитой с одного конца, с черной резиновой ручкой на другом. Если вам случится потерять его, вы просто придете в местный магазин сантехнической арматуры и купите другой кусок трубы.

Все восьмидесятые я выполнял кое-какие строительные работы. Однажды, другой рабочий приставил лестницу к наружной стороне здания, по котором мы легкими шагами поднимались вплоть до уровня второго этажа и использовали Hole Hawg, чтобы просверлить дыру сквозь внешнюю стену. В некоторой точке, сверло заклинило в стене. «Дыроверт», следуя своему и только своему стремлению, продолжал работать. Он закрутил тело рабочего вокруг подобно тряпичной кукле, так что тот сбил свою собственную лестницу вниз. К счастью, он продолжал держаться за «Дыроверт», заклиненный в стене, и просто болтался на нем и вопил о помощи, пока кто-то не пришел и не вернул лестницу на место.

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

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

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

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

Не трудно представить себе, на что мир должен выглядеть похожим, для кого-то, кто был воспитан контрагентами и кто никогда не использовал другой дрели, кроме «Дыроверта». Такой человек, обеспеченный наилучшими и наиболее дорогими дрелями из инструментальных магазинов, даже не признает их за таковые. Он мог взамен принять это за детские игрушки, или некоторый тип моторизованной отвертки. Если продавец или сбитый с толку домовладелец сошлются на это, как на дрель, он в натуре посмеется и сообщит им, что они попутали — у них просто была неверная терминология. Его крыша съедет от раздражения, и вероятно он почувствует желание отгородиться от поставок, полных дешевых, опасных, кричащих, красочных инструментов.

«Юних» — «Дыроверт» среди операционных систем, и хакеры «Юниха», типа Дага Барнса и парня в мультфильме про Дильберта, и многие другие люди, которые населяют Кремниевую Долину, — подобны сыновьям подрядчика, которые растут используя только «Дыроверт». Они могли бы использовать ОСи от Apple/Microsoft, чтобы написать письма, поиграть в видеоигры, или подвести баланс своих чековых книжек, но они не могут действительно заставить себя, воспринимать эти операционные системы серьезно.

 

Изустная традиция

 

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

Например, существует команда (небольшая программа, часть ОпСистемы), которая называется whoami (аглютинация англ. выражения «Кто я» — Прим. перев.), которая позволяет вам спрашивать компьютер, кем вы по его мнению являетесь. В машине под управлением Unix, вы всегда входите в систему под некоторым именем — возможно, даже под вашим собственным! То, с какими файлами вы можете работать, и какие софтинки вы можете использовать, зависит от вашего отождествления. Когда я начал использовать «Линух», я «зависал» на не подключенной к сети машине, в своей берлоге, только с одной учетной записью пользователя, и поэтому, когда я узнал о команде whoami, она показалась мне смешной. Но как только вы вошли в систему, в качестве одного человека, вы можете временно переключиться на другой псевдоним, чтоб иметь доступ к другим файлам (предположительно, имеются в виду не заумные для обычного пользователя манипуляции со значениями переменных EUID и EGID, а обычное переключение псевдотерминалов, когда с одной клавиатуры можно работать так, будто несколько человек подключены к одной машине: в мире «юнихов» и других современных сетевых ОС возможны и более «дикие» варианты виртуального клонирования и шизофрении — Прим. перев.). Если ваша машина находится в Интернете, вы можете зарегистрироваться на других компьютерах, если у вас есть понятные им имя пользователя и пароль. С этого момента, удаленная машина становится практически неотличима от той, что непосредственно перед вами. Эти изменения тождественности и местоположении могут легко стать вложенными в друг друга, на много слоев глубины, даже если бы вы не делаете чего-нибудь гнусного (вероятно, имеется в виду фальсификация личности, — прим. перев.). Как только вы забыли кто вы и где вы, — команда whoami незаменима. Я использую ее все время.

Файловые системы машин под управлением Unix все имеют ту же общую структуру. В своих домашних ОпСистемках, вы можете создавать директории (папки для файлов) и давать им имена типа «Фродя» или «Мое барахло» и поместить их куда угодно. Но под Unix самый верхний уровень — корень файловой системы (каталог «слэш», так называемый ROOT, полную власть над содержимым которого имеет обычно только одноименный пользователь — прим. перев.) всегда обозначается единственным символом «/» и он всегда содержит одинаковый комплект директориев верхнего уровня: /usr /etc /var /bin /proc /boot /home /root /sbin /dev /lib /tmp (По умолчанию, по крайней мере, — в разных версиях «Юнихов» состав каталогов немного варьируется и… не следует забывать о прихотях пользователя root) и каждый из этих каталогов, естественно, имеет собственную четкую структуру подкаталогов. Имейте в виду, что одержимое использование сокращений и исключение заглавных букв; — это система изобретенная людьми, для которых повторяющийся беспорядок так же напрягает и является тем же, чем для шахтеров — черные легкие. Длинные имена обгрызены вплоть до трехбуквенных сокращений, подобно камням вылизанным рекой.

Здесь не то место, чтобы попытаться объяснить, почему все вышеуказанные директории существуют, и что в них содержится. Сначала все кажется смутным; худшим, кажется умышленно замутненным. Когда я начал использовать Linux, я был привычен к возможности создавать каталоги, где бы я ни захотел и давать им по-любому те имена, какие волнуют мое воображение. Под Unix вы свободны делать это, конечно (вы свободны, чтобы делать что угодно), но когда вы приобретаете опыт общения с системой, вы начинаете понимать, что директории, указанные выше, были созданы не просто так и, что ваша жизнь будет значительно легче, если вы оставите их в покое (в пределах /home, между прочим, вы имеете даже слишком неограниченную свободу).

После того, как этого рода вещи случатся несколько сот или тысяч раз, хакер понимает, почему Unix именно таков, какой он есть — и не возражает, что он не будет таким же в любом другом случае. Это своего рода «аккультурация», которая дает хакерам Unix их осведомленность о состоянии дел в системе, и отношение тихого, непоколебимого, раздражающего превосходства, так захватившего Дильберта в мультике. «Окна» 95 и MacOS — продукты, изобретенные инженерами в службах специфических компаний. Unix, по контрасту, не столько продукт, как тщательно составленная изустная история хакерской субкультуры. Это — наш эпос о Гильгамеше.

Что сделало старые эпосы, подобно Гильгамешу, такими мощным и долговечными, так это то, что они жили в повествованиях, которые многие люди знали наизусть, и рассказывали снова и снова — создавая своих собственные личные прикрасы всякий раз, когда им это приходило в голову. Корявые украшения были отстрелены, удачные были восприняты другими, отшлифованные, улучшенные, и, со временем, включенные в историю. Аналогично, «Юних» известен, любим, и понят столь многими хакерами, что он может восстанавливаться с листа всякий раз, когда кому-то это нужно. Очень трудно понять это людям, которые привыкли думать об Осях, как о вещах, которые должны быть полностью куплены.

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

По крайней мере за год до моего принятия Linux, я услышал о нем. Заслуживающие доверия, хорошо осведомленные люди, продолжали сообщать мне, что кучка хакеров забацала реализацию «Юниха», который мог бы загружаться, бесплатно, из Интернета. Долгое время Я не мог заставить себя обращать на это внимание. Было похоже на расхожие слухи, что группа энтузиастов ракетного моделирования создала полностью функциональный «Сатурн V» обмениваясь планами по Сети и посылая по электронной почте клапаны и фланцы друг другу.).

Но это правда. Вся честь за Linux обычно достается его человеческому тезке, некому Линусу Торвальдсу (Linus Torvalds), финну по национальности, который заставил законченную штуку вертеться в 1991, когда он использовал некоторые инструментальные средства ГНУ (Эмблема сообщества открытых софтин Ричарда Столлмана — голова голубого гну, аббревиатура представляет собой обычную среди юниксоидов рекурсивную шутку «ГНУ это вам не ЮНИХ», так как аналоги «Юниха» не могут напрямую использовать защищенный законом торговый знак Unix (TM)), чтобы написать начало ядра Unix, которое могло бы работать на PC-совместимом «железе». И на самом деле Торвальдс заслуживает всю честь, которая ему когда-либо воздавалась, и много того более. Но он не мог заставить это случиться сам, во всявом случае так, как мог Ричард Столлман. Для того чтобы писать код вообще, Торвальдсу нужны были дешевые, но мощные инструментальные средства разработки, и он их получил из проекта ГНУ Столлмана.

И ему нужны были дешевые аппаратные средства, чтобы писать этот код. Получение дешевого «железа» — значительно более трудная штука, чем дешевое программное обеспечение; один-единственный человек (Столлман) может написать программное обеспечение и выложить его в Сеть для свободного использования, но чтобы делать железяки, необходимо иметь целую промышленную инфраструктуру, которая является не дешевой для сколь угодно богатого воображения. Действительно единственный способ, сделать аппаратное средство дешевым — наштамповать невероятное количество его копий, так, что устройство стоит в конечном счете гроши. По причинам уже объясненным, Apple не захотела увидеть стоимость аппаратных грошей. Единственной причиной, почему Торвальдс поимел дешевое железо, была Microsoft.

Microsoft обломалась вступить в аппаратный бизнес, нацеленная на создание своего программного обеспечения, способного «бегать» на «железе», которое каждый мог бы собрать, и так были созданы рыночные условия, которые привели к падению цен на это самое «железо». В попытке понять феномен «Линуха», мы должны увидеть не единственного новатора, а своего рода крёстную Троицу: Линуса Торвальдса, Ричарда Столлмана, и… Билла Гейтса. Отнимите любого из этих троих, и «Линух» бы не появился.

 

Осиновый шок

 

Молодые Американцы, которые оставляют свою большую однородную страну и посещают некоторую другую часть мира, естественно, проходят различные стадии культурного шока: первая, немое, с широко раскрытыми глазами, удивление. Затем экспериментальное увлечение традициями новой страны, кухней, системой общественного транспорта и туалетами, ведущее к краткому периоду простодушной уверенности, что они — мгновенные эксперты по новой стране. По мере того как визит продолжается, ностальгию начинает усиливаться, и путешественник начинает ценить, впервые, то, что он или она считали само собой разумеющимся дома. В то же самое время начинает казаться очевидным, что многие отдельные культуры и традиции по существу произвольные, и могли бы быть другими; как езда по правой стороне дороги, например. Когда путешественник возвращает домой и подводит итоги полученного опыта, он или она узнает много более об Америке, чем о стране, которую они посещали.

По тем же причинам, стоит попробовать Linux. Это — чудная страна на самом деле, но вам не придется жить там; краткого пребывания достаточно, чтобы уловить некоторый вкус места и — более важно — обновить представления обо всем, что считалось само собой разумеющимся, и обо всем, что может делаться иначе, под Windows или MacOS.

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

Мы любим простые дела и простые сделки в Америке. Если вы поедете в Египет и, скажем, возьмете такси где-нибудь, вы становитесь частью жизни водителя такси; он отказывается брать ваши деньги из-за того, что это может унизить вашу дружбу, он следует за вами вокруг города, и плачет горючими слезами, когда вы садитесь в такси другого парня. Вы заканчиваете встречей с его детьми в некотором месте, и должны посвятить себя всего своего рода искренности, чтобы найти какой-то способ скомпенсировать его убытки, не оскорбляя его честь. Это изматывает. Иногда вы просто захотите простой поездки на такси в манхэттенском стиле.

Но, чтобы поиметь установку в американском стиле, где вы можете просто выйти и кликнуть такси (в смысле клича, а не клика, — прим. для погонщиков «мыши») и дуть своей дорогой, должен существовать целый скрытый аппарат побрякушек, инспекторов, комиссий, и так далее, — который нужен, чтоб такси были дешевы и вы могли в любое время получить одно из них. Когда система отказывается работать почему-либо, это непостижимо и возмутительно и обращает во всех остальных отношениях разумных людей в конспирологических теоретиков. Но, когда Египетская система ломается, она остается прозрачной. Вы не можете получить такси, но племянник вашего водилы прискачет на своих двоих, чтобы объяснить проблему и извиниться.

Microsoft и Apple делают вещи в манхэттенском стиле, с обширной сложностью упрятанной за стеной интерфейса. Linux делает вещи «египетским» способом, с обширной сложностью разбросанной по всему ландшафту. Если Вы только что прилетели из Манхэттена, ваш первый импульс будет вздеть длани и возгласить «Слушайте и не говорите, что не слышали! Кто-нибудь здесь будет что-нибудь делать!?» Но это не поможет вам найти друзей в стране Линуха, сколько-нибудь проще, чем это было бы в Египте.

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

Linux сам по себе — не специфический набор единиц и нулей, но самоорганизующаяся сетевая субкультура. Конечный результат ее коллективных заклинаний — обширное тело исходного кода, почти все записанное на Си (доминирующий компьютерный язык программирования). «Исходный код» просто означает компьютерную программу как набранную и отредактированную каким-нибудь хакером. Если она на Си, имя файла будет вероятно иметь окончание. c или. cpp, в зависимости от того, какой диалект был использован; если она — на некотором другом языке, то будет иметь некоторый другой суффикс. Часто файлы этого типа могут обнаруживаться в директории с именем /src, которое является хакерским «гебраическим» сокращением от «исходник». (То есть «source» — прим перев.)

Исходные файлы бесполезны на вашем компьютере, и представляют небольшой интерес для большинства пользователей, но в них гигантское культурное и политическое значение, поскольку Microsoft и «Яблочники» держат их в секрете, тогда как «линухоиды» делают их общедоступными. Они как семейные ценности. Они — типа той штуки, которая в триллерах Голливуда использована в качестве Чудо-Юдо Оружия: плутониевая начинка бомбы, совершенно секретные планы, чемодан совсекретных инструкций, бобина микрофильма. Если б исходники для «Форточек» или MacOS были сделаны общедоступными через Сеть, то эти ОСи стали бы свободными, подобно Линуху — только не настолько хорошими, из-за того, что никого не оказалось бы вокруг, чтобы «пофиксить баги» и ответить на вопросы. Linux — «открытый источник» софта, лишь в том значении, просто, что каждый может получить копии его исходников.

Вашему компьютеру исходная программа нужна не более вас самих; ему нужен объектный код. Файлы объектного кода естественно имеют суффикс. o и нечитабельны почти ни для кого, кроме некоторых очень странных пацанов, из-за того, что они состоят из единиц и нулей. Соответственно, файлы этого типа обычно валяются в директории с именем /bin, для «бинарников.»

Исходные файлы являются просто текстовыми файлами ASCII. ASCII означает конкретный способ кодировать буквы в битовые образы. В файле ASCII, на каждый символ имеет восемь битов. Это создает резерв «алфавита» на 256 отдельных символов, в этих восьми двоичных цифрах можно сформировать это множество уникальных образцов (два в восьмой степени равно 256 — т. е. число комбинаций из восьми двоичных разрядов, — прим. перев.). На практике, конечно, мы стремимся ограничить себя знакомыми буквами и цифрами. Битовые шаблоны используются, чтобы представить эти буквы и цифры такими же, как те, которые физически перфорировались на бумажную перфоленту моим телетайпом в средней школе, который в свою очередь был таким же, как те, что использовались телеграфной промышленностью в течение десятилетий. Текстовые файлы ASCII, другими словами, — те же самые телеграммы, и как у таковых у них нет всяких типографских украшалок. Но по той же причине они вечны, поскольку код никогда не меняется, и универсальны, поскольку любая из когда-либо написанных программ для редактирования и обработки текстов «в курсах» относительно этого кода. (То есть, конечно, появляются всякие монстры, типа Unicode — удвоенная таблица из 16 разрядов (65536 комбинаций), в которой можно хранить весь китайский алфавит для захвата рынка ПО на родине Мао, но ASCII понимает любой уважающий себя компьютер. Шутка в тему: как на глаз отличить письма в кодировке ASCII и Unicode? Элементарно: маленькие письма — ASCII, большие — Unicode;))) — Прим. перев.)

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

Триада редактора, компилятора, и компоновщика, взятых вместе, формирует сердцевину системы разработки программного обеспечения. Теперь есть возможность вбухать много денег в чистенькие системки разработки с красивенькими графическими интерфейсами пользователя и различными эргономическими расширениями (О! Как RAD каждый программист, которому дан в ощущениях процесс Быстрой Разработки Приложений. В некоторых случаях это могло даже быть хорошим и разумным способом тратить деньги. Но на этой стороне дороги, самым лучшим программным обеспечением являются обычно свободные вещи. Редактор, компилятор и компоновщик для хакеров то же самое, чем были пони, стремена, и «комплекты стрельбы из лука» для Монголов (ну, колчан со стрелами и тугой лук — это в своем роде и есть комплект джентльменского арчера, будь то древний монгол или современный энтузиаст любимого спорта английских йоменов и славных парней робин-гудов, так что мой перевод archery sets прошу считать адекватным — прим. перев). Хакеры живут в седле (то есть в Сети? а где живут монголы? — неодумение пререв.), и «хакают» своими собственными инструментами, даже когда используют их, чтобы создать новые приложения. Это в натуре непостижимо, что инструментальные средства высшей пробы могут создаваться с чистого листа инженерами продукта. Даже если они — самые яркие инженеры в мире, они просто в меньшинстве.

В «ГНУсном мире Линуха» (это разумеется, юмор: попробуйте без вопросов перевести на великий и могучий GNU/Linux world. — Прим. перев.) есть две основных проги для редактирования: минималистский vi (известный в некоторых реализациях как elvis) и максималистский emacs (плюс два лагеря непримиримых сторонников того и другого, между которыми — настоящие религиозные войны. — Прим. перев.). Я использую emacs, который можно представить как термоядерный текстовый процессор. То, что он создавался Ричардом Столлманом (Richard Stallman); говорит достаточно. Он написан на языке Лисп, который является единственным машинным языком, который красив (весьма спорное утверждение, целиком на совести автора. Мое мнение может с ним не совпадать: я не люблю Лисп, если кто-то спросит. Мне гораздо больше по вкусу CLIPS, как объектно-ориентированное развитие идей функционального программирования — Прим перев.). Он колоссален, и всего лишь навсего редактирует обычные текстовые файлы ASCII, то есть, никаких шрифтов, никаких «жирных» гарнитур, никакого подчеркивания. Другими словами, часы инженеров, которые, в случае Microsoft Word, посвящались примочкам подобно автоматическому составлению писем и способности вставлять изображения изменяемого размера в корпоративные меморандумы, были, в случае emacs, сфокусированы на маниакальной по интенсивности работе над кажущимися обманчиво простыми проблемами редактирования текста. Если Вы — профессиональный писатель — т. е., если кто-то еще получает деньги, за беспокойство о том, как ваши слова будут отформатированы и напечатаны — emacs затмевает все другие софтины для редактирования приблизительно так же, как полуденное солнце делает звезды. Он не просто большой и более яркий; он просто заставляет всех остальных побледнеть (ну, тоже в своем роде двусмысленное замечание — бледнеть можно по разным причинам, — прим. перев.). Для страничного форматирования и печати Вы можете использовать TeX: обширный объем правил печати, написанных на Си и также свободно доступных в Сети.

Я мог бы долго трепаться о emacs и TeX, но прямо сейчас я пытаюсь поведать историю о том, как в натуре установить Linux в вашей машине. Методом хардкорной проверки на выживание было бы скачать редактор подобно emacs, и инструментальные средства ГНУ — компилятор и компоновщик — которые отшлифованы и великолепны примерно в той же степени как emacs. Обеспеченный ими, некто мог бы начать скачивать файлы исходников в кодировке ASCII (/src) и компилировать их в объектные файлы двоичного кода (/bin), которые должны работать на машине. Но типа, чтобы вообще прибыть в эту точку, — чтобы заставить emacs работать, к примеру — вы должны уже иметь Linux, установленный и работающий на вашей машине. И даже минимальная линуховая ОпСистемка требует тысячи двоичных файлов, действующих в полном согласии, размещенный и связанный вместе совершенно правильно.

Различные личности, таким образом, возложили на себя самих всю грязную работу, по созданию «поставок» Linux. Если я могу немного расширить египетскую аналогию, эти парни примерно как гиды в путешествиях, которые встречает вас в аэропорту, которые говорят на вашем языке, и помогают вам пройти через начальный культурный шок. Если вы — египтянин, конечно, вы видите это с другой стороны; туристические гиды существуют, чтобы удержать британских иноземцев от разгуливания по вашим мечетям и задавания вам одних и тех же вопросов снова и снова.

Некоторые из этих «тургидов» относятся к коммерческим организациям, как например, софтины Красной Шапки (в оригинале — Red Hat Software, название фирмы-распространителя, остальное — интернациональная игра слов, — прим. перев.), которая выпускает дистрибутивы Linux названные «Красной Шапкой», что придает этому столоверчению сравнительно коммерческий блеск. В большинстве случаев вы устанавливаете CD-ROM «Красной Шапочки» (другое фамильярное название, — прим. перев.) в ваш ПиСюк, перезагружаете его, и он выполняет остальное. Так же как гид по Египту будет ожидать некой компенсации за свои услуги, коммерческие поставки должны были оплачены. В большинстве случаев они не стоят почти ничего и в этом их немалое достоинство.

Я пользуюсь поставкой, которая называется Debian (слово является сокращением от «Deborah» и «Ian») и является некоммерческой. Она была организована (или, возможно, я должен сказать «она организовала себя») примерно той же сапой, как Linux в общем смысле, то есть, она опирается на добровольцев, которые сотрудничают по Сети, каждый ответствен за поддержку своего компонента системы. Эти люди разбили Linux на множество пакетов, которые являются сжатыми файлами и могут загружаться уже функционирующей линуховой системой на основе поставки Debian, затем, открываются и распаковываются, используя свободное приложение установки. Конечно, как таковая, Debian не имеет коммерческой мощи — ни распространительного механизма. Вы можете загрузить все дебиановские пакеты по Сети, но большинство людей захочет получить их на CD-ROM. Различные другие компании возложили на себя всю возню по закачиванию дебиановских пакетов на CD-ROMы и последующей их продаже. Я купил свое в «Лаборатории Линуховых Систем». Стоимость для трехдисковой установки, содержащей Debian во всей полноте — менее чем три доллара. Но (и это — важное различие) ни единого пенни из этих трех долларов не достается никому из кодировщиков, которые создавали Linux, ни упаковщикам из Debian. Они все остаются в Лаборатории Линоховых Систем и платятся не за программное обеспечение, или пакеты, но составляют стоимость «выпекания» дисков CD-ROM.

Каждая из линуховых поставок включает некоторый более или менее умный «хак» для обхода нормального процесса загрузки и чтоб заставить ваш компьютер, когда он включится, организовать себя не как ущербный ПиСюк, выполняющий «Окна», но как реальный «хост» под управлением Unix. Это немного тревожит поначалу, когда вы видите это впервые, но полностью безопасно. Когда PC загружается, он проходит небольшую программу самотестирования, проверяя доступное дисковое пространство и запас памяти, а затем осматривается в поисках диска, с которого можно загрузится. В любом нормальном виндовом компьютере, этим диском будет жесткий диск. Но если у вас ваша система настроена правильно, она сначала проверит дисководы для флоппиков или CD-ROM, и загрузится с одного из них, если они доступны.

Linux пользуется этой фишкой в своих целях. Ваш компьютер замечает загрузочный диск в приводе для флоппиков или СиДюков, загружает некоторый объектный код с этого диска, и слепо начинает исполнять его. Но это не «мелкомягкий» или «яблочный» код, это — линуховый код, и отсюда ваш компьютер начинает вести себя намного иначе, по сравнению с тем, к чему вы привыкли. Загадочные сообщения начинают перемещаться по экрану. Если вы загрузили коммерческую OS, вы отсюда видите мультяху «Добро пожаловать в MacOS» или экран, заполненный облаками в синем небе, и логотип «Windows». Но под Linux вы получаете длинную телеграмму, напечатанную абсолютно белыми буквами на черном экране. Здесь нет сообщения «добро пожаловать!». Большинство этих телеграмм полу-непостижимы, как угрожающие граффити на стене. (Не курить! Пристегните ремни… — Прим. линухоида. Три… Два… Один…)

Dec 14 15:04:15 theRev syslogd 1.3–3#17: restart. Dec 14 15:04:15 theRev kernel: klogd 1.3–3, log source = /proc/kmsg started. Dec 14 15:04:15 theRev kernel: Loaded 3535 symbols from /System.map. Dec 14 15:04:15 theRev kernel: Symbols match kernel version 2.0.30. Dec 14 15:04:15 theRev kernel: No module symbols loaded. Dec 14 15:04:15 theRev kernel: Intel MultiProcessor Specification v1.4 Dec 14 15:04:15 theRev kernel: Virtual Wire compatibility mode. Dec 14 15:04:15 theRev kernel: OEM ID: INTEL Product ID: 440FX APIC at: 0xFEE00000 Dec 14 15:04:15 theRev kernel: Processor #0 Pentium(tm) Pro APIC version 17 Dec 14 15:04:15 theRev kernel: Processor #1 Pentium(tm) Pro APIC version 17 Dec 14 15:04:15 theRev kernel: I/O APIC #2 Version 17 at 0xFEC00000. Dec 14 15:04:15 theRev kernel: Processors: 2 Dec 14 15:04:15 theRev kernel: Console: 16 point font, 400 scans Dec 14 15:04:15 theRev kernel: Console: colour VGA+ 80x25, 1 virtual console (max 63) Dec 14 15:04:15 theRev kernel: pcibios_init: BIOS32 Service Directory structure at 0x000fdb70 Dec 14 15:04:15 theRev kernel: pcibios_init: BIOS32 Service Directory entry at 0xfdb80 Dec 14 15:04:15 theRev kernel: pcibios_init: PCI BIOS revision 2.10 entry at 0xfdba1 Dec 14 15:04:15 theRev kernel: Probing PCI hardware. Dec 14 15:04:15 theRev kernel: Warning: Unknown PCI device (10b7:9001). Please read include/linux/pci.h Dec 14 15:04:15 theRev kernel: Calibrating delay loop.. ok — 179.40 BogoMIPS Dec 14 15:04:15 theRev kernel: Memory: 64268k/66556k available (700k kernel code, 384k reserved, 1204k data) Dec 14 15:04:15 theRev kernel: Swansea University Computer Society NET3.035 for Linux 2.0 Dec 14 15:04:15 theRev kernel: NET3: Unix domain sockets 0.13 for Linux NET3.035. Dec 14 15:04:15 theRev kernel: Swansea University Computer Society TCP/IP for NET3.034 Dec 14 15:04:15 theRev kernel: IP Protocols: ICMP, UDP, TCP Dec 14 15:04:15 theRev kernel: Checking 386/387 coupling… Ok, fpu using exception 16 error reporting. Dec 14 15:04:15 theRev kernel: Checking 'hlt' instruction… Ok. Dec 14 15:04:15 theRev kernel: Linux version 2.0.30 (root@theRev) (gcc version 2.7.2.1) #15 Fri Mar 27 16:37:24 PST 1998 Dec 14 15:04:15 theRev kernel: Booting processor 1 stack 00002000: Calibrating delay loop.. ok — 179.40 BogoMIPS Dec 14 15:04:15 theRev kernel: Total of 2 processors activated (358.81 BogoMIPS). Dec 14 15:04:15 theRev kernel: Serial driver version 4.13 with no serial options enabled Dec 14 15:04:15 theRev kernel: tty00 at 0x03f8 (irq = 4) is a 16550A Dec 14 15:04:15 theRev kernel: tty01 at 0x02f8 (irq = 3) is a 16550A Dec 14 15:04:15 theRev kernel: lp1 at 0x0378, (polling) Dec 14 15:04:15 theRev kernel: PS/2 auxiliary pointing device detected — driver installed. Dec 14 15:04:15 theRev kernel: Real Time Clock Driver v1.07 Dec 14 15:04:15 theRev kernel: loop: registered device at major 7 Dec 14 15:04:15 theRev kernel: ide: i82371 PIIX (Triton) on PCI bus 0 function 57 Dec 14 15:04:15 theRev kernel: ide0: BM-DMA at 0xffa0-0xffa7 Dec 14 15:04:15 theRev kernel: ide1: BM-DMA at 0xffa8-0xffaf Dec 14 15:04:15 theRev kernel: hda: Conner Peripherals 1275MB — CFS1275A, 1219MB w/64kB Cache, LBA, CHS=619/64/63 Dec 14 15:04:15 theRev kernel: hdb: Maxtor 84320A5, 4119MB w/256kB Cache, LBA, CHS=8928/15/63, DMA Dec 14 15:04:15 theRev kernel: hdc:, ATAPI CDROM drive Dec 15 11:58:06 theRev kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 Dec 15 11:58:06 theRev kernel: ide1 at 0x170-0x177,0x376 on irq 15 Dec 15 11:58:06 theRev kernel: Floppy drive(s): fd0 is 1.44M Dec 15 11:58:06 theRev kernel: Started kswapd v 1.4.2.2 Dec 15 11:58:06 theRev kernel: FDC 0 is a National Semiconductor PC87306 Dec 15 11:58:06 theRev kernel: md driver 0.35 MAX_MD_DEV=4, MAX_REAL=8 Dec 15 11:58:06 theRev kernel: PPP: version 2.2.0 (dynamic channel allocation) Dec 15 11:58:06 theRev kernel: TCP compression code copyright 1989 Regents of the University of California Dec 15 11:58:06 theRev kernel: PPP Dynamic channel allocation code copyright 1995 Caldera, Inc. Dec 15 11:58:06 theRev kernel: PPP line discipline registered. Dec 15 11:58:06 theRev kernel: SLIP: version 0.8.4-NET3.019-NEWTTY (dynamic channels, max=256). Dec 15 11:58:06 theRev kernel: eth0: 3Com 3c900 Boomerang 10Mbps/Combo at 0xef00, 00:60:08:a4:3c: db, IRQ 10 Dec 15 11:58:06 theRev kernel: 8K word-wide RAM 3:5 Rx: Tx split, 10base2 interface. Dec 15 11:58:06 theRev kernel: Enabling bus-master transmits and whole-frame receives. Dec 15 11:58:06 theRev kernel: 3c59x.c:v0.49 1/2/98 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html Dec 15 11:58:06 theRev kernel: Partition check: Dec 15 11:58:06 theRev kernel: hda: hda1 hda2 hda3 Dec 15 11:58:06 theRev kernel: hdb: hdb1 hdb2 Dec 15 11:58:06 theRev kernel: VFS: Mounted root (ext2 filesystem) readonly. Dec 15 11:58:06 theRev kernel: Adding Swap: 16124k swap-space (priority -1) Dec 15 11:58:06 theRev kernel: EXT2-fs warning: maximal mount count reached, running e2fsck is recommended Dec 15 11:58:06 theRev kernel: hdc: media changed Dec 15 11:58:06 theRev kernel: ISO9660 Extensions: RRIP_1991A Dec 15 11:58:07 theRev syslogd 1.3–3#17: restart. Dec 15 11:58:09 theRev diald[87]: Unable to open options file /etc/diald/diald.options: No such file or directory Dec 15 11:58:09 theRev diald[87]: No device specified. You must have at least one device! Dec 15 11:58:09 theRev diald[87]: You must define a connector script (option 'connect'). Dec 15 11:58:09 theRev diald[87]: You must define the remote ip address. Dec 15 11:58:09 theRev diald[87]: You must define the local ip address. Dec 15 11:58:09 theRev diald[87]: Terminating due to damaged reconfigure.

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


Поделиться с друзьями:

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.055 с.