
- •Введение.
- •Общие принципы построения эвм и вычислительных систем.
- •2. Клавиатура и манипуляторы.
- •2.1. Взаимодействие клавиатуры с эвм.
- •2.2. Устройство и программирование манипулятора "мышь".
- •3. Видеосистемы.
- •3.1. Структура видеосистем.
- •3.2. Программирование видеосистем с помощью рограммных прерываний.
- •3.3. Прямое программирование видеосистем.
- •3.4. Мониторы.
- •4. Накопители информации на магнитных дисках
- •4.1. Структура накопителей информации на магнитных дисках
- •4.2. Физические принципы магнитной записи.
- •Конструкция магнитных дисков.
- •4.4. Кодирование и сжатие записываемой информации
- •4.5. Программирование работы дисковых накопителей
- •5. Накопители цифровой информации типа cd-rom.
- •5.1. Общие сведения о накопителях цифровой информации типа cd-rom.
- •5.2. Структура каналов записи и чтения в системе cd.
- •5.3. Конструкция оптического блока.
- •5.4. Многофункциональные цифровые оптические
- •6. Модемы
- •6.2. Программирование модемов
- •7. Сетевые устройства.
- •7.1. Основные элементы сетей эвм
- •Сетевые адаптеры
- •Сетевое программное обеспечение.
- •8. Звуковые платы.
- •8.1. Структура зуковых плат
- •8.2. Программирование звуковых плат.
- •9. Устройства ввода изображений в эмв.
- •Сканеры.
- •9.2. Программное обеспечение сканеров.
- •9.3. Фотокамеры и видеокамеры.
- •10. Принтеры.
- •Устройство и принципы работы принтеров.
- •Программирование принтеров.
- •Многофункциональные измерительные платы.
- •11.1. Характеристики и структура измерительных плат.
- •11.2. Аналого-цифровые преобразователи.
- •11.3. Цифро-аналоговые преобразователи.
- •12. Цифровые системы связи и навигации.
- •12.1. Системы цифровой подвижной связи
- •12.2. Спутниковые системы связи
- •12.3. Спутниковые навигационные системы.
- •Литература.
Сетевое программное обеспечение.
Основным элементом сетевого программного обеспечения служит NETBIOS - программное обеспечение, записаное в ПЗУ сетевых адаптеров, устанавливаемое на каждом компьютере сети, и позволяющее реализовать пять уровней протоколов передачи данных (включая сеансовый). NETBIOS'ом также принято называть сам интерфейс между сетевым программным обеспечением и программами персонального компьютера.
Для того, чтобы использовать сеть необходимо:
задать свое имя в таблице имен адаптера,
используя таблицу своего адаптера или другого адаптера сети определить имя нужного абонента и установить с ним сеанс связи,
используя этот сеанс посылать и принимать сообщения.
Команды NETBIOS'а формируются с использованием блока управления сетью - NCB (Network Control Block), который заполняется в соответствии со своей спецификацией. Формат блока NCB приведен в нижеследующей табл.7.1.
Табл.7.1.
Имя поля |
Формат и назначение |
NCB_COMMAND |
DB 00H; поле команды |
NCB_RETCODE |
DB 00H; поле кода возврата |
NCB_LSN |
DB 00H; поле локального номера сеанса |
NCB_NUM |
DB 00H; номер вашего имени |
NCB_BUFFER@ |
DD 00000000H; указатель на адрес буфера сообщения (смещение: сегмент) |
NCB_LENGTH |
DW 0000H; длина буфера NCB (в байтах) |
NCB_CALLNAME |
DB 16 DUP(0); имя локального или удаленного адаптера; для команды CHAIN SEND первые 2 байта показывают длину второго буфера, а следующие 4 байта - адрес второго буфера |
NCB_NAME |
DB 16 DUP(0); имя локального адаптера |
NCB_RTO |
DB 00H; значение тайм-аута для приема |
NCB_STO |
DB 00H; значение тайм-аута для передачи |
NCB_POST@ |
DD 00000000H; указатель на post- подпрограмму (смещение: сегмент) |
NCB_LANA_NUM |
DB 00H; номер адаптера: для первого адаптера 00H, для второго - 01H |
NCB_CMD_CPLT |
DB 00H; поле состояния команды |
NCB_RESERV |
DB 14 DUP(0); резервная область |
Адрес NCB помещают в регистровую пару ES:BX и вызывается программное прерывание INT 5Ch. Результаты выполнения команды помещаются либо в регистр AL, либо в поле кода возврата блока NCB.
Команды NCB делятся на четыре категории:
общие (используются для включения адаптера в сеть, чтения состояния и управления выполняющимися командами других категорий);
поддержки имен (позволяют идентифицировать компьютер в сети посредством имени);
поддержки сеансов (позволяют устанавливать в сети логическое соединение «сеанс», посылать и принимать сообщения, завершать сеансы и читать состояние сеанса, одновременно может выполняться более одной команды, поскольку соединение устанавливается в дуплексном режиме.);
поддержки дейтаграмм (сообщений для группы абонентов сети).
Перечень команд и их краткое содержание приведены в нижеследующей таблице.
Табл.7.2.
Название команды |
Содержание команды |
Общие команды. |
|
RESET |
Сброс |
CANCEL |
Прервать |
ADAPTER STATUS |
Получить состояние адаптера |
Поддержка имен. |
|
ADD NAME |
Добавить имя |
ADD GROUP NAME |
Добавить групповое имя |
DELETE NAME |
Уничтожить имя |
Поддержка сеансов. |
|
CALL |
Вызвать |
LISTEN |
Ждать вызов |
HANG UP |
Закрыть |
SEND |
Передать |
CHAIN SEND |
Передать последовательность |
RECEIVE |
Принять |
RECEIVE ANY. |
Принять от любого |
SESSION STATUS. |
Получить состояние сеанса |
Поддержка дейтаграмм. |
|
SEND DATAGRAM. |
Передать дейтаграмму |
SEND BROADCAST DATAGRAM. |
Послать общую дейтаграмму |
RECEIVE DATAGRAM. |
Принять дейтаграмму |
RECEIVE BROADCAST DATAGRAM. |
Принять общую дейтаграмму |
Каждая команда любой категории (за исключением команд RESET и CANCEL) в свою очередь может различаться в зависимости от режима ее использования - "ожидание" или "неожидание". Режим "ожидание" означает, что, когда вы вызываете команду, процессор ждет ее завершения, прежде чем взять следующую. Режим "неожидание" означает, что процессор обращается к следующей команде сразу после запуска предыдущей и что команда прерывается по post-адресу, когда ее выполнение завершается.
Каждая приведенная в табл.7.2. команда имеет определенный номер, который в шестнадцатеричном коде записывается в соответствующее поле блока NCB. После выполнения команды в NCB формируются соответствующие коды возврата результатов.
Например, команда ADAPTER STATUS (получить состояние адаптера) имеет номер 33h, если требуется ожидание ее завершения, и B3h, если ожидание не нужно. Эта команда возвращает информацию о состоянии локального или удаленного адаптера, имя которого указано в поле NCB_CALLNAME. Информация размещается по указанному в NCB_BUFFER@ адресу буфера, а поле длины NCB_LENGTH показывает число байтов в полученном ответе.
Порядок использования функций NETBIOS состоит в следующем:
создается NCB с именем абонента в поле имени NCB_NAME и кодом команды ADD NAME,
вызывается NETBIOS через прерывание INT 5Ch,
посылаются данные абоненту используя сеанс, предварительно создав NCB для команды CALL, и вызывается INT 5Ch,
проверяется код возврата в регистре AL, когда команда завершается,
формируются команды передачи или чтения,
передача (или прием) данных завершается командой HANG UP.
Для передаваемых и принимаемых данных выделяется буфер, параметры которого указываются в NCB.