Обзор мультитерминальных систем (DOS)
Введение
Этот обзор посвящен операционным системам, которые позволяют организовать многопользовательскую совместимую с MS DOS вычислительную систему на основе многотерминальной системы (далее МТС).
Обычно, чтобы обеспечить работу пользователей персональных компьютеров под DOS с общей информацией принято объединять компьютеры в локальную сеть. Существует, однако, другой, менее известный, но более традиционный подход - многотерминальные системы.
В случае локальной сети (далее - ЛС) прикладные программы пользователей выполняются на рабочих станциях, которые при помощи сетевого оборудования и программного обеспечения получают доступ к общим данным, расположенным на файловом сервере.
Многотерминальная система позволяет использовать один центральный компьютер, как для хранения информации всех пользователей, так и для выполнения прикладных программ. Пользователи МТС работают на терминалах, которые только отображают данные, получаемые от центрального компьютера. Достоинства ЛС хорошо известны, поэтому кратко перечислим преимущества МТС:
Во-первых, в качестве центрального компьютера может использоваться один дорогой и мощный компьютер, стоимость которого распределяется на нескольких пользователей. Ресурсы этого компьютера будут использоваться максимально полно, причем любой пользователь, при необходимости, может получить в свое распоряжение практически всю вычислительную мощность центрального компьютера. Существенна также экономия на дополнительном оборудовании. Возможности системы могут легко наращиваться: достаточно обновить только центральный компьютер.
Во-вторых, все процессы пользователей выполняются на одном компьютере, получая, таким образом, простой и эффективный доступ к его ресурсам и единую среду выполнения. Централизация и одинаковые условия выполнения процессов предоставляет невозможные в ЛС средства контроля и управления ими со стороны администратора.
В-третьих, в МТС в отличии от локальной сети вся обработка информации производится централизованно. Это значительно повышает надежность всей системы. В случае медленных и ненадежных линий связи, например, телефонных, использование МТС вообще единственно возможное решение.
Если необходимо организовать надежную и производительную совместную работу небольшой группы DOS пользователей (до 20 человек), то МТС удовлетворяет этим требованиям при наименьшей возможной цене. Для более крупных систем возможно использование МТС как части ЛС предприятия.
Критерии отбора
Основными критериями при выборе систем, рассмотренных в этом обзоре, были:
- возможность использования простых конфигураций (PCTERM терминалы, подключенные к центральному компьютеру с помощью многопортовой платы);
- наличие фирм распространителей ОС в России.
Результат отбора
В результате отбора по этим критериям в обзор попали следующие операционные системы:
- VM/386 3.1 - фирмы Intelligent Grafic Corp,
- DOS-Line 2.0 - фирмы АлтерВест,
- VirtuOS 2.3 - фирмы Microbase Information Systems и
- IMS MultiUser DOS 7.0 - фирмы IMS.
О тех, кто не попал
В обзор не были включены системы PC-MOS фирмы Software Link и Multistation DOS фирмы AMR, поскольку фирмы-разработчики прекратили поддержку и развитие этих продуктов. Также не рассматривались такие специализированные многопользовательские системы как Novell Access Server и DesqViewX, основанные на многозадачной среде Quarterdeck.
Надо пояснить, почему в обзор не вошли современные ОС, основанные на UNIX для процессоров Intel, такие как SCO Open Desktop, Novell UnixWare, Interactive Unix или NextStep, хотя они также могут выполнять функции многопользовательских DOS c помощью специальных программ эмуляции DOS - Advanced Merge, SoftPC и VPix. Дело в том, что эти ОС спроектированы так, чтобы хорошо выполнять UNIX приложения, и не имеют средств, позволяющих поддерживать производительную работу достаточно большого количества DOS сессий. Кроме того, на выполнение DOS приложений наложены существенные ограничения. В целом, по рассматриваемым ниже характеристикам ОС, основанные на UNIX, в качестве многопользовательских DOS значительно уступают специализированным многопользовательским DOS.
Однако, если вы планируете переход на UNIX, то выбор такой ОС будет дальновидным решением - пользователи смогут одновременно использовать привычные DOS приложения и одновременно новые приложения для UNIX.
Критерии выбора при покупке
Степень программной совместимости с DOS - самый важный критерий качества многопользовательской DOS. К сожалению, оценить его объективно не представляется возможным. Вы можете столкнуться как с проблемами, вызванными недостаточной совместимостью со средой DOS, так и с проблемами, вызванными неверной работой ваших прикладных программ в многопользовательском режиме. Поэтому не будет лишним проверить корректность функционирования ваших прикладных программ в разных режимах под многопользовательской DOS перед ee покупкой.
Для вас также может оказаться важным то, что новые многозадачные операционные системы предъявляют более высокие требования к центральному компьютеру по сравнению с DOS. Например, шумовые прерывания или ошибки памяти, о которых вы и не подозревали, работая под DOS, вполне могут вызвать "зависание" центрального компьютера.
Файловая система
Большинство различий в возможностях рассматриваемых ОС в отношении файловой системы определяется тем, заменяют они DOS для выполнения файловых операций или нет. В системах без замены DOS для доступа к файловой системе используется операционная система, установленная на машине. Преимуществом систем без замены DOS является более высокая степень совместимости с DOS, в то время как системы с заменой DOS обычно предоставляют более мощные средства ограничения доступа к данным.
Ни одна из рассмотренных систем не требует переформатирования жесткого диска. Системы могут быть установлены на уже существующий раздел DOS. Соответственно все системы поддерживают FAT – файловую систему однопользовательской DOS. Это позволяет в однопользовательском режиме использовать средства администрирования жестких дисков, такие, как Norton Utilities. На файловой системе FAT все системы показывают некоторое уменьшение скорости выполнения файловых операций по сравнению с однопользовательской DOS.
Все системы поддерживают дисковый кэш - встроенный или внешний. Увеличение размера дискового кэша можно считать основным способом повышения производительности для систем, интенсивно обращающихся к базе данных или подкачивающих оверлеи. Поскольку дисковый кэш является общим для всех процессов, то память, отведенная под него, используется очень эффективно - разные процессы часто обращаются к одним и тем же данным на диске.
При переходе от однопользовательских систем к многопользовательским (МТС или ЛС) один из самых важных вопросов - это вопрос о поддержке прикладной программой работы в сетевом режиме, т.е. возможности одновременной работы нескольких пользователей этой программы с одной базой данных. Обычно работа в сетевом режиме подразумевает выполнение прикладной программой блокировок на время модификации базы данных, так что другие пользователи во время модификации не смогут перезаписать изменения или прочитать не полностью модифицированную информацию. Блокировки осуществляются операционной системой. Например, для большинства известных отечественных бухгалтерских пакетов уже выпущены или готовятся к выпуску сетевые версии этих продуктов.
При покупке прикладной программы, которую вы собираетесь использовать для работы с одной базой данных с нескольких рабочих мест, надо обязательно убедиться, что она поддерживает такой режим работы.
Кроме того, всегда имеет смысл убедиться, что приложение, которое вы собираетесь использовать в многопользовательском режиме, правильно выполняет разделение данных в выбранной вами ОС. Сетевые приложения, например, как правило, выдают сообщение об ошибке, если вы пытаетесь начать редактировать данные, которые уже редактируются другим пользователем. Настройка этих приложений на сетевой режим работы - это иногда один из самых сложных вопросов конфигурирования всей системы.
Разумеется, сетевой режим работы приложений поддерживается всеми рассматриваемыми системами. Однако некоторые приложения (например, СУБД Advanced Revelation) работают в сетевом режиме, только если база данных расположена на сетевом диске (а не на локальном), поскольку они тестировались в сетевом режиме с ЛС, а не с МТС. Для таких приложений многопользовательская DOS должна иметь возможность представить локальные диски как сетевые. Этой возможностью обладают DosLine и IMS MultiUser.
Управление памятью
Самым важным в управлении памятью можно считать наличие механизма виртуальной памяти. С ним вы не будете сталкиваться с ограничениями на количество процессов или объем DPMI памяти, доступной для прикладных программ. Такие ограничения обычно довольно существенны: например, на машине с 4 Mb памяти можно запустить всего 5 процессов, пользующихся только стандартной памятью или всего 1-2 процесса, интенсивно использующих DPMI.
Для некоторых прикладных программ важно количество свободной стандартной памяти DOS. Все системы пытаются увеличить его разными способами. При работе с текстовыми приложениями часто оказывается полезной возможность VIDRAM - увеличение стандартной памяти процесса на 96K использованием адресного пространства графической видеопамяти, размещение системных таблиц и общих резидентных программ в отдельном процессе - другой прием. Наибольшее количество свободной DOS памяти сумел предоставить VirtuOS, почти полностью освободив область, занимаемую самой DOS.
Много современных приложений умеет использовать EMS и XMS память как замену области подкачки на диске. EMS память предоставляется всеми системами. ОС с виртуальной памятью позволяют задавать размер EMS памяти, превышающей размер ОЗУ. В этом случае они как бы сами выполняют подкачку с диска для прикладных программ, но делают это заметно быстрее.
Для систем, которые запускаются непосредственно из DOS (VM/386,DosLine), по аналогии с такими многозадачными средами как DesqView и Windows можно было бы ожидать совместимость с менеджерами управления памятью, например, QEMM и 386MAX. Однако это не так, все функции управления памятью эти системы могут реализовывать только самостоятельно.
Если для вас существенен вопрос совместимости с Windows, то выбор многопользовательской DOS не будет правильным решением.
Во-первых, Windows 3.1 в расширенном режиме и тем более "Чикаго" никогда не смогут работать под этими операционными системами, а значит, нельзя будет перейти на новые 32-битные приложения для Windows.
Во-вторых, реализованная в VM/386 и VirtuOS поддержка стандартного режима работы Windows 3.1 страдает рядом неизбежных недостатков: система с несколькими Windows процессами работает ненадежно и медленно, поскольку ОС не вполне может контролировать работу Windows процесса.
В-третьих, затраты процессорного времени на графический вывод Windows достаточно значительны, поэтому нецелесообразно занимать им разделяемый центральный процессор системы – объединение рабочих станций под Windows в сеть выглядит гораздо более привлекательным решением в этом случае.
Windows не единственная платформа, позволяющая использовать прикладным программам преимущества защищенного 32 разрядного режима процессоров 386,486 и Pentium, главные из которых снятие ограничений 64K и 640K в управлении памятью и аппаратная защита сегментов памяти. Речь идет о спецификации DPMI, которая позволяет воспользоваться этими преимуществами, сохраняя совместимость исходных текстов программ, написанных для DOS. Учитывая, что для Windows надо создавать программу заново, многие отечественные разработчики прикладных программ сделали ставку на DPMI. Например, новые версии "TurboBuhgalter" и "Финансы без проблем" уже требуют наличие DPMI. Действительно, большинство программ для решения деловых задач и базы данных не нуждаются в графическом интерфейсе. Важно также, что все основные среды разработки приложений - FoxPro, Clipper, Paradox, Borland C - теперь умеют создавать приложения DPMI или исполнять приложения в DPMI режиме.
Одной из главных целей разработки спецификации DPMI было обеспечение работы защищенных приложений под многозадачными ОС, рассчитанными на защищенный режим процессора. Поэтому все многопользовательские DOS, кроме VirtuOS, поддерживают работу DPMI приложений и делают это очень эффективно.
Управление процессами
В сводке характеристик приведены ограничения, накладываемые системами на количество рабочих мест и количество процессов. В системах без виртуальной памяти вы можете столкнуться с необходимостью наращивания объема ОЗУ при увеличении числа пользователей или при переходе на приложения, требующие больше памяти. При этом большая часть ОЗУ в системе будет использоваться неэффективно.
На практике количество пользователей одной МТС на основе многопользовательской DOS ограничено 12-16 пользователями. Это количество сильно зависит не только от характеристик центрального компьютера, но и от используемых прикладных программ. При больших количествах пользователей надо объединять несколько МТС в локальную сеть.
Вы не должны ожидать замедления работы ваших приложений при переходе на многопользовательскую DOS с большим количеством пользователей. Дело в том, что все представленные ОС распознают, когда программы находятся в состоянии ожидания ввода с клавиатуры и не тратят на них процессорное время. Действительно, ресурсы современных компьютеров в однопользовательском режиме используются менее чем на 10% - большую часть времени занимает бесполезное ожидание ввода с клавиатуры.
В ситуации, когда несколько пользователей одновременно сделали на запросы на выполнение работ (например, поиск по базе данных или копирование файлов) время ответа на запросы зависит от используемой стратегии планирования. Системы, использующие планирование с динамическим понижением приоритета, будут выполнять короткие запросы почти без замедления независимо от нагрузки на систему, обеспечивая тем самым эффективную работу большинства пользователей.
Каждый пользователь может работать с несколькими процессами, используя все преимущества многозадачной обработки. Например, при необходимости вставить какие-то данные в подготавливаемый при помощи текстового редактора отчет, пользователь может перейти в другой процесс, загрузить в нем электронную таблицу и провести необходимые расчеты, не прерывая работы с текстом.
Более того, возможна работа с процессами других пользователей. Один и тот же процесс может отображаться и управляться с двух или более рабочих мест. Этой уникальной возможности нет в ЛС. Вот примеры применения такого режима: пользователи могут оказывать помощь друг другу в работе путем простого переключения на чужой процесс, обучение пользователей работе с пакетом программ, когда все они переключились на один обучающий процесс, контроль администратора за работой пользователей.
Терминальное оборудование
При выборе системы вы наверняка будете ориентироваться на определенный вид терминального оборудования, который у вас уже имеется или вы собираетесь приобрести.
Многопользовательские системы рассчитаны на применение трех видов терминального оборудования.
Во-первых, это традиционные алфавитно-цифровые терминалы, подключаемые по последовательному каналу. Обычно для подключения используются многопортовые платы. На последовательных терминалах можно работать только в текстовом режиме. Терминалы, поддерживающие протокол PCTERM имеют обычные клавиатуру и монитор PC, так что работа на них очень похожа на работу на персональной машине. Важным частным случаем последовательных терминалов являются компьютеры с запущенными на них эмуляторами терминала, в том числе подключаемые через модемы.
Во-вторых, в качестве терминалов могут использоваться графические консоли. Они представляют собой рабочие места, состоящие из VGA монитора, клавиатуры, мыши, подключенные с помощью многопортового VGA адаптера. На таких рабочих местах можно работать с графикой и обновление изображения на них происходит без задержек, характерных для последовательных терминалов. Практически можно считать, что к компьютеру подключен не один монитор, а несколько.
Третий вариант подключения - это использование локальной сети как средства обмена данных с терминалами. Эмулятор терминала, запущенный на рабочей станции сети, позволяет работать на сервере приложений в терминальном режиме. Выйдя из терминального режима, вы получаете доступ к файловым серверам сети, т.е. возвращаетесь в сетевой режим.
Разные ОС, представленные в обзоре, предоставляют разную степень поддержки для конкретного типа терминального оборудования. Поэтому выбор ОС надо проводить с учетом планируемой вами конфигурации системы и состава терминального оборудования.
В частности, для удаленного терминального доступа к системе по телефонным линиям, по-видимому, наилучшую поддержку предоставляет VirtuOS, хотя здесь вероятно может удачно выступить Novell Access Server. В то же время VirtuOS не позволяет переключаться на процессы других пользователей с графической консоли и не управляет звуком на рабочих местах, однако это делает VM/386.
Импортные многопортовые VGA платы - AMR Unterminal, MaxPeed, SunRiver поддерживаются системами VirtuOS и VM/386 и продаются соответствующими фирмами распространителями. Эта аппаратура имеет отличное качество, но очень высокие цены.
Появились отечественные многопортовые VGA. Хочется отметить качество исполнения и приемлемые цены МК4-VGA фирмы "Дискретные системы", драйверы для которого имеют DosLine и IMS MultiUser.
PC/CGA терминалы поддерживает только IMS MultiUser, поэтому если вам надо работать пусть даже и с CGA-графикой на компьютерах, подключенных в качестве терминалов по последовательному каналу, то стоит более внимательно рассмотреть эту систему.
PCTERM терминалы поддерживают все системы, однако, средства загрузки фонтов (например, для русификации Wyse60 или Tatung) и настройки цветов для монохромных терминалов есть только в DosLine.
Также только DosLine предоставляет полный набор средств для русификации VT100 терминалов (например, СМ7238).
Сейчас довольно популярны отечественные PCTERM терминалы, позволяющие работать в цветном текстовом режиме - это терминалы фирм StarSystems и Natecs. Этот режим поддерживают только DosLine и IMS MultiUser. Можно рекомендовать терминал StarSystems – высокоскоростной и очень надежный. Заслуживают внимания PCTERM терминалы фирм Zelax и Сапсан. Импортные последовательные терминалы имеют неоправданно высокие цены и не обладают существенными преимуществами.
Что касается терминального сервиса в локальной сети, то здесь предпочтение надо отдать VirtuOS. Доступ как в терминальном так и в сетевом режиме с рабочих станций сети ко всем VirtuOS-серверам, а также пользователей одного сервера к сетевым и терминальным ресурсам другого представляет наиболее полное решение, интегрирующее преимущества сетевого и терминального доступа. Этот подход видимо будет все более распространяться в сетях масштаба предприятия, поскольку серверы приложений удачно дополняют файловые серверы.
Одной из самых экономически эффективных конфигураций, предлагаемых многопользовательскими DOS, является использование существующих XT или 286 AT машин в качестве терминалов нового мощного центрального компьютера, например, 486DX2/66. Это решение имеет многократное преимущество перед попытками объединить эти машины в локальную сеть.
Сетевые возможности
Вопрос о возможности интеграции МТС в локальную сеть предприятия может быть важен для вас, если количество пользователей одной базы данных значительно, и вы хотите поместить ее на внешнем по отношению к МТС файловом сервере. Вопрос также актуален, если вы добавляете МТС к уже существующей сети предприятия.
Обычно требуется обеспечить доступ к файловой системе сервера со всех рабочих мест МТС. Однако иногда доступа к файловой системе недостаточно. Например, для назначения дисков сервера или работы приложений клиент-сервер требуется, чтобы каждый процесс имел доступ непосредственно к сетевому протоколу, связывающего его с внешним сервером. Организовать такой доступ нескольких клиентов через одну сетевую карту можно, только представив центральный компьютер МТС как шлюз в подсеть, где рабочими станциями являются процессы МТС.
Превосходные сетевые возможности предоставляет VirtuOS. Для разделения одной сетевой карты между процессами, которые нуждаются в доступе к сетевому протоколу и выходу во внешнюю сеть, поставляются многопротокольные драйверы-шлюзы для наиболее распространенных сетевых карт. Такой же подход принят и в IMS MultiUser DOS, однако, поддерживается только IPX, а набор сетевых карт не ограничен.
Оригинально решаются проблемы интеграции МТС и локальной сети в DosLine. Для этого в каждом процессе эмулируются виртуальные сетевые карты ArcNet. Драйверы ArcNet, реализующие сетевой протокол (IPX или IP), загружаются в разных процессах точно так же как на рабочих станциях настоящей сети. Тем самым, достигается превращение процессов МТС в полноценные рабочие станции виртуальной сети. Загрузив в одном из процессов шлюз с виртуальной сетевой карты на сетевую карту настоящей сети можно организовать требуемый доступ процессов во внешнюю сеть.
Может также оказаться необходимым использовать центральный компьютер МТС в качестве файлового сервера или организовать объединение нескольких МТС в одноранговую сеть. DosLine, VirtuOS и IMS MultiUser предоставляют такую возможность. В VirtuOS средства одноранговой сети интегрированы в ОС очень удачно.