3 3.1 LAN ISDN (IP) 2 TCP/UDP IP IP IP IP (Ethernet) Ethernet LAN TCP/UDP LAN Ethernet LAN 2: Ethernet ATM, FDDI, LAN IP IP IP 3 IP 2 IP IP IP IP IP 3

Size: px
Start display at page:

Download "3 3.1 LAN ISDN (IP) 2 TCP/UDP IP IP IP IP (Ethernet) Ethernet LAN TCP/UDP LAN Ethernet LAN 2: Ethernet ATM, FDDI, LAN IP IP IP 3 IP 2 IP IP IP IP IP 3"

Transcription

1 IP 1 (IP) TCP/IP LAN IP C IP HUB 100Base-TX 100Mbps UTP Ethernet HUB : 6 1

2 3 3.1 LAN ISDN (IP) 2 TCP/UDP IP IP IP IP (Ethernet) Ethernet LAN TCP/UDP LAN Ethernet LAN 2: Ethernet ATM, FDDI, LAN IP IP IP 3 IP 2 IP IP IP IP IP 3: IP IP IP TCP ( Transmission Control Protocol) UDP(User Datagram Protocol) 6 2

3 IP IP IP WWW Telnet, FTP WWW (1) (2) (3) (4) (5) 3.2 TCP UDP TCP, WWW TCP UDP UDP TCP UDP 4: TCP UDP 3 4 WWW POP(Post Office Protocol) TCP UDP IP IP TCP 6 3

4 UDP IP IP IP TCP UDP UDP IP TCP UDP OS IP TCP UDP UNIX WWW UNIX Windows OS Visual C++ UNIX C UNIX C C TCP UDP C 4 C 2 (1) 6 4

5 TCP UDP Server Side Client Side Server Side Client Side socket socket socket socket bind bind bind bind listen accept connect send/recv connect send/recv send/recv send/recv close close close close 5: TCP/UDP D:Y 2Y [ ] [AM or PM] 9 26 D:Y 2Y 0926AM (2) Visual C++ Visual C++ Microsoft Visual C () [] [ ] Win32 Console Application D:Y 2Y 0926AM server1 OK OK [] [] C++ server1.c OK server1.c Microsoft Visual C++ 6.0client1 client1.c (3) Visual C++ OS [ ] / 6 5

6 wsock32.lib server1,client1 (4) 1 UDP server1.c, client1.c TCP server2.c client2.c 2 5 UDP UDP server1.c, client1.c, Visual C++ // / / /* */ [] (1) IP IP (2) server1.exe (3) clent1.exe server1.exe (4) IP 6 6

7 Example 1: server1.c #include <stdio.h> #include <winsock.h> //Windows char message[1024]; main() { int sock; struct sockaddr_in sinme; short port=10001; // 2 WindowsOS :socket DLL WSADATA wsadata; WSAStartup(MAKEWORD(1, 1), &wsadata); // sinme.sin_family = AF_INET; sinme.sin_port = htons(port); // sinme.sin_addr.s_addr = htonl(inaddr_any);// // UDP sock=socket(af_inet, SOCK_DGRAM, 0 ); // bind(sock, (struct sockaddr *)&sinme, sizeof(sinme)); printf("waiting for UDP Data from Client.\n"); // recv(sock, message, 1024,0); printf("received Message=%s\n",message); 6 7

8 Example 1: client1.c #include <stdio.h> #include <winsock.h>//windows char message[1024]; main() { int sock; struct sockaddr_in sinhim; short port=10001; char *IPaddress=" "; // 2 WindowsOS :socket DLL WSADATA wsadata; WSAStartup(MAKEWORD(1, 1), &wsadata); // sinhim.sin_family = AF_INET; sinhim.sin_port = htons(port);// sinhim.sin_addr.s_addr = inet_addr(ipaddress);// // UDP sock=socket(af_inet, SOCK_DGRAM, 0 ); //UDP connect(sock, (struct sockaddr*)&sinhim, sizeof(struct sockaddr_in) ); printf("input Message:"); gets(message); //message send(sock, message, strlen(message)+1,0); 6 8

9 6 TCP TCP server2.c, client2.c, UDP UDP server2.c, client2.c [] (1) IP IP (2) server1.exe (3) clent1.exe server1.exe (4) IP 6 9

10 Example 2: server2.c #include <stdio.h> #include <io.h> #include <winsock.h> //Windows char message[1024]; main() { int sock, sock2; struct sockaddr_in sinme; struct sockaddr_in from; int len=sizeof(from); int one=1; short port=10001; // 2 WindowsOS socket DLL WSADATA wsadata; WSAStartup(MAKEWORD(1, 1), &wsadata); // sinme.sin_family = AF_INET; sinme.sin_port = htons(port); // sinme.sin_addr.s_addr = htonl(inaddr_any);// // TCP sock=socket(af_inet, SOCK_STREAM, 0 ); // if(bind(sock, (struct sockaddr *)&sinme, sizeof(sinme)) <0) printf("can t bind.\n"); listen(sock,somaxconn); // printf("waiting for Connection Request.\n"); sock2=accept(sock, (struct sockaddr *)&from, &len); if(sock2 < 0 ){ printf("can t accepted.\n"); exit(0); else{ printf("connected from %s.\n",inet_ntoa(from.sin_addr)); // recv(sock2, message, 1024,0); printf("received Message=%s\n",message); close(sock);// 6 10

11 Example 2: client2.c #include <stdio.h> #include <io.h> #include <winsock.h>//windows char message[1024]; main() { int sock; struct sockaddr_in sinhim; short port=10001; char *IPaddress=" "; // 2 WindowsOS :socket DLL WSADATA wsadata; WSAStartup(MAKEWORD(1, 1), &wsadata); // sinhim.sin_family = AF_INET; sinhim.sin_port = htons(port);// sinhim.sin_addr.s_addr = inet_addr(ipaddress);// // TCP sock=socket(af_inet, SOCK_STREAM, 0 ); // if(connect(sock,(struct sockaddr *)&sinhim, sizeof(sinhim) ) < 0 ) printf("can t connect.\n"); else printf("connected.\n"); // printf("input Message:"); gets(message); //message send(sock, message, strlen(message)+1,0); close(sock);// 6 11

12 7 1 UDP TCP 1. server client UDP, TCP client MB 1024 send,recv TCP (1) 1024 memset(message, a, 1024); memset message 1024 () a (2) TCP recv() 1024 send server 1024 recv recv 1024 recv total=0; while(1){ rc=recv(sock2, message, 1024,0 ); if(rc > 0) total=total+rc; if(total == 1024 * ) break; (3) Windows GetTickCount() t=gettickcount(); int t [msec] 6 12

13 1. UDP (TCP ) UDP LAN IP UDP UDP server1.c int one=1; server1.c bind setsockopt(sock, SOL_SOCKET, SO_BROADCAST, (char *)&one, sizeof(one)); client1.c

14 8 2 UDP, TCP G or C or P 3. (TCP ) listen listen(sock,0); while(1){ printf("waiting for Connection Request.\n"); sock2=accept(sock, (struct sockaddr *)&from, &len); close(sock2); 9 IP TCP UDP 6 14

15 C char c; c= A ; 5 (1 1 ). char message[5]; 5 [0] [1] [2] [3] [4] 1 message[0] message char *message; * Y0 ( :0), c i s t Y0 a b c Y0 any.... char *message="my Name is CIST."; char message[]="my Name is CIST."; 6 15

16 gets/puts 1 / gets( char *string ) / puts( const char *string) gets: string 1 /puts: char message[10]; gets(message); message 10 fgets() strlen strlen( char *string ) string sizeof length=strlen(message); message c i s t Y0 length a b Y0 any any 2 sizeof( type ) ( ) char message[10]; sizeof(int) //= 4 [byte] sizeof(message) //=10 [byte] sizeof(double) //=8 [byte] 1 4, 10, 8 int double CPU OS 6 16

17 strcpy strcpy( char *dest, const char *src ) src dest char message1[20]; char message2[20]; strcpy(message1, "System Jikken");// -->ex1 strcpy(message2, message1); // -->ex2 strcat ex1 message1 S y s t e m J i k k e n Y0... ex2 message2 strcat( char *dest, const char *src ) src dest char message1[20]; char message2[20]; char message3[]="cist"; strcpy(message1, "System"); strcat(message1, " Jikken"); strcat(message1, message3); message3 S y s t e m J i k k e n C I S T Y0... strcmp int strcmp( char *string1, char *string2 ) string1 string2 =0 char message1[]="cist"; char message2[]="abcd; char message3[]="cist"; if(strcmp(message1,message2) == 0 ) printf("same String\n"); // ex1 if(strcmp(message1,"cist") == 0 ) printf("same String\n"); // ex2 if(strcmp(message1,message3) == 0 ) printf("same String\n"); // ex3 1 ex1 printf ex2 ex3 6 17

18 memcpy memcpy( void *dest, void *src, size ) src size dest memcpy(message2, message1, sizeof(message1) ); message1 message2 memset memset( void *dest, int c, size ) src size c atoi memset(message, A, sizeof(message) ); message A 2 memset(message, 0, sizeof(message) ); message Y0 atoi( char *dest ) 1234 int a,b; char string[]="10001"; a=atoi("123"); // a=123 b=atoi(string); // b=10001 sprintf sprintf( char *dest, ) printf sprintf int a=5; double f=0.1; char string[100]; char mes[]="message"; sprintf(string, "My Name is CIST."); sprintf(string, "Answer: a=%d", a); sprintf(string, "Answer: f=%f", f); sprintf(string, "Message=%s", mes ); // %s printf 6 18

19 . socket socket( int type, int socket type int protocol ) type AF INET socket type UDP SOCK DGRAM, TCP SOCK STREAM. protocol 0 ID( descriptor) int sock; sock=socket(af_inet, SOCK_DGRAM, 0); // UDP sock=socket(af_inet, SOCK_STREAM, 0); // TCP bind bind( int sock, struct sockaddr *myaddr size ) myaddr struct sockaddr_in addr; short port=11111; addr.sin_family = AF_INET; addr.sin_port = htons(port); addr.sin_addr.s_addr = htonl(inaddr_any); sock=socket(af_inet, SOCK_STREAM, 0 ); if(bind(sock, (struct sockaddr *)&addr, sizeof(addr)) <0) printf("can t bind.\n"); listen listen( int sock, int backlog ) TCP backlog SOMAXCONN accept listen(sock, SOMAXCONN); 6 19

20 accept int accept(int sock, struct sockaddr *addr, socklen t *addrlen) TCP addr struct sockaddr_in from; int len=sizeof(from); sock2=accept(sock, (struct sockaddr *)&from, &len); recv/send accept sock2 connect connect(int sock, struct sockaddr *serv addr, socklen t addrlen) serv addr UDP send/recv serv addr : TCP struct sockaddr_in srv_addr; short port=10001; char *IPaddress=" "; srv_addr.sin_family = AF_INET; srv_addr.sin_port = htons(port);// srv_addr.sin_addr.s_addr = inet_addr(ipaddress);// IP sock=socket(af_inet, SOCK_STREAM, 0 ); if(connect(sock,(struct sockaddr *)&srv_addr, sizeof(srv_addr) ) < 0 ) printf("can t connect.\n"); else printf("connected.\n"); send/recv send(int sock, void *buf, size t size, int flags ) recv(int sock, void *buf, size t size, int flags ) TCP UDP send buf size recv: buf send recv char message[]="cist"; char buf[256]; send(sock, message, strlen(message), 0 ); recv(sock, buf, 256, 0); recv size size setsockopt getsockopt / 6 20

21 for for( 1; 2; 3) for(i=0; i< 10; i++){ ( 1) i=0 1 i++i++ i=i+1 i i for(;;){ ( 2) break (break ). 6 21

22 while while( 1) 1 1 () i=0; while( i< 10 ){ ( 1) i++; i=0 1 i i++ 2 i 10 for while(1){ ( 2) for(;;) break (break ). 6 22

23 do while do { 1 while( 1) () i=0; do{ ( 1) i++; while( i < 100 ); 1 i 100 do{ break break; do, for, while, switch while(1){ ( 1) if( value == 0) break; value 0 (if ), continue continue; do, for, while while(1){ 1 if( value == 0) continue; 2; value

24 if if( 1){ ( 1) else{ ( 2) if(i==1){ ( 1) else{ ( 2) i 1 1 (== ) 2 2 if(i==1){ ( 1) else 3 if( i>=0 && i<=5 ){ ( 1) && i =0 i =5 AND 4 if( i!=0 i!=5 ){ ( 1) i!=0 i!=5 OR!= 5 if( i<5 ){ ( 1) else if( i<10 ){ ( 2) else{ ( 3) else if i 5 1 else if i

25 switch, case switch( 1 ){ case 1: 1 (break;) case 2: 2 (break;) default: 3 1 default case case break switch 1 if switch switch( value ){ case 0: 1; break; case 1: 2; break; case 2: 3 break; default: 4; value switch 6 25

26 goto goto ; goto my_func(){ if(i == 1) goto label1; i=i+3; label1: i=j+2; if label1: switch continue, return{ goto goto 6 26

27 == = = = 1== 2 1 = 2 2 True, False if while if( i==1 ) i=i+1; if( j<=1 ) j=j+1; if( k>=1 ) k=k+1; if( m!=1 ) m=m+1; if( n <1 ) n=n+2; if( i=1 ) break; === i=1 i=1 break , --, i=0; j=0; i++; j--; val=++i; val=i++; ++(- -) val=++i; val i i=i+1 val=i++; i val i=i

28 && AND OR 1&& 2, 1 2 &&: 1 2 : 1 2 if( a==1 && b==1 && c==1) i=10; if( x==1 y==1 z==1 ) i=0; & AND OR ˆ OR 1& 2, 1 2 a1=0x00ff; a2=0xff00; a3= a1 & a2; // a3=0x0000 a4= a1 a2; // a4=0xffff 2 a1 a2 AND OR 2 a1=0x01; a2=0x10; a3= a1<<1; // a3=0x02 a4= a2>>1; // a4=0x08 2 a1 a2 6 28

29 rand() srand() rand(), srand( seed value ) seed value value=rand(); value rand() rand() srand() 2 srand( time(null) ); value=rand(); 6 29

30 printf() printf(...,...) printf: 1 printf("my Name is CIST.\n");... \ n 2 i=100; printf("answer= %d \n", i); %d i %d 3 value=0.1234; printf("answer= %f \n", value); %f value %f 4 i=10; value=0.1234; printf("answer= %d, Value = %f \n", i, value); Answer = 10, Value =

演算増幅器

演算増幅器 ネットワークプログラミング ( 教科書 p.247-312) これまでに作成したプログラムは 1 台のコンピュータ上で動作するものだった 本日はネットワーク上の別のコンピュータで実行しているプログラムと通信をしながら動作するプログラムの作成方法について学ぶ ネットワークプログラミングを高度に使いこなすためには 関連する知識は幅広く求められる 本日からの学習では単純なチャット ( 会話 ) を行うプログラムを題材として

More information

TCP UDP TCP UDP send()sendto()sendmsg() recv()recvfrom()recvmsg() OS Passive Active TCP UDP IP TCP UDP MTAMail Transf

TCP UDP TCP UDP send()sendto()sendmsg() recv()recvfrom()recvmsg() OS Passive Active TCP UDP IP TCP UDP MTAMail Transf 3 -- 7 2011 2 TCPUDP APIApplication Programming Interface BSD UNIX C System V UNIX XTIX /Open Transport Interface XTI TCP/IP ISO OSI XTI TCP/IP OSI TCP UDP API API API API UNIX Windows 7-1 TCP UDP 7-2

More information

Makefile, TCPソケットサーバ, コマンドライン引数

Makefile, TCPソケットサーバ, コマンドライン引数 L11(2017-12-12 Tue) : Time-stamp: 2017-12-22 Fri 12:28 JST hig ( ) make http://hig3.net L11 (2017) 1 / 24 I, void die(char message) void die(char message[])... 1 #i n c l u d e 2 / / 3 double

More information

目次 1. DB 更新情報受信 SW 仕様書 構成および機能 全体の構成 DB 更新情報受信 SW の機能 ソフトウェアの設計仕様 DB 更新情報受信 SW の仕様 資料編... 5

目次 1. DB 更新情報受信 SW 仕様書 構成および機能 全体の構成 DB 更新情報受信 SW の機能 ソフトウェアの設計仕様 DB 更新情報受信 SW の仕様 資料編... 5 書類トレースシステム DigiTANAlog メインサーバマシン DB 更新情報受信 SW 仕様書 Create on 良知洋志 (RACHI, Hiroshi) Date: 2006/02/08 Last Update: 2006/02/15 目次 1. DB 更新情報受信 SW 仕様書... 2 1-1. 構成および機能...2 1-1-1. 全体の構成...2 1-1-2. DB 更新情報受信

More information

IP L09( Tue) : Time-stamp: Tue 14:52 JST hig TCP/IP. IP,,,. ( ) L09 IP (2017) 1 / 28

IP L09( Tue) : Time-stamp: Tue 14:52 JST hig TCP/IP. IP,,,. ( )   L09 IP (2017) 1 / 28 L09(2017-11-21 Tue) : Time-stamp: 2017-11-21 Tue 14:52 JST hig TCP/IP. IP,,,. http://hig3.net L09 (2017) 1 / 28 9, IP, - L09 (2017) 2 / 28 C (ex. ) 1 TCP/IP 2 3 ( ) ( L09 (2017) 3 / 28 50+5, ( )50+5. (

More information

main main Makefile Makefile C.5 Makefile Makefile Makefile A Mech (TA ) 1. Web (http://www.jsk.t.u-tokyo.ac.jp/ iku

main main Makefile Makefile C.5 Makefile Makefile Makefile A Mech (TA ) 1. Web (http://www.jsk.t.u-tokyo.ac.jp/ iku 2008 (mizuuchi@i.u-tokyo.ac.jp) http://www.jsk.t.u-tokyo.ac.jp/ http://www.jsk.t.u-tokyo.ac.jp/ ikuo/enshu/keisanki/ 2008 5 19 6 24 1 2 2.1 my_sound.c, my_sounc.h, play.c, record.c 2 2. 2.2 2.2.1 main

More information

エラー処理・分割コンパイル・コマンドライン引数

エラー処理・分割コンパイル・コマンドライン引数 L10(2017-12-05 Tue) : Time-stamp: 2017-12-17 Sun 11:59 JST hig. recv/send http://hig3.net ( ) L10 (2017) 1 / 21 IP I swallow.math.ryukoku.ac.jp:13 = 133.83.83.6:13 = : IP ( = ) (well-known ports), :. :,.

More information

jikken.dvi

jikken.dvi 1 1 PI 2 1 2 ( 1) H8-Tiny H8/3672 HD64F3672FP 16 CPU ( 16MHz) ROM 16KB, RAM 2048 2KB AD LED 1(c) ( A ) 赤外 LED 前 CdS セル LED 表示 RS232C 端子 (PC との接続端子 ) センサ類 ラインセンサ x3 (LED+CdS セル ) モータドライバ ターゲット Start ボタン

More information

untitled

untitled RPC (( Remote Procedure Call (RPC: Message-Oriented Middleware (MOM) data-streaming =(protocol) A B A B Connection protocol = connection oriented protocol TCP (Transmission Control Protocol) connectionless

More information

DA100データアクイジションユニット通信インタフェースユーザーズマニュアル

DA100データアクイジションユニット通信インタフェースユーザーズマニュアル Instruction Manual Disk No. RE01 6th Edition: November 1999 (YK) All Rights Reserved, Copyright 1996 Yokogawa Electric Corporation 801234567 9 ABCDEF 1 2 3 4 1 2 3 4 1 2 3 4 1 2

More information

1 telnet WWW 1.1 telnet WWW URL html 1.2 URL 1 % telnet 80 Trying 2001:2f8:1c:d048::850d: telnet: c

1 telnet WWW 1.1 telnet WWW URL html 1.2 URL 1   % telnet   80 Trying 2001:2f8:1c:d048::850d: telnet: c 2 065708F 2007 12 20 1 1 telnet WWW 1.1 telnet WWW URL html 1.2 URL 1 www.ie.u-ryukyu.ac.jp % telnet www.ie.u-ryukyu.ac.jp 80 Trying 2001:2f8:1c:d048::850d:3008... telnet: connect to address 2001:2f8:1c:d048::850d:3008:

More information

‚æ4›ñ

‚æ4›ñ ( ) ( ) ( ) A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 (OUS) 9 26 1 / 28 ( ) ( ) ( ) A B C D Z a b c d z 0 1 2 9 (OUS) 9

More information

:30 12:00 I. I VI II. III. IV. a d V. VI

:30 12:00 I. I VI II. III. IV. a d V. VI 2018 2018 08 02 10:30 12:00 I. I VI II. III. IV. a d V. VI. 80 100 60 1 I. Backus-Naur BNF N N y N x N xy yx : yxxyxy N N x, y N (parse tree) (1) yxyyx (2) xyxyxy (3) yxxyxyy (4) yxxxyxxy N y N x N yx

More information

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() malloc 2 #include <stdio.h> #include

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() malloc 2 #include <stdio.h> #include 1 1.1 C 2 1 double a[ ][ ]; 1 3x3 0 1 3x3 ( ) 0.240 0.143 0.339 0.191 0.341 0.477 0.412 0.003 0.921 1.2 malloc() malloc 2 #include #include #include enum LENGTH = 10 ; int

More information

untitled

untitled II yacc 005 : 1, 1 1 1 %{ int lineno=0; 3 int wordno=0; 4 int charno=0; 5 6 %} 7 8 %% 9 [ \t]+ { charno+=strlen(yytext); } 10 "\n" { lineno++; charno++; } 11 [^ \t\n]+ { wordno++; charno+=strlen(yytext);}

More information

【注意事項】RXファミリ 組み込み用TCP/IP M3S-T4-Tiny

【注意事項】RXファミリ 組み込み用TCP/IP M3S-T4-Tiny 注意事項 RX ファミリ組み込み用 TCP/IP M3S-T4-Tiny R20TS0227JJ0100 Rev.1.00 号 概要 RX ファミリ組み込み用 TCP/IP M3S-T4-Tiny ( 注 ) の使用上の注意事項を連絡します 1. Ping Reply パケットに関する注意事項 2. LAN ネットワーク環境に関する注意事項 3. select() 関数のタイムアウト設定値に関する注意事項

More information

ARM gcc Kunihiko IMAI 2009 1 11 ARM gcc 1 2 2 2 3 3 4 3 4.1................................. 3 4.2............................................ 4 4.3........................................

More information

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() 2 double *a[ ]; double 1 malloc() dou

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() 2 double *a[ ]; double 1 malloc() dou 1 1.1 C 2 1 double a[ ][ ]; 1 3x3 0 1 3x3 ( ) 0.240 0.143 0.339 0.191 0.341 0.477 0.412 0.003 0.921 1.2 malloc() 2 double *a[ ]; double 1 malloc() double 1 malloc() free() 3 #include #include

More information

解きながら学ぶC++入門編

解きながら学ぶC++入門編 !... 38!=... 35 "... 112 " "... 311 " "... 4, 264 #... 371 #define... 126, 371 #endif... 369 #if... 369 #ifndef... 369 #include... 3, 311 #undef... 371 %... 17, 18 %=... 85 &... 222 &... 203 &&... 40 &=...

More information

C ( ) C ( ) C C C C C 1 Fortran Character*72 name Integer age Real income 3 1 C mandata mandata ( ) name age income mandata ( ) mandat

C ( ) C ( ) C C C C C 1 Fortran Character*72 name Integer age Real income 3 1 C mandata mandata ( ) name age income mandata ( ) mandat C () 14 5 23 C () C C C C C 1 Fortran Character*72 name Integer age Real income 3 1 C 1.1 3 7 mandata mandata () name age income mandata () mandata1 1 #include struct mandata char name[51];

More information

1) // 2) I/O 3) Japan Advanced Institute of Science and Technology 2013/07/26 1

1) // 2) I/O 3) Japan Advanced Institute of Science and Technology 2013/07/26 1 I441 2013/07/26 Dependable Network Innovation Center, Japan Advanced Institute of Science and Technology 1) // 2) I/O 3) Japan Advanced Institute of Science and Technology 2013/07/26 1 1) Comer: Internetworking

More information

I. Backus-Naur BNF S + S S * S S x S +, *, x BNF S (parse tree) : * x + x x S * S x + S S S x x (1) * x x * x (2) * + x x x (3) + x * x + x x (4) * *

I. Backus-Naur BNF S + S S * S S x S +, *, x BNF S (parse tree) : * x + x x S * S x + S S S x x (1) * x x * x (2) * + x x x (3) + x * x + x x (4) * * 2015 2015 07 30 10:30 12:00 I. I VI II. III. IV. a d V. VI. 80 100 60 1 I. Backus-Naur BNF S + S S * S S x S +, *, x BNF S (parse tree) : * x + x x S * S x + S S S x x (1) * x x * x (2) * + x x x (3) +

More information

I. Backus-Naur BNF : N N 0 N N N N N N 0, 1 BNF N N 0 11 (parse tree) 11 (1) (2) (3) (4) II. 0(0 101)* (

I. Backus-Naur BNF : N N 0 N N N N N N 0, 1 BNF N N 0 11 (parse tree) 11 (1) (2) (3) (4) II. 0(0 101)* ( 2016 2016 07 28 10:30 12:00 I. I VI II. III. IV. a d V. VI. 80 100 60 1 I. Backus-Naur BNF : 11011 N N 0 N N 11 1001 N N N N 0, 1 BNF N N 0 11 (parse tree) 11 (1) 1100100 (2) 1111011 (3) 1110010 (4) 1001011

More information

r4.dvi

r4.dvi 16 4 2016.5.11 1 1.1 :? PC LAN Web?? ( ) [4] [5] my PC [2] congested service [1]? [3] 1: LAN LAN ( )[1] LAN ( ) PC ( )[2] Web ( )[3] ping ( ) ( )[4] SSL ( ) ( / / )[5] 1 1.2 (multiple layered-structure)

More information

Microsoft Word - C.....u.K...doc

Microsoft Word - C.....u.K...doc C uwêííôöðöõ Ð C ÔÖÐÖÕ ÐÊÉÌÊ C ÔÖÐÖÕÊ C ÔÖÐÖÕÊ Ç Ê Æ ~ if eíè ~ for ÒÑÒ ÌÆÊÉÉÊ ~ switch ÉeÍÈ ~ while ÒÑÒ ÊÍÍÔÖÐÖÕÊ ~ 1 C ÔÖÐÖÕ ÐÊÉÌÊ uê~ ÏÒÏÑ Ð ÓÏÖ CUI Ô ÑÊ ÏÒÏÑ ÔÖÐÖÕÎ d ÈÍÉÇÊ ÆÒ Ö ÒÐÑÒ ÊÔÎÏÖÎ d ÉÇÍÊ

More information

通信プログラムの試作ーーー UDP を用いたじゃんけんゲームシステム ーーーー裘彬濱 南山大学情報理工学部 ソフトウェア工学科青山研究室

通信プログラムの試作ーーー UDP を用いたじゃんけんゲームシステム ーーーー裘彬濱 南山大学情報理工学部 ソフトウェア工学科青山研究室 通信プログラムの試作ーーー UDP を用いたじゃんけんゲームシステム ーーーー裘彬濱 南山大学情報理工学部 ソフトウェア工学科青山研究室 1:UDP を用いたじゃんけんゲームシステムの概要 本システムは通信プロトコル UDP を用いた簡単なじゃんけんゲームシステムであり 単一のユーザ ( クライアント ) が参加し パソコン ( サーバ ) とじゃんけんゲームするシステムである 本システムはユーザがゲームに参加できる時間を制限しており

More information

演算増幅器

演算増幅器 ネットワークプログラミングの続き前回はチャットを行うプログラムを作成し ネットワークを利用したプログラミングの基本について学んだ 本日は 前回作成したプログラムを改良していく 具体的には 以下の2つの項目について習っていく ホスト名や IP アドレスの取得の方法 fork() システムコールを使い 子プロセスを作成する方法 チャットプログラムの改良 前回のプログラムを以下のように改良していく 太字部分が変更部分である

More information

実験 6 通信基礎実験 1 目的 ネットワークを通じてデータ転送を行うことを体験的に学ぶために 本実験ではT CP/IPプロトコルを使い ワークステーション間で通信を行うクライアントサーバモデルのプログラムを作成する 2 解説 1 ネットワークとプロトコルネットワーク ( コンピュータネットワーク

実験 6 通信基礎実験 1 目的 ネットワークを通じてデータ転送を行うことを体験的に学ぶために 本実験ではT CP/IPプロトコルを使い ワークステーション間で通信を行うクライアントサーバモデルのプログラムを作成する 2 解説 1 ネットワークとプロトコルネットワーク ( コンピュータネットワーク 実験 6 通信基礎実験 1 目的 ネットワークを通じてデータ転送を行うことを体験的に学ぶために 本実験ではT CP/IPプロトコルを使い ワークステーション間で通信を行うクライアントサーバモデルのプログラムを作成する 2 解説 1 ネットワークとプロトコルネットワーク ( コンピュータネットワーク ) とは2 台以上のコンピュータが何らかの線でつながったものである しかし 線で接続されているだけではコンピュータ間で通信を行うことが出来ず

More information

ネーミング(1)

ネーミング(1) ネーミング (1) 分散システム 2012 年 1 月 17 日 建部修見 ネーミング 資源の共有 実体の識別 位置の参照 名前の解決 (Name Resolution)= 参照している実体に解決 ネーミングシステム リソルバ (Resolver) 分散システムで利用される名前 ヒューマンフレンドリな名前 パス名 URL 位置に依存しない名前 ( フラットな名前 ) ハッシュ値 移動体の参照 属性で指定される名前

More information

Java演習(4) -- 変数と型 --

Java演習(4)   -- 変数と型 -- 50 20 20 5 (20, 20) O 50 100 150 200 250 300 350 x (reserved 50 100 y 50 20 20 5 (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics; (reserved public class Blocks1 extends

More information

I J

I J I 065763J 8 7 7 31 jikken/ +----- accumulation_demupa.c +----- accumulation_rain.c +----- frequency_demupa.c +----- frequency_rain.c +----- go.sh +----- graph_maker.sh +----- mesure-ryudai/ 2007/4/1 2007/6/30

More information

Page 1

Page 1 ... 1... 3... 4... 6 0100... 8 0102... 11 0103 FTP... 12 0105... 13 0109... 14... 15 0130... 16 0150 STD... 17 0154 TXT... 18 0170... 19 0180 1... 20 0190 2... 21 0196 3... 22 0200... 23 0300... 24 0500

More information

jikken.dvi

jikken.dvi I 1 ROM( ) RAM 1 2 2 ( 1) H8-Tiny H8/3672 HD64F3672FP 16 CPU ( 16MHz) ROM 16KB, RAM 2048 2KB AD LED 1(c) ( A ) 赤外 LED 前 CdS セル LED 表示 RS232C 端子 (PC との接続端子 ) センサ類 ラインセンサ x3 (LED+CdS セル ) モータドライバ ターゲット Start

More information

bitvisor-ipc v12b.key

bitvisor-ipc v12b.key PC PC OS PC PC 1 1 2 101 101 enum tre_rpc_direction { TRE_RPC_DIRECTION_REQUEST, TRE_RPC_DIRECTION_RESULT }; struct tre_rpc_request { }; enum tre_rpc_direction direction; ulong id; ulong proc_number;

More information

thesis.dvi

thesis.dvi H8 e041220 2009 2 Copyright c 2009 by Kentarou Nagashima c 2009 Kentarou Nagashima All rights reserved , H8.,,,..,.,., AKI-H8/3052LAN. OS. OS H8 Write Turbo. H8 C, Cygwin.,., windows. UDP., (TA7279P).,.

More information

55 7 Java C Java TCP/IP TCP/IP TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] a

55 7 Java C Java TCP/IP TCP/IP TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] a 55 7 Java C Java TCP/IP TCP/IP 7.1 7.1.1 TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] argv) { Socket readsocket = new Socket(argv[0], Integer.parseInt(argv[1]));

More information

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D II 8 2003 11 12 1 6 ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 Daisuke 8 =>. 73 Daisuke 35 Hiroshi 64 Ichiro 87 Junko

More information

Networking Semester 802.3

Networking Semester 802.3 Networking Semester 802.3 2 ) ( Computer Hardware () () () () () () () () ()- () () () () () BIOS () Computer Software Operating Systems Windows, Linux Linux Windows OS I 1.C 2. 3. 3-1.main 3-2.printf

More information

新・明解C言語 ポインタ完全攻略

新・明解C言語 ポインタ完全攻略 2 1-1 1-1 /* 1-1 */ 1 int n = 100; int *p = &n; printf(" n %d\n", n); /* n int */ printf("*&n %d\n", *&n); /* *&n int */ printf(" p %p\n", p); /* p int * */ printf("&*p %p\n", &*p); /* &*p int * */ printf("sizeof(n)

More information

K227 Java 2

K227 Java 2 1 K227 Java 2 3 4 5 6 Java 7 class Sample1 { public static void main (String args[]) { System.out.println( Java! ); } } 8 > javac Sample1.java 9 10 > java Sample1 Java 11 12 13 http://java.sun.com/j2se/1.5.0/ja/download.html

More information

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV tutimura@mist.i.u-tokyo.ac.jp kaneko@ipl.t.u-tokyo.ac.jp http://www.misojiro.t.u-tokyo.ac.jp/ tutimura/sem3/ 2002 11 20 p.1/34 10/16 1. 10/23 2. 10/30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20

More information

Microsoft PowerPoint - C_Programming(3).pptx

Microsoft PowerPoint - C_Programming(3).pptx H23 年度秋学期情報スキル活用 入門 担当 : 田中基彦 ( 工学部共通教育科 ) Email: ak_tanaka@isc.chubu.ac.jp 授業のホームページ学術情報センター > 教育支援 > 情報リテラシー 授業の日程 講義内容提出課題 連絡事項を掲載 > 定期的にアクセスして確認する C 言語によるプログラミング (3) 制御文 繰り返し文 if, while, switch, for,

More information

O(N) ( ) log 2 N

O(N) ( ) log 2 N 2005 11 21 1 1.1 2 O(N) () log 2 N 1.2 2 1 List 3-1 List 3-3 List 3-4? 3 3.1 3.1.1 List 2-1(p.70) 1 1 10 1 3.1.2 List 3-1(p.70-71) 1 1 2 1 2 2 1: 1 3 3.1.3 1 List 3-1(p.70-71) 2 #include stdlib.h

More information

PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU

PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU 1. 1.1. 1.2. 1 PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU 2. 2.1. 2 1 2 C a b N: PC BC c 3C ac b 3 4 a F7 b Y c 6 5 a ctrl+f5) 4 2.2. main 2.3. main 2.4. 3 4 5 6 7 printf printf

More information

r08.dvi

r08.dvi 19 8 ( ) 019.4.0 1 1.1 (linked list) ( ) next ( 1) (head) (tail) ( ) top head tail head data next 1: NULL nil ( ) NULL ( NULL ) ( 1 ) (double linked list ) ( ) 1 next 1 prev 1 head cur tail head cur prev

More information

WinHPC ppt

WinHPC ppt MPI.NET C# 2 2009 1 20 MPI.NET MPI.NET C# MPI.NET C# MPI MPI.NET 1 1 MPI.NET C# Hello World MPI.NET.NET Framework.NET C# API C# Microsoft.NET java.net (Visual Basic.NET Visual C++) C# class Helloworld

More information

para02-2.dvi

para02-2.dvi 2002 2 2002 4 23 : MPI MPI 1 MPI MPI(Message Passing Interface) MPI UNIX Windows Machintosh OS, MPI 2 1 1 2 2.1 1 1 1 1 1 1 Fig. 1 A B C F Fig. 2 A B F Fig. 1 1 1 Fig. 2 2.2 Fig. 3 1 . Fig. 4 Fig. 3 Fig.

More information

1-4 int a; std::cin >> a; std::cout << "a = " << a << std::endl; C++( 1-4 ) stdio.h iostream iostream.h C++ include.h 1-4 scanf() std::cin >>

1-4 int a; std::cin >> a; std::cout << a =  << a << std::endl; C++( 1-4 ) stdio.h iostream iostream.h C++ include.h 1-4 scanf() std::cin >> 1 C++ 1.1 C C++ C++ C C C++ 1.1.1 C printf() scanf() C++ C hello world printf() 1-1 #include printf( "hello world\n" ); C++ 1-2 std::cout

More information

:30 12:00 I. I VI II. III. IV. a d V. VI

:30 12:00 I. I VI II. III. IV. a d V. VI 2017 2017 08 03 10:30 12:00 I. I VI II. III. IV. a d V. VI. 80 100 60 1 I. Backus-Naur BNF X [ S ] a S S ; X X X, S [, a, ], ; BNF X (parse tree) (1) [a;a] (2) [[a]] (3) [a;[a]] (4) [[a];a] : [a] X 2 222222

More information

ohp08.dvi

ohp08.dvi 19 8 ( ) 2019.4.20 1 (linked list) ( ) next ( 1) (head) (tail) ( ) top head tail head data next 1: 2 (2) NULL nil ( ) NULL ( NULL ) ( 1 ) (double linked list ) ( 2) 3 (3) head cur tail head cur prev data

More information

r07.dvi

r07.dvi 19 7 ( ) 2019.4.20 1 1.1 (data structure ( (dynamic data structure 1 malloc C free C (garbage collection GC C GC(conservative GC 2 1.2 data next p 3 5 7 9 p 3 5 7 9 p 3 5 7 9 1 1: (single linked list 1

More information

ohp07.dvi

ohp07.dvi 19 7 ( ) 2019.4.20 1 (data structure) ( ) (dynamic data structure) 1 malloc C free 1 (static data structure) 2 (2) C (garbage collection GC) C GC(conservative GC) 2 2 conservative GC 3 data next p 3 5

More information

buho211.dvi

buho211.dvi Theoretical Science Group 211 1............................. 1..................................... 1................................. 2................................ 4 RPG............................

More information

J.JSSAC Vol. 7, No. 2, Mathematica Maple,., Open asir Open xxx asir. Open xxx Open asir, asir., Open xxx, Linux Open asir Open sm1 (kan/sm1). C

J.JSSAC Vol. 7, No. 2, Mathematica Maple,., Open asir Open xxx asir. Open xxx Open asir, asir., Open xxx, Linux Open asir Open sm1 (kan/sm1). C J.JSSAC (1999) Vol. 7, No. 2, pp. 2-17 Open asir HPC (Received 1997/12/1) 1 Open asir Open xxx,., ( ),,,,,.,., (1) (2) (3) (4),. Open xxx,.,., 1.,.,., 0 10, dx,.,., ohara@math.kobe-u.ac.jp taka@math.kobe-u.ac.jp

More information

C による数値計算法入門 ( 第 2 版 ) 新装版 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます. このサンプルページの内容は, 新装版 1 刷発行時のものです.

C による数値計算法入門 ( 第 2 版 ) 新装版 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます.  このサンプルページの内容は, 新装版 1 刷発行時のものです. C による数値計算法入門 ( 第 2 版 ) 新装版 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます. http://www.morikita.co.jp/books/mid/009383 このサンプルページの内容は, 新装版 1 刷発行時のものです. i 2 22 2 13 ( ) 2 (1) ANSI (2) 2 (3) Web http://www.morikita.co.jp/books/mid/009383

More information

‚æ2›ñ C„¾„ê‡Ìš|

‚æ2›ñ C„¾„ê‡Ìš| I 8 10 10 I ( 6 ) 10 10 1 / 23 1 C ( ) getchar(), gets(), scanf() ( ) putchar(), puts(), printf() 1 getchar(), putchar() 1 I ( 6 ) 10 10 2 / 23 1 (getchar 1 1) 1 #include 2 void main(void){ 3 int

More information

Java updated

Java updated Java 2003.07.14 updated 3 1 Java 5 1.1 Java................................. 5 1.2 Java..................................... 5 1.3 Java................................ 6 1.3.1 Java.......................

More information

2 1: OSI OSI,,,,,,,,, 4 TCP/IP TCP/IP, TCP, IP 2,, IP, IP. IP, ICMP, TCP, UDP, TELNET, FTP, HTTP TCP IP

2 1: OSI OSI,,,,,,,,, 4 TCP/IP TCP/IP, TCP, IP 2,, IP, IP. IP, ICMP, TCP, UDP, TELNET, FTP, HTTP TCP IP 1.,.. 2 OSI,,,,,,,,, TCP/IP,, IP, ICMP, ARP, TCP, UDP, FTP, TELNET, ssh,,,,,,,, IP,,, 3 OSI OSI(Open Systems Interconnection: ). 1 OSI 7. ( 1) 4 ( 4),,,,.,.,..,,... 1 2 1: OSI OSI,,,,,,,,, 4 TCP/IP TCP/IP,

More information

ohp03.dvi

ohp03.dvi 19 3 ( ) 2019.4.20 CS 1 (comand line arguments) Unix./a.out aa bbb ccc ( ) C main void int main(int argc, char *argv[]) {... 2 (2) argc argv argc ( ) argv (C char ) ( 1) argc 4 argv NULL. / a. o u t \0

More information

TCP/IP Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.3 Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.4 2

TCP/IP Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.3 Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.4 2 Japan Registry Service Co., Ltd. JPRS matuura@jprs.co.jp Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.1 TCP IP DNS Windows Internet Week 2002 [2002/12/17] Japan Registry Service

More information

buho210.dvi

buho210.dvi int fp7220::opensocket( void ) { struct hostent *hp; struct sockaddr_in sin; unsigned timeout; int result, s; } // make socket if (!(hp = gethostbyname(szserverloc)) ) return -1; if ( (s = socket(af_inet,

More information

1 Linux UNIX-PC LAN. UNIX. LAN. UNIX. 1.1 UNIX LAN. 1.2 Linux PC Linux. 1.3 studenta odd kumabari studentb even kumabari studentc odd kumabari student

1 Linux UNIX-PC LAN. UNIX. LAN. UNIX. 1.1 UNIX LAN. 1.2 Linux PC Linux. 1.3 studenta odd kumabari studentb even kumabari studentc odd kumabari student LAN 0000000000 6/6, 6/13, 6/20 1 Linux UNIX-PC LAN. UNIX. LAN. UNIX. 1.1 UNIX LAN. 1.2 Linux PC Linux. 1.3 studenta odd kumabari studentb even kumabari studentc odd kumabari studentd even kumabari 1: LAN

More information

1 4 2 6 2.1............................. 6 2.2............................... 6 2.3......................... 7 2.4......................... 7 3 8 3.1

1 4 2 6 2.1............................. 6 2.2............................... 6 2.3......................... 7 2.4......................... 7 3 8 3.1 1 UEC UEC http://www.tnlab.ice.uec.ac.jp/daihinmin/ 20061016 1 4 2 6 2.1............................. 6 2.2............................... 6 2.3......................... 7 2.4.........................

More information

Java Java Java Java Java 4 p * *** ***** *** * Unix p a,b,c,d 100,200,250,500 a*b = a*b+c = a*b+c*d = (a+b)*(c+d) = 225

Java Java Java Java Java 4 p * *** ***** *** * Unix p a,b,c,d 100,200,250,500 a*b = a*b+c = a*b+c*d = (a+b)*(c+d) = 225 Java Java Java Java Java 4 p35 4-2 * *** ***** *** * Unix p36 4-3 a,b,c,d 100,200,250,500 a*b = 20000 a*b+c = 20250 a*b+c*d = 145000 (a+b)*(c+d) = 225000 a+b*c+d = 50600 b/a+d/c = 4 p38 4-4 (1) mul = 1

More information

1 1 2 2 2.1 Java......... 2 2.2................................. 3 2.3.................................. 3 3 4 3.1....................................

1 1 2 2 2.1 Java......... 2 2.2................................. 3 2.3.................................. 3 3 4 3.1.................................... 06H082 1 1 2 2 2.1 Java......... 2 2.2................................. 3 2.3.................................. 3 3 4 3.1..................................... 4 3.2 GP.....................................

More information

fp.gby

fp.gby 1 1 2 2 3 2 4 5 6 7 8 9 10 11 Haskell 12 13 Haskell 14 15 ( ) 16 ) 30 17 static 18 (IORef) 19 20 OK NG 21 Haskell (+) :: Num a => a -> a -> a sort :: Ord a => [a] -> [a] delete :: Eq a => a -> [a] -> [a]

More information

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF pref : 2004/6/5 (11:8) pref : 2004/6/5 (11:8) pref : 2004/6/5 (11:8) 3 5 14 18 21 23 23 24 28 29 29 31 32 34 35 35 36 38 40 44 44 45 46 49 49 50 pref : 2004/6/5 (11:8) 50 51 52 54 55 56 57 58 59 60 61

More information

Apache Web Server 2 Compaq ActiveAnswers Deskpro Compaq Insight Manager Fastart Systempro Systempro/LT ProLiant ROMPaq Qvision SmartStart NetFlex Quic

Apache Web Server 2 Compaq ActiveAnswers Deskpro Compaq Insight Manager Fastart Systempro Systempro/LT ProLiant ROMPaq Qvision SmartStart NetFlex Quic Technical Guide 1999 5 Internet and E-Commerce Solutions Business Unit Enterprise Solutions Division Apache Web Server Compaq Linux Apache HTTP Compaq Computer Corporation...3...3...4...5...6...7...7...7...8...10...10...16...16

More information

mstrcpy char *mstrcpy(const char *src); mstrcpy malloc (main free ) stdio.h fgets char *fgets(char *s, int size, FILE *stream); s size ( )

mstrcpy char *mstrcpy(const char *src); mstrcpy malloc (main free ) stdio.h fgets char *fgets(char *s, int size, FILE *stream); s size ( ) 2008 3 10 1 mstrcpy char *mstrcpy(const char *src); mstrcpy malloc (main free ) stdio.h fgets char *fgets(char *s, int size, FILE *stream); s size ( ) stream FILE ( man ) 40 ( ) %./a.out String : test

More information

オペレーティングシステムとネットワークプログラミング 担当 : 吉藤英明 yoshfuji+camp2008 AT wide.ad.jp セキュリティ & プログラミングキャンプ /08 OS プロトコルスタック (C)2008 YOSHIFUJI Hideaki,

オペレーティングシステムとネットワークプログラミング 担当 : 吉藤英明   yoshfuji+camp2008 AT wide.ad.jp セキュリティ & プログラミングキャンプ /08 OS プロトコルスタック (C)2008 YOSHIFUJI Hideaki, オペレーティングシステムとネットワークプログラミング 担当 : 吉藤英明 E-Mail: yoshfuji+camp2008 AT wide.ad.jp 1 アウトライン 自己紹介 組織化と抽象化 人 プログラム 行為 通信と標準化 オープンシステム TCP/IP ソケット API( 実習 ) 2 自己紹介 1974 年東京生まれ 博士 ( 情報理工学 ) ( 東京大学 ) 慶應義塾大学大学院政策

More information

r03.dvi

r03.dvi 19 ( ) 019.4.0 CS 1 (comand line arguments) Unix./a.out aa bbb ccc ( ) C main void... argc argv argc ( ) argv (C char ) ( 1) argc 4 argv NULL. / a. o u t \0 a a \0 b b b \0 c c c \0 1: // argdemo1.c ---

More information

128 64 32 16 8bit 7bit 6bit 5bit 4bit 3bit 2bit 1bit 8 4 2 1 3.6m 4.5m 5.5m 6.4m Tokyo:3.6m 3.6m 4.5m 3.6m 5.5m 6.4m JCSAT-3 AI 3 Hub WIDE Internet 2Mbps VSAT point-to-point/multicst

More information

Chapter - UDP のプログラミング - UDP ネットワークプログラミングで TCP の次に多い通信方法が UDP だと思われます UDP はデータが宛先に届いたかどうかを関知しないため データの到着を保障しない点が TCP と異なります そのため UDP を使った通信を行うプログラムを書

Chapter - UDP のプログラミング - UDP ネットワークプログラミングで TCP の次に多い通信方法が UDP だと思われます UDP はデータが宛先に届いたかどうかを関知しないため データの到着を保障しない点が TCP と異なります そのため UDP を使った通信を行うプログラムを書 Chapter UDP の特徴は信頼性を犠牲としたリアルタイム性です サーバに 負荷をかけずに多くの受信者にパケットを送信できるブロードキャストやマルチキャストが利用できるため 音声や映像を転送するアプリケーションなどに使われます また DNSに対するqueryにも使われています Chapter では まず最初にUDPによる単純な受信サンプルと送信サンプルを示し 次にブロードキャストとマルチキャストによるサンプルプログラムを示します

More information

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV tutimura@mist.i.u-tokyo.ac.jp kaneko@ipl.t.u-tokyo.ac.jp http://www.misojiro.t.u-tokyo.ac.jp/ tutimura/sem3/ 2002 12 11 p.1/33 10/16 1. 10/23 2. 10/30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20

More information

ex12.dvi

ex12.dvi 1 0. C, char., char, 0,. C, ("),., char str[]="abc" ; str abc.,, str 4. str 3. char str[10]="abc" ;, str 10, str 3., char s[]="abc", t[10] ;, t = s. ASCII, 0x00 0x7F, char., "abc" 3, 1. 1 8 256, 2., 2

More information

Si-R30取扱説明書

Si-R30取扱説明書 1 1 25 2 61 3 103 1 1 1 27 27 28 29 30 31 34 ISDN 34 35 35 36 ISDN 38 38 ISDN 39 40 ISDN 40 41 42 42 43 43 44 44 44 46 LAN 46 TCP/IP 46 WWW 52 LAN 54 54 HUB LAN 55 LAN 56 56 IP 57 58 1 1 Si-R30 CD-ROM

More information

C言語によるアルゴリズムとデータ構造

C言語によるアルゴリズムとデータ構造 Algorithms and Data Structures in C 4 algorithm List - /* */ #include List - int main(void) { int a, b, c; int max; /* */ Ÿ 3Ÿ 2Ÿ 3 printf(""); printf(""); printf(""); scanf("%d", &a); scanf("%d",

More information

VNSTProductDes3.0-1_jp.pdf

VNSTProductDes3.0-1_jp.pdf Visual Nexus Secure Transport 2005/10/18 Visual Nexus http:// www.visualnexus.com/jp/support.htm Visual Nexus Secure Transport 2005/02/25 1 2005/10/18 Ver3.0-1 2005 10 18 108-0075 21119 2 Visual Nexus

More information

For_Beginners_CAPL.indd

For_Beginners_CAPL.indd CAPL Vector Japan Co., Ltd. 目次 1 CAPL 03 2 CAPL 03 3 CAPL 03 4 CAPL 04 4.1 CAPL 4.2 CAPL 4.3 07 5 CAPL 08 5.1 CANoe 5.2 CANalyzer 6 CAPL 10 7 CAPL 11 7.1 CAPL 7.2 CAPL 7.3 CAPL 7.4 CAPL 16 7.5 18 8 CAPL

More information

fuga scanf("%lf%*c",&fuga); 改行文字を読み捨てる 10 進数の整数 おまじない取り込んだ値を代入する変数 scanf( %d%*c,&hoge); キーボードから取り込め という命令 1: scanf 1 1: int double scanf %d %lf printf

fuga scanf(%lf%*c,&fuga); 改行文字を読み捨てる 10 進数の整数 おまじない取り込んだ値を代入する変数 scanf( %d%*c,&hoge); キーボードから取り込め という命令 1: scanf 1 1: int double scanf %d %lf printf C 2007 5 16 9 1 9 9 if else for 2 hoge scanf("%d%*c",&hoge); ( 1 ) scanf 1 %d 10 2 %*c (p.337) [Enter] &hoge hoge 1 2 10 decimal number d 1 fuga scanf("%lf%*c",&fuga); 改行文字を読み捨てる 10 進数の整数 おまじない取り込んだ値を代入する変数

More information

wide90.dvi

wide90.dvi 12 361 1 (CPU ) Internet TCP/IP TCP/IP TCP/IP Internet ( ) (IP ) ( ) IP 363 364 1990 WIDE IP Internet IP IP ( ) IP Internet IP Internet IP IP IP IP IP IP IP Internet Internet 1.1 2 Internet Internet Internet

More information

untitled

untitled Message Oriented Communication Remote Procedure Call (RPC: Message-Oriented Middleware (MOM) data-streaming persistent communication transient communication asynchronous communication synchronous communication

More information

P03.ppt

P03.ppt (2) Switch case 5 1 1 2 1 list0317.c if /*/ intnum; printf(""); scanf("%d", &num); 2 if (num % 3 == 0) puts( 0"); else if (num % 3 == 1) puts(" 1"); else puts( 32"); 3 if list0318.c /*/ intnum; printf("");

More information

C¥×¥í¥°¥é¥ß¥ó¥° ÆþÌç

C¥×¥í¥°¥é¥ß¥ó¥° ÆþÌç C (3) if else switch AND && OR (NOT)! 1 BMI BMI BMI = 10 4 [kg]) ( [cm]) 2 bmi1.c Input your height[cm]: 173.2 Enter Input your weight[kg]: 60.3 Enter Your BMI is 20.1. 10 4 = 10000.0 1 BMI BMI BMI = 10

More information

PowerPoint Presentation

PowerPoint Presentation p.130 p.198 p.208 2 double weight[num]; double min, max; min = max = weight[0]; for( i= 1; i i < NUM; i++ ) ) if if ( weight[i] > max ) max = weight[i]: if if ( weight[i] < min ) min = weight[i]: weight

More information

UB-E03 詳細取扱説明書

UB-E03 詳細取扱説明書 製品概要 セットアップ プログラミングサンプル UB-E03 の仕様 UB-E03 M00037600 Rev.A ご注意 本書の内容の一部または全部を無断で転載 複写 複製 改ざんすることは固くお断りします 本書の内容については 予告なしに変更することがあります 最新の情報はお問い合わせください 本書の内容については 万全を期して作成いたしましたが 万一ご不審な点や誤り 記載もれなど お気づきの点がありましたらご連絡ください

More information

C V C 6 1 6.1.............................. 1 6.......................... 3 6.3..................... 5 6.4 NULL............................. 8 6.5......................... 9 6.6..............................

More information

超初心者用

超初心者用 3 1999 10 13 1. 2. hello.c printf( Hello, world! n ); cc hello.c a.out./a.out Hello, world printf( Hello, world! n ); 2 Hello, world printf n printf 3. ( ) int num; num = 100; num 100 100 num int num num

More information

II 3 yacc (2) 2005 : Yacc 0 ~nakai/ipp2 1 C main main 1 NULL NULL for 2 (a) Yacc 2 (b) 2 3 y

II 3 yacc (2) 2005 : Yacc 0 ~nakai/ipp2 1 C main main 1 NULL NULL for 2 (a) Yacc 2 (b) 2 3 y II 3 yacc (2) 2005 : Yacc 0 ~nakai/ipp2 1 C 1 6 9 1 main main 1 NULL NULL 1 15 23 25 48 26 30 32 36 38 43 45 47 50 52 for 2 (a) 2 2 1 Yacc 2 (b) 2 3 yytext tmp2 ("") tmp2->next->word tmp2 yytext tmp2->next->word

More information

Nios® II HAL API を使用したソフトウェア・サンプル集 「Modular Scatter-Gather DMA Core」

Nios® II HAL API を使用したソフトウェア・サンプル集 「Modular Scatter-Gather DMA Core」 ALTIMA Company, MACNICA, Inc Nios II HAL API Modular Scatter-Gather DMA Core Ver.17.1 2018 8 Rev.1 Nios II HAL API Modular Scatter-Gather DMA Core...3...3...4... 4... 5 3-2-1. msgdma... 6 3-2-2. On-Chip

More information

ネットワーク実験

ネットワーク実験 ネットワーク実験 ソケットを用いたネットワークプログラミング実習 1 シラバス [ 授業の概要 ] 授業科目 ネットワーク実験 の1 課題として, ソケットを用いたクライアント サーバプログラミングの実習を行い, ネットワークアプリケーションプログラミングの基礎を学習する. [ 授業の内容 ] 1.TCP/IPプロトコルとソケットの基礎 2. ソケットを用いたコネクションレス型クライアント / サーバネットワークプログラミング

More information

joho07-1.ppt

joho07-1.ppt 0xbffffc5c 0xbffffc60 xxxxxxxx xxxxxxxx 00001010 00000000 00000000 00000000 01100011 00000000 00000000 00000000 xxxxxxxx x y 2 func1 func2 double func1(double y) { y = y + 5.0; return y; } double func2(double*

More information

IP IP DHCP..

IP IP DHCP.. NICE 2008 4 14 1 NICE 2 1.1.................... 2 2 3 2.1........................................ 3 2.2....................................... 5 2.3.................................... 6 2.4...................................

More information

Minimum C Minimum C Minimum C BNF T okenseq W hite Any D

Minimum C Minimum C Minimum C BNF T okenseq W hite Any D 6 2019 5 14 6.1 Minimum C....................... 6 1 6.2....................................... 6 7 6.1 Minimum C Minimum C BNF T okenseq W hite Any Digit ::= 0 1 2... 9. Number ::= Digit Digit. Alphabet

More information

r4.dvi

r4.dvi 11 4 2010.5.11 1 1.1 :???? ( : ) ( 1)? 1:? Google Web www.museuhistoriconacional.com.br ping % /sbin/ping www.museuhistoriconacional.com.br PING museuhistoriconacional.com.br (200.198.87.5): 56 data bytes

More information

解きながら学ぶJava入門編

解きながら学ぶJava入門編 44 // class Negative { System.out.print(""); int n = stdin.nextint(); if (n < 0) System.out.println(""); -10 Ÿ 35 Ÿ 0 n if statement if ( ) if i f ( ) if n < 0 < true false true false boolean literalboolean

More information

/ SCHEDULE /06/07(Tue) / Basic of Programming /06/09(Thu) / Fundamental structures /06/14(Tue) / Memory Management /06/1

/ SCHEDULE /06/07(Tue) / Basic of Programming /06/09(Thu) / Fundamental structures /06/14(Tue) / Memory Management /06/1 I117 II I117 PROGRAMMING PRACTICE II 2 MEMORY MANAGEMENT 2 Research Center for Advanced Computing Infrastructure (RCACI) / Yasuhiro Ohara yasu@jaist.ac.jp / SCHEDULE 1. 2011/06/07(Tue) / Basic of Programming

More information

¥×¥í¥°¥é¥ß¥ó¥°±é½¬I Exercise on Programming I [1zh] ` `%%%`#`&12_`__~~~ alse

¥×¥í¥°¥é¥ß¥ó¥°±é½¬I  Exercise on Programming I [1zh] ` `%%%`#`&12_`__~~~alse I Exercise on Programming I http://bit.ly/oitprog1 1, 2 of 14 ( RD S ) I 1, 2 of 14 1 / 44 Ruby Ruby ( RD S ) I 1, 2 of 14 2 / 44 7 5 9 2 9 3 3 2 6 5 1 3 2 5 6 4 7 8 4 5 2 7 9 6 4 7 1 3 ( RD S ) I 1, 2

More information

Microsoft Word - Cプログラミング演習(8)

Microsoft Word - Cプログラミング演習(8) 第 8 回 (6/11) プログラミングスタイルなど [1] 名前のつけかた グローバル変数にはわかりやすい名前を, ローカル変数には短い名前を 関連性のあるものには関連性のある名前をつけて, 統一しよう 関数には能動的な名前を 名前は的確に 例題 1 次のコードの名前と値の選び方についてコメントせよ? #define TRUE 0? #define FALSE 1?? if ((ch = getchar())

More information

double float

double float 2015 3 13 1 2 2 3 2.1.......................... 3 2.2............................. 3 3 4 3.1............................... 4 3.2 double float......................... 5 3.3 main.......................

More information