Поширення UNIX
At&t в 70-і роки була
"природною" монополією в області телекомунікацій. Цей статус
гарантувався законодавчою забороною діяльності інших телекомунікаційних компаній
на території США. У обмін на цей статус At&t вимушена була підкорятися
ряду регуляторних заходів, зокрема — їй було заборонено виходити на інших, окрім
телекомунікаційного, ринки, у тому числі на ринок програмного забезпечення. Проте
розробники UNIX відчували, що їх системі призначено набагато привабливіше
майбутнє, ніж внутрішній стандарт крупної компанії.
У 1973 р. одна з дочірніх компаній At&t, Western Electric, дала дозвіл
на використання UNIX в некомерційних цілях. Почалося поширення
системи в університетах США. Найбільший вклад в поширення і розвиток
університетської версії системи вніс університет Берклі, в якому було
створено спеціальний підрозділ, — BSD (Berkeley Software Distribution}.
У BSD UNIX було включено безліч коштовних нововведень, таких, як:
- сегментна (на старших моделях
Pdp-11) і сторінкова (на Vax-11/780) віртуальна пам'ять
- роздільні адресні простори процесів
і виділений адресний простір ядра
- абсолютні завантажувальні модулі
формату а.out
- примітивна форма бібліотек, що
розділяються
- удосконалення механізму обробки
сигналів
- управління сесіями і завданнями в межах сесії
Найважливіше нововведення було зроблене на початку 80-х,
коли в рамках робіт за проектом DARPA мережеве програмне забезпечення
Arpanet було перенесене з Tops/20 на BSD Unix. Незабаром мережевий стек BSD
став референтною реалізацією (реалізація, на сумісність з якою тестують
всі останні) того, що нині відоме як сімейство протоколів Tcp/ip.
У 1980 р. було вирішено почати комерційне поширення системи декілька
незвичайних принципах: At&t надавала стороннім комерційним фірмам
(природно, за плату) ліцензії на використання вихідних текстів ядра
і основних системних утиліт поточної версії UNIX, а вже ця стороння комерційна
фірма (дистриб'ютор) будувала на основі отриманих і самостійно розроблених
компонентів закінчену систему — з інсталяційною програмою, системою
управління пакетами і так далі — і займалася її продажем кінцевим користувачам
і супроводом. Таким чином була створена специфічна бізнес-модель
поширення ОС сімейства UNIX, добре знайома користувачам Linux.
Першою
з комерційних розповсюджувачів стала фірма Microsoft, що продавала
ядро UNIX v7 у складі ОС Microsoft Xenix. Xenix поставлявся майже для
всіх популярних у той час 16-розрядних міникомпиотеров і мікропроцесорних
систем [Дейтел 1987]. Як і BSD Unix, Xenix використовував віртуальну пам'ять
і мав окремий адресний простір для ядра. У 1983 р. торгівельна марка
Xenix і весь дистриб'юторський бізнес був переданий фірмі SCO в обмін на
долю акцій останньої.
До середини 80-х, виховане на університетських версіях UNIX покоління
студентів прийшло в промисловість. Почався бурхливий розвиток робочих
станцій (workstation) — потужних 32-розрядних персональних комп'ютерів, як
правило, оснащених сторінковими або сегментними диспетчерами пам'яті. Ліцензія
BSD допускала побудову на основі коди BSD комерційних систем без
яких-небудь обмежень, у тому числі і без грошових виплат розробникам ядра.
Завдяки цьому, а також завдяки технічній досконалості ядра BSD
Unix, останнє виявилося набагато привабливішим, ніж ядро At&t, тому
основна маса постачальників робочих станцій будували свої ОС на
основі BSD Unix. Це привело до швидкого і неконтрольованого розмноження систем, що
називали себе Unix, і що при цьому мали значну кількість
несовместімостей — додаткових або, навпаки, нереалізованих системних
викликів, помилок, "документованих особливостей" і так далі
У 1984 р. At&t уклала з федеральним антимонопольним комітетом
США угоду, відповідно до якої компанія повинна була виділити локальні
телефонні мережі в окремі компанії, і погоджувала плани створення конкурентної
середи на ринку міжміського зв'язку і виділення в окремі компанії підрозділів,
що не мають відношення до телекомунікацій. Довгострокові результати
цієї угоди до цих пір є предметом гарячих дебатів серед
юристів і економістів, але важливим на наш погляд є те, що At&t
змогла безпосередньо зайнятися продажами і підтримкою програмного забезпечення.
На ринок вийшло ядро Unix System V — перша підтримувана версія ядра
At&t UNIX.
У 1987 р. вийшла версія UNIX System V Release 3, що включала асинхронні драйвери
послідовних пристроїв (STREAMS), універсальний API для доступу до
мережевих протоколів (ТИ), засоби межпроцессного взаємодії (семафори, черги
повідомлень і сегменти пам'яті, що розділяється), нині відомі як SYSV
IPC BSD-совместимые сокети і ряд інших В5оїзмов
[Робачевський 1999]. Svr3 у той час сприймалася як етапна ОС, проте
подальший розвиток системи вимушує нас віднести її швидше до перехідних
версій.
У цьому ж році At&t і Sun Microsystems уклали стратегічну угоду
про розробку перспективного ядра UNIX System VI, яке повинне було забезпечити
сумісність з System V, BSD Unix і Xenix і, тим самим консолідувати
виниклий зоопарк Unix систем.
Не
маючи фінансової підтримки з боку локальних телефонних мереж At&t опинилася
вимушена зайнятися пошуками засобів для підтримки діяльності по
розвитку UNIX. У другій половині 80-х було зроблено декілька спроб стягнути
ліцензійні відрахування з постачальників комерційних систем на основі
BSD Unix. Не можна сказати, щоб ці спроби були особливо послідовними
і успішними, але вони породили ряд ініціатив по розробці "ліцензійно
чистої системи Unix".
Серед цих ініціатив необхідно назвати наступні.
- Мікроядро BSD Mach Про Minix А.
Танненбаума
- Проект Р. Столлмена GNU (GNU Not
Unix — рекурсивна абревіатура) [www.gnu.orgj.
- Консорціум OSF (Open Software Foundation — фонд відкритого
програмного забезпечення). "
|