В. Макаров
ПОДКЛЮЧЕНИЕ К ПЭВМ БК-0011, БК-0011М НАКОПИТЕЛЯ НА ЖЕСТКИХ МАГНИТНЫХ ДИСКАХ (ВИНЧЕСТЕРА)
"ВИНЧЕСТЕР" - накопитель па жестких магнитных дисках (НЖМД). Это по принципу работы тот же дисковод. Только магнитные диски - жесткие, обычно их несколько, находятся они вместе с блоком магнитных головок в герметичном корпусе. Раскручиваясь после включения питания до скорости 3600 об/мин, они постоянно вращаются. Магнитные головки при работе не касаются дисков, находясь на очень малом расстоянии от полированной поверхности. Блок головок перемещается обычно быстрее, чем в дисководе. Цилиндров (неправильно называемых дорожками) у винчестера не 40 или 80, как в гибком диске, а несколько сотен. За счет их количества, большего числа поверхностей и секторов на дорожке винчестер имеет большую емкость, например 5, 10, 20, 40 МБайт и более.
Данные на винчестере защищены лучше. Запись более надежна, неисправность в схемах, как правило, не приводит к потере информации, она сохранится и при перебое питания, даже происшедшем но время записи.
Данные читаются с винчестера и записываются на него во много раз быстрее, чем с дисководом. К компьютеру винчестер, как и дисковод, подключается через специальное устройство — КОНТРОЛЛЕР ЖЕСТКОГО ДИСКА (КЖД).
В ОСНОВНОМ ПО ДВУМ ПРИЧИНАМ - ВЫСОКАЯ СКОРОСТЬ РАБОТЫ И БЫСТРЫЙ ДОСТУП К БОЛЬШОМУ ОБЪЕМУ ДАННЫХ ВИНЧЕСТЕР СЕГОДНЯ - НЕОТЪЕМЛЕМАЯ ЧАСТЬ ЛЮБОГО ПЕРСОНАЛЬНОГО КОМПЬЮТЕРА.
Использование винчестера позволяет загружать компьютер задачами, решение которых было невозможно пли затруднено из-за малого объема и/или низкой скорости накопителей, а также в различной степени упрощает решение остальных задач. Его наличие в составе компьютера желательно и необходимо не только для профессиональной работы, но и для любого пользователя, работает, учится он или играет.
2. Программная поддержка винчестера на БК-0011М
Винчестер поддерживается как устройство в ОС БК. Это значит, что с ним в этой операционной системе работает без проблем любая программа.
Автор не видит серьезных трудностей для обеспечения работы с винчестером других существующих операционных систем. Последние два слова автор произносит "с натяжкой", так как их основное назначение - работа в них программ с БК-0010 (для БК, например, ANDOS, NORTON). Однако автор не считает это необходимым и не занимается сейчас соответствующими их доработками. Отмечу, что в ОС БК есть исполняющая система БК-0010.
Когда я работал с дисководами (два МС5311), время реакции компьютера на команды гораздо превышало время, в течение которого я обдумывал следующий шаг. Команды набирал вперед, теряя буквы из-за запрещения прерываний драйвером дисковода, задержка часто раздражала. Многими возможностями ОС БК просто не пользовался, например, быстрее было нажать СТОП и "вручную" изменить размер курсора, чем выйти из программы и воспользоваться командой, описанной в UCL, или SET-параметром драйвера. За время, пока выполнялись операции копирования, сжатия и компиляции программ, можно было сходить на кухню перекусить, если не требовалось менять дискеты. Если надо было посмотреть подробное описание, иногда быстрее было кому-нибудь позвонить но телефону и узнать требуемую информацию, чем найти ее в архиве (ящике с дискетами). Мне больше нравилось запускать программы БК-0010 из ОС БК через исполняющую систему БК-0010, но ANDOS предъявлял меньшие требования к накопителям, и приходилось им пользоваться. Когда в ANDOS появилась оболочка SHELL8, оказалось, что уже из-за задержек удобнее запускать программы не из оболочки.
С появлением винчестера ситуация изменилась коренным образом. Я совершенно перестал замечать время реакции на большинство команд и их последовательностей - командных файлов, которыми теперь стало удобно пользоваться, а это очень мощная вещь. Уже через неделю от звука дисковода появлялись нехорошие мысли, примерно как от магнитофонного скрипа в прошлом, кто еще застал этот способ записи программ. Однако если я еще успевал сделать надпись на дискете объемом 800 КБайт, пока копировалась следующая, то, записав дискету 400 КБайт (на 40-дорожечном дисководе), компьютер уже ждал. Это теперь самые долгие операции. Во время компиляции программ уже не хватает времени на что-нибудь отвлечься.
Драйвер винчестера не запрещает прерываний, при этом не теряются символы, вводимые с клавиатуры заранее. Корректнее ведется подсчет времени суток, теперь он не останавливается так, как при обращении к дисководу, и время приблизительно верно.
Когда я изредка проверяю объем свободного места на винчестере, я понимаю, что следить за ним и что-то стирать в ближайшем будущем не потребуется, пуста большая часть (винчестер 32 МБайт).
ДЛЯ МЕНЯ КОМПЬЮТЕР СТАЛ "ПОСЛУШНЫМ"! РАБОТА НА НЕМ СТАЛА НОРМАЛЬНОЙ ВО ВСЕХ ОТНОШЕНИЯХ.
СКОРОСТЬ ЧТЕНИЯ/ЗАПИСИ 55 КБайт/с (450000 бит/с) (имеется в виду скорость обмена с винчестером при чтении/записи непрерывных областей - чтении программ и данных в память, при копировании и т.д.)
Однако практически достижимая скорость, на БК-0011М с тактовой частотой 4 МГц и данной платой КЖД составляет 65-70 КБайт/с. Для ее достижения требовалось основательно переписать стандартный драйвер винчестера, что автор отложил на ближайшее будущее, сочтя увеличение скорости еще на четверть относительно несущественным. Если не включать проверку записи, в чем при исправной аппаратуре нет необходимости (именно так и поступают на профессиональных компьютерах), чтение и запись одной и той же информации занимает одинаковое время.
Сравним скорости чтения с винчестера и дисковода. Так как дисковод читает при отсутствии одиночных ошибок 15 КБайт в секунду, отличие ВСЕГО в 4 раза?! Но не забывайте, что еще не учтены время раскрутки диска и опускания головок у дисковода (остановка дисковода в паузах между обращениями значительно повышает срок службы дисковода и дискет), время перемещения магнитных головок и самая "неприятная" операция - смена дискет.
Винчестер рассчитан на непрерывную работу, и она не приводит к какому-либо значительному износу, он "всегда готов". Среднее время позиционирования у последних моделей дисководов численно соизмеримо с одноименным параметром недорогих винчестеров, обычно установка головок на требуемый цилиндр у винчестера занимает в десятки раз меньше времени, так как часто используемая вместе информация оказывается в пределах маленькой относительно всего накопителя области. Под рукой на винчестере находятся практически все рабочие файлы, часто весь архив, так что обращаться к дискетам придется редко.
Таким образом, производительность работы за компьютером увеличивается в несколько, иногда в десятки раз, а в целом ее изменение можно считать КАЧЕСТВЕННЫМ. К сожалению, на слух данное утверждение воспринимается слабо, надо попробовать поработать, чтобы почувствовать, что это действительно так.
Уместно сравнить винчестер с электронным диском. Скорость обмена данными на БК программно (с помощью команд пословной пересылки) ограничена, составляет примерно 100 КБайт/с. Этим и ограничивается скорость обмена в памяти, с электронным диском и с КЖД. В КЖД время пересылки данных из буфера больше времени чтения сектора в 3—4 раза. Исключение составляют контроллеры, использующие прямой доступ в память (например, MY), но это приводит к значительному усложнению контроллера и порождает некоторые трудности.
Так как по объему электронный диск эквивалентен небольшой части винчестера, в пределах которой потери времени на позиционирование малы (с электронным диском этих потерь вообще нет), выигрыш по скорости составляет 1,5, максимум 2 раза. Внешний электронный диск имеет небольшую емкость (до 1 - 2 МБайт). Он используется только как рабочий. Если нет резервного источника питания, надо заботиться о сохранении информации, она полностью теряется при перебое питания. Да еще достаточно высока стоимость микросхем памяти.
В итоге выигрыш если и есть, то небольшой, а забот но горло. Поэтому на БК внешний электронный диск использовать нерационально. Собственной памяти БК-0011М не хватает на создание в ней электронного диска достаточного объема.
Приведу для примера время выполнения некоторых операций в ОС БК11 v4.0 фирмы InterServer, загруженной с винчестера. Сравнить со временем выполнения на дисководе предоставляю читателю.
ОПЕРАЦИЯ | ВРЕМЯ: мин:сек |
Запуск программы получения каталога (R DIR) | < 0.5 |
Запуск графредактора PAINT (аналог Р1.0М с БК-0010) | < 0.5 |
Запуск текстового редактора EDIKM | < 0.9 |
Запуск InterCommander v 0.2 | 5* |
Запуск из Intel-Commander v0.2 с помощью исполняющей системы БК-0010 ЕХЕ10Р игры FLASSE | 2.5 |
Выход из игры FLASSE в InterCommander | 5** |
Загрузка операционной системы | 11*** |
Загрузка операционной системы с запуском InterCommander v 0.2 |
15 |
Проверка на плохие блоки области размером 800КБайт | 15**** |
Сжатие, аналогичное сжатию почти всей дискеты | 31***** |
Копирование файла размером 800 КБайт (емкость дискеты) | 33 |
Проверка на плохие блоки винчестера емкостью (т.е. чтение всего винчестера) 5 МБайт |
1:33 |
То же самое емкостью 10 МБайт | 3:04 |
То же самое емкостью 20 МБайт | 6:10 |
То же самое емкостью 32 МБайт | 9:40 |
* - из них около 3 секунд занимает вывод на экран рамки и содержимого каталогов, InterCommander (IC) - это Norton-подобная оболочка
** - вывод на экран опять занимает большую часть времени. Те же две операции, производимые в ANDOS 2.23 из SHELL8, с дисководом, конечно, займут 3 и 7 секунд соответственно. Отмечу, что SHELL8 и исполняющая система в ANDOS резидентны.
*** - включает в себя установку около 12 драйверов, просмотр положения логических дисков, выполнение программы ввода даты и стартового командного файла, выполнение командного файла с присвоениями логических имен, включение редактора командной строки, выполнение программы RESORC для выдачи информации по логическим дискам, выполнение короткой программы остановки дисководов.
**** - не подумайте, что это частая операция, просто она показательна.
*****- 100 файлов на 700 КБайт для сжатия, переносятся на 50 КБайт; время для дисковода минимум 2:20
Операции с дисководами (обращение к дисководу занимает более 80% времени):
ОПЕРАЦИЯ | ВРЕМЯ: мин:сек |
Копирование на винчестер дискеты 400 КБайт целиком | 33 |
То же самое 800 КБайт | 1:05 |
Копирование с винчестера дискеты 400 КБайт целиком | 33 |
То же самое 800 КБайт | от 1:05 до 5.05* |
* - почему два времени — см. ниже.
Возможность виртуального режима работы (свопинг в память), являющаяся одним из главных достоинств ОС БК v4.0, стала просто ненужной ввиду того, что свопинг на винчестер происходит быстрее свопинга в память.
Время может незначительно меняться в зависимости от времени поиска цилиндра у винчестеров разных типов, а также немного, но заметно уменьшится после написания специального драйвера под БК-0011М.
О скорости записи на дискеты на БК-0011М следует сказать отдельно. Автор столкнулся с тем, что она сильно зависит от скрытых особенностей (качества??) разных экземпляров многих типов 80-дорожечных дисководов и (качества??) дискет, а также, в граничной ситуации, от того, как вставлена дискета в дисковод. При этом скорость записи изменяется от 2,8 до 15 КБайт/с (скорость чтения), чем объясняется неоднозначное время операций.
5. Что необходимо для подключения винчестера
Прежде всего БК-0011М. Менее удобно, если у вас БК-0011 (ее рекомендую переделать в БК-0011М). Вообще винчестер можно подключить и к БК-0010, но автор не видит в этом большого смысла, так как на БК-0010 невозможна работа ОС БК (RT11).
Подключать винчестер, не имея дисковода с контроллером, смысла еще меньше: как тогда обмениваться программами, не через магнитофон же или модем? Зато с винчестером совершенно достаточно одного дисковода, даже 40-дорожечного.
Итак, вам необходимы:
1. КОНТРОЛЛЕР ЖЕСТКОГО ДИСКА (КЖД) от ДВК (обычно ДВК-ЗМ, ДВК-4, Квант). Это плата размером 280*240, ее можно поставить, например, сбоку от монитора. В исходном варианте КЖД поддерживает один винчестер, но можно провести доработку и работать с несколькими (скажем, до 4) накопителями.
2. ВИНЧЕСТЕР. Имеются в виду недорогие накопители отечественного и болгарского производства емкостью 5, 10 и 20 МБайт, хотя можно подключить и значительно более дорогой импортный МФМ-винчестер большей емкости. 5 МБайт не рекомендую, этого недостаточно для хранения архива. Такие накопители имеют габариты обычного 40-дорожечного дисковода (или двух 80-дорожечных) и при желании монтируются в стандартные корпуса. Шлейфы к винчестеру можно купить, а если вас смущают цены на разъемы, нетрудно выпилить их самому, получится совсем дешево.
У автора сейчас винчестер 32 МБайт (СМ5509, Болгария), но вполне достаточно было бы и отечественного 20 МБайт (МС 5405).
Небольшой совет тем, кто приобретает винчестер: для того, чтобы убедиться, что накопитель исправный, с ним надо РАБОТАТЬ не менее недели. После такой проверки проблем не будет по меньшей мере долгое время. И советы тем, кто уже приобрел. Не открывайте герметичный блок, этого ДЕЙСТВИТЕЛЬНО НЕЛЬЗЯ ДЕЛАТЬ, особенно при большой емкости накопителей (печальный опыт не только автора). Если вы все-таки купили неисправный винчестер, попробуйте поставить его на бок (если это допускается по паспорту), иногда это помогает.
3. БЛОК ПИТАНИЯ. Плата КЖД требует напряжений +5, +12 и -12 В, потребляя по цепи +5 В ток до 4 — 5 А. Винчестер требует +5 и +12 В. Те винчестеры, о которых идет речь, в первые десятки секунд после включения (пока идет раскрутка дисков) обычно потребляют 1,5 - 2,5 А по+5 В и до 3 -4,5 А по +12 В, а затем 1,5 - 2,5А.
В этой ситуации имеет смысл приобретать один мощный хороший блок питания, от которого будет работать весь комплекс, включая видеомонитор. При этом можно продать те блоки питания, которые были, что может оказаться даже выгодно.
Недорогой блок питания с требуемыми характеристиками обычно имеет солидные размеры и снабжен малошумящим вентилятором. Практически все блоки питания такой мощности имеют полные защиты от перегрузок по току и напряжению и достаточно надежны. Можно, например, использовать БПС6-1 (от ДВК-2), МС9002 (от ДВК-3, ДВК-4), блоки питания от старых ЭВМ и их узлов.
Отметим, что питание надо подводить толстыми и короткими проводами, иначе на них упадет значительная часть напряжения и увеличатся помехи.
4. ПОДКЛЮЧЕНИЕ КЖД К КОМПЬЮТЕРУ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ДЛЯ ПОДДЕРЖКИ ВИНЧЕСТЕРА. Что, собственно, и предлагает автор статьи и данной разработки.
Проводится необходимая доработка КЖД, плата соединяется по возможности, коротким кабелем с переходником, через который теперь включается блок КНГМД. Блок КНГМД можно расположить и рядом с платой. Кроме того, устанавливаются светодиоды, индицирующие обращение к накопителю.
Программное обеспечение состоит из драйвера и программы форматирования (теста накопителя).
Информация для тех, кто уже думает, что подключить КЖД к БК-0011М не просто, а очень просто. Если вы не обладаете достаточной квалификацией и/или терпением, вы этого не сделаете. Для работы на БК необходимы соответствующие драйвер и тест, отличающиеся от стандартных. Кроме того, в доработку входит исключение длинных пауз в работе КЖД, которые до этого возникали в некоторых ситуациях.
Автор с удовольствием и взаимной пользой установит контакты с программистами и аппаратчиками БК, а также ДВК-совместимых компьютеров.
Звоните: Макаров Вадим. Тел. (812) 584-23-58
Распознавание и преобразование в гипертекст: Владислав М. Антонов
2004 г.