Сервер>Веб-страница; Сервер>Клиент

Тема в разделе "WASM.NETWORKS", создана пользователем Zhelezka, 20 ноя 2008.

  1. Zhelezka

    Zhelezka New Member

    Публикаций:
    0
    Регистрация:
    21 июл 2008
    Сообщения:
    103
    1:
    Какие есть полные книжки по работе с сетью.
    Что-бы в них было описано как можно больше и как можно глубже.
    2:
    Как создать приложение сервер, и приложение клиент и работать с ними без использования DirectPlay, WinSock и т. д..
    3:
    Как создать сервер веб-сайта без использования DirectPlay, WinSock и т. д..
     
  2. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Продолжу цепочку, без использования операционной системы, без сети, без компутера.
     
  3. Exp10der

    Exp10der Мастер дзена

    Публикаций:
    0
    Регистрация:
    27 авг 2007
    Сообщения:
    337
    Адрес:
    Красноярск
    чем тебя сокеты не устраивают?.. или может хочешь драйвер сетвевой карты ещё свой написать, да и вообще веб-сервер в ring0 ?
     
  4. Proteus

    Proteus Member

    Публикаций:
    0
    Регистрация:
    19 июн 2004
    Сообщения:
    344
    Адрес:
    Russia
    Протоколы TCP/IP (У. Ричард Стивенс)
    UNIX разработка сетевых приложений (Уильям Стивенс)
     
  5. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Ядерный Http сервер, крутатень.
     
  6. Proteus

    Proteus Member

    Публикаций:
    0
    Регистрация:
    19 июн 2004
    Сообщения:
    344
    Адрес:
    Russia
    В формулировку вслушайся. Она такая хитрая))) Может его сокеты устраивают, а Winsock нет)))))
     
  7. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Proteus
    А Winsock это не сокеты?
     
  8. Zhelezka

    Zhelezka New Member

    Публикаций:
    0
    Регистрация:
    21 июл 2008
    Сообщения:
    103
    Я в смысле без лишнего. Только то что нужно. Хорошо-бы и побыстрее.
    Если сокеты, так сокеты.
     
  9. Proteus

    Proteus Member

    Публикаций:
    0
    Регистрация:
    19 июн 2004
    Сообщения:
    344
    Адрес:
    Russia
    Неее)) Есть сокеты, которые в винде сокеты, в юниксе сокеты, и в африке тоже....
    Есть какие-то ипанутые функци в приставкой WSA - во многом изратные и часто бестолковые)))
    Иногда можно пользоваться но в целом часто внушают отвращение...
     
  10. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Proteus
    А куда ты в винде без WSA?
     
  11. Proteus

    Proteus Member

    Публикаций:
    0
    Регистрация:
    19 июн 2004
    Сообщения:
    344
    Адрес:
    Russia
    Без WSAStartup некуда ваще пойти не могу =))))
    А всё остальне только лишние параметры и подводные камни, которыми пользоваться в итоге становиться невыгодно.
    Писать сетки лучше всего так же как ты их Unix пишешь, остальное кривые дороги)))
     
  12. Zhelezka

    Zhelezka New Member

    Публикаций:
    0
    Регистрация:
    21 июл 2008
    Сообщения:
    103
    А как в fasm работать с этим, есть-ли где-нибудь какие-нибуть библиотеки.
    Вот например код на Си, как тоже самое реализовать на fasm.
    Уильям Стивенс UNIX разработка сетевых приложений : 1.2 Простой клиент времени и даты :
    Код (Text):
    1. #include    "unp.h"
    2.  
    3. int
    4. main(int argc, char **argv)
    5. {
    6.     int                 sockfd, n, counter = 0;
    7.     char                recvline[MAXLINE + 1];
    8.     struct sockaddr_in  servaddr;
    9.  
    10.     if (argc != 2)
    11.         err_quit("usage: a.out <IPaddress>");
    12.  
    13.     if ( (sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0)
    14.         err_sys("socket error");
    15.  
    16.     bzero(&servaddr, sizeof(servaddr));
    17.     servaddr.sin_family = AF_INET;
    18.     servaddr.sin_port   = htons(13);    /* daytime server */
    19.     if (inet_pton(AF_INET, argv[1], &servaddr.sin_addr) <= 0)
    20.         err_quit("inet_pton error for %s", argv[1]);
    21.  
    22.     if (connect(sockfd, (SA *) &servaddr, sizeof(servaddr)) < 0)
    23.         err_sys("connect error");
    24.  
    25.     while ( (n = read(sockfd, recvline, MAXLINE)) > 0) {
    26.         counter++;
    27.         recvline[n] = 0;    /* null terminate */
    28.         if (fputs(recvline, stdout) == EOF)
    29.             err_sys("fputs error");
    30.     }
    31.     if (n < 0)
    32.         err_sys("read error");
    33.  
    34.     printf("counter = %d\n", counter);
    35.     exit(0);
    36. }
     
  13. Proteus

    Proteus Member

    Публикаций:
    0
    Регистрация:
    19 июн 2004
    Сообщения:
    344
    Адрес:
    Russia
    Точно так же помойму. Тот же read и connect, только на fasm (WSOCK32.INC ). Юниксовых функций конешно у винды нигде нет. Но общего очень очень много. Помучатся наверное придётся по началу, но между асмом и Си никакой разницы. Учиться лучше на Си...

    И книуг эту сильно не зачитывай. Стивенсон местами загоняется...
     
  14. osrootd

    osrootd New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2008
    Сообщения:
    1.086
    Уже есть. Tux HTTP Server. Вернее, драйвер сервера, если так уместно выражаться, слушает порт 80. Поддерживает CGI:) CGI - драйверы, написанные особым образом. После устанвки сервера появляется новое устройство: TUX CGI Device.
    BSD сокеты они называются:)
    1. syscall
    2. Юзать sf.net, где в поиске забить FASM. Он тебе даст ссылку на библиотеку с макросами.