Ещё на заре истории создания автоматических вычислительных машин было ясно, что их ахиллесовой пятой будет маленькая и медленная память. Даже в 1940—1950 годы, в эпоху теоретических исследований проблем алгоритмизации и создания виртуальных вычислительных машин как средства прояснения теоретических проблем, память оставалась узким местом. Она представляла собой длинную (потенциально бесконечную) ленту с клетками, в которые можно было писать «метки» и читать содержимое клетки с помощью читающей головки, которая двигалась вдоль ленты управляемая программой (машина Поста) или описанием специализированной машины (машина Тьюринга).
Опубликованный в 1945 году проект гипотетической (недостижимой имевшимися на то время средствами) гипертекстовой системы Memex показал, что памяти предполагается ТАК мало, что собственно данные размещаются в хранилище микрофишей (микроплёнок), а в машине хранятся только библиографические данные, позволяющие найти нужный носитель и дальше работать с ним средствами электромеханики.
В реальных ЭВМ (когда они появились в 50-е годы) с памятью было совсем плохо. Оперативная память составляла сотни (в лучшем случае единицы тысяч ячеек), в которые записывали и программу, и исходные данные, и промежуточные и окончательные результаты. Понятно, что наряду с оперативной памятью с произвольным доступом к ЭВМ начали «пришпандоривать» внешнюю память. Понятно, что для этих целей утилизировали то, что уже было. Телеграфия дала перфоленту, табуляторы (механические и электромеханические устройства обработки больших массивов данных на перфокартах) дали перфокарты.
Исторически сложилось, что малые ЭВМ (например, МИР, Наири, АСВТ М6000 и подобные) не имели магнитных носителей, а в качестве внешней памяти использовали перфоленту. Помню, как сам маялся с перфолентой, учился читать коды по пробивкам и клеить порвавшиеся ленты. На малых ЭВМ удавалось использовать консоль (изначально эту функцию выполняли электромеханические пишущие машинки типа Consul, давшие, видимо, название классу устройств; эти машинки постепенно менялись на дисплеи с клавиатурой). Это сильно облегчало ввод и отладку программ и текстов, которые только сохранялись на перфоленте, хотя, конечно, и отдельные телеграфные аппараты для автономной набивки перфоленты существовали.
Средние и, тем более, большие ЭВМ были слишком дороги, чтобы позволить работать в интерактивном режиме. Основой эксплуатации был пакетный режим, когда пользователь вообще до консоли не допускался. Программа и данные с набором управляющих команд автономно набивались на перфокартах (во многих вычислительных центрах это делали даже не сами пользователи, а перфораторщики) и отдавались на прогон. Пользователь получал назад колоду перфокарт и листинг взаимодействия колоды с ЭВМ. Преимуществом перфокарт было то, что колоду можно было править по частям. Хорошие перфораторы надпечатывали на картах то, что на них было нанесено, если этой функции не было, то надписывали вручную. Перфокарты (в отличие от перфоленты, которую для исправления одиночной ошибки надо было перебивать целиком, внося новые ошибки) можно было править с точностью до перфокарты (там, где для этого были отдельные перфораторы, удавалось обеспечивать несколько правок с прогонами за сутки). Что позволяло даже в пакетном режиме готовить, отлаживать и эксплуатировать довольно сложные программы.
Понятно, что на средних и больших ЭВМ особенно требовалась магнитная внешняя память. Уж больно медленно и ненадёжно было работать с перфорированной бумагой. Устройство утилизировали в звукозаписи. Студийные магнитофоны с широкой лентой (один дюйм) достаточно просто переделывали во внешние устройства, способные сравнительно быстро и сравнительно надёжно работать с большими объёмами данных. Если вспомнить кинокартины соответствующего времени, то режиссёры и операторы очень любили снимать компьютерные лентопротяжки (каждая размером с хороший шкаф).
Прототип накопителя на магнитной ленте (НМЛ) появился в мае 1952 года, а спустя год под маркой IBM 726 накопитель пошёл в серию и начал продаваться. Первоначально накопитель входил в комплект жуткого монстра под названием UNIVAC I и вмещал «чудовищный» объём в 224 КИЛОБАЙТ! Когда устройство пошло в серию, то его доработали. Ёмкость (при 7-дорожечной записи) увеличилась до 2,3 Мбайт при скорости записи 7,5 кбайт/сек.
Ёмкость катушек ленты росла за счёт роста плотности и скорости записи/чтения информации, и довольно скоро ёмкость бобины магнитной ленты перестала в большинстве случаев быть критичной. Однако при среднем времени полной перемотки (в ускоренном режиме) ленты порядка одного часа (у лучших накопителей речь шла о десятках минут) малейшая потребность отхода от последовательного доступа к данным превращала решение любой задачи в кошмар. Недаром основой тогдашних компьютерных наук были алгоритмы сортировки (расположения данных в нужном для последующей обработки порядке). Этой проблеме посвящались монографии, по теме защищались диссертации, но кардинально решить проблему могли только устройства с произвольным доступом.
Чуть позже для организации произвольного доступа к данным решили использовать магнитные барабаны. С логической точки зрения фрагменты магнитной ленты — вот когда пригодилась идея нумеровать блоки данных — «наклеивались» на барабан. Головки вдоль барабана устанавливались жёстко, и время доступа к нужному блоку не превышало времени полного поворота барабана. Когда в конце сороковых годов XX века подобные устройства стали пытаться разрабатывать и патентовать, то обнаружили, что первичный патент на магнитный барабан как устройство памяти относится к 1932 году и заявку сделал Густав Таушек, которому принадлежит свыше 200 патентов. Однако его идеи слишком опередили своё время, и в истории вычислительной техники Таушек оказался несправедливо забыт.
Конечно, физически никто полоски ленты не клеил. Барабан был сплошным и покрыт тем же ферросплавом, что и лента. В 1949 году британский Manchester Mark 1 комплектовался НМБ — накопителем на магнитном барабане. Коммерческий вариант этого компьютера, Ferranti Mark I (1951 год выпуска), содержал уже усовершенствованный магнитный барабан ёмкостью 16К 40-разрядных слов.
Советские ЭВМ также использовали НМБ в качестве надёжной внешней памяти. В 1953 году такие барабаны использовались в первых универсальных ЭВМ БЭСМ-1 как средство ускорения работы. Поскольку барабаны были несъёмные (пыль не попадала) и головки не двигались (механических сбоев позиционирования не было), то устройства считались очень надёжными. В то время 1—2 ремонта в год — прекрасный результат: первые дисководы на машинах сери ЕС ломались куда чаще.
С появлением и НМЛ, и НМБ удалось составить архитектуру ЭВМ с тремя уровнями памяти (оперативная, НМБ и НМЛ). Надо отметить, что ОЗУ до магнитных сердечников было мизерным по объёму и очень дорогим. Для задач, для которых критичен объём оперативно доступных произвольным данных (например, обработка оцифрованных изображений), строить массивы ОЗУ было куда дороже, чем использовать массивы НМБ.
Поскольку памяти с произвольным доступом всегда не хватало, да и патенты на НМБ принадлежали не только упомянутому Таушеку, но и Sperry Rand, фирма IBM начала заниматься другой технологией создания магнитных накопителей большой ёмкости. Если верить историкам, то уже в сентябре 1956 года в серии появился ориентированный на работу с НМД компьютер IBM 305 RAMAC («Random Access Method of Accounting and Control») с устройством IBM 350, которое, собственно говоря, и было НМД (накопителем на магнитных дисках).
За пять лет IBM произвела более тысячи компьютеров 305 RAMAC, которые сдавались компаниям в аренду. При тогдашней высокой цене доллара аренда за 3200 долларов в месяц — весьма солидная цена, но произвольный доступ к большим объёмам данных искупал всё. Объём информации и скорость её обработки значили для компаний куда больше жалкой сотни долларов в день…
Устройство было совершенно монстрическим. НМД IBM 350 состоял из 50 алюминиевых дисков диаметром 20 дюймов (610 мм) каждый, которые вращались с частотой 1200 об/мин. Понятно, что такая махина была несъёмным устройством. И на одном таком устройстве хранилось 5 МЕГАБАЙТ информации! Если учесть, что НМБ хранили килобайты информации, то речь идёт о трёх порядках (тысяча крат) разницы, что делало оправданным дикую механическую сложность (десятки дисков должны вращаться синхронно, десятки головок чтения/записи должны были синхронно позиционироваться к одном месту на разных дисках) эксплуатации устройства. Понятно, что по надёжности устройство уступало НМБ, да и эксплуатировать IBM-305 могли только «фирмачи», т.е. продавать устройство в обычную фирму было нельзя, а использование высококвалифицированных «фирмачей» оправдывало дикую цену аренды.
Историки полагают, что у истоков создания НМД стоял школьный учитель Рей Джонсон, который в 30-е годы занимался электромеханическим устройством для считывания заполненных школьниками тестов. Обрабатывались такие данные на табуляторах, а это уже была вотчина IBM. И учителя привлекли к разработкам фирмы. Была создана отдельная лаборатория, которая занималась не только тестами, но и, например, табельными часами, которые автоматически отмечали время прихода и ухода сотрудников. В 1952 году в лаборатории задумались о переходе на магнитную память. В 1953 году ВВС США выдали заказ на картотеку из 50 тысяч записей. По сто символов на запись (перфокарта давала 80 символов на запись) уже требовали памяти на пять миллионов символов. В 1954 году произошло первое считывание записи с перфоленты, сохранение на диске, а затем запись на другую перфоленту. В декабре 1955 года архитектура RAMAC и НМД были запатентованы. Чуть ранее, в мае, появились первые упоминания о новом устройстве, а с начала 1956 года можно было уже заказывать будущую аренду новой ЭВМ IBM-305 с внешней памятью произвольного доступа IBM-360. И в сентябре того же года началось серийное производство.
В ролике представлена система IBM-305 RAMAC c НМД IBM–350
Дальше была обычная история. Уменьшались размеры НМД, росли скорости записи/чтения, увеличивалась надёжность. Возникли конкуренты, в 16-разрядных персональных ЭВМ (типа IBM-PC XT) появился несъёмный НМД объёмом в те же 5 мегабайт. Если учесть, что съёмные диски, которыми комплектовались первые XT, имели ёмкость всего 360 Кбайт и (за счёт прямого контакта поверхности диска с головкой чтения записи) очень быстро изнашивались, то несъёмные диски (у которых головки за счёт аэродинамических «крылышек» летели над магнитной поверхностью, не касаясь) обладали очень высоким уровнем надёжности.
Понятно, что сегодня появились новые технологии. Например, SSD — твердотельные диски, не имеющие движущихся частей, — ещё проигрывают традиционным НМД по объёму и быстродействию, но разрыв сокращается, а отсутствие механики и, следовательно, очень высокий уровень надёжности при миниатюрных размерах и весьма больших объёмах памяти делают технологию весьма перспективной, но это уже другая история…
Почему же НМД вдруг стал «винчестером»? Мне нравится такая гипотеза: в 1973 году в IBM разрабатывали НМД большой ёмкости. Профессиональные байки утверждают, что имел место государственный заказ на устройство, у которого ёмкость будет 60 мегабайт, но больше 30 мегабайт в одном пакете дисков создать не удалось, и в дисководе IBM-3340 на одной оси (в одном двойном дисководе) разместили два пакета дисков по 30 мегабайт каждый с общим управлением и синхронизацией. Внутреннее название устройства — 30-30. В Европе с её многовековой историей это ни с чем не ассоциировалось, а в США с куцей историей и культом оружия все знали, что 30-30 — это маркировка патронов для ружья винчестер.
Надо сказать, что в российском компьютерном жаргоне термин винчестер ещё существует, а на Западе он уже — экзотическая история.