Microsoft PowerPoint - 09network.ppt

Size: px
Start display at page:

Download "Microsoft PowerPoint - 09network.ppt"

Transcription

1 Game Programming DirectPlay 를이용한네트워킹 November 21, 2005 배울내용 네트워킹의이해 DirectPlay 인터페이스의사용 네트워크메시지의처리 서버와클라이언트의사용

2 네트워크의이해 (1) 네트워크모델 서버, 클라이언트, 피어-투-피어 응용프로그램에따라다른모델선택 클라이언트 서버 클라이언트 피어 클라이언트 클라이언트 피어 피어 네트워크주소 (IP address) 4 개의숫자 (0~255) 로구성 피어 네트워크의이해 (2) 대기실 대기실서버 플레이어들을서로연결시킴 지연 (latency) 와랙 (lag) 지연 연산을마치는데걸리는시간 랙 네트워크통신의지체 ( 데이터송신부터수신까지걸리는시간 ) 통신프로토콜 UDP 아주빠르고유연, 데이터정렬이나전달의확실한보장에신경쓰지않음 TCP/IP 확실한메시지전달을보장, 느린속도를감수해야함 ( 정보전송 응답확인 전송검사 )

3 DirectPlay 의소개 (1) DirectPlay 를사용하여서버, 클라이언트, 피어 - 투 - 피어모델을모두액세스가능 IDriectPlay8Server IDriectPlay8Client IDriectPlay8Peer IDriectPlay8Address 서버객체클라이언트객체피어-투-피어객체네트워크주소를포함하는객체 IDirectPlay8Address 원격네트워크시스템에연결하기위해네트워크주소를구성 플레이어 개별플레이어에게 ID 부여 그룹으로묶을수있음 DirectPlay 의소개 (2) 메시지를이용한네트워킹 메시지가발생할때마다콜백함수호출 전송옵션 보장전송, 보안암호화, 비동기 / 동기 DPN_MSGID_ADD_PLAYER_TO GROUP 기존그룹에플레이어추가 DPN_MSGID_CLIENT_INFO DPN_MSGID_CONNECT_COMPLETE DPN_MSGID_CREATE_GROUP DPN_MSGID_CREATE_PLAYER DPN_MSGID_HOST_MIGRATE DPN_MSGID_SEND_COMPLETE 클라이언트데이터가요청네트워크연결이완료그룹이생성플레이어생성연결이끊겨호스트데이터가다른시스템으로이동데이터가성공적으로전송 DPN_MSGID_TERMINATE_SESSION 네트워크세션이종료되었음......

4 DirectPlay 의소개 (3) 비동기 vs. 동기 비동기 데이터전송명령을받은후컨트롤반환 동기 모든데이터가성공적으로보내질때까지대기 보안 데이터의암호화 전송시간이더걸림 DirectPlay 는보안메시지를지원 ( 플래그만설정 ) 보장전송 DirectPlay 는특정플래그설정으로메시지의도달을보장할수있음 스로트링 (Throttling) 우선권이낮은메시지를전송차례에서제외시킴 GUID (Globally Unique Identifier, 광역고유식별자 ) 응용프로그램마다부여된고유번호, 다른시스템에연결시이용 생성방법 : Visual C/C++ 디렉터리 \common\tools\guidgen.exe DirectPlay 네트워크객체초기화 (1) HRESULT HRESULT WINAPI WINAPI DirectPlay8Create( GUID* GUID* pciid, pciid, void** void** ppvinterface, ppvinterface, IUnknown* IUnknown* punknown punknown ); ); pciid &IID_IDirectPlay8Server, &IID_IDirectPlay8Client, &IID_IDirectPlay8Peer 예 ) 서버네트워크객체생성 IDirectPlay8Server *pdpserver; if( FAILED(DirectPlay8Create( &IID_IDirectPly8Server, (void**)&pdpserver, NULL ) ) ) // error occurred

5 DirectPlay 네트워크객체초기화 (2) 네트워크객체에콜백함수지정 네트워크메시지가수신될때마다호출됨 콜백함수원형 (prototype) typedef typedef HRESULT HRESULT (CALLBACK (CALLBACK *PFNDPNMESSAGEHANDLER)( PVOID PVOID pvusercontext, pvusercontext, DWORD DWORD dwmessagetype, dwmessagetype, PVOID PVOID pmessage pmessage ); ); 초기화함수 HRESULT HRESULT IDirectPlay8Server::Initialize( PVOID PVOID const const pvusercontext, pvusercontext, const const PFNDPNMESSAGEHANDLER pfn, pfn, const const DWORD DWORD dwflags dwflags ); ); HRESULT IDirectPlay8Client::Initialize(...); HRESULT IDirectPlay8Peer::Initialize(...); DirectPlay 네트워크객체초기화 (3) 예 ) 서버네트워크객체의콜백함수지정 HRESULT WINAPI MessageHandler( PVOID pvusercontext, DWORD dwmessageid, PVOID pmsgbuffer ); if( FAILED(pDPServer->Initialize( NULL, MessageHandler, 0 ) ) ) // error occurred

6 주소객체의초기화 (1) IDirect8Address DirectPlay 가 IP 주소를구성하는데사용하는객체 HRESULT HRESULT WINAPI WINAPI DirectPlay8AddressCreate( GUID* GUID* pciid, pciid, void** void** ppvinterface, ppvinterface, IUnknown* IUnknown* punknown punknown ); ); pciid &IID_IDirectPlay8Address 예 ) 주소객체생성 IDirectPlay8Address *pdpaddress; if( FAILED(DirectPlay8AddressCreate( &IID_IDirectPly8Address, (void**)&pdpaddress, NULL ) ) ) // error occurred 주소객체의초기화 (2) IDirect8Address 함수 IDriectPlay8Address::Clear IDriectPlay8Address::SetSP IDriectPlay8Address::AddComponent 주소데이터지움서비스제공자설정구성요소추가 IP Address (String) Provider (GUID) IDrect8 Address (COM Object) Port # (DWORD) Device (GUID)

7 주소객체의초기화 (3) HRESULT HRESULT AddComponent( AddComponent( const const WCHAR WCHAR *const *const pwszname, pwszname, const const void void *const *const lpvdata, lpvdata, const const DWORD DWORD dwdatasize, dwdatasize, const const DWORD DWORD dwdatatype dwdatatype ); ); pwszname DPNA_KEY_PROVIDER, DPNA_KEY_DEVICE, DPNA_KEY_PORT, DPNA_KEY_HOSTNAME, DPNA_KEY_FLOWCONTROL, DPNA_KEY_PARITY, DPNA_KEY_STOPBITS dwdatatype DPNA_DATATYPE_STRING, DPNA_DATATYPE_STRING_ANSI, DPNA_DATATYPE_DWOARD, DPNA_DATATYPE_GUID, DPNA_DATATYPE_BINARY HRESULT HRESULT SetSP( SetSP( const const GUID GUID *const *const pguidsp pguidsp ); ); pguidsp CLSID_DP8SP_TCPIP, CLSID_DP8SP_IPX, CLSID_DP8SP_MODEM, CLSID_DP8SP_SERIAL 주소객체의초기화 (4) 서비스제공자의설정 포트선택 예약된번호 (1~1024) 외의번호를선택해야안전 장치의할당 Modem TCP/IP 장치를나열한뒤에선택 if( FAILED(pDPAddress->SetSP(&CLSID_DP8SP_TCPIP)) ) // error occurred if( FAILED(pDPAddress->AddComponet(DPNA_KEY_PORT, &dwport, sizeof(dword), DPNA_DATATYPE_DWORD))) // error occurred Service Providers Modem Direct Network Card TCP/IP IPX Serial Port com1 DirectPlay Enumerate Array of SPs 1. TCP/IP Modem 2. TCP/IP Network Card 3. IPX Network Card 4. Modem Modem 5. Serial Serial com1

8 주소객체의초기화 (5) 나열자 (Enumerator) HRESULT HRESULT IDirectPlay8Server::EnumServiceProviders( const const GUID GUID *const *const pguidserviceprovider, const const GUID GUID *const *const pguidapplication, DPN_SERVICE_PROVIDER_INFO *const *const pspinfobuffer, pspinfobuffer, PDWORD PDWORD const const pcbenumdata, pcbenumdata, PDWORD PDWORD const const pcreturned pcreturned const const DWORD DWORD dwflags dwflags ); ); HRESULT IDirectPlay8Client::EnumServiceProviders (...); HRESULT IDirectPlay8Peer::EnumServiceProviders (...); typedef typedef struct struct _DPN_SERVICE_PROVIDER_INFO DWORD DWORD dwflags; dwflags; GUID GUID Guid; Guid; WCHAR* WCHAR* pwszname; pwszname; PVOID PVOID pvreserved; pvreserved; DWORD DWORD dwreserved; dwreserved; DPN_SERVICE_PROVIDER_INFO, *PDPN_SERVICE_PROVIDER_INFO; 주소객체의초기화 (6) 예 ) TCP/IP 서비스공급자나열 HRESULT ListServiceProviders() HRESULT hr = S_OK; DWORD i 0; DPN_SERVICE_PROVIDER_INFO* pdnspinfo NULL; DPN_SERVICE_PROVIDER_INFO* pdnspinfoenum NULL; DWORD dwitems 0; DWORD dwsize 0; TCHAR strbuf[256] = 0; hr = g_pdp->enumserviceproviders((&clsid_dp8sp_tcpip, NULL, NULL, &dwsize, &dwitems, 0); if( FAILED(hr) && hr!= DPNERR_BUFFERTOOSMALL ) SAFE_DELETE_ARRAY(pdnSPInfo); return hr; pdnspinfo = (DPN_SERVICE_PROVIDER_INFO*) new BYTE[dwSize]; if( FAILED( hr = g_pdp->enumserviceproviders(&clsid_dp8sp_tcpip, NULL, pdnspinfo, &dwsize, &dwitems, 0))) SAFE_DELETE_ARRAY(pdnSPInfo); return hr; pdnspinfoenum = pdnspinfo; for ( i = 0; i < dwitems; i++ ) DXUtil_ConvertWideStringToGenericCch(strBuf, pdnspinfoenum->pwszname, 256); SendMessage( GetDlgItem( g_hdlg, IDC_PROVIDERS ), LB_ADDSTRING, 0, (LPARAM) strbuf ); pdnspinfoenum++; SAFE_DELETE_ARRAY(pdnSPInfo); return hr;

9 주소객체의초기화 (7) 예 ) 장치설정 서비스공급자의 GUID 를이용하여주소객체완성 if( FAILED(pDPAddress->AddComponent( DPNA_KEY_PROVIDER, &guidsp, sizeof(guid), DPNA_DATATYPE_GUID ))) // error occurred 메시지핸들러의사용 HRESULT WINAPI MessageHandler( PVOID pvusercontext, DWORD dwmessageid, PVOID pmsgbuffer) DPNMSG_CREATE_PLAYER *pcreate; DPNMSG_DESTROY_PLAYER *pdestroy; switch( dwmessageid ) case DPN_MSGID_CREATE_PLAYER: pcreate = (DPNMSG_CREATE_PLAYER *)pmsgbuffer; break; case DPN_MSGID_DESTROY_PLAYER: pdestroy = (DPNMSG_DESTROY_PLAYER *)pmsgbuffer; break; return S_OK;

10 세션 (1) 각네트워크객체는세션 ( 호스팅하는세션이나참여할대상의세션 ) 에대한정보필요 typedef typedef struct struct _DPN_APPLICATION_DESC DWORD DWORD dwsize; dwsize; DWORD DWORD dwflags; dwflags; GUID GUID guidinstance; guidinstance; GUID GUID guidapplication; DWORD DWORD dwmaxplayers; dwmaxplayers; DWORD DWORD dwcurrentplayers; WCHAR WCHAR *pwszsessionname; WCHAR WCHAR *pwszpassword; *pwszpassword; DPN_APPLICATION_DESC, *PDPN_APPLICATION_DESC; dwflag DPNSESSION_CLIENT_SERVER ( 클라이언트 / 서버구조 ), DPNSESSION_MIGRATE_HOST ( 피어 - 투 - 피어구조에서호스트분실경우, 다른시스템으로이동 ), DPNSESSION_NODPNSVR ( 원격시스템이우리응용프로그램을나열하는것을허락하지않음 ), DPNSESSION_REQUIREPASSWORD ( 로그인암호필요 ) 세션 (2) 예 ) 서버의세션정보설정 세션의이름과암호설정 접속가능한최대플레이어 4 명으로제한 GUID AppGUID = 0xede9493e, 0x6ac8, 0x4f15, 0x8d, 0x1, 0x8b, 0x16, 0x32, 0x0, 0xb9, 0x66 ; DPN_APPLICATION_DESC pdad; ZeroMemory( &dpad, sizeof(dpn_application_desc) ); dpad.dwsize = sizeof( DPN_APPLICATION_DESC ); dpad.pwszsessionname = L MySession ; dpad.pwszpassword = L MyPassword ; dpad.dwmaximumplayers = 4; dpad.guidapplication = AppGUID; dpad.dwflag = DPNSESSION_CLIENT_SERVER DPNSESSION_REQUIREPASSWORD;

11 세션 (3) 예 ) 클라이언트의세션정보설정 참여할세션의이름과암호설정 서버응용프로그램과동일한 GUID 설정 GUID AppGUID = 0xede9493e, 0x6ac8, 0x4f15, 0x8d, 0x1, 0x8b, 0x16, 0x32, 0x0, 0xb9, 0x66 ; DPN_APPLICATION_DESC pdad; ZeroMemory( &dpad, sizeof(dpn_application_desc) ); dpad.dwsize = sizeof( DPN_APPLICATION_DESC ); dpad.pwszsessionname = L MySession ; dpad.pwszpassword = L MyPassword ; dpad.guidapplication = AppGUID; dpad.dwflag = DPNSESSION_CLIENT_SERVER DPNSESSION_REQUIREPASSWORD; 플레이어 (1) 플레이어의생성 첫번째플레이어 호스트플레이어 ( 세션에남아있음 ) typedef typedef struct struct _DPNMSG_CREATE_PLAYER DWORD DWORD dwsize; dwsize; DPNID DPNID dpnidplayer; dpnidplayer; PVOID PVOID pvplayercontext; DPNMSG_CREATE_PLAYER, *PDPNMSG_CREATE_PLAYER; 예 ) 메시지핸들러의사용 플레이어의정보얻기 HRESULT HRESULT IDirectPlay8Server::GetClientInfo( const const DPNID DPNID dpnid, dpnid, DPN_PLAYER_INFO DPN_PLAYER_INFO *const *const pdpnplayerinfo, pdpnplayerinfo, DWORD DWORD *const *const pdwsize, pdwsize, const const DWORD DWORD dwflags dwflags ); );

12 플레이어 (2) typedef typedef struct struct _DPN_PLAYER_INFO DWORD DWORD dwsize; dwsize; DWORD DWORD dwinfoflags; dwinfoflags; PWSTR PWSTR pwszname; pwszname; PVOID PVOID pvdata; pvdata; DWORD DWORD dwdatasize; dwdatasize; DWORD DWORD dwplayerflags; dwplayerflags; DPN_PLAYER_INFO, *PDPN_PLAYER_INFO; HRESULT WINAPI ServerMsgeHandler( PVOID pvusercontext, DWORD dwmessageid, PVOID pmsgbuffer) IDirectPlay8Server *pdpserver; DPNMSG_CREATE_PLAYER *pcreateplayer; DPN_PLAYER_INFO *dppi; DWORD dwsize; HRESULT hr; if( (pdpserver = (IDirectPlay8Server*)pvUserContext)) == NULL ) return E_FAIL; 플레이어 (3) switch( dwmessageid ) case DPN_MSGID_CREATE_PLAYER: pcreateplayer = (DPNMSG_CREATE_PLAYER *)pmsgbuffer; dwsize = 0; dppi = NULL; hr = pdpserver->getclientinfo( pcreateplayer->dpnidplayer, dppi, &dwsize, 0); if( FAILED(hr) && hr!=dpnerr_buffer_toosmall ) if( hr==dpnerr_invalidplayer ) break; dppi = (DPN_PLAYER_INFO *)new BYTE[dwSize]; ZeroMemory( dppi, sizeof(dpn_player_info) ); dppi.dwsize = sizeof(dpn_player_info); if( FAILED(pDPServer->GetClientInfo( pcreateplayer->dpnidplayer, dppi, &dwsize, 0 ))) delete [] dppi; break; char szname[32]; wcstombs( szname, dppi->pwszname, 32 ); MessageBox( NULL, szname, Player Joined, MB_OK ); delete [] dppi; return S_OK; return E_FAIL;

13 플레이어 (4) 플레이어의파괴 typedef typedef struct struct _DPNMSG_DESTROY_PLAYER DWORD DWORD dwsize; dwsize; DPNID DPNID dpnidplayer; dpnidplayer; PVOID PVOID pvplayercontext; DWORD DWORD dwreason; dwreason; DPNMSG_DESTROY_PLAYER, *PDPNMSG_DESTROY_PLAYER; dwreason DPNDESTROYPLAYERREASON_NORMAL, DPNDESTROYPLAYERREASON_CONNECTIONLOST, DPNDESTROYPLAYERREASON_SESSIONTERMINATED DPNDESTROYPLAYERREASON_HOSTDESTROYSERVER HRESULT HRESULT IDirectPlay8Server::DestroyClient( const const DPNID DPNID dpnidclient, dpnidclient, const const VOID VOID *const *const pdestroyinfo, pdestroyinfo, const const DWORD DWORD dwdestroyinfosize, const const DWORD DWORD dwflags dwflags ); ); 서버와클라이언트의사용 서버생성 서버메시지전송 서버세션종료 클라이언트생성 클라이언트메시지전송 클라이언트세션종료

14 서버생성 (1) GUID AppGUID = 0xede9493e, 0x6ac8, 0x4f15, 0x8d, 0x1, 0x8b, 0x16, 0x32, 0x0, 0xb9, 0x66 ; HRESULT WINAPI = ServerMsgHandler( PVOID pvusercontext, DWORD dwmessageid, PVOID pmsgbuffer ); IDirectPlay8Server *StartNetworkServer( char *szsessionname, char *szpasswrod, DWORD dwport, DWORD dwmaxplayers ) IDirectPlay8Server *pdpserver; IDirectPlay8Address *pdpaddress; DPN_APPLICATION_DESC dpad; WCHAR wszsessionname[256]; WCHAR wszpassword[256]; if( FAILED(DirectPlay8Create(&IID_IDirectPlay8Server, (void**)&pdpserver, NULL))) return NULL; if( FAILED(pDPServer->Initialize(pDPServer, ServerMsgHandler, 0))) pdpserver->release(); return NULL; if( FAILED(DirectPlay8AddressCreate(&IID_IDirectPlay8Address, (void**)&pdpaddress, NULL))) pdpserver->release(); return NULL; 서버생성 (2) pdpaddress->setsp( &CLDIP_DP8SP_TCPIP ); pdpaddress->addcomponent( DPNA_KEY_PORT, &dwport, sizeof(dword), DPNA_DATATYPE_DWORD ); ZeroMemory( &dpad, sizeof(dpn_application_desc) ); dpad.dwsize = sizeof( DPN_APPLICATION_DESC ); dpad.dwflag = DPNSESSION_CLIENT_SERVER; dpad.guidapplication = AppGUID; mbstowcs( wszsessionname, szsessionname, strlen(szsessionname)+1 ); dpad.pwszsessionname = wszsessionname; if( szpassword!= NULL ) mbstowcs( wszpassword, szpassword, strlen(szpassword)+1 ); dpad.pwszpassword = wszpassword; dpad.dwflag = DPNSESSION_REQUIREPASSWORD; dpad.dwmaximumplayers = dwmaxplayer; if( FAILED(pDPServer->Host(&pdad, &pdpaddress, 1, NULL, NULL, NULL, 0))) pdpaddress->release(); pdpserver->release(); return NULL; pdpaddress->release(); return pdpserver;

15 서버생성 (3) 호스팅함수 서버객체의네트워킹세션을시작함 HRESULT HRESULT IDirectPlay8Server::Host( const const DPN_APPLICATION_DESC *const *const pdnappdesc, pdnappdesc, IDirectPlay8Address **const **const prgpdeviceinfo, prgpdeviceinfo, const const DWORD DWORD cdeviceinfo, cdeviceinfo, const const DPN_SECURITY_DESC *const *const pdpsecurity, pdpsecurity, const const DPN_SECURITY_CREDENTIALS *const *const pdpcredentials, pdpcredentials, VOID VOID *const *const pvplayercontext, const const DWORD DWORD dwflags dwflags ); ); 서버메시지전송 (1)

16 Tutorials DXSDK\Samples\C++\DirectPlay 1) enumerating the available DirectPlay service providers 2) creation of an address object and hosting a session 3) enumerating the hosts at a given target address 4) connecting 5) sending data 6) host migration 7) lobby launching 8) void support 9) client-server model 10) useing the IDirectPlay8ThreadPool interface Result: EnumSP

17 Global Variables WinMain ( ) (1)

18 WinMain ( ) (2) MainDlgProc ( ) (1)

19 MainDlgProc ( ) (2) DirectPlayMessageHandler ( )

20 ListServiceProviders ( ) (1) ListServiceProviders ( ) (2)

21 InitDirectPlay ( ) Other Functions

K&R2 Reference Manual 번역본

K&R2 Reference Manual 번역본 typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct

More information

The Pocket Guide to TCP/IP Sockets: C Version

The Pocket Guide to  TCP/IP Sockets: C Version 인터넷프로토콜 03 장 도메인네임시스템과주소 패밀리 (IPv4-IPv6 서비스 ) 1 목차 제 3 장도메인네임시스템과주소패밀리 3.1 도메인네임주소를숫자주소로매핑하기 3.2 IP 버전에무관한주소-범용코드의작성 3.3 숫자주소에서도메인네임주소획득하기 2 getaddrinfo() 를활용한주소 범용 (Generic) 코드 주소범용 (Generic) 코드란? 주소버전

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Network Programming Jo, Heeseung Network 실습 네트워크프로그래밍 멀리떨어져있는호스트들이서로데이터를주고받을수있도록프로그램을구현하는것 파일과는달리데이터를주고받을대상이멀리떨어져있기때문에소프트웨어차원에서호스트들간에연결을해주는장치가필요 이러한기능을해주는장치로소켓이라는인터페이스를많이사용 소켓프로그래밍이란용어와네트워크프로그래밍이랑용어가같은의미로사용

More information

Chapter #01 Subject

Chapter #01  Subject Device Driver March 24, 2004 Kim, ki-hyeon 목차 1. 인터럽트처리복습 1. 인터럽트복습 입력검출방법 인터럽트방식, 폴링 (polling) 방식 인터럽트서비스등록함수 ( 커널에등록 ) int request_irq(unsigned int irq, void(*handler)(int,void*,struct pt_regs*), unsigned

More information

The Pocket Guide to TCP/IP Sockets: C Version

The Pocket Guide to  TCP/IP Sockets: C Version 인터넷프로토콜 5 장 데이터송수신 (3) 1 파일전송메시지구성예제 ( 고정크기메시지 ) 전송방식 : 고정크기 ( 바이너리전송 ) 필요한전송정보 파일이름 ( 최대 255 자 => 255byte 의메모리공간필요 ) 파일크기 (4byte 의경우최대 4GB 크기의파일처리가능 ) 파일내용 ( 가변길이, 0~4GB 크기 ) 메시지구성 FileName (255bytes)

More information

제목

제목 Development Technology Seminar 작 성 자 : 고형호 이 메 일 : hyungho.ko@gmail.com 최초작성일 : 2007.01.19 최종작성일 : 2007.02.05 버 전 : 01.05 홈 피 : www.innosigma.com Goal Exception Handling 1. SEH vs. CEH Exception Handling

More information

The Pocket Guide to TCP/IP Sockets: C Version

The Pocket Guide to  TCP/IP Sockets: C Version 얇지만얇지않은 TCP/IP 소켓프로그래밍 C 2 판 4 장 UDP 소켓 제 4 장 UDP 소켓 4.1 UDP 클라이언트 4.2 UDP 서버 4.3 UDP 소켓을이용한데이터송싞및수싞 4.4 UDP 소켓의연결 UDP 소켓의특징 UDP 소켓의특성 싞뢰할수없는데이터젂송방식 목적지에정확하게젂송된다는보장이없음. 별도의처리필요 비연결지향적, 순서바뀌는것이가능 흐름제어 (flow

More information

vi 사용법

vi 사용법 네트워크프로그래밍 6 장과제샘플코드 - 1:1 채팅 (udp 버전 ) 과제 서버에서먼저 bind 하고그포트를다른사람에게알려줄것 클라이언트에서알려준포트로접속 서로간에키보드입력을받아상대방에게메시지전송 2 Makefile 1 SRC_DIR =../../common 2 COM_OBJS = $(SRC_DIR)/addressUtility.o $(SRC_DIR)/dieWithMessage.o

More information

No Slide Title

No Slide Title Copyright, 2001 Multimedia Lab., CH 3. COM object (In-process server) Eun-sung Lee twoss@mmlab.net Multimedia Lab. Dept. of Electrical and Computer Eng. University of Seoul Seoul, Korea 0. Contents 1.

More information

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - 04-UDP Programming.ppt Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여

More information

2009년 상반기 사업계획

2009년 상반기 사업계획 소켓프로그래밍활용 IT CookBook, 유닉스시스템프로그래밍 학습목표 소켓인터페이스를활용한다양한프로그램을작성할수있다. 2/23 목차 TCP 기반프로그래밍 반복서버 동시동작서버 동시동작서버-exec함수사용하기 동시동작서버-명령행인자로소켓기술자전달하기 UDP 프로그래밍 3/23 TCP 기반프로그래밍 반복서버 데몬프로세스가직접모든클라이언트의요청을차례로처리 동시동작서버

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC Step 1~5. Step, PC, DVR Step 1. Cable Step

More information

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 2. 관련연구 2.1 MQTT 프로토콜 Fig. 1. Topic-based Publish/Subscribe Communication Model. Table 1. Delivery and Guarantee by MQTT QoS Level 2.1 MQTT-SN 프로토콜 Fig. 2. MQTT-SN

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT T9 & AUTOMATA 2007. 3. 23 PLATFORM TEAM 정용학 차례 T9 개요 새로운언어 (LDB) 추가 T9 주요구조체 / 주요함수 Automata 개요 Automata 주요함수 추후세미나계획 질의응답및토의 T9 ( 2 / 30 ) T9 개요 일반적으로 cat 이라는단어를쓸려면... 기존모드 (multitap) 2,2,2, 2,8 ( 총 6번의입력

More information

<4D F736F F F696E74202D E20B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D62E >

<4D F736F F F696E74202D E20B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D62E > 웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 소켓 (Socket) (1/2) Socket 이란? 서버와클라이언트가서로특정한규약을사용하여데이터를전송하기위한방식 서버와클라이언트는소켓연결을기다렸다가소켓이연결되면서로데이터를전송 현재네트워크상에서의모든통신의근간은 Socket 이라할수있음 Page 2 1 소켓 (Socket) (2/2)

More information

Frama-C/JESSIS 사용법 소개

Frama-C/JESSIS 사용법 소개 Frama-C 프로그램검증시스템소개 박종현 @ POSTECH PL Frama-C? C 프로그램대상정적분석도구 플러그인구조 JESSIE Wp Aorai Frama-C 커널 2 ROSAEC 2011 동계워크샵 @ 통영 JESSIE? Frama-C 연역검증플러그인 프로그램분석 검증조건추출 증명 Hoare 논리에기초한프로그램검증도구 사용법 $ frama-c jessie

More information

1장 윈도우 프로그래밍 들어가기

1장 윈도우 프로그래밍 들어가기 1 장 윈도우프로그래밍들어가기 김성영교수 금오공과대학교 컴퓨터공학부 예제 다음프로그램은언제종료할까? #include #define QUIT -1 int Func(void) int i; cout > i; return i; void main(void) int Sum = 0, i; cout

More information

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - (Asynchronous Mode) - - - ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - UART (Univ ers al As y nchronous Receiver / T rans mitter) 8250A 8250A { COM1(3F8H). - Line Control Register

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 ) 8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 ) - DDL(Data Definition Language) : show, create, drop

More information

11장 포인터

11장 포인터 Dynamic Memory and Linked List 1 동적할당메모리의개념 프로그램이메모리를할당받는방법 정적 (static) 동적 (dynamic) 정적메모리할당 프로그램이시작되기전에미리정해진크기의메모리를할당받는것 메모리의크기는프로그램이시작하기전에결정 int i, j; int buffer[80]; char name[] = data structure"; 처음에결정된크기보다더큰입력이들어온다면처리하지못함

More information

chap10.PDF

chap10.PDF 10 C++ Hello!! C C C++ C++ C++ 2 C++ 1980 Bell Bjarne Stroustrup C++ C C++ C, C++ C C 3 C C++ (prototype) (type checking) C C++ : C++ 4 C C++ (prototype) (type checking) [ 10-1] #include extern

More information

슬라이드 1

슬라이드 1 파일 I/O 와디렉터리컨트롤 1 목차 기본적인파일처리 파일검색 파일열기 & 닫기 파일읽기 & 쓰기 삭제, 복사, 이동 (?) 파일의시간정보얻기 파일특성정보얻기 파일포인터 directory 생성 & 삭제 경로설정 경로얻기 2 파일생성 / 열기 HANDLE CreateFile ( LPCTSTR lpfilename, DWORD dwdesiredaccess, 파일이름

More information

03장.스택.key

03장.스택.key ---------------- DATA STRUCTURES USING C ---------------- 03CHAPTER 1 ? (stack): (LIFO:Last-In First-Out) 2 : top : ( index -1 ),,, 3 : ( ) ( ) -> ->. ->.... 4 Stack ADT : (LIFO) : init():. is_empty():

More information

PCServerMgmt7

PCServerMgmt7 Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network

More information

초보자를 위한 C# 21일 완성

초보자를 위한 C# 21일 완성 C# 21., 21 C#., 2 ~ 3 21. 2 ~ 3 21.,. 1~ 2 (, ), C#.,,.,., 21..,.,,, 3. A..,,.,.. Q&A.. 24 C#,.NET.,.,.,. Visual C# Visual Studio.NET,..,. CD., www. TeachYour sel f CSharp. com., ( )., C#.. C# 1, 1. WEEK

More information

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Crash Unity SDK... Log & Crash Search. - Unity3D v4.0 ios

More information

Microsoft PowerPoint - Lecture_Note_5.ppt [Compatibility Mode]

Microsoft PowerPoint - Lecture_Note_5.ppt [Compatibility Mode] TCP Server/Client Department of Computer Engineering Kyung Hee University. Choong Seon Hong 1 TCP Server Program Procedure TCP Server socket() bind() 소켓생성 소켓번호와소켓주소의결합 listen() accept() read() 서비스처리, write()

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 (Host) set up : Linux Backend RS-232, Ethernet, parallel(jtag) Host terminal Target terminal : monitor (Minicom) JTAG Cross compiler Boot loader Pentium Redhat 9.0 Serial port Serial cross cable Ethernet

More information

1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y; public : CPoint(int a

1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y; public : CPoint(int a 6 장복사생성자 객체의생성과대입객체의값에의한전달복사생성자디폴트복사생성자복사생성자의재정의객체의값에의한반환임시객체 C++ 프로그래밍입문 1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y;

More information

03_queue

03_queue Queue Data Structures and Algorithms 목차 큐의이해와 ADT 정의 큐의배열기반구현 큐의연결리스트기반구현 큐의활용 덱 (Deque) 의이해와구현 Data Structures and Algorithms 2 큐의이해와 ADT 정의 Data Structures and Algorithms 3 큐 (Stack) 의이해와 ADT 정의 큐는 LIFO(Last-in,

More information

강의10

강의10 Computer Programming gdb and awk 12 th Lecture 김현철컴퓨터공학부서울대학교 순서 C Compiler and Linker 보충 Static vs Shared Libraries ( 계속 ) gdb awk Q&A Shared vs Static Libraries ( 계속 ) Advantage of Using Libraries Reduced

More information

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS ( PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (http://ddns.hanwha-security.com) Step 1~5. Step, PC, DVR Step 1. Cable Step

More information

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt 변수와상수 1 변수란무엇인가? 변수 : 정보 (data) 를저장하는컴퓨터내의특정위치 ( 임시저장공간 ) 메모리, register 메모리주소 101 번지 102 번지 변수의크기에따라 주로 byte 단위 메모리 2 기본적인변수형및변수의크기 변수의크기 해당컴퓨터에서는항상일정 컴퓨터마다다를수있음 short

More information

The Pocket Guide to TCP/IP Sockets: C Version

The Pocket Guide to  TCP/IP Sockets: C Version 1 목포해양대해양컴퓨터공학과 UDP 소켓 네트워크프로그램설계 4 장 2 목포해양대해양컴퓨터공학과 목차 제 4장 UDP 소켓 4.1 UDP 클라이언트 4.2 UDP 서버 4.3 UDP 소켓을이용한데이터송신및수신 4.4 UDP 소켓의연결 3 목포해양대해양컴퓨터공학과 UDP 소켓의특징 UDP 소켓의특성 신뢰할수없는데이터전송방식 목적지에정확하게전송된다는보장이없음.

More information

Sena Device Server Serial/IP TM Version

Sena Device Server Serial/IP TM Version Sena Device Server Serial/IP TM Version 1.0.0 2005. 3. 7. Release Note Revision Date Name Description V1.0.0 2005-03-7 HJ Jeon Serial/IP 4.3.2 ( ) 210 137-130, : (02) 573-5422 : (02) 573-7710 email: support@sena.com

More information

Microsoft Word - release note-VRRP_Korean.doc

Microsoft Word - release note-VRRP_Korean.doc VRRP (Virtual Router Redundancy Protocol) 기능추가 Category S/W Release Version Date General 7.01 22 Dec. 2003 Function Description VRRP 는여러대의라우터를그룹으로묶어하나의가상 IP 어드레스를부여해마스터로지정된라우터장애시 VRRP 그룹내의백업라우터가마스터로자동전환되는프로토콜입니다.

More information

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning C Programming Practice (II) Contents 배열 문자와문자열 구조체 포인터와메모리관리 구조체 2/17 배열 (Array) (1/2) 배열 동일한자료형을가지고있으며같은이름으로참조되는변수들의집합 배열의크기는반드시상수이어야한다. type var_name[size]; 예 ) int myarray[5] 배열의원소는원소의번호를 0 부터시작하는색인을사용

More information

FileMaker 15 ODBC 및 JDBC 설명서

FileMaker 15 ODBC 및 JDBC 설명서 FileMaker 15 ODBC JDBC 2004-2016 FileMaker, Inc.. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker FileMaker Go FileMaker, Inc.. FileMaker WebDirect FileMaker, Inc... FileMaker.

More information

SMB_ICMP_UDP(huichang).PDF

SMB_ICMP_UDP(huichang).PDF SMB(Server Message Block) UDP(User Datagram Protocol) ICMP(Internet Control Message Protocol) SMB (Server Message Block) SMB? : Microsoft IBM, Intel,. Unix NFS. SMB client/server. Client server request

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-SEGMENT DEVICE CONTROL - DEVICE DRIVER Jo, Heeseung 디바이스드라이버구현 : 7-SEGMENT HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 디바이스드라이버구현 : 7-SEGMENT 6-Digit 7-Segment LED

More information

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드] - Socket Programming in Java - 목차 소켓소개 자바에서의 TCP 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 Q/A 에코프로그램 - EchoServer 에코프로그램 - EchoClient TCP Programming 1 소켓소개 IP, Port, and Socket 포트 (Port): 전송계층에서통신을수행하는응용프로그램을찾기위한주소

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-Segment Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 6-Digit 7-Segment LED controller 16비트로구성된 2개의레지스터에의해제어 SEG_Sel_Reg(Segment

More information

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아 LG U+ SMS/MMS 통합클라이언트 LG U+ SMS/MMS Client Simple Install Manual LG U+ SMS/MMS 통합클라이언트 - 1 - 간단설치매뉴얼 1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml

More information

운영체제실습_명령어

운영체제실습_명령어 운영체제실습 리눅스네트워크기본개념및설정 서 기옥 Contents 네트워크용어정의 IP 주소 네트워크기본명령어 네트워크관리명령어 네트워크설정파일 telnet 서버설정 네트워크용어정의 네트워크 (Network) : 전자적으로데이터를주고받기위한목적으로연결된 2 개이상의컴퓨터시스템 IP 주소와 Ethernet 주소 IP 주소 : 네트워크에연결된시스템을구분하는소프트웨어적인주소

More information

FileMaker ODBC 및 JDBC 가이드

FileMaker ODBC 및 JDBC 가이드 FileMaker ODBC JDBC 2004-2019 FileMaker, Inc.. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker, FileMaker Cloud, FileMaker Go FileMaker, Inc.. FileMaker WebDirect FileMaker,

More information

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어 개나리 연구소 C 언어 노트 (tyback.egloos.com) 프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어먹고 하더라구요. 그래서,

More information

Mango220 Android How to compile and Transfer image to Target

Mango220 Android How to compile and Transfer image to Target Mango220 Android How to compile and Transfer image to Target http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

More information

Microsoft PowerPoint - 09-CE-5-윈도우 핸들

Microsoft PowerPoint - 09-CE-5-윈도우 핸들 순천향대학교컴퓨터학부이상정 1 학습내용 윈도우핸들 윈도우찿기 윈도우확인및제거 윈도우숨기기 윈도우포커스 윈도우텍스트 윈도우핸들 순천향대학교컴퓨터학부이상정 3 핸들 (handle) 윈도우에서구체적인어떤대상을구분하기위해지정되는고유의번호 32비트의정수값 핸들은운영체제가발급하고사용자가이값을사용 실제값이무엇인지는몰라도상관없음 윈도우, DC, 브러쉬등등 순천향대학교컴퓨터학부이상정

More information

제8장 자바 GUI 프로그래밍 II

제8장 자바 GUI 프로그래밍 II 제8장 MVC Model 8.1 MVC 모델 (1/7) MVC (Model, View, Controller) 모델 스윙은 MVC 모델에기초를두고있다. MVC란 Xerox의연구소에서 Smalltalk 언어를바탕으로사용자인터페이스를개발하기위한방법 MVC는 3개의구성요소로구성 Model : 응용프로그램의자료를표현하기위한모델 View : 자료를시각적으로 (GUI 방식으로

More information

Modern Javascript

Modern Javascript ES6 - Arrow Function Class Template String Destructuring Default, Rest, Spread let, const for..of Promises Module System Map, Set * Generator * Symbol * * https://babeljs.io/ Babel is a JavaScript compiler.

More information

Microsoft Word - KPMC-400,401 SW 사용 설명서

Microsoft Word - KPMC-400,401 SW 사용 설명서 LKP Ethernet Card SW 사용설명서 Version Information Tornado 2.0, 2.2 알 림 여기에실린내용은제품의성능향상과신뢰도의증대를위하여예고없이변경될수도있습니다. 여기에실린내용의일부라도엘케이일레븐의사전허락없이어떠한유형의매체에복사되거나저장될수없으며전기적, 기계적, 광학적, 화학적인어떤방법으로도전송될수없습니다. 엘케이일레븐경기도성남시중원구상대원동

More information

The Pocket Guide to TCP/IP Sockets: C Version

The Pocket Guide to  TCP/IP Sockets: C Version 얇지만얇지않은 TCP/IP 소켓프로그래밍 C 2 판 Chap 3. Of Names and Address Families Chap. 3 Of Names and Address Families 3.1 도메인네임주소를숫자주소로매핑하기 3.2 IP 버전에무관한주소 - 범용코드의작성 3.3 숫자주소에서도메인네임주소획득하기 기존 IPv4 전용, IPv6 전용코드의취약성

More information

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터 - Part2-3 3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터 3.1 포인터란 ü ü ü. ü. ü. ü ( ) ? 3.1 ü. ü C ( ).? ü ü PART2-4 ü ( ) PART3-4 3.2 포인터변수의선언과사용 3.2 포인터 변수의 선언과 사용 (1/8) 포인터 변수의

More information

5.스택(강의자료).key

5.스택(강의자료).key CHP 5: https://www.youtube.com/watch?v=ns-r91557ds ? (stack): (LIFO:Last-In First-Out):. D C B C B C B C B (element) C (top) B (bottom) (DT) : n element : create() ::=. is_empty(s) ::=. is_full(s) ::=.

More information

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100 2015-1 프로그래밍언어 9. 연결형리스트, Stack, Queue 2015 년 5 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) 연결리스트 (Linked List) 연결리스트연산 Stack

More information

Microsoft PowerPoint - L4-7Switch기본교육자료.ppt

Microsoft PowerPoint - L4-7Switch기본교육자료.ppt L4-7 Switch 기본교육자료 Pumpkin Networks. Inc. http://www.pumpkinnet.co.kr (Tel) 02-3280-9380 (Fax) 02-3280-9382 info@pumpkinnet.co.kr 기본개념 L4/L7 Switch 란? -2- 기본개념 - Switching & Routing Switching & Routing

More information

Windows 8에서 BioStar 1 설치하기

Windows 8에서 BioStar 1 설치하기 / 콘텐츠 테이블... PC에 BioStar 1 설치 방법... Microsoft SQL Server 2012 Express 설치하기... Running SQL 2012 Express Studio... DBSetup.exe 설정하기... BioStar 서버와 클라이언트 시작하기... 1 1 2 2 6 7 1/11 BioStar 1, Windows 8 BioStar

More information

SRC PLUS 제어기 MANUAL

SRC PLUS 제어기 MANUAL ,,,, DE FIN E I N T R E A L L O C E N D SU B E N D S U B M O TIO

More information

Lab 3. 실습문제 (Single linked list)_해답.hwp

Lab 3. 실습문제 (Single linked list)_해답.hwp Lab 3. Singly-linked list 의구현 실험실습일시 : 2009. 3. 30. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 5. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Singly-linked list의각함수를구현한다.

More information

<4D F736F F F696E74202D203031C0E520C0A9B5B5BFEC20C7C1B7CEB1D7B7A1B9D620B1E2C3CA5FBFB5B3B2C0CCB0F8B4EB205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D203031C0E520C0A9B5B5BFEC20C7C1B7CEB1D7B7A1B9D620B1E2C3CA5FBFB5B3B2C0CCB0F8B4EB205BC8A3C8AF20B8F0B5E55D> 01 : 윈도우프로그래밍기초 학습목표 윈도우운영체제와윈도우응용프로그램의특징을이해한다. SDK 응용프로그램작성과정, 기본구조, 동작원리를이해한다. MFC 응용프로그램작성과정, 기본구조, 동작원리를이해한다. 비주얼 C++ 개발환경사용법을익힌다. 윈도우운영체제특징 (1/3) 그래픽사용자인터페이스 1 윈도우운영체제특징 (2/3) 메시지구동구조 이벤트발생... 대기

More information

SS Term #3.doc

SS Term #3.doc Base Knowledge 1/42 Base Knowledge 2/42 Network Initialization 3/42 Network Initialization 4/42 Network Initialization 5/42 Network Initialization 6/42 Network Initialization 7/42 Network Initialization

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program

More information

Chapter_02-3_NativeApp

Chapter_02-3_NativeApp 1 TIZEN Native App April, 2016 Dept. of software Dankook University http://embedded.dankook.ac.kr/~baeksj 목차 2 Tizen EFL Tizen EFL 3 Tizen EFL Enlightment Foundation Libraries 타이젠핵심코어툴킷 Tizen EFL 4 Tizen

More information

Microsoft PowerPoint - chap11-포인터의활용.pptx

Microsoft PowerPoint - chap11-포인터의활용.pptx #include int main(void) int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; 1 학습목표 포인터를 사용하는 다양한 방법에

More information

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont 12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다. 12.1 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont( in LPDIRECT3DDEVICE9 pdevice, in INT Height, in UINT

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-Segment Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 6-Digit 7-Segment LED Controller 16비트로구성된 2개의레지스터에의해제어 SEG_Sel_Reg(Segment

More information

Microsoft PowerPoint - Chap12-OOP.ppt

Microsoft PowerPoint - Chap12-OOP.ppt 객체지향프로그래밍 (Object Oriented Programming) 12 장강사 강대기 차례 (Agenda) 멤버에대한동적메모리할당 암시적 / 명시적복사생성자 암시적 / 명시적오버로딩대입연산자 생성자에 new 사용하기 static 클래스멤버 객체에위치지정 new 사용하기 객체를지시하는포인터 StringBad 클래스 멤버에포인터사용 str static 멤버

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 C 언어포인터정복하기 16 강. 포인터로자료구조화하기 TAE-HYONG KIM COMPUTER ENG, KIT 2 학습내용 구조체멤버와구조체포인터멤버 다른구조체 ( 변수 ) 를가리키는구조체 ( 변수 ) 연결된리스트 의구성및관리 포인터로 연결된리스트 탐색하기 3 중첩구조체에자료저장하기 중첩된구조체변수에값저장하기 struct person { char PRID[15];

More information

Remote UI Guide

Remote UI Guide Remote UI KOR Remote UI Remote UI PDF Adobe Reader/Adobe Acrobat Reader. Adobe Reader/Adobe Acrobat Reader Adobe Systems Incorporated.. Canon. Remote UI GIF Adobe Systems Incorporated Photoshop. ..........................................................

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT 2007. 2. 5 PLATFORM TEAM 정용학 차례 CONTAINER & WIDGET SPECIAL WIDGET 질의응답및토의 2 Container LCD에보여지는화면한개 1개이상의 Widget을가짐 3 Container 초기화과정 ui_init UMP_F_CONTAINERMGR_Initialize UMP_H_CONTAINERMGR_Initialize

More information

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V Mobile Service > IAP > Android SDK IAP SDK TOAST SDK. IAP SDK. Android Studio IDE 2.3.3 Android SDK Version 2.3.3 (API Level 10). Name Reference Version License okhttp http://square.github.io/okhttp/ 1.5.4

More information

bn2019_2

bn2019_2 arp -a Packet Logging/Editing Decode Buffer Capture Driver Logging: permanent storage of packets for offline analysis Decode: packets must be decoded to human readable form. Buffer: packets must temporarily

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,

More information

MFC 프로그래밍

MFC 프로그래밍 윈도우프로그래밍 Visual C++ 2010 MFC Programming 1 장. 윈도우프로그래밍기초 윈도우운영체제의특징 그래픽사용자인터페이스 시스템메뉴타이틀바메뉴최소 / 최대 / 닫기버튼 툴바 대화상자 클라이언트영역 상태표시줄 스크롤바 윈도우운영체제의특징 메시지구동구조 윈도우운영체제의특징 멀티태스킹과멀티스레딩 멀티태스킹 (Multitasking) 운영체제가여러개의응용프로그램을동시에실행

More information

Microsoft Word - src.doc

Microsoft Word - src.doc IPTV 서비스탐색및콘텐츠가이드 RI 시스템운용매뉴얼 목차 1. 서버설정방법... 5 1.1. 서비스탐색서버설정... 5 1.2. 컨텐츠가이드서버설정... 6 2. 서버운용방법... 7 2.1. 서비스탐색서버운용... 7 2.1.1. 서비스가이드서버실행... 7 2.1.2. 서비스가이드정보확인... 8 2.1.3. 서비스가이드정보추가... 9 2.1.4. 서비스가이드정보삭제...

More information

이번장에서학습할내용 동적메모리란? malloc() 와 calloc() 연결리스트 파일을이용하면보다많은데이터를유용하고지속적으로사용및관리할수있습니다. 2

이번장에서학습할내용 동적메모리란? malloc() 와 calloc() 연결리스트 파일을이용하면보다많은데이터를유용하고지속적으로사용및관리할수있습니다. 2 제 17 장동적메모리와연결리스트 유준범 (JUNBEOM YOO) Ver. 2.0 jbyoo@konkuk.ac.kr http://dslab.konkuk.ac.kr 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 이번장에서학습할내용 동적메모리란? malloc() 와 calloc() 연결리스트 파일을이용하면보다많은데이터를유용하고지속적으로사용및관리할수있습니다.

More information

제 호 년 제67차 정기이사회, 고문 자문위원 추대 총동창회 집행부 임원 이사에게 임명장 수여 월 일(일) 년 월 일(일) 제 역대 최고액 모교 위해 더 확충해야 강조 고 문:고달익( 1) 김병찬( 1) 김지훈( 1) 강보성( 2) 홍경식( 2) 현임종( 3) 김한주( 4) 부삼환( 5) 양후림( 5) 문종채( 6) 김봉오( 7) 신상순( 8) 강근수(10)

More information

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F > 10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절

More information

OvenPlayer SDK for Windows Developer s Guide Release 2.0 AirenSoft 4 월 07, 2016

OvenPlayer SDK for Windows Developer s Guide Release 2.0 AirenSoft 4 월 07, 2016 OvenPlayer SDK for Windows Developer s Guide Release 20 AirenSoft 4 월 07, 2016 Contents 1 소개 11 12 13 14 15 1 1 1 2 2 2 2 설치 및 사용방법 21 다운로드 22 라이브러리 등록 23 컴포넌트 삽입 24 Wrapper Class 추가 및 사용 25 Event Hanler

More information

3주차_Core Audio_ key

3주차_Core Audio_ key iphone OS Sound Programming 5 Core Audio For iphone OS 2010-2 Dept. of Multimedia Science, Sookmyung Women's University JongWoo Lee 1 Index 1. Introduction 2. What is Core Audio? 3. Core Audio Essentials

More information

Network Programming

Network Programming Part 5 확장된 Network Programming 기술 1. Remote Procedure Call 2. Remote Method Invocation 3. Object Request Broker 2. Java RMI

More information

personal-information-handling-policy

personal-information-handling-policy 개인정보처리방침 에이스아메리카화재해상보험 한국지점 (이하 회사 )는 개인정보보호법에 따라 이용자의 개인정보 보호 및 권익을 보호하고 개인정보와 관련한 이용자의 고충을 원활하게 처리할 수 있도록 다음과 같은 처리방침을 두고 있습니다. 제 1 조 (개인정보의 처리 목적) 회사는 다음의 목적을 위해 개인정보를 처리합니다. 처리한 개인정보는 다음의 목적 이외의 용도로는

More information

TTA Verified : HomeGateway :, : (NEtwork Testing Team)

TTA Verified : HomeGateway :, : (NEtwork Testing Team) TTA Verified : HomeGateway :, : (NEtwork Testing Team) : TTA-V-N-05-006-CC11 TTA Verified :2006 6 27 : 01 : 2005 7 18 : 2/15 00 01 2005 7 18 2006 6 27 6 7 9 Ethernet (VLAN, QoS, FTP ) (, ) : TTA-V-N-05-006-CC11

More information

The Pocket Guide to TCP/IP Sockets: C Version

The Pocket Guide to  TCP/IP Sockets: C Version 인터넷프로토콜 03 장 도메인네임시스템과주소 패밀리 (IPv4-IPv6 서비스 ) 1 목포해양대해양컴퓨터공학과 목차 제 3 장도메인네임시스템과주소패밀리 3.1 도메인네임주소를숫자주소로매핑하기 3.2 IP 버전에무관한주소-범용코드의작성 3.3 숫자주소에서도메인네임주소획득하기 2 목포해양대해양컴퓨터공학과 기존 IPv4 전용, IPv6 전용코드의 취약성 전용주소코드

More information

02장.배열과 클래스

02장.배열과 클래스 ---------------- DATA STRUCTURES USING C ---------------- CHAPTER 배열과구조체 1/20 많은자료의처리? 배열 (array), 구조체 (struct) 성적처리프로그램에서 45 명의성적을저장하는방법 주소록프로그램에서친구들의다양한정보 ( 이름, 전화번호, 주소, 이메일등 ) 를통합하여저장하는방법 홍길동 이름 :

More information

Secure Programming Lecture1 : Introduction

Secure Programming Lecture1 : Introduction Malware and Vulnerability Analysis Lecture3-2 Malware Analysis #3-2 Agenda 안드로이드악성코드분석 악성코드분석 안드로이드악성코드정적분석 APK 추출 #1 adb 명령 안드로이드에설치된패키지리스트추출 adb shell pm list packages v0nui-macbook-pro-2:lecture3 v0n$

More information

hd1300_k_v1r2_Final_.PDF

hd1300_k_v1r2_Final_.PDF Starter's Kit for HelloDevice 1300 Version 11 1 2 1 2 3 31 32 33 34 35 36 4 41 42 43 5 51 52 6 61 62 Appendix A (cross-over) IP 3 Starter's Kit for HelloDevice 1300 1 HelloDevice 1300 Starter's Kit HelloDevice

More information

어댑터뷰

어댑터뷰 04 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adatper View) 란? u 어댑터뷰의항목하나는단순한문자열이나이미지뿐만아니라, 임의의뷰가될수 있음 이미지뷰 u 커스텀어댑터뷰설정절차 1 2 항목을위한 XML 레이아웃정의 어댑터정의 3 어댑터를생성하고어댑터뷰객체에연결

More information

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

歯2019

歯2019 122 (22 ) 68 (5 ) 8 (3) 8 (3) 8 ( ) 7 (5) 5 (5) 4 ( ) 4 ( ) 3 (1) 3 ( ) 1 ( ) 1 ( ) 1 ( ) 1 ( ) ( ) ( ) * :, ( ) : : 10 : 1 : : 18 : 9 : 8 : 5 (10 ) ( : ) 2002.8. 1 2003.2. 1 1 180,000 225,000 45,000 2

More information

윈도우 프로그래밍의 개념

윈도우 프로그래밍의 개념 제 8 장컨트롤과리소스 II 8.1 탭컨트롤 8.2 슬라이더컨트롤실습 8-1 도형의종류와색상출력하기 8.3 스핀컨트롤 8.4 프로그레스바컨트롤 8.5 IP 주소컨트롤 8.6 네트워크주소컨트롤 8.7 날짜 / 시간컨트롤 8.8 애니메이트컨트롤실습 8.2 데이터전송시뮬레이터작성하기 컨트롤및리소스 리스트컨트롤 (List Control) 트리컨트롤 (Tree Control)

More information

슬라이드 1

슬라이드 1 CHAP 6: 큐 yicho@gachon.ac.kr 1 큐 (QUEUE) 큐 : 먼저들어온데이터가먼저나가는자료구조 선입선출 (FIFO: First-In First-Out) ( 예 ) 매표소의대기열 Ticket Box 전단 () 후단 () 2 큐 ADT 삽입과삭제는 FIFO 순서를따른다. 삽입은큐의후단에서, 삭제는전단에서이루어진다. 객체 : n 개의 element

More information