티스토리 뷰
제2과목 프로그래밍 일반(2)
4. 윈도우즈 프로그래밍
윈도우즈와 관계있는것
API, EVent Driven Winmain
* API : Application Programming Interface, 응용 프로그램을 위하여 운영체제가 제공하는 함수의 집합
* 디바이스 컨텍스트 핸들(DC)의 열할
* 화면이 일정한 영역에만 출력하도록 제안, 장치의 ID를 알 수 있다, 장치 독립적인 출력을 할 수 있도록 한다
* Win23API란 32 비트 윈도우에서 응용프로그램을 작성하기 위한 API이다
* MFC를 사용하여 프로그래밍을 할 때 문서/뷰 간의 데이터 교환이 용이하다
* C언어로 프로그래밍할 때에는 시작위치는 winmain()함수이다, WndProc()이벤트처리
* 윈도의 프로그램을 작성하기 위해서는 API가 정의되어 있는 <windows.h> 라는 헤더파일을 포함시켜 주어야 한다. - #include <windows.h>
* 윈도우를 생성할 때에는 CreateWindow() 혹은 CreateWindowEx()를 사용
* 화면에 보기 위해서는 ShoWwindow, UpdateWindow를 사용
* 메세지큐에 메세지를 가져오는 부분은 GetMessage()함수 사용
* 객체에서 발생한 메시지를 가지고 처리하는 부분은 WndProc()처리
* 아이콘지정LoadIcon, 커서모양지정 LoadCursor함수 사용
* 펜, 브러쉬, 폰트, 핸들은 넘기는 함수로 GetStockObject()함수 사용
* 대화상자는 MassageBox()
* Directx SDK에서 하드웨어 추상계층과 에뮬레이션을 가리키는 말
* HAL, HEL
* DirectX SDK 구성요소
DirectInput, Direct3D, DirectDraw, DirectSound
* 윈도우모드와 풀스크린 모두 선택함수
SetCooperativeLavel
* Win32API프로그램의 메시지루프내의 함수 중 메시지를 콜백함수에게 전달
* DispatchMessage
* 콜백함수 - 이벤트 발생시 호출되는 함수
* MFC를 사용하여 얻은 이점 - 윈도우 메뉴 대화상자 기본 입출력을 관리 , 개발 속도 실행을 빠르게 해 준다, 이식성이 좋은 코드를 생성할 수 있다
5. 컴퓨터네트워크 개요
(1) OSI
1968년 최초통신망 ARPANET(미 국방성, 군사적 목적)
라우터 : OSI 7레이어 중 네트워크 레이어에서 작동하는 하드웨어장치, 패킷의 최적 이동 경로 설정
응용계층(Application) - 표현계층(Presentation) - 세션계층(Session) - 전송계층(Transport) - 네트워크계층(Network) - 링크계층(Data Link) - 물리계층(Physical)
HUB : 허브
리피터 : 1단계 물리적 계층에 속한다, 증폭
브릿지 : 2단계 링크계층
트랜시버 : 어뎁터같은 것
(2) 통신프로토콜
서로 다른 데이터들간의 교환
구성요소 : 구문, 의미, 타이밍
․직접통신과 간접통신방법
․단일구조와 구조적 구조
․대칭적 또는 비대칭적
․표준 또는 비표준
(3) 네트워크 게임 알고리즘
버퍼복사를 최소화, 데드레커닝 방법을 사용하여 지연에 따른 물체의 위치예측, Peer-to-Peer 방식경우 로비 알고리즘필요, 멀티스레드사용
(4) OSI참조모델
+ 응용계층 : 사용자 수준형식과 절차 프로그램, 조작원, 장치
+ 표현계층 : 데이터입력, 교화, 표시및제어의관리, 인터페이스변환 및 애플리케이션
+ 세션계층 : 세션관리서비스, 데이터교환, 통제데이터 조작, 서술/동기화
+ 전송계층 : 종단간 메시지 전송
+ 네트워크계층 : 사용자수준형식과 절차프로그램, 조작원 장치
+ 데이터링크계층 : 데이터흐름 초기화 통제 종료복구
+ 물리계층 : 통신 매체로의 전기적/기계적 인터페이스
(5) TCP/IP
․역사 : DARPA에 의해 개발
․응용계층 전송계층 네트워크계층 링크계층
(6) TCP/IP 프로토콜 계층구조
링크계층 ARP, RARP
IP주소로부터 링크계층의 MAC 주소를 얻기 위한 프로토콜 ARP(네트워크계층)
하나의 서버를 갖는 것, RARP(링크계층)
TCP/IP네트워크계층
네트워크계층 ICMP IP IGMP
전송계층 TCP UDP
IP 계층은 네트워크번호와 호스트 번호로 구성되어있다
클래스A : 호스트3칸, 클래스 B : 호스트번호2칸, 클래스 C : 호스트번호1칸, 클래스 D : 멀티캐스트주소
ICMP IGMP : 에러와 멀티캐스트 메시지 등 특별한 메시지를 관리하는 프로그램
에플리케이션(응용계층) : 데이터 → TCP(전송계층) : TCP헤더, 데이터 → IP : IP 헤더 TCP 헤더, 데이터 → 이더넷 드라이버(링크계층) : 이더넷 헤더, IP 헤더, TCP 헤더, 데이터
① IP프로토콜
TCP/IP
전송계층포트
포트번호 16비트, 전송계층에 잘 알려진 포트번호 69, 텔넷 : 포트번호 23
② TCP 프로토콜의 특징
- 동시에 양방향전송이 가능한 가상선로 제공, 한줄기의 데이터흐름 같다
- 신뢰성있는 데이터전송, 슬라이딩 윈도우방식의 흐름제어, 긴급데이터 기능, 16비트 포트를 이용한 전송계층 어드레싱
- 상대방끼리 협의를 거친 후 종료
③ TCP 세그먼트의 구조
소수포트, 목적지포트(16), 순서번호, 확인번호, (32), 헤더길이(4) 플래그, 윈도우크기(16), 체크섬(16), 긴급포인트(16), 옵션, 타이머
④ UDP 프로토콜의 특징
비연결 지향 프로토콜, 포트번호를 통한 어드레싱, 헤더와 데이터체크섬(선택), 매우 간단, 최선의 노력 으로 데이터전송
∞ TCP네트워크 IP 프로그램을 통해 전송되는 모든 정보는 캡슐화한다
∞ 캡슐화 IP헤더와 데이터를 갖는 IP데이터프로그램을 만든다
∞ 네트워크를 통해 IP 데이터그램을 전송할 때는 반드시 단편화한다
∞ 이더넷같은 네트워크기술은 반드시 MTU규정으로 한다
△ n비트컴퓨터 : CPU내에서 한번에 처리되는 데이터 단위
△ TCP 세그먼트 구조에 관한 설명 : 16비트 TCP 체크섬과 긴급포인터, 32비트 순서 번호와 확인번호
플래그-각 제어 정보를 표현
△ LAN과 LAN의 최적 경로를 찾아 네트워크 운영하려 할 때 이러한 기능의 필수장비 (Router)
△ DC(Device Context)설명 : 출력에 필요한 모든 정보를 가지고 있는 데이터 구조체이다, GDI에 의해 관리된다. 폰트의 종류, 선의 색상 등에 필요한 출력 정보를 가지고 있다.
'각종 자격증 자료' 카테고리의 다른 글
[게임프로그래밍전문가] 필기이론 간단정리 - 프로그래밍기반이론(2) (0) | 2018.10.07 |
---|---|
[게임프로그래밍전문가] 필기이론 간단정리 - 프로그래밍기반이론(1) (0) | 2018.10.06 |
[게임프로그래밍전문가] 필기이론 간단정리 - 프로그래밍일반(1) (0) | 2018.10.04 |
[게임프로그래밍전문가] 필기이론 간단정리 - 게임제작개론(2) (0) | 2018.10.03 |
[게임프로그래밍전문가] 필기이론 간단정리 - 게임제작개론(1) (0) | 2018.10.02 |
- Total
- Today
- Yesterday