Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Проектування, реалізація і тестування мережевого програми, що реалізує гру "Двадцять одне"

Реферат Проектування, реалізація і тестування мережевого програми, що реалізує гру "Двадцять одне"





новий сокет і повертає його дескриптор. Параметр sockfd задає слухає сокет. Після виклику він залишається в слухаючому стані і може приймати інші сполуки. У структуру, на яку посилається addr, записується адреса сокета клієнта, який встановив з'єднання з сервером. У змінну, адресуемую покажчиком addrlen, спочатку записується розмір структури; функція accept записує туди довжину, яка реально була використана. p align="justify"> На стороні клієнта для встановлення з'єднання використовується функція connect, яка має наступний прототип.


int connect (int sockfd, struct sockaddr * serv_addr, int addrlen);


Тут sockfd - сокет, який буде використовуватися для обміну даними з сервером, serv_addr містить покажчик на структуру з адресою сервера, а addrlen - довжину цієї структури. p align="justify"> Після того як з'єднання встановлено, можна починати обмін даними. Для цього використовуються функції send і recv. p align="justify"> Функція send використовується для відправки даних і має наступний прототип


int send (int sockfd, const void * msg, int len, int flags);


Тут sockfd - це дескриптор сокета, через який відправляються дані, msg - покажчик на буфер з даними, len - довжина буфера в байтах, а flags - набір бітових прапорів, керуючих роботою функції (якщо прапори не використовуються , передається 0). p align="justify"> Для читання даних з сокета використовується функція


int recv (int sockfd, void * buf, int len, int flags);


Її використання аналогічно send. За аналогією з send функція recv повертає кількість прочитаних байтів, яке може бути менше розміру буфера. Існує особливий випадок, при якому recv повертає 0. Це означає, що з'єднання було розірвано. p align="justify"> Закінчивши обмін даними, необхідно закрити сокет за допомогою функції close. Це призведе до розриву з'єднання і звільненню пам'яті ядра операційної системи, зайнятої даними сокетом. br/>

int closesocket (int fd)

2.2 Запуск програми на виконання у вигляді служби операційної системи Windows


Серверні процеси в операційній системі Windows реалізуються у вигляді сервісів - програмних модулів особливої вЂ‹вЂ‹структури, завдяки якій стає можливим керувати цими програмними модулями ззовні за допомогою менеджера сервісів.

Така підсистема сервісів дозволяє легко встановлювати, запускати, припиняти і завершувати роботу сервісів, централізовано встановлювати залежності між різними службами, черговість їх запуску і так далі.

Кожен сервіс реалізується на базі будь-якого виконуваного файлу. Тому в рамках даної курсової роботи представляється оптимальним розробити виконуваний файл, що містить серверну частину гри мережевий "двадцять один", який при необхідності ...


Назад | сторінка 4 з 9 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка програми, що реалізує алгоритм, який використовує z-буфер
  • Реферат на тему: Модулятор віконного скла, який використовується з метою запобігання витоку ...
  • Реферат на тему: Обмін даними
  • Реферат на тему: Проектування бази даних для упорядкування та зручної роботи з даними мережі ...
  • Реферат на тему: Особливості сюжету повісті і функція її заголовка (І.С. Тургенєв "Післ ...