Сетевое программное обеспечение.
Основным элементом сетевого программного обеспечения служит 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.
- Введение.
- Общие принципы построения эвм и вычислительных систем.
- 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. Спутниковые навигационные системы.
- Литература.