<< Пред. стр.

стр. 9
(общее количество: 13)

ОГЛАВЛЕНИЕ

След. стр. >>


Компьютеры, составляющие сеть NFS, могут быть самых различных моделей и использовать совершенно различные способы внутреннего представления данных. Для учета этих различий в NFS применяется протокол XDR (External Data Representation - Внешнее представление данных). С помощью этого протокола информация в пакетах сообщений преобразовывается в машинонезависимый формат.
В системе NFS клиенты и серверы не запоминают состояние предыдущих операций с файлами. В этом смысле этот протокол является независимым от предыстории. Это можно пояснить на следующем примере. Рабочая станция посылает запрос на NFS-сервер с требованием открыть файл для чтения и получает ответ - "файл открыт". Позже, когда рабочей станции потребуется прочитать данные из этого файла, она должна послать запрос чтения данных. Этот запрос вместе с именем файла должен также содержать и текущее положение указателя файла. Таким образом, на сервере нет необходимости помнить о состоянии предыдущей операции с файлами. Вследствие этого NFS оказывается более медленной операционной системой, чем другие. Замедление работы является результатом большего графика из-за больших пакетов (каждый из них переносит всю необходимую информацию по его обработке) и большего времени на обработку пакета.
Независимость от предыстории NFS позволяет избежать сложных процедур восстановления при сбоях в обмене данными между элементами клиента и сервера. В таких ситуациях клиент просто продолжает отправлять заново запросы к серверу до тех пор, пока не получит нужные ему данные. Фактически, клиент не видит разницы между медленным сервером и сервером, в котором произошел сбой. Аналогично, после перезапуска сервер продолжает, как ни в чем не бывало, отвечать на запросы клиентов без необходимости перезапуска каждого из клиентов. В NFS используется описанный выше протокол UDP (User Datagram Protocol - Протокол пользовательских дата-грамм) для передачи/приема требований обслуживания файлов.

Yellow pages

Yellow pages (YP - Желтые страницы.) это система, дополняющая NFS средствами для распределенного поиска в компьютерной сети. Хотя по названию они напоминают телефонную книгу, но в компьютерных сетях этот термин не имеет ничего общего с телефонной компанией. Серверы YP хранят базы данных, называемые картами, к которым могут обращаться компьютеры-клиенты. Обычно эти базы данных содержат информацию о пользователях, группах, сетевых адресах, межсетевых шлюзах и о других важных вещах.
Желтые страницы поставляются вместе со сценариями оболочки для помощи в построении файлов карт. Одним из таких сценариев является ypinit, который может построить карты YP сервера из файлов, имеющихся на вашем UNIX-компьютере, включая локальные пароли, группы и конфи-^рационные файлы TCP/IP. Когда пользователи разделяют ресурсы в сети на базе системы UNIX, сервер YP решает проблемы, связанные с различиями в именах и адресах сетевых компьютеров. Иногда эта система называется NIS (Network Information Services - Сетевая информационная служба).
Из рассказанного ясно, что система NFS помогает пользователям UNIX-^мпьютеров, трактуя удаленные файловые системы в сети как локальную Файловую систему. Что же можно сказать о пользователях ПК под управ-•^ением DOS? Если вы работаете на таком ПК и хотите присоединиться к ®ти с компьютером UNIX, то для этого нужно сперва прочитать оставшуюся часть главы.

Использование PC Interface/AADU

PC Interface (PCI) - это программный продукт компании:
Locus Computing
9800 La Cienega Boulevard
Inglewood, CA 90301
(800) 955-6287

Фирма IBM, высоко оценивая PCI, поставляет его от своего имени под названием AIX Access for DOS Users (AADU - Доступ AIX для пользователей DOS). Система PCI состоит из двух частей - для UNIX (на сервере) и для DOS ( на рабочей станции). Можно также приобрести версию PCI для Macintosh у фирмы Locus. PCI использует TCP/IP для передачи и приема пакетов, составляющих запросы на обслуживание файлов, запросы принтера и административные (внутренние для PCI) запросы.
PCI (или AADU, если вы купили продукт фирмы IBM) превращает UNIX-компьютер в файл-сервер и принт-сервер для ПК, работающих под управлением DOS. Пользователям ПК можно разделять файлы и принтер на UNIX-компьютере с другими рабочими станциями и программами, работающими на UNIX-компьютере. PCI совместим с Microsoft Windows, a также включает программное обеспечение для эмуляции терминала, которое позволяет присоединиться к UNIX-компьютеру через сеть и запускать прикладные программы и команды UNIX.

Программное обеспечение для UNIX

На UNIX-компьютере две PCI программы работают в фоновом режиме постоянно с момента загрузки операционной системы UNIX. Первая программа - pcimapsrv - просто поддерживает список UNIX-компьютеров, на которых работает PCI. Примерно через каждые 30 секунд программа pcimapsrv на каждой машине получает обновленный список от других машин. При присоединении новой рабочей станции программа pcimapsrv передает ей текущий список всех PCI рабочих станций.
Вторая программа pciconsrv, передает каждые 30 секунд сообщение "Я здесь!" всем UNIX-компьютерам, на которых работает программа pcimapsrv. Модули pcimapsrv используют эти сообщения для обновления списка файл-серверов PCI. Программа pciconsrv также принимает login-запросы от рабочих станций. При получении такого запроса программа pciconsrv проходит через стандартный ритуал UNIX для того, чтобы удостоверится в том, что пользователь, желающий войти в систему, является тем, за кого себя выдает. После этого программа pciconsrv запускает другую фоновую программу - pcidossrv, которая становится программным обеспечением вашего персонального файлового сервера. Рабочая станция и "ее" копия фоновой программы, взаимодействуя друг с другом, предоставляют пользователю средства для доступа к файлам и принтеру в течение сетевого сеанса.
Эта структура демонов UNIX (фонового программного обеспечения) работает хорошо, пока пользователи DOS не забывают использовать программу РCI logout для завершения сетевого сеанса. Если ПК под управлением DOS перезагрузить во время сетевого сеанса (или на нем произойдет сбой из-за неполадок в питающей сети), то демон pcidossrv останется в памяти UNIX-машины как зомби-процесс UNIX. Для его уничтожения придется привлечь супервизора операционной системы UNIX.

Использование файлов с PCI

Во время присоединения рабочей станции под управлением DOS к серверу РCI пользователь сообщает свой псевдоним и пароль. После присоединения на ПК "возникает" новый диск (обозначаемый, например, буквой Е), что позволяет получить доступ ко всем файловым системам, смонтированным на UNIX-компьютере. При этом PCI поддерживает стандартную схему DOS разделения и захвата файлов, так что многопользовательские прикладные программы будут работать без проблем.

Имена файлов в системе PCI
Имена файлов UNIX могут содержать несколько точек и до 14 символов, к тому же они чувствительны к регистру символов. Имена файлов DOS содержат только одну точку, до 8 символов в основном имени, до 3 символов в расширении и нечувствительны к регистру символов.
Проблем из-за различия в правилах назначения имен файлов не возникает при доступе с рабочих станций только к DOS-файлам сервера. Если же с помощью команды CHDIR перейти в корневую директорию и в ней воспользоваться командой DIR для вывода всех директорий, то можно обнаружить типичные для операционной системы UNIX директории USR, ТМР, LOST'UND. Последнее имя демонстрирует способ представления в PCI директории LOST+FOUND системы UNIX (потерянных+найденных UNIX-файлов) в рамках ограничений DOS на имена файлов. В PCI предусмотрена команда undir для установления как полного UNIX-имени файла, так и сокращенного DOS-имени файла. В случае, когда UNIX-имя не может быть прямо переведено в имя DOS, PCI заменяет специальные символы, такие как апостроф, на символы, допускаемые DOS в имени файла.

Использование DOS-файлов и UNIX-файлов
На миникомпьютере PCI хранит файлы как UNIX-файлы. При перенаправлении UNIX-файлы и DOS-файлы легко различаются системой и нет необходимости проявлять дополнительную заботу о том, чтобы DOS-файлы, записанные одной рабочей станцией, могли быть прочитаны другой рабочей станцией.
Единственное различие, о котором не следует забывать, состоит в способе представления текстовых файлов в UNIX и DOS. В системе DOS строка должна заканчиваться комбинацией символов возврат каретки (CR) и переводом строки (LF), а в системе UNIX только символом перевод строки. Поэтому, если необходимо разделение текстовых файлов в ЛВС между машиной и DOS-машиной, то нужно воспользоваться специальной утилитой фирмы Locus для перекодирования таких файлов.

Разрешения на доступ к файлам в UNIX
Защита данных в PCI основана на стандартных средствах, предусмотренных для этих целей в операционной системе UNIX. Эти средства включают процедуру login с паролями и псевдонимами, с помощью которой пользователи получают доступ к сетевым дискам. До этого системный администратор должен зарегистрировать каждого пользователя PCI в системе UNIX. Пользователи могут быть лишены права чтения или записи в определенные файлы путем стандартного метода UNIX - маскирования разрешений.

Печать с помощью PCI
Команда PCI PRINTER перенаправляет данные вместо параллельного порта рабочей станции к разделяемому сетевому принтеру. Это работает одинаково для приложений DOS и Windows, а также для запросов Print Screen (распечатать изображение экрана), копирования файлов в порты LPT1, LPT2, LPT3 или PRN и для команды DOS PRINT.

Управление заданиями печати в PCI
После ввода команды PRINTER данные для печати направляются на сетевой принтер. При этом можно указать, какой именно порт (или все) перенаправляется в сеть и к какому из серверов.
Система управления печатью в PCI формирует из материалов, предназначенных для печати, задания, которые разделяются между собой так называемыми разделителями печати. Разделители печати возникают при завершении операции печати файла, при окончании работы прикладной программы или, если рабочая станция приостанавливает передачу данных для печати на время большее, чем определенное количество секунд. Такой перерыв в печати называется тайм-аутом и его величина может быть задана в качестве параметра команды PRINTER. Эта же команда позволяет отменить перенаправление принтерного порта.
При желании очередь печати можно просмотреть. Для этого нужно присоединиться к UNIX-машине и вывести очередь печати при помощи соответствующих команд UNIX.

Использование возможностей печати в UNIX
По умолчанию UNIX файловый сервер использует для печати программу, вызываемую командой 1р. При желании можно указать PCI вызывать для печати другую программу, например, qprt. При этом имеется возможность использования параметров и ключей в командной строке, как показано в примере:
PRINTER LPT2 HOST1 "lp -d hplaser -о raw"

Организация терминального сеанса в UNIX

Кроме того, чтобы использовать UNIX-компьютер как файл-сервер, пользуясь сетевым принтером и диском с новым символом, можно превратить ПК в терминал UNIX-компьютера и работать непосредственно с системой UNIX. Для превращения рабочей станции в терминал для UNIX-компьютера можно воспользоваться программой ЕМ2, входящей в состав PCI. Эта программа может эмулировать терминалы VT220, VT100 фирмы DEC, включая такие возможности, как поддержка интернациональных таблиц символов, программирование функциональных клавиш, Esc-после-довательности и т.п.
При работе в среде Windows в улучшенном режиме 386 процессора имеется возможность создания нескольких сеансов DOS одновременно. Этим можно воспользоваться следующим образом. В одном сеансе можно присоединиться к UNIX-компьютеру, как к файловому серверу, и запустить прикладную программу, использующую файлы на сетевом диске. В другом сеансе можно эмулировать терминал UNIX-компьютера.

Дистанционное использование PCI через модем

Для связи с удаленной UNIX-машиной можно воспользоваться модемом. При этом в системе PCI применяется протокол SLIP (Serial Line Internet Protocol) для управления сеансом связи с удаленной ЛВС. Это дает возможность запускать приложения и выполнять другую работу в ЛВС так же, как при непосредственном включении в нее через кабель, однако при значительно меньшей скорости обмена данными.

Команды PCI

Ниже приведен список команд PCI, которые могут оказаться полезными для вас.
Таблица 10.3. Команды и утилиты PCI
Команда
Функция
DOS2UNIX
Удаляет символы CR из текстовых файлов
DOSWHAT
Проверяет файл и возвращает его тип
ЕМ2
Производит эмуляцию терминала VT220 для запуска приложений UNIX
JOBS
Выводит список работ начатых командой ON
KILL
Останавливает программу на UNIX-машине
ON
Начинает выполнение программы или команды на UNIX-машине
PCICONF
Конфигурирует PC Interface
PRINTER
Перенаправляет порт LPTx на разделяемый сетевой принтер или отменяет его перенаправление
UDIR
Выводит список файлов в форматах DOS и UNIX
UNIX2DOS
Добавляет символы CR в текстовых файлах



Заключение по РСI

Система PC Interface занимает около 70К ОЗУ рабочей станции, работающей под управлением DOS. При наличии у компьютера процессоров моделей 80386, 80486 или Pentium и версии DOS не ниже 5.0 имеется возможность загрузки PCI в верхнюю область памяти. PCI имеет хорошую производительность, работает с большим количеством сетевых адаптеров и позволяет рабочим станциям, управляемым DOS, получать в качестве дополнения ресурсы UNIX-компьютеров.

Системы POWERfusion POWERserve

Системы POWERfusion вместе с POWERserve или POWERfusion Extras для DOS позволяют, аналогично PCI, использовать UNIX-компьютер как файл-сервер для рабочей станции под управлением DOS. Они выпускаются фирмой:
Performance Technology
800 Lincoln Center
7800 IH-10 West
San Antonio, Texas 78230
(800) 825-5267
(512)349-2000
Она производит также одноранговую сетевую ОС POWERLan, описанную в главе 9.
POWERfusion содержит программы эмуляции терминала и преобразования файлов. Системы POWERfusion Extras для DOS, POWERserve иди POWERLan (хорошо совместимые между собой) осуществляют перенаправление дисков. Продукт POWERfusion состоит из компоненты для UNIX (сервера) и компоненты для DOS (рабочей станции). В отличие от PCI система POWERfusion использует NetBIOS, а не TCP/IP, для передачи запросов при работе с файлами.

Основы работы систем РOWERfusion и POWERserve

Системы POWERfusion и POWERserve превращают UNIX-компьютер в файл-сервер и принт-сервер. В результате можно использовать прикладные программы и команды DOS для создания, использования и разделения с другими файлов на UNIX-компьютере. Можно трактовать принтер UNIX-компьютера как разделяемый сетевой принтер. Системы POWERfusion и POWERserve совместимы с Microsoft Windows. Сама по себе POWERfusion позволяет только связать рабочую станцию с UNIX-компьютером, в том числе эмулируя терминал. Для переназначения дисков и принтеров нужно использовать дополнительно редиректоры POWERfusion Extras для DOS, POWERserve или POWERLan.

UNIX-компонента продуктов фирмы Performance Technology

Компонента POWERdrivers состоит из драйверов NetBIOS для UNIX-компьютера. В то время как другие программные продукты, рассмотренные нами в этой главе, используют протокол TCP/IP для передачи сообщений между рабочими станциями и файловым сервером, продукты фирмы Performance Technology используют транспортный протокол NetBIOS. Причина этого состоит в стремлении сохранить совместимость с другими сетевыми операционными системами, использующими этот протокол: LAN Manager, LAN Server, POWERLan.
Первичный модуль POWERdrivers называется unxnet. Он выполняет функции драйвера в системе UNIX: осуществляет преобразование пакетов сообщений NetBIOS в потоки данных для терминала (tty) и спулера печати системы UNIX. Другой драйвер осуществляет асинхронный ввод/вывод в сети с применением протокола NetBIOS STREAMS. Драйвер STREAMS на UNIX-машине называется /dev/nbsa. POWERfusion и POWERserve допускают использование как карт ARCnet, так и EtherNet.
Часть программного обеспечения POWERserve, предназначенная для работы на UNIX-машине, выполняет те же функции файл-сервера, что PC Interface: переназначение дисков и обработка файловых запросов. Благодаря тому, что POWERserve, POWERLan, POWERfusion и POWERfusion "xtras для DOS используют тот же протокол SMB, что и сетевые операционные системы LAN Manager и LAN Server, можно одновременно использовать эти продукты в одной ЛВС. Таким образом, с рабочей станции, Работающей под управлением POWERLan, можно одновременно, например, получить доступ как к серверу LAN Manager, так и к серверу UNIX.

Использование файлов

Так как POWERserve использует тот же протокол SMB, что и сетевые операционные системы POWERLan, LAN Manager и LAN Server, то файлы разделяемые в ОС фирмы Performance Technology могут располагаться на UNIX, OS/2 или DOS файловых серверах. При этом POWERserve (так же, как PC Interface) скрывает различия в именах файлов в операционных системах DOS и UNIX. При этом разделение файлов DOS не вызывает проблем. Для представления UNIX-файлов, имеющих имена из 14 символов, чувствительные к регистру, POWERserve производит усечение имени файла и игнорирует разницу между прописными и строчными буквами. В комплект POWERserve входит утилита, преобразующая текстовые файлы UNIX в текстовые файлы DOS. POWERserve поддерживает разделение файлов DOS и захват записей баз данных, позволяющие использование многопользовательского программного обеспечения в сетях на базе системы UNIX.
Для защиты данных POWERfusion использует стандартные в UNIX пароли и псевдонимы, a POWERserve придерживается для рабочих станций DOS соглашений, принятых в UNIX о разрешениях доступа к файлам. Таким образом, администратор сети для обеспечения защиты данных систем POWERserve и POWERfusion должен выполнять те же действия, что и для файлов системы UNIX.

Печать в POWERserve

Модуль обслуживания принтера в POWERserve использует команду UNIX 1р при направлении задания для печати на разделяемый сетевой принтер, подключенный к UNIX-компьютеру. Имеется возможность защиты принтера паролем - уникальная характеристика POWERserve и в POWERLan.
Администратор сети назначает имя принтера ЛВС, которое затем используется при перенаправлении портов LPT1, LPT2 или LPT3 рабочих станций под управлением DOS. На UNIX-машине администратор сети настраивает команду 1р, задавая ее ключи: число копий, выдачу уведомлений об окончании печати и т.п.
Продукт POWERfusion Extras для DOS включает возможность перенаправления заданий печати к принтерам, подключенным к любой из рабочих станций, управляемых DOS. Таким образом, такой принтер может выступать как сетевой и становится доступным для прикладных программ на UNIX-компьютерах.

Терминальный сеанс с UNIX

Продукт POWERfusion включает эмулятор терминала VT220, позволяющий работать с UNIX-компьютером, как с миниЭВМ. Имеется возможность переключения между DOS и эмуляцией терминала при помощи "горячих клавиш", позволяющая одновременное использование прикладных программ DOS и UNIX. Эмулятор терминала поддерживает большинство характеристик стандартного терминала VT220 фирмы DEC, включая многонациональные наборы символов, программируемые функциональные клавиши и Esc-последовательности.

Система меню POWERfusion

Система меню в POWERfusion и других продуктах фирмы Performance Technology представляет больше удобств и потому используется охотнее, чем
режим командной строки. С ее помощью можно конфигурировать рабочую станцию, присоединять ее к сети, переназначать диски, запускать эмуляцию терминала, выполнять пересылку файлов и преобразовывать текстовые файлы. Фирменная программа управления файлами, называемая Navigate, позволяет, например, просматривать дерево директорий на локальном или сетевом дисках.

Заключение по POWERfusion и POWERserve

Разные программные модули рабочих станций под управлением DOS занимают различный объем ОЗУ. NetBIOS занимает 7К, редиректор печати занимает около 13,5К и редиректор файлов - около 15К. Все программные модули, кроме NetBIOS, могут быть загружены менеджерами памяти в верхнюю область памяти на компьютерах с процессорами 386, 486 или Pentium. Фирма Performance Technology поставляет программные компоненты, способные работать с широким диапазоном карт адаптеров и серверами под управлением операционных систем UNIX, LAN Manager и LAN Server.

Заключение

Вы изучили основы ОС UNIX и распространенный протокол TCP/IP. Система NFS уже не является для вас загадкой. Вы также познакомились с продуктами для создания сетей UNIX: PC Interface, POWERfusion, POWERserve и POWERfusion Extras для DOS.
В следующей главе мы обратим внимание на прикладные программы, которые можно использовать в ЛВС.

Часть 4. Расширение сети


Прикладные программы для ЛВС
Управление ЛВС Анализ совместимости
Объединение ЛВС в глобальные вычислительные сети

Глава 11. Прикладные программы для ЛВС

Индивидуальные ПК существуют для того, чтобы с помощью соответствующего программного обеспечения помогать вам в работе. Точно так же вычислительная сеть помогает отдельным пользователям объединять усилия для выполнения большего объема работы.
Прикладные программы, используемые в ЛВС, могут быть сетевыми (рассчитанными на одновременное использование несколькими пользователями) или рассчитанными на индивидуального пользователя. Даже в случае однопользовательского программного обеспечения, наличие ЛВС позволяет повысить эффективность его использования за счет разделения файлов программ и данных. Однако в таком случае придется специально координировать разделение отдельных файлов. Это может включать, например, оповещение остальных пользователей о том, что вы уже закончили модифицировать файл электронной таблицы, и он теперь доступен для работы. В случае использования сетевого программного обеспечения координация работ пользователей производится автоматически, причем всегда можно определить, кто и когда последним модифицировал данный файл и где находится последняя версия файла.
Сетевые программы распознают наличие сетевой операционной системы и строят свою работу соответствующим образом. На работу программ, рассчитанных на индивидуального пользователя, наличие ЛВС не оказывает существенного влияния, за исключением возможности пользоваться сетевыми дисками и принтерами. В этой главе изучаются вопросы использования в сети многопользовательского и однопользовательского программного обеспечения.
Начнем с изучения работы DOS на вашем компьютере, когда он является частью ЛВС. Различные сетевые операционные системы для защиты данных применяют разрешения и права доступа к ресурсам в ЛВС, и в этой главе будет показано, как изменяется работа прикладных программ в зависимости от предоставленных вам системным администратором прав и разрешений. Вы познакомитесь с тупиками (deadlock) - довольно редкими, но опасными для целостности данных явлениями в многопользовательском окружении.
В этой главе вы рассмотрите также характеристики многопользовательских прикладных программ, включая разделение файлов, захват записей в файлах, пользовательские конфигурационные файлы и печать в многопользовательской среде. Вы познакомитесь с важными деталями лицензий на многопользовательское программное обеспечение. Далее будет проведено обсуждение того, как пользоваться в сети и управлять различными категориями прикладных программ - текстовыми процессорами, настольными издательскими системами, электронными таблицами и системами управления базами данных. Так как последняя категория - системы управления базами данных - хорошо подходит для многопользовательских применений, то в этой главе приводится обзор восьми таких сетевых систем: Access, Alpha Four, DataBase, dBASE IV, FoxPro, Paradox, Paradox for Windows и R:BASE.

Различие однопользовательских и многопользовательских операционных систем

Операционная система DOS рассчитана на работу с одним пользователем. Однако в ЛВС у нескольких пользователей на различных рабочих станциях может возникнуть необходимость работы с одним и тем же программным обеспечением. В этом случае многопользовательская прикладная программа координирует их действия через DOS и сетевую операционную систему. Таким образом, сетевая программа расширяет DOS и вносит дополнительное измерение в использование ПК.

Использование DOS

Фирмы IBM, Microsoft и Novell, работая в независимых направлениях, добавляли в DOS новые функции для обеспечения возможности работы в компьютерной сети ПК под управлением DOS, Фирмы Microsoft и IBM, имея права собственности на DOS, встраивали эти функции внутрь DOS, а фирма Novell, не имея возможности вторжения в DOS изнутри, использовала для этой цели программную оболочку NetWare (NETx.COM). Помимо своих собственных многопользовательских функций, оболочка фирмы Novell может также распознавать и поддерживать функции Microsoft/IBM.

Сравнение различных версий DOS
Средства для поддержки работы компьютерных сетей стали включаться в DOS, начиная с версии 3.0. Прикладные программы в версии DOS 3.0 могли управлять доступом к файлам (эксклюзивный или разделяемый режим доступа к файлам) и осуществлять захват записей в файлах. В версию DOS 3.1 были добавлены функции для идентификации каждой рабочей станции, функции для идентифицирования локальных и разделяемых накопителей и функции для определения сетевого имени удаленного разделяемого накопителя. Версия DOS 3.2 стала совместима с сетевыми адаптерами Token Ring фирмы IBM. В версии 3.3 были добавлены функции, позволяющие программам записывать данные о файлах на диск (временное закрытие файла), а в версии 4.0 загрузка программы SHARE перестала быть необязательной и стала производиться автоматически.
Несколько лет назад большинство пользователей отдавало предпочтение при работе с DOS версии 2.1. Пользователи не испытывали необходимости перехода на новые версии DOS по мере их появления. Это было связано с подходом фирмы Novell к созданию среды для организации ЛВС на базе ПК, работающих под управлением DOS. Сущность этого подхода состояла в том, что программные средства, необходимые для организации ЛВС, были построены в виде надстройки над DOS, и пользователи могли работать в ЛВС, пользуясь простой версией DOS. В частности, это же обстоятельство послужило одной из причин того, что фирма Novell достаточно рано приобрела прочные позиции на рынке ЛВС. Сегодня, конечно, этот фактор не является определяющим, так как большинство пользователей имеет более поздние (совместимые с ЛВС) версии DOS.

Команды DOS
DOS не имеет средств защиты от проблем, возникающих при разделении файлов, так что даже применение обычной команды COPY иногда может вызывать потери данных при работе в ЛВС. К счастью, они возникают редко, но все же необходимо иметь в виду, что командный процессор DOS COM-MAND.COM не является сетевой программой. Например, такого рода трудности могут возникнуть при попытке одной из рабочих станций скопировать файл, который уже открыт другой рабочей станцией, даже если последняя только читает данный файл (так же, как и команда COPY). Для того, чтобы правильно выполнить копирование, COMMAND.COM открывает входной файл в таком режиме совместимости, в котором она запрашивает эксклюзивные права доступа к файлу (если только вся директория не помечена как "только для чтения"). Вместо этого нужно было бы открывать файл в таком режиме, в котором будет запрещена только запись в этот файл во время копирования.
Фирма Novell в NetWare поставляет собственную программу для копирования файлов, называемую NCOPY, которая не только является сетевой, но и позволяет избежать дополнительного увеличения графика ЛВС при принадлежности файлов источника и приемника одному файловому серверу. В этом случае файл копируется непосредственно на сервере, а не переносится на рабочую станцию и обратно под новым именем.

Конфигурирование DOS на рабочей станции
Программа инсталляции сетевой операционной системы обычно автоматически производит все необходимые изменения в файлах AUTOEXEC.BA и CONFIG.SYS. Если инсталляционная программа достаточно высокого качества, то в процессе ее работы пользователю предоставляется возможность просмотра, выбора и, может быть, даже модификации этих изменений. Эта программа также произведет размещение компонент ОС, относящихся к рабочим станциям, на их локальных дисках. Необходимый для этого объем на диске колеблется от нескольких десятков килобайт для ОС NetWare до нескольких мегабайт для ОС LAN Manager.
Если рабочая станция оснащена процессорами моделей 80386 или 80486, а также DOS версии 5 (и выше) или менеджерами памяти (описанными в главе 6), то можно поэкспериментировать с верхней областью памяти, размещая в ней все сетевое программное обеспечение (или его часть). Размещение сетевых драйверов в этой области всегда связано с применением метода проб и ошибок. Однако, если у вас аналитический склад ума, то можно, используя документацию к сетевому адаптеру и другим картам адаптеров в вашем компьютере, самому выбрать нужные области верхней памяти для размещения резидентных программ и драйверов. Скорее всего вам придется перезапускать компьютер несколько раз, делая некоторые изменения в файлах CONFIG.SYS и AUTOEXEC.BAT, до тех пор пока не будет достигнуто нужное расположение резидентных программ и драйверов. Если вы добьетесь успеха в этом направлении, то в качестве награды за свои труды будете иметь больший объем ОЗУ для работы с прикладными программами.
Сетевые операционные системы NetWare и LAN Manager/LAN Server могут разделять в ЛВС весь накопитель на жестком диске или только определенные его директории. В ОС NetWare команда MAP осуществляет переназначение действительных директорий и дисков на файловом сервере при помощи новых буквенных обозначений. В сетевых ОС LAN Manager и LAN Server для этих же целей применяется команды NET SHARE (на сервере) и NET USE (на рабочих станциях).
Заметим здесь, что обозначение накопителей и структура директорий для прикладных программ будут зависеть от того, как используются эти команды, поэтому перед инсталляцией прикладных программ необходимо внимательно изучить сопутствующую документацию, где могут быть указания по поводу обозначений накопителей.

Использование программы DOS SHARE
Программа SHARE является резидентной программой DOS и позволяет осуществлять разделение файлов в ЛВС. Эта программа настолько сильно связана с DOS, что ее невозможно выгрузить из памяти иначе, чем перезагрузив компьютер.
При отсутствии программы SHARE DOS игнорирует специальные режимы доступа к файлам, используемые сетевыми программами при открытии файла (например, для обеспечения эксклюзивного доступа). При отсутствии этой программы можно даже полностью повредить сетевой жесткий диск в Результате конфликта при работе с файлами. Вот почему, начиная с версии "OS 4.0, эта программа загружается вместе с DOS автоматически. В OS/2 нет необходимости специально загружать SHARE.EXE, потому что она встроена внутрь операционной системы.
Обычно в руководствах к прикладным программам напоминается о необходимости загрузки программы SHARE перед началом работы с этими программами. Лучше всего загрузить ее после загрузки сетевой операционной системы, но перед началом какой-либо работы в ЛВС.
Интересной особенностью программы SHARE является то, что она позволяет осуществлять разделение файлов даже на отдельном однопользовательском ПК. Например, можно одновременно загрузить прикладную программу и несколько резидентных программ в фоновом режиме, поэтому DOS должна иметь возможность отслеживать все операции ввода/вывода с файлами, производимыми основной и фоновыми программами. Задача разделения одних и тех же файлов между программами, одновременно работающими на отдельном ПК, совершенно аналогична разделению файлов в сети, и она успешно решается программой SHARE.
Если вы используете Microsoft Windows в ЛВС, то вам тем более необходимо загрузить программу SHARE перед началом работы в Windows. Дело в том, что программу SHARE невозможно загрузить в одном из сеансов DOS улучшенного режима 386 процессора системы Windows, так как она будет препятствовать этому, предполагая, что SHARE уже загружена. Кроме того, для выхода из сеанса DOS может применяться команда DOS EXIT, которая пыталась бы выгрузить SHARE из памяти. А как мы уже знаем, сделать это невозможно, так как SHARE очень сильно "врастает" в DOS. Данная ситуация имеет неприятный побочный эффект, проявляющийся при работе многопользовательского программного продукта в таком сеансе DOS. Программа будет считать, что разделение файлов разрешено, в то время как SHARE не загружена. В результате возможна потеря информации и повреждение файлов.

Присвоение прав и разрешений

Концепция прав и разрешений составляет значительную часть системы защиты данных, предоставляемых большинством сетевых операционных систем. Эти права и разрешения могут защищать данные от несанкционированного доступа, но могут также создавать путаницу для прикладных программ (следовательно, и для вас).
Пример такой ситуации, возможной только в ОС NetWare, связан с атрибутом файлов "разделяемый/неразделяемый" (shareable/nonshareable). Этот атрибут был рассмотрен подробнее при изучении ОС NetWare в главе 7. В ЛВС, управляемой ОС NetWare, при создании файлов на сервере им по умолчанию присваиваются атрибуты "для чтения", "для записи" и "неразделяемый". Это значит, что вы или ваша прикладная программа должны будете сами специально модифицировать атрибуты файлов в соответствии с тем, как вы собираетесь осуществлять их разделение между пользователями. При необходимости изменения атрибутов файла вручную нужно использовать утилиту FLAG ОС NetWare.

Поиск файлов в директориях
На ПК в ЛВС, управляемой сетевыми ОС NetWare, LAN Manager или LAN Server, могут возникать ситуации, невозможные на автономном компьютере. Можно вспомнить, например, обсуждение в главе 7 прав, связанных с директориями на сервере в ОС NetWare. Директория может быть помечена так, что прикладная программа не сможет даже обнаружить ее, чтобы осуществить поиск файлов в ней. Файлы и целые директории могут в действительности существовать (и даже быть видимыми для пользователей, обладающих другими доверяемыми правами в NetWare), но быть невидимыми для программного обеспечения и команд DOS, применяемых пользователями, не обладающими достаточными правами. Таким образом, прикладные программы могут вести себя по-разному при запуске их с различных рабочих станций в ЛВС.

Чтение и запись файлов
Обычной ошибкой при использовании прав и разрешений является наделение директории атрибутом, позволяющим поиск файлов в ней, но не позволяющим их чтение. Большинство сетевых операционных систем не запрещают подобную комбинацию прав доступа, и это кажется довольно нелепым. В подобной ситуации при использовании команды DOS DIR вы видите файлы в директории, а прикладная программа, вами используемая, не может их открыть для работы.
С другой стороны, запрещение записи в файлы всем пользователям, за исключением одного или двух, может быть полезным. Такая система защиты данных позволяет возложить ответственность за этот файл на того, кто имеет право его модификации. При этом другие пользователи будут иметь возможность чтения данных без опасения, что информация в этих файлах может быть изменена.

Тупики

Тупик (deadlock) - неприятное, но хорошо определяющее ситуацию (в которую никому не захочется попасть) слово. Предположим, что на Рабочей станции А и на Рабочей станции В работают различные программы, которым необходимо произвести модификации в одной и той же паре файлов на сервере. Каждой из программ необходимо осуществить захват файлов для модификации данных в них. Пусть примерно одновременно эти программы достигают такого момента, когда они должны произвести эти изменения. Последовательность их действий в тупике будет выглядеть следующим образом:
1. Программа А произвела захват файла 1.
2. Программа А осуществила запись в файл 1 данных, которые в точности должны повториться в файле 2.
3. Программа В произвела захват файла 2.
4. Программа В осуществила запись в файл 2 данных, которые в точности должны повториться в файле 1.
5. Программа А безуспешно пытается произвести захват файла 2.
6. Программа В безуспешно пытается произвести захват файла 1.
Для выхода из такой ситуации необходимо произвести рестарт обеих рабочих станций, который приведет к тому, что оба файла окажутся модифицированными лишь частично, причем несогласованным образом.
Если вы столкнетесь с подобной ситуацией, то, наверняка, помянете недобрым словом разработчика (или поставщика) программного обеспечения, так как устранение возможности тупика лежит целиком на совести программиста. Иногда можно удостовериться в том, что такая неприятность действительно произошла, сходив на файл-сервер и просмотрев на его дисплее открытые в настоящее время файлы и захваченные в них записи.

Характеристики многопользовательских программ

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

Знакомство с особенностями поведения программ в сети

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

Идентификация пользователей
Псевдоним пользователя (его ID), используемый при процедуре присоединения к ЛВС, доступен также и прикладной программе (но его пароль, конечно, не доступен). В некоторых случаях программное обеспечение может использовать имя машины для идентификации каждой рабочей станции. Эта информация может использоваться прикладной программой для различных целей - для создания контрольного файла активности своего использования или создания для каждого пользователя файлов, содержащих информацию о конфигурации программы.
Несколько лет назад многие прикладные программы содержали информацию о конфигурации внутри файла самой программы. При изменениях конфигурации программа считала часть своего исполняемого файла файлом данных, и эти данные заменялись на новые. При использовании таких программ в ЛВС это являлось одним из самых больших неудобств, какие только мог создать автор программы, так как, во-первых, нет возможности задавать конфигурацию отдельно для каждого из пользователей, и, во-вторых, нельзя присваивать файлам этих программ атрибуты "разделяемый" и "только для чтения". Поэтому в современных программах этот способ не применяется.
Более разумно спроектированная программа создает файл для каждого пользователя, где записывает конфигурацию, выбранную им. Хорошей основой для обозначения файлов при этом подходе могут служить псевдонимы пользователей или машинные имена.
Если в документации на прикладное программное обеспечение указано на необходимость введения машинного имени для каждой рабочей станции (или псевдонима для каждого пользователя) и предлагаются правила составления таких имен (например, имя должно быть уникальным, содержать от одного до восьми символов, состоять из букв и цифр и т.п.), то вы можете быть уверены в том, что прикладная программа использует приведенный выше подход. Примерами таких имен могут служить: BARRY.CFG, LINDA. CFG и CHRIS.CFG.

Доступ к секторам диска
Некоторые утилиты не могут быть применены к сетевому накопителю на жестком диске. Лучшим примером может служить программа CHKDSK. Она работает с секторами диска, а сетевые операционные системы не предоставляют средств для захвата секторов диска - могут быть захвачены только файлы, а не сектора. Кроме этого, программа CHKDSK может работать только с дисками DOS формата, а накопитель файлового сервера скорее всего имеет другой формат данных.
Вероятно, наиболее популярными в DOS средствами для диагностики и обслуживания накопителей на жестких дисках является пакет Norton Utilitues фирмы Symantec. Этот набор программ позволяет устанавливать Цвета экрана, производить поиск строки текста в файлах, устанавливать метки диска, определять характеристики системы, менять атрибуты файлов, печатать текстовые файлы и выполнять множество других полезных Функций. Многие из них не работают на сетевом диске. Среди них имеются средства для сортировки директорий, для восстановления уничтоженных файлов и директорий и средства для модификации внутренних таблиц размещения файлов (процесс известен под названием дефрагментация жесткого диска). Использование этих средств в многопользовательской среде может быть опасным. Например, если с одной из рабочих станций производится сортировка файлов в директории файлового сервера, а другая рабочая станция в это время обращается к этой директории, то в этой ситуации первая программа будет мешать работе другой.

Использование файлов из корневой директории
Некоторым прикладным программам в процессе работы необходимо иметь возможность записи данных в корневую директорию текущего накопителя. Причем нередко запись может осуществляться лишь во временный файл, который существует только на время работы прикладной программы. При работе в ЛВС возможна ситуация, когда у вас нет достаточных прав для записи в корневую директорию сетевого накопителя. Для того, чтобы обойти данную проблему во многих сетевых операционных системах, имеется возможность переназначения вашей персональной директории на сетевом диске, как корневой директории личного диска. Эта возможность называется переназначение корня (map root). Для демонстрации того, как это работает предположим, что ваше имя Chris и вы имеете персональную директорию F:\USERS\CHRIS на сетевом диске. Системный администратор ЛВС может переназначить диски так, что директория F:\USERS\CHRIS будет выглядеть для прикладной программы как новый диск, обозначенный буквой F. Тогда при записи прикладной программой информации в корневую директорию этого накопителя фактическая запись будет производиться в директорию F:\USERS\CHRIS.

Использование разделения файлов и захват записей в файлах

Каждый открытый файл на файл-сервере становится собственностью открывшей его рабочей станции. Степень захвата файла может меняться от индивидуальной ("никто кроме меня не может прикасаться к этому файлу") до общественной ("мы можем пользоваться этим файлом сообща") с различными градациями в промежуточных положениях. Прикладные программы, открывая файл, указывают, как осуществлять его разделение в ЛВС. При этом они используют разделение файлов и захват записей в них так, чтобы обеспечить согласованную модификацию файлов.

Необходимость в разделении файлов
Что произойдет, если две рабочие станции не будут обращать внимания | на правила разделения файлов (не загрузят программу SHARE) и попытаются одновременно изменить содержимое одного и того же файла? В лучшем случае при этом перемешаются данные. Ниже приведен пример того, что еще может случиться:
Когда рабочая станция А осуществляет чтение файла с диска файлового сервера, данные передаются в ОЗУ рабочей станции А для обработки. При записи данных на накопитель сервера производится их передача в обратном направлении. Разумеется, то же самое относится и к рабочей станции В. Предположим, что данные были прочитаны рабочей станцией А и представлены пользователю А. В то время, как пользователь А занимается просмотром и модификацией данных, рабочая станция В, в свою очередь, также прочитала данные и представила их пользователю В. Пользователь В производит набор данных быстрее и раньше заканчивает свою работу, записав результаты в файл на накопителе сервера. Пользователь А с небольшой задержкой записывает свою информацию в тот же файл. В результате данные пользователя В окажутся потерянными, так как поверх них запишутся изменения, введенные более медлительным пользователем А.
Гораздо более сложная ситуация возникает, когда необходимо произвести модификации в нескольких взаимосвязанных файлах. Так как предполагается, что содержание одних файлов связано с содержанием других, то серия нескоординированных модификаций таких файлов с различных рабочих станций может привести к настоящей катастрофе - полному уничтожению какой-нибудь связи между данными в файлах.

Разделение файлов
Когда прикладная программа открывает файл, расположенный на файловом сервере, она информирует сервер о том, что открывает файл для чтения или, возможно, для чтения и записи. Кроме того, программа может потребовать запретить доступ к файлу другим рабочим станциям на время работы с ним.
При попытке чтения прикладной программой файла, имеющего атрибут "только для чтения" (установленный, например, командой DOS ATTRIB), сервер разрешает доступ к файлу. Если же будет предпринята попытка записи в такой файл, то сетевая ОС запретит доступ к файлу, и прикладная программа сообщит об ошибке.
Для контроля действий других рабочих станций при одновременном открытии файлов прикладные программы используют определенный режим разделения. Прикладная программа, открывая файл, задает этот режим. В зависимости от него прикладная программа, работающая на одной рабочей станции, может ограничивать (или не ограничивать) использование другими станциями данного файла на сервере.
Для прикладных программ режим разделения выражается в ограничении для рабочих станций определенных возможностей при попытке открыть уже используемый файл. Эти ограничения (как определено в Техническом руководстве DOS) могут быть следующими: DENY_NONE (нет запрета), DENYJREAD (запрет на чтение), DENY_WRITE (запрет на запись) и DENY_READ_WRITE (запрет на чтение и запись). Дополнительно существует режим, называемый режимом совместимости. Эти названия с заглавными буквами и знаками подчеркивания могут показаться вам странными, однако именно они используются программистами при разработке прикладных программ для задания необходимого режима разделения. Если вы знакомы с этими режимами, то легко распознаете их проявление в сетевом программном обеспечении.
Режим DENY_NONE предоставляет все права на операции с файлами прикладным программам на других рабочих станциях. В сущности, при этом защита целостности файла откладываются до более позднего времени, когда прикладная программа будет производить обновление индивида ль-ных записей. Если рабочая станция открывает файл в режиме DENY_READ (DENY_WRITE), то сетевая ОС разрешает другим рабочим станциям запись (чтение) в файл, запрещая чтение (запись).
Режим DENY_READ_WRITE присваивает рабочей станции исключительные права на доступ к файлу, который она открыла. Попытки других станций открыть этот файл будут обречены на неудачу.
Режим совместимости - это режим разделения файлов по умолчанию. Он устанавливается сетевой ОС, если прикладная программа не указывает какого-либо режима разделения. Обычно этот режим предоставляет прикладным программам исключительные права при работе с файлами. Этот режим задается и для всех вновь созданных прикладной программой файлов.

Захват записей в файлах
Так как операция захвата файла относится ко всему файлу и действует от момента открытия файла до его закрытия, то результирующая грубая дискретность захвата (эффект, ощущаемый одновременно всей группой людей, использующих в данное время прикладную программу) может оказаться существенным неудобством для пользователей, так как препятствует разделению этого файла на все время его захвата.
Многопользовательские прикладные программы используют для защиты целостности данных захват записей файла. Захват записи длится ровно столько, чтобы последовательность данных была записана в файл(ы) и обычно относится только к небольшой части этого файла.
При захвате записи задается область внутри файла - смещение относительно начала файла и размер (длина) области. Если заданная область не может быть захвачена (другая рабочая станция открыла файл в режиме отличном от DENY_NONE или уже захватила данную запись), то сетевая ОС сообщит прикладной программе, что запись недоступна.
Захваченная область, по усмотрению программиста, может содержать только часть записи, целую запись, несколько смежных записей или весь файл. Если каждая запись в файле совершенно независима от других, то прикладная программа захватывает только нужную ей запись. Если же записи в файле связаны друг с другом (например, одна запись содержит указатель на другую запись), то производится захват всего файла, как если бы он был единой записью. В любом случае захват занимает несколько миллисекунд.

Печать в многопользовательском режиме

Может показаться, что печать файлов на сетевом принтере также проста, безболезненна и не более хлопотна, чем разделение файлов и записей в файлах. К сожалению, это не так.
Предположим, что кто-то в ЛВС использует пакет Lotus 1-2-3 и распечатывает электронную таблицу в режиме сжатой печати, переключая принтер в этот режим с помощью соответствующих команд. Когда следом за ним другой пользователь распечатает свой отчет на том же принтере, то он обнаружит его напечатанным сжатым шрифтом в виде узкой колонки, расположенной в левой части листа из-за того, что предыдущий пользователь оставил принтер в режиме сжатой печати.* [* Большинство современных программ в начале печати выдают принтеру инициализирующие команды, благодаря которым он "забывает" предыдущий режим печати. - Прим.. ред.]
Другой пример из этой же области связан с перемешиванием данных различных пользователей в процессе печати. Это может произойти при распечатывании длинных комплексных материалов, содержащих текстовые и графические данные, из-за больших пауз между передачей на принтер различных разделов данных. Сетевая операционная система может воспринимать эти паузы как признак конца печати и начинать печать материалов других пользователей. В результате разбиение на страницы окажется сдвинутым. В то же время печать на локальном, не сетевом принтере будет происходить нормально. Дело в том, что сетевая ОС автоматически вставляет символы конца страницы (перевода формата), которые разделяют распечатки разных пользователей. В рассмотренном примере из-за того, что прикладная программа выполняет длительную обработку данных перед распечаткой каждого нового раздела, сетевая операционная система, обнаруживая такую паузу, считает, что данная распечатка уже закончилась и вставляет лишний символ конца страницы.
Сетевые ОС LAN Manager и LAN Server имеют средства, позволяющие определять конец процесса печати прикладными программами. Например, для сетевой ОС признаком окончания процесса печати очередного документа является тайм-аут, длительность которого устанавливается рабочими станциями. Кроме того, утилита, называемая PRTSC, позволяет использовать комбинацию клавиш Ctrl-Alt-Print Screen для сигнализации завершения процесса печати.
Сетевые ОС LAN Manager или LAN Server могут использовать создаваемые пользователем специальные файлы для печати страниц-разделителей документов. Эти файлы могут включать специальные команды не только для оформления страницы-разделителя, но и для перевода принтера в исходное состояние после окончания выполнения очередного задания. По умолчанию в ОС LAN Manager в качестве названия файла для разделения заданий используется DEFAULT. SEP. Для разрешения печати страниц-разделителей используется команда NET SEPARATOR, которая одновременно может определять имя файла, используемого в качестве разделителя.
В ОС NetWare предоставляются более широкие возможности для управления заданиями печати посредством команды CAPTURE (ранее называвшейся SPOOL). Эти возможности включают: автоматическое добавление команды перевода формата в конце задания печати, добавление разделителей заданий печати (в ОС NetWare они называются титульными листами - banner page}, преобразование символов табуляции в пробелы с указанием числа пробелов для одного символа табуляции, задание числа копий печатных материалов, включение дополнительного изменяемого текста в титульный лист (имя пользователя или задания), указание признака окончания задания печати (по тайм-ауту или по символу конца файла), задание числа строк на страницу и длины строк, а также многое другое. Современные версии ОС NetWare также предоставляют возможность возвращения принтера в исходное состояние по окончании выполнения очередного задания печати.

Лицензии на право использования программ многими пользователями

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

Покупка отдельной копии для каждого пользователя
Частично проблема продажи многопользовательских лицензий связана с тем, что многие производители программного обеспечения еще по-настоящему не занялись продажей программ для пользователей сети. Эти производители настаивают на том, чтобы покупалось по одной копии на каждого пользователя сети. Для одной из компаний в Нью-Йорке это означает аренду небольшого склада для хранения невскрытых коробок с копиями купленных программ. Ведь компания, покупая новую копию программы для очередного пользователя сети, тем не менее продолжает пользоваться лишь одной единственной копией (установленной на файл-сервере). Остальные копии отправляются на склад. Полная многопользовательская лицензия для подобных программных продуктов могла бы выручить эту компанию, но пока приходится ограничиваться однопользовательскими лицензиями от многих производителей программного обеспечения (см. "Полные лицензии" ниже в этой главе).

Сетевые комплекты программного обеспечения
Некоторые производители программного обеспечения продают многопользовательские лицензии для сетевых программ. Вы приобретаете лицензию на одновременное использование программы пятью, десятью или более
сотрудниками. Программа располагается на файловом сервере, и фирмой поставляется количество описаний программы, соответствующее числу пользователей. В качестве примера можно привести фирму Lotus Development, предлагающую сетевую версию программы 1-2-3 по такому принципу.

Полные лицензии
Для более чем 5 или 10 пользователей разумнее приобрести полную лицензию. При этом вы приобретаете право пользования программой для любого сотрудника вашей организации и, возможно, право на производство копий руководств пользователя. Фирм, продающих такие лицензии, пока еще немного. Но крупным фирмам выгоднее настаивать именно на покупке полной лицензии, что в конечном счете выгодно и для производителей программ. Поэтому вполне вероятно, что этот тип лицензий получит в будущем более широкое распространение.

Защита от копирования в ЛВС
Вероятно, вы уже сталкивались с какими-либо схемами защиты от копирования. В большинстве таких систем применяются специальные дискеты-ключи, без которых программное обеспечение не может быть использовано и которые невозможно скопировать обычным способом. Существуют также системы, записывающие на жесткий диск пользователя скрытые файлы, другие требуют для запуска программы специальную заглушку, присоединяемую к принтер-порту компьютера. Кроме того, есть способы защиты от копирования путем запоминания местоположения файлов на жестком диске.
Все эти меры имеют одну цель. Производители программ хотят защитить себя от компьютерного пиратства (воровства программ путем нелегального копирования файлов). И все предпринимаемые ими меры имеют общую характерную черту - они вызывают раздражение у покупателей.
В ЛВС можно добиться соблюдения лицензионных соглашений гораздо более изящными средствами. Прикладная программа при запуске ее с рабочей станции связывается с другими станциями для проверки наличия той же копии программ. При обнаружении этого работа одной из копий блокируется. Такая схема защиты используется в сетевых ОС Personal NetWare и NetWare Lite.
Итак, в этой главе были объяснены различия однопользовательского и многопользовательского программного обеспечения и было показано, как в ЛВС сетевая ОС преобразует однопользовательскую DOS в многопользовательскую среду. Теперь прояснилось значение слов: права, разрешения, Разделение файлов, захват записи, печать в многопользовательской среде и многопользовательские лицензии. Остаток этой главы будет посвящен изучению прикладного программного обеспечения, предназначенного для Работы в ЛВС. Мы начнем с текстовых процессоров и настольных издательских систем, затем обратимся к разделению файлов электронных таблиц. Особое внимание будет уделено системам управления базами данных. Эти приложения являются наилучшими кандидатами для использования в ЛВС, так как предполагают большое количество обращений к содержащимся в них данным.

Текстовые процессоры и программы для настольных издательских систем

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

Разделение файлов

В одноранговых ЛВС, где каждая рабочая станция является одновременно и файловым сервером для других пользователей, для разделения файла достаточно сообщить остальным пользователем имя файла и директорию, в которой этот файл расположен. При этом любой пользователь сможет выполнять с этим файлом те операции, права на которые ему предоставлены в этой директории.
При необходимости можно создать три директории, в одной из которых предоставить пользователям право чтения и записи (и здесь придется координировать модификацию файлов). Во второй директории можно предоставить пользователям только право чтения, так что вы будете единственным, кто будет модифицировать файлы. В третьей директории нужно хранить неразделяемые в ЛВС документы частного характера.
В ЛВС с выделенным файловым сервером разделение файлов происходит почти так же. Для этого необходимо разместить эти файлы на разделяемом сетевом накопителе. Можно использовать директорию с разрешением "только для чтения" для хранения серьезных неизменяемых документов, а директорию с разрешением записи и чтения для корреспонденции -общего характера.

Ведение учета документов

По мере размножения документов в директории на файл-сервере становится все сложнее и сложнее держать в памяти их содержание для того, чтобы в случае необходимости быстро найти тот или иной документ. Поэтому в первую очередь необходимо осуществлять периодическую (примерно раз в неделю) чистку директории от устаревших и ненужных документов. При этом можно не слишком бояться стирать документы, так как в ЛВС периодически создаются резервные копии всех файлов, в том числе и документов. Кроме того, в ЛВС NetWare можно воспользоваться командой SALVAGE для восстановления стертых файлов.
Второе, что можно посоветовать, это создание тематических директорий на сервере, которые значительно облегчают процесс поиска.
Однако можно следить за местоположением нужных файлов не только вручную. Существуют простые, специализированные и ориентированные на применение в ЛВС программы для автоматизации учета документов. Одной из них является программа InfoSelect фирмы MicroLogic:
MicroLogic P.O. Box 70
Hackensack, NJ 07602
(800) 342-5930
Сетевая версия InfoSelect наряду с функциями электронной почты, картотеки, внутриофисной электронной доски объявлений и электронного планировщика выполняет также функции учета документов на сервере. Кроме того, можно выбрать продукт из списка производителей программного обеспечения для рабочих групп в главе 3 "Использование электронной почты". Одной из подобных программ является система Magellan, подробнее о которой можно узнать в:
Lotus Development Corporation 55 Cambridge Parkway Cambridge, MA 02142 (617) 577-8500
По мере поисков вы встретите и другие продукты этой категории.

Использование электронных таблиц

Электронные таблицы (ЭТ) могут разделяться в ЛВС тем же способом, что и текстовые документы. В отличие от документа содержимое файла ЭТ, состоящей из набора рабочих листов, представляет собой сложно организованный и структурированный набор взаимосвязанных элементов. Поэтому для организации в офисе разделения информации в таких файлах необходимо применение четко определенных последовательных процедур.
ЭТ больше подходят для использования в многопользовательской среде с Разделением файлов, чем файлы документов. Хотя и в этом случае не хочется обнаружить в своей ЭТ смесь символов, набранных несколькими пользователями ЛВС, все же очевидно, что полезный набор файлов ЭТ скорее будет создан в результате коллективных усилий группы, чем одним сотрудником.

Разделение ЭТ

При разделении ЭТ желательно иметь возможности разделять содержимое определенных ячеек и областей ЭТ, вставлять комментарии в определенные места ЭТ для напоминаний пользователям о том, какие части файлов они должны использовать, составить описание ЭТ. При работе в ЛВС эту документацию необходимо расширить, включив в нее комментарии для облегчения другим пользователям работы с ЭТ.

Работа с многопользовательскими ЭТ

Фирма Lotus Development Corporation в версии 4 известного пакета ЭТ Lotus 1-2-3 представила средства для группового использования ЭТ. Например, Менеджер Версий (Version Manager) заметно облегчает разделение данных. Благодаря ему несколько сотрудников могут вводить свои версии данных в одну и ту же область рабочего листа, не стирая данных друг друга. При этом Менеджер Версий следит за тем, кто создал или изменил каждую из версий данных или сценариев и обеспечивает возможность слияния версий или сценариев из одного файла в другом файле. Таким образом, Менеджер Версий можно использовать для того, чтобы:
создавать и просматривать различные версии данных в поименованных областях
группировать версии в объединенный сценарий
просматривать информацию о версиях и сценариях, включая то, что введено (данные и присвоенное им имя), где они введены (область, в которой находятся данные), когда (дата и время ввода) и даже почему они введены (комментарий для каждой версии или сценария)
создавать отчет о данных в рассматриваемой версии
комбинировать версии и сценарии из одного файла в другом

Системы управления базами данных

Базой данных называется набор связанной между собой информации в форме списков, таблиц, заметок или по другому организованных данных. Системы управления базами данных (СУБД - Data Base Manager System - DBMS) - это программное обеспечение общего назначения, позволяющее вводить, запоминать, считывать, обрабатывать и распечатывать данные. Для построения приложений достаточно сообщить СУБД, какие данные вас интересуют, как они организованы и как должны обрабатываться и распечатываться. Таким образом, использование СУБД состоит в последовательности ввода данных и обучения СУБД обрабатывать и распечатывать эти данные.
СУБД является прекрасным кандидатом для программы, ориентированной на применение в ЛВС. Легко представить группу людей, осуществляющих одновременный ввод информации в базу данных с различных рабочих станций. При правильной организации разделения файлов, захвате записей и идентификации рабочих станций СУБД становятся солидным инструментом для записи и обработки информации в вашей организации. Необходимо лишь позаботиться о том, чтобы у вас была сетевая версия этого программного обеспечения - использование в сети однопользовательской версия может иметь катастрофические последствия. В этом случае несколько пользователей будут иметь доступ к файлам базы без учета правил разделения файлов и захвата записей. Это внесет ошибки и противоречия в данные.
В следующих разделах мы рассмотрим восемь сетевых СУБД: Access, Alpha Four, DataBase, dBASE IV, FoxPro, Paradox, Paradox for Windows и R:BASE. Все восемь продуктов имеют разумную цену и являются достаточно распространенными, мощными и надежными. Независимо от того, какую СУБД вы выберете для применения в сети, необходимо получить ее сетевую версию, которая применяет разделение файлов и захват записей. Такие версии обычно как-то помечаются (в отличие от некоторых других СУБД, например. Nutshell Plus II).
Для оценки качества СУБД можно использовать следующие критерии:
Инсталляция. Необходимо выяснить, какое количество памяти требуется для программного обеспечения и ее тип, а также возможна ли работа СУБД в среде Windows или OS/2.
Пользовательский интерфейс. Необходимо выяснить, нравится ли вам то, как спроектировано взаимодействие программы с вами.
Подсказки и документированность. Взгляните на экраны подсказок и документацию - насколько они покажутся вам полезными. Если вы новичок в использовании СУБД, выясните, имеется ли в составе программного обеспечения самоучитель.
Типы данных. Все СУБД позволяют задавать числовые или текстовые поля ввода данных. Остальные типы данных могут включать: тип мемо/заметок, номера телефонов, социального страхования, даты и время.
Формирование запросов. СУБД должна предлагать выбор списков и других средств для формирования запросов.
Специальные отчеты. СУБД должна иметь средства для составления хорошо оформленных отчетов с помощью специального генератора отчетов без больших усилий на программирование с вашей стороны.
Импорт/Экспорт. Хорошая СУБД должна обладать возможностями импортировать (экспортировать) данные для других прикладных программ.
Использование SQL. Структурированный язык запросов SQL является стандартом IBM для работы с базами данных. Если вы предполагаете доступ к данным на большой ЭВМ или с помощью таких систем, как Microsoft SQL Server, IBM DB2 for OS/2 или Gupta Technology SQL Base, то необходимо позаботиться о том, чтобы ваша СУБД могла использовать язык SQL.
Генератор кода прикладных программ. Для использования непрофессиональными программистами желательно иметь средства составления простых прикладных программ для обработки данных с помощью выбора из системы меню.
Распространяемые приложения. При приобретении СУБД необходимо выяснить возможность распространения среди других пользователей прикладных программ, разработанных вами. Нужно ли будет оплачивать эту возможность дополнительно?

СУБД Access

СУБД Access фирмы Microsoft ориентирована на работу в среде Windows и имеет несколько пользовательских интерфейсов. Прежде всего пользователям предоставляются средства интерфейса Windows для запроса и модификации данных при работе с этим программным продуктом. Кроме того, можно применить язык программирования, называемый Access Basic (аналогичен Visual Basic) для создания собственных прикладных программ. Access имеет также ODBC драйвер (Open DataBase Connectivity - Связь открытых баз данных) для интерфейса с другими базами данных, совместимыми с ODBC, и SQL-серверами.
Аналогично другим SQL базам данных Access для каждой базы данных, использует один файл, содержащий множество таблиц. Однако это не значит, что она является сервером базы данных. В многопользовательской системе каждый клиент Access должен сам извлекать записи из разделяемого хранилища и обрабатывать их на своем компьютере. К тому же Access не обладает быстродействием FoxPro при опросе одиночных таблиц.
СУБД Access может работать с файлами СУБД Paradox, dBASE, FoxPro и Btrieve. Она включает ядро, совместимое с аналогичными модулями, имеющимися в СУБД Paradox, dBASE и Btrieve, и которое может использовать чужие индексные файлы. Это значит, что Access и Paradox, например, могут иметь одновременный многопользовательских доступ к одним и тем же разделяемым файлам. Возможности модификации Access также значительно превосходят аналогичные свойства других продуктов, например, Btrieve (система фирмы Novell для программирования управления записями) и FoxPro.
Более подробную информацию о СУБД Access можно получить в:
Microsoft Corporation
1 Microsoft Way
Redmond, WA 98052
(800) 426-9400
(206) 882-8080

СУБД Alpha Four

СУБД Alpha Four не имеет средств для построения сложных приложений с развитым интерфейсом. Эта система также не содержит компилятора или средств процедурного языка. Однако она позволяет очень быстро создавать простые приложения.
Тщательно продуманная система меню проводит пользователя по всей этапам создания приложения. При этом девизом этой системы является простота каждого шага. Контекстно-чувствительные подсказки прекрасно ориентируют пользователя и содержат множество полезных примеров.
Система Alpha Four позволяет создавать файлы данных в форматах dBASE III Plus или dBASE IV. Хотя эта СУБД не имеет процедурного языка, она содержит модуль записи сценариев, который позволяет встраивать в приложения сложные макроопределения с логическими операторами типа IF...THEN и другими. К сожалению, единственным шрифтом для принтера, который может быть использован этой системой, является Courier.
СУБД Alpha Four может использовать область расширенной памяти, позволяет оперировать с базами данных, содержащими до двух миллионов записей, и поддерживает до 254 полей в записи.
Более близко познакомиться с этой системой можно по адресу:
Alpha Software
1 North Avenue
Burlington, MA 01803
(617) 229-2924

СУБД DataBase

СУБД DataBase подчеркнуто использует простые вопросы и ответы на английском языке при создании приложений или формировании запросов. Эти вопросы имеют ясный смысл и нетехническую ориентацию, и практически любая задача может быть решена в процессе такого диалога с DataBase.
Причина большой популярности СУБД DataBase состоит (помимо хорошего интерфейса) в ее прямом подходе ко всем этапам обработки данных, от их ввода до формирования запросов и создания отчетов. Система контекстно-зависимых подсказок всегда точно соответствует решаемым задачам, а содержимое подсказок имеет ссылки на печатную документацию, так что всегда имеется возможность получить более детальную информацию.
СУБД DataBase проста и удобна в работе независимо от уровня познаний пользователя в программировании. В этой СУБД имеется возможность использования процедурного языка, называемого DQL (DataBase Query Language - Язык запросов DataBase), одним из двух способов: можно писать программы самостоятельно или с помощью подсказок DataBase для формирования запросов и обработки данных в приложении.
В этой системе имеется возможность импорта файлов в формате dBASE, но невозможен экспорт файлов в этом формате.
Компания DataBase предлагает целый набор модулей SQL-сервера, которые можно установить в сети в дополнение к самой СУБД. Эти модули позволяют иметь доступ к SQL-серверу базы данных, например, такому как Microsoft SQL Server. В дополнение ко всему, квалифицированный программист может создавать программы на Паскале, Си или ассемблере и связывать их с DataBase. Эта СУБД может работать в сеансе DOS среды Windows, тo она еще не имеет графического интерфейса этой среды.
DataBase может работать с базами, содержащими до 2 миллионов записи. Если возможно, она использует расширенную или дополнительную память и способна поддерживать до 255 полей в записи.
Более подробную информацию о СУБД DataBase можно получить в:
DataBase International
7 Cambridge Drive
Trumbull, CT 06611
(800) 243-5123

СУБД dBASE IV

Репутация фирмы Ashton-Tate сильно пострадала, когда выяснилось, что версия 1 ее новой системы dBASE IV, вышедшая на два года позже обещанного срока, содержит ошибки, делающие практически невозможной работу с ней. В более поздних версиях эти ошибки были исправлены, кроме того, были добавлены новые возможности, но все же продукт продавался не слишком хорошо. Фирма Borland купила фирму Ashton-Tate в 1991 году и вселила надежду в производителей прикладных программ, что сделает из dBASE IV первоклассную СУБД.
В течение многих лет dBASE являлась стандартом среди СУБД. Другие СУБД оценивались по их способности импортировать и экспортировать файлы формата dBASE. Однако для того, чтобы эффективно использовать СУБД dBASE IV, нужно быть программистом и знать язык программирования dBASE. Кроме того, другие СУБД работают быстрее и предлагают больше возможностей. Во многих из них существуют средства для облегчения процесса программирования с помощью последовательности связанных меню. В dBASE IV также имеется система меню, называемая Control Center, но она не предназначена для помощи при программировании и не так проста в использовании, как системы меню в СУБД Paradox или R.-BASE.
СУБД dBASE имеет в своем составе полезное средство, называемое "запрос по образцу" (QBE - Query By Example). С его помощью можно создавать и сохранять сложные запросы, позволяющие быстро находить интересующую вас информацию в базах данных. Трудность состоит только в проектировании и написании прикладных программ для СУБД.
Модуль для создания отчетов в СУБД dBASE IV также является очень полезным инструментом для выдачи отчетов в различных стандартных форматах. Однако создание собственного формата отчета требует от разработчика дополнительного программирования.
СУБД dBASE IV может использовать расширенную или дополнительную память, а также позволяет создавать базы данных объемом до одного миллиарда записей, причем число полей на одну запись может достигать 256.
Более подробную информацию о СУБД dBASE IV можно получить в:
Borland International
1800 Green Hills Road
Scotts Valley, CA 95067
(800) 331-0877

СУБД FoxPro

Наиболее быстродействующей и поэтому одной из наиболее быстро продающихся СУБД является FoxPro. Возможно, это явилось причиной того, что в начале 1992 года, буквально через несколько месяцев после того, как фирма Borland купила Ashton-Tate, компания Microsoft купила фирму FoxSoftware и вместе с ней права на FoxPro. Microsoft, кроме версии FoxPro для Windows, продает также и СУБД Access for Windows, описанную выше. Поэтому представляет интерес, какое место на рынке фирма Microsoft отводит СУБД Access и FoxPro.
Пользовательский интерфейс FoxPro для DOS является текстовым, а не графическим. Для представления данных в нем используются текстовые окна и аналогичные применяемым в системе Windows всплывающие меню. При работе с ними можно использовать мышь, перемещая окна и нажимая кнопки на экране в текстовом режиме. Во время просмотра базы данных можно перемещать ее поля обычной операцией мыши захват-и-перемещение. Пользовательский интерфейс FoxPro, так же как и ее файловые операции, имеет высокие показатели по быстродействию. Версия FoxPro для Windows, однако, не имеет такого живого и быстродействующего интерфейса, как версия для текстового режима.
Быстродействующая система индексации файлов является основой производительности FoxPro. Система реляционных "запросов по образцу" QBE не содержит большинства SQL-команд, однако является достаточно гибкой для удовлетворения практически любых запросов пользователей баз данных. Система FoxPro имеет достаточно развитый процедурный язык и целый набор средств для облегчения процесса создания прикладных программ. Для преобразования прикладных программ в ЕХЕ-файлы можно использовать дополнительный модуль компилятора.
Таким образом, система FoxPro представляет собой не просто СУБД для создания несложных приложений, а мощную, систему, которая развивает квалификацию пользователя от первых шагов до профессионального уровня. Ее контекстно-зависимая подсказка имеет множество примеров и другой полезной информации, правда, она скорее ориентирована на программиста, а не на новичка.
Система FoxPro может использовать расширенную и дополнительную память, позволяет создавать базы данных объемом до одного миллиарда записей с числом полей на одну запись до 255.

СУБД Paradox

СУБД Paradox оказалась настолько удачной системой, что многие были Удивлены, когда фирма Borland приобрела фирму Ashton-Tate и ее продукты dBASE. Paradox является мощной и простой для изучения СУБД, по быстродействию почти такой же, как FoxPro, даже при работе с очень большими файлами.

<< Пред. стр.

стр. 9
(общее количество: 13)

ОГЛАВЛЕНИЕ

След. стр. >>