Код процесса-клиента
Код процесса-клиента
Как было сказано, клиент открывает файл (функция open()), после чего использует MsgSend(), отсылая сообщения и получая ответы.
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/neutrino.h>
#include <sys/iomsg.h>
#include <locale.h>
#include <string.h>
#include "/home/ZZZ/TESTS/MR/MessTest.h"
int main() {
int fdRM; // Дескриптор соединения с менеджером ресурсов
char BufferSend[MESSIZE_MAX], BufferReply[MESSIZE_MAX];
setlocale(LC_CTYPE, "C-TRADITIONAL");
if (fdRM = open(strcat(strcpy(BufferSend, NET_REG),
"/dev/MESSTEST/RM"), O_RDWR)) == -1)) {
printf("Клиент не нашел имени менеджера! ");
fflush(stdout);
return(-1);
}
/* Заполнение заголовка - первых 4-х байт сообщения, содержащего
инвентаризационную метку данного процесса (описаны в "IRL32.h") */
((int *)(BufferSend))[0] = 0x5002;
/* Заполнение сообщения */
strcpy(BufferSend + 4, "Так вот ты какой, Менеджер Ресурсов!");
if (MsgSend(fdRM, BufferSend, 100, BufferReply, 100) == -1)
printf("Клиенту не удалось передать сообщение ");
else
printf("Клиент передал сообщение и получил <%s> ", BufferReply);
fflush(stdout);
close(fdRM);
return(0);
}
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
Балансировка на стороне клиента
Балансировка на стороне клиента Существует еще один подход для распределения нагрузки на серверы от современных веб-приложений, который не нуждается в дополнительном балансирующем оборудовании, и отказ одного из серверов происходит гораздо более незаметно для
Код процесса-клиента, использующего службу глобальных имен
Код процесса-клиента, использующего службу глобальных имен #include <stdio.h>#include <errno.h>#include <stdlib.h>#include <sys/dispatch.h>/* На сервер могут приходить и импульсы. Как минимум. */typedef struct _pulse msg_header_t;/* Структура сообщения состоит из заголовка и буфера наших данных */typedef struct _MsgBuf
Примеры эхо-клиента UDP
Примеры эхо-клиента UDP Приведем несколько примеров работы данного клиента, прежде чем рассматривать исходный код демона. Сначала посылаем дейтаграмму на IP-адрес, не связанный с Интернетом:freebsd % udpcli01 192.0.2.5 echohi theresocket timeoutand hellosocket timeoutМы считаем, что демон icmpd запущен, и ждем
30.2. Альтернативы для клиента TCP
30.2. Альтернативы для клиента TCP Мы уже обсуждали различные способы устройства клиентов, но стоит тем не менее еще раз обратить внимание на относительные достоинства и недостатки этих способов.1. В листинге 5.4 показан основной способ устройства клиента TCP. С этой
5.3.4. Конфигурирование клиента SSH
5.3.4. Конфигурирование клиента SSH Настройки SSH-клиента содержат еще меньше параметров. В файле /etc/ssh/ssh_config находятся глобальные настройки для всех пользователей в системе. Но вы можете для любого из них переопределить произвольный параметр в файле .ssh_config из директории
Использование клиента DHCP
Использование клиента DHCP Если в вашей локальной сети присутствует сервер DHCP, вы можете сконфигурировать систему Linux так, что компьютер будет автоматически получать у сервера IP-адрес, используя для этого клиентскую программу DHCP. Клиент DHCP ищет сервер DHCP, посылая в
8.6.2. Настройка клиента NFS
8.6.2. Настройка клиента NFS В предыдущем разделе было рассмотрено, как настроить сетевую файловую систему NFS. Теперь давайте рассмотрим как можно подмонтировать имеющуюся сетевую файловую систему к какому-либо клиенту. Напоминаю, что если на предполагаемом NFS-клиенте не
13.2. Настройка клиента DNS
13.2. Настройка клиента DNS Разрешение имен на стороне DNS-клиента выполняет модуль распознавания (резолвер). В ОС Linux он представляет собой набор библиотечных функций. Конфигурационным файлом распознавателя служит /etc/resolv.conf, содержащий список DNS-серверов (от 1 до 3), которым
12.2.2. Выбор почтового клиента
12.2.2. Выбор почтового клиента Теперь перейдем к открытым почтовым клиентам. Если честно, то я вижу пока только один серьезный OpenSource-проект: Mozilla Thunderbird (http://www.mozilla.org/thunderbird/). Так что, выбрав эту программу, вы не будете обделены. Лично мне она больше нравится, чем Windows Live Mail.
7.3.2. Концепции, касающиеся основных средств производственного процесса организации Основные средства производственного процесса организации (ППО)
7.3.2. Концепции, касающиеся основных средств производственного процесса организации Основные средства производственного процесса организации (ППО) Организация устанавливает и сопровождает набор основных средств производственного процесса, как показано на рис. 4.1. К
Атака на telnet-клиента
Атака на telnet-клиента O В этой главе:O Атака на штатного клиента Windows 95 (Windows 98)O Использование ANSI драйвера для атакиO Атака rlogin клиента лавиной срочной данныхТочно как и сервера, telnet-клиенты подвержены угрозе срыва стека. В частности, telnet-клиент, входящий в состав Windows 95, Windows 98
Набор символов клиента
Набор символов клиента Что по-настоящему имеет значение в отношении наборов символов - это взаимодействие между сервером и клиентом. Клиентская библиотека Firebird должна передавать атрибут набора символов как часть параметров запроса на соединение.Если сервер