Windows 시스템 프로그래밍 제3판

Similar documents
초보자를 위한 C++

PCServerMgmt7

Integ

초보자를 위한 한글 Visual Basic .NET 21일 완성

vm-웨어-01장

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper

05Àå

Microsoft Word - s.doc

歯PLSQL10.PDF

ESP1ºÎ-04

User's Guide

APOGEE Insight_KR_Base_3P11

안전을 위한 주의사항 제품을 올바르게 사용하여 위험이나 재산상의 피해를 미리 막기 위한 내용이므로 반드시 지켜 주시기 바랍니다. 2 경고 설치 관련 지시사항을 위반했을 때 심각한 상해가 발생하거나 사망에 이를 가능성이 있는 경우 설치하기 전에 반드시 본 기기의 전원을

Microsoft PowerPoint - 권장 사양

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

인켈(국문)pdf.pdf

<%DOC NAME%> User Manual

Chap7.PDF

기초에서 활용까지 윈도우즈 임베디드 CE 프로그래밍

Microsoft Word - zfs-storage-family_ko.doc

Microsoft Word - UG-BetaDraft_KO_TT-OK.doc

!K_InDesginCS_NFH

User Guide

Getting Started

Backup Exec

처음에 읽어 주십시오 본 제품을 사용하시기 전에 이 사용설 명서를 자세히 읽고 장래에 참조할 수 있도록 소중히 보관하여 주십시오. 한국내 고객용 경고 화재 또는 감전의 위험을 줄이기 위해 장치를 비 또는 습기에 노출시 키지 않도록 하여 주십시오. 배터리를 햇빛, 불 등

User Guide

2013년 1회 정보처리산업기사 실기.hwp

CyberLink YouCam µµ¿ò¸»

Copyright 0, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT RIGHTS Programs, software, databases, and related

ii 2008 Advanced Micro Devices Inc. 판권 본사 소유. 이 문서의 내용은 Advanced Micro Devices, Inc.( AMD ) 제품과 함께 제공됩니다. AMD 는 이 간행물 내용의 정확 성 또는 완전성에 대해 진술 및 보증을 하지

Oracle® DIVAnet - 보안 설명서

2004 IRISPen 사용자 설명서-본문-용지크기 조정-폰트포함.PDF

초보자를 위한 자바 2 21일 완성 - 최신개정판

Dell과 함께라면 가능합니다. 처음 도입하는 서버 또는 두 번째로 도입하는 서버이거나 네트워크를 확장시키거나 관리 기능을 강화하는 등의 모든 요구 사항을 Dell은 지원할 수 있습니다. Dell은 특성이 각기 다른 모든 조직과 회사마다 서로 다른 시점에 서로 다른 요

목차 개요 3 섹션 1: 해결 과제 4 APT(지능형 지속 위협): 이전과 다른 위협 섹션 2: 기회 7 심층 방어 섹션 3: 이점 14 위험 감소 섹션 4: 결론 14 섹션 5: 참조 자료 15 섹션 6: 저자 소개 16 2

CyberLink YouCam

기술 이력서 2.0

초보자를 위한 ASP.NET 2.0

중 국 6 대 패 션 시 장 조 사 보 고 서 < 2004 년 상 해 10 대 매 장 10대 패 션 제 품 의 브 랜 드 시 장 점 유 뮬 > 제 품 브 랜 드 시 장 점 유 율 제 품 브 랜 드 시 장 점유 율 C O N C H P LA Y B O Y

DSC-S950/S980

歯J PDF

Microsoft PowerPoint - AME_InstallRoutine_ver8.ppt

<%DOC NAME%> (User Manual)

Windows 네트워크 사용 설명서

Bchvvhv[vhvvhvvhchvvhvvhvvhvvhvvgvvgvv}vvvgvvhvvhvvvhvvhvvhvvvbbhvvhvvvgvvgvvhvvhvvhv}hv,.. Bchvvhv[vhvvhvvhvvhvvbbhvvhvvhvvvhvvhvvgvvgvv}vvgvvhvvvhvv

Windows Storage Services Adoption And Futures

P2WW HNZ0

\\tsclient\C\Users\User\Deskto...

사용 설명서 이용 안내 사용 설명서의 내용은 제품의 펌웨어 버전에 따라 사용자에게 통보 없이 일부 변경될 수 있습니다. 제품의 특장점 기능을 살펴보려면 '특장점' 6쪽을 참조하세요. 제품 사용 중 문제가 발생하면 'A/S를 신청하기 전에' 53쪽을 참조하세요. 제품에

ePapyrus PDF Document

Microsoft Word - HD-35 메뉴얼_0429_.doc


1. 화섬산업의 개요 1.1 화섬산업의 륵성 화 섬산 업 의 산 업 적 특 성 화섬산업은 원사,원면 둥 기초소재를 생산하는 섬유산 업의 핵심산업으로 고용창출효과와 고부가가치를 실현할 수 있음 O 세계적으로 독일,이태리,일본 등 선진국을 중심으로 M E(마이크로 일렉트

Windows Embedded Compact 2013 [그림 1]은 Windows CE 로 알려진 Microsoft의 Windows Embedded Compact OS의 history를 보여주고 있다. [표 1] 은 각 Windows CE 버전들의 주요 특징들을 담고

<%DOC NAME%> (User Manual)

Microsoft Word - JAVS_UDT-1_상세_메뉴얼.doc

solution map_....

ShaderX2: DirectX 9 셰이더 프로그래밍 팁 & 트릭

<49534F C0CEC1F520BBE7C8C4BDC9BBE720C4C1BCB3C6C320B9D D20BDC3BDBAC5DB20B0EDB5B5C8AD20C1A6BEC8BFE4C3BBBCAD2E687770>

씨에이에스는 서울특별시 시설관리공단 계약 제1579호( ) 장애인 콜택시 콜센터 차량관제시스템 구축사업 감리용역 에 근거하여 카나스 에서 수행중인 장애인콜택시 콜센터 차량관제시스템 구축사업에 대한 최종감리를 실시하고 본 보고서를 제출합니다

<%DOC NAME%> User Manual

. PC DP-1VR P15 1ch 1 Input Tool 4ch RS-232C RS-232C. Input Tool P14 MUX-10F P16 MeasureReport P21 GO/NG 2 MeasurLink Real-Time P19 MeasurLink STATMea

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

Portal_9iAS.ppt [읽기 전용]

Getting Started Guide

ÀüÀÚ Ä¿¹ö-±¹¹®

SRC PLUS 제어기 MANUAL

EM300_Manual.indd

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,,,,,,,,,,,,,.,..., U.S. GOVERNMENT END USERS. Oracle programs, including any operat

歯320.PDF

10X56_NWG_KOR.indd


DR-M140 사용 설명서

Microsoft PowerPoint - 조달 제안서_ [호환 모드]

PowerPoint Presentation

°ø±â¾Ð±â±â

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

Microsoft Word - SHW-16H5SX Manual - Korean.doc

スライド タイトルなし

ODS-FM1


( )박용주97.PDF


초보자를 위한 C++

목차 소프트웨어 라이센스 계약 3 무선 연결 사용 시 참고 사항 4 보안 관련 참고 사항 6 Wireless Manager mobile edition 5.5 로 수행 가능한 작업 7 컴퓨터 확인 10 컴퓨터를 연결하기 위해 필요한 환경 10 소프트웨어 설치 / 제거 1

untitled

Solaris Express Developer Edition

오라클 데이터베이스 10g 핵심 요약 노트

Tekla Structures 설치

침입방지솔루션도입검토보고서

클라우드컴퓨팅확산에따른국내경제시사점 클라우드컴퓨팅확산에따른국내경제시사점 * 1) IT,,,, Salesforce.com SaaS (, ), PaaS ( ), IaaS (, IT ), IT, SW ICT, ICT IT ICT,, ICT, *, (TEL)

untitled


Microsoft SQL Server 2005 포켓 컨설턴트 관리자용

歯FFF01379.PDF

K824PCM1DMX-K

<목 차 > 제 1장 일반사항 4 I.사업의 개요 4 1.사업명 4 2.사업의 목적 4 3.입찰 방식 4 4.입찰 참가 자격 4 5.사업 및 계약 기간 5 6.추진 일정 6 7.사업 범위 및 내용 6 II.사업시행 주요 요건 8 1.사업시행 조건 8 2.계약보증 9 3


PRO1_01E [읽기 전용]

Transcription:

1 W i n 3 2 W i n 6 4

1 Wi n32 Wi n64 25 Microsoft Windows (operating system, OS) Win32 API(application programming interface, ). 64 Win64 API, Win32 Win64., Win32 Win64 Windows Windows API. Win32 Win64. Windows, API,. OS API, Windows API. Windows. Windows,,,. C Windows. Windows,, PC, OS. OS OS.. OS (flat),,.. OS,,. OS.. (naming ),,,. OS.. OS,. (preempted),. 3) : (preempted).

26 Wi ndows Sys t em Pr ogr ammi ng 3. OS,.. OS,. Microsoft Windows Win32/Win64 API OS. Windows., API. Windows Windows API Windows.,., Windows Windows API..,. Windows API, API. Windows : (scalability). ( )..,,, -.,... API. API. API. Windows 1993 Windows. Microsoft. Home, Professional Windows XP. PC,, Windows XP..

1 Wi n32 Wi n64 27 Windows Server 2003, Small Business Server, Storage Server 2003. Windows 2003( Server ) (symmetric multi processing ). Win64 64 Windows 2003. Professional Server Windows 2000. Windows 2000, Windows XP Windows. Windows Embedded, Windows CE, Tablet PC, Windows Mobile Windows, Windows. Wi ndows Microsoft Windows,.. 1993 Windows NT 3.5, 3.5.1, 4.0 NT. Windows NT Version 4.0 Service Pack 3(SP 3). Windows 9x, NT. Windows 2000 NT Version 5.0, Windows 2000, 2003, XP Windows NT NT5. NT Version 4.0 ( ).. Windows 95, Windows 98, Windows Me( Windows 9x ), NT. Windows XP, Windows XP NT., Windows 9x., 16 OS Windows 3.1. Windows 3.1 Windows 95. Windows 3.1 (GUI) Windows GUI. Windows 3.1 API,, OS.

28 Wi ndows Sys t em Pr ogr ammi ng 3 1980 DOS IBM PC OS. DOS, DOS.,. DOS (batch file). Wi ndows NT 5. x Windows 2000 XP, 2003 NT Version 5.x NT5. Windows NT 5, ( 5.x x ). Windows XP NT 5.1., NT5. Windows NT5,. NT Windows 9x, Windows. Microsoft API NT, Windows(9x ), CE. Windows API. Wi ndows Windows( Win32, Win64 API, NT5 ).,. NT OS. Windows. Microsoft (Resource Kit) POSIX, POSIX.

1 Wi n32 Wi n64 29 Windows, (Hardware Abstraction Layer, HAL). HAL. Windows Intel x86. x86 Pentium Xeon, 486. Advanced Micro Devices(AMD). Windows., x86 64 Intel Itanium Windows 2003. Windows : Windows CE x86. Windows NT Digital Equipment Corporation ( Compaq HP ) Alpha. AMD Athlon 64 Opteron 64 (AMD64) x86 64. Itanium. Intel 32/64 64 x86. Windows OS Windows. OS, UNIX 1) Linux. Windows, Windows. Windows,,. 2) Windows UNIX Linux, Macintosh. 1) UNIX Linux POSIX API. 2) Windows Linux.. Linux Windows,.

30 Wi ndows Sys t em Pr ogr ammi ng 3 Windows, Windows. Windows. Windows GUI, Windows. Windows SMP. Windows. Windows. 3) Windows National Security Agency (NSA) C2 ( Windows 9x C ). UNIX Linux, Windows OS. Windows OS UNIX (, UNIX ). C2 NT. Windows OS,., Windows., Windows. Windows,, Windows API. UNIX Windows?, Windows?, Windows API?.,,. 4) 3) RAM 16MB 486 4 RAM 8GB 2GHz Xeon, Windows. : open system. Linux POSIX.

1 Wi n32 Wi n64 31 Windows API Linux UNIX POSIX API. Windows X/Open,. Windows. Microsoft, Windows. Windows. :.., Windows. OS....., Windows. Windows., Windows C, C++. Windows (Sockets) TCP/IP, Windows. (RPC). 4) SQL(Structured Query Language) (DBMS)., Windows. Windows TCP/IP, XWindows Windows., Windows, API. 4) Windows RPC Windows..

32 Wi ndows Sys t em Pr ogr ammi ng 3,.. Windows. UNIX, Linux, Macintosh, Windows Windows Wine. POSIX. Microsoft Windows Resource Kit Windows. Microsoft Visual C++., API Windows, POSIX, Macintosh. Windows Windows. Windows API UNIX Linux POSIX API API. Windows,. Windows,. (kernel object),,. UNIX (file descriptor) ID. 5) Windows API. (back door ). Windows,.,,,,,,.. Windows., Windows., ( Copy Fi l e. 5) Windows GUI HWND, HDC.

1 Wi n32 Wi n64 33 ).,,.. Windows. Windows.. Windows. Windows. Wa i t For Si ngl eobj e ct Wa i t For Si ngl eobj e ct Ex Wa i t For Mul t i pl eob j ec t s Wa i t NamedPi pe, (data type). API,. : BOOL (, 32 ) HANDLE DWORD ( 32 ) LPTSTR (8 16 ) LPSECURI TY_ATTRI BUTES. *, LPTSTR(TCHAR * ) LPCTSTR(cons t TCHAR * ) c ons t. : TCHAR char 2 wchar _t.,. l ps zfi l ename 0 (zero- terminated string, null ) (long pointer). dwacce s s (32 ). dw (double word).,. :,,,. Microsoft Visual C++. Pr ogr am Fi l es \ Mi cr osof t Vi sual St udi o.net\ Vc7\ Pl at f or msdk\ I ncl ude (VC++ 6.0 Pr ogr am Fi l es \ Mi cr osof t Vi sual St udi o\ VC98\ I ncl ude).

34 Wi ndows Sys t em Pr ogr ammi ng 3 WI NDOWS. H ( ) WI NNT.H WI NBASE. H, Win32 API, Windows 3.1 Win16 API... LPSTR LPDWORD LP long pointer, 32 64. ( ). long. LPVOI D PVOI D. 6) WIN32_ FIND_DATA WIN32, Win64. 16 Windows, 16. OpenFi l e, 16. Cr e at e Fi l e. Win64 Win64 AMD AMD64(Opteron Athlon 64) Intel Itanium ( Merced, McKinley, Madison, IA-64 ) Windows XP 2003. Win64. Win32 Win64 (Win64 64 ). Win64., Win64. 64, ( ). 6) PVOI D L, Microsoft L.

1 Wi n32 Wi n64 35, (LONG, DWORD ). DWORD32 DWORD64, POI NTER_ 32 POI NTER_ 64., Win32 Win64., Windows Win32 API. 16 Win64. UNIX Linux Windows., Windows HANDLE. HANDLE. UNIX 0, 1, 2, Windows. ID Windows. Windows HANDLE.,,,,. UNIX Windows. Windows HP( DEC Compaq). VMS OpenVMS. VMS David Cutler NT Windows.., Windows (job object),., UNIX LF Windows CR- LF. C : Windows, (2 3 ) C ANSI C. C ( ANSI ) <s t r i ng. h>, <st dl i b.h>, <si gnal. h>, I/O, I/O Windows

36 Wi ndows Sys t em Pr ogr ammi ng 3., <st di o.h> f open f r ead. C, Windows? C++ I/O.NET I/O., Windows, Windows C C++ I/O., Windows, C Windows. 3. C Windows, ( ), I/O, ( 4GB ),. C. C Windows.. 5, C..,, C.. Windows Microsoft Visual Studio.NET Microsoft Visual C++ Version 6.0 C. Microsoft.,. A. : Windows, Microsoft Visual Studio.NET.

1 Wi n32 Wi n64 37 RAM.,,. 7) CD- ROM ( ). Microsoft Visual C++.. Microsoft. :. 1. C 2. Windows 3. Windows CopyFi l e. C Windows..,.. Windows.,.. 7) 1997 16MB, 256MB.. 1000, 2500 PC RAM 10 (RAM PC ), 100, 50.

38 Wi ndows Sys t em Pr ogr ammi ng 3,., I/O,., Windows., UNIX cp..,. Windows. : UNIX. C 1-1, C FI LE I/O. FILE 1-2 Windows HANDLE,. 1-1 cpc: C / * 1. cp. C. */ / * cpc f i l e 1 f i l e2 : f i l e 1 f i l e2. */ #i ncl ude <s t di o. h> #i ncl ude <er r no. h> #defi ne BUF_ SIZE 256 i n t mai n (i nt ar gc, cha r *ar gv [] ) { FI LE *i n_ f i l e, *out _ f i l e ; char r ec [BUF_ SI ZE] ; s i ze_ t byt e s_ i n, byt e s_ ou t ; i f (ar gc!= 3 ) { pr i nt f ("Us age : cpc f i l e 1 f i l e2\ n " ) ; r e t ur n 1; i n_ f i l e = f op en (a r gv [1], "r b " ) ; i f (i n_ f i l e == NULL) {

1 Wi n32 Wi n64 39 per r or (ar gv [1] ) ; r et ur n 2 ; ou t _ f i l e = f op en (ar gv [2], "wb " ) ; i f (ou t _ f i l e == NULL) { per r or (ar gv [2 ] ) ; r et ur n 3 ; / *. */ wh i l e ( (b yt e s_ i n = f r ead (r ec, 1, BUF_ SI ZE, i n_ f i l e ) ) > 0 ) { byt e s_ out = f wr i t e (r e c, 1, byt e s_ i n, out _ f i l e ) ; i f (byt e s_ out!= byt e s_ i n ) { pe r r or ("Fat al wr i t e er r or. " ) ; r e t ur n 4; f c l os e (i n_ f i l e ) ; f c l os e (out _ f i l e ) ; r e t ur n 0;., Windows. 1. FI LE (UNIX ). NULL.. 2. f open. (end-of-line, EOL). Windows, I/O (C ).. 3. per r or. pe r r or er r no. FI LE pe r r or f e r r or.

40 Wi ndows Sys t em Pr ogr ammi ng 3 4. f r e ad fwr i t e.., 0. 5. f c l ose FI LE (UNIX ). 6. I/O., I/O 7. C I/O pr i nt f. Windows. C UNIX Windows, ANSI C., C C I/O. I/O, 7 Windows. UNIX, C (f s ee k f s et pos f get pos ). C I/O. : Visual C++., C. : I/O I/O C. Windows. Wi ndows 1-2 Windows API,,,. 1-2 cpw: Windows, / * 1. cp. Wi ndows. */ / * : cpw 1 2 1 2. */

1 Wi n32 Wi n64 41 #i n cl ude <wi ndows.h > #i n cl ude <s t di o. h> #de f i n e BUF_ SI ZE 256 i nt mai n (i n t ar gc, LPTSTR a r gv [] ) { HANDLE h I n, hout ; DWORD n I n, nou t ; CHAR Buf f er [BUF_ SI ZE] ; i f (ar gc!= 3 ) { p r i n t f ("Us age : cpw f i l e 1 f i l e2\ n " ) ; r et u r n 1 ; h I n = Cr eat efi l e (ar gv [1], GENERI C_ READ, 0, NULL, OPEN_ EXI STI NG, 0, NULL) ; i f (h I n == I NVALI D_HANDLE_VALUE) { p r i n t f ("Cannot open i nput f i l e. Er r or : %x\ n ", Get La s t Er r or () ) ; r et u r n 2 ; hout = Cr ea t efi l e (ar gv [2 ], GENERI C_WRI TE, 0, NULL, CREATE_ALWAYS, FI LE_ATTRI BUTE_NORMAL, NULL) ; i f (hout == I NVALI D_HANDLE_VALUE) { p r i n t f ("Cannot open ou t pu t f i l e. Er r or : %x \ n ", Get La s t Er r or () ) ; r et u r n 3 ; wh i l e (Re adfi l e (h I n, Bu f f e r, BUF_ SI ZE, &n I n, NULL) &&n I n > 0 ) { Wr i t efi l e (hou t, Bu f f e r, n I n, &nou t, NULL) ; i f (n I n!= nou t ) { pr i nt f ("Fat a l wr i t e e r r or : %x \ n ", Ge t La s t Er r or () ) ; r et ur n 4; Cl os ehandl e (h I n ) ; Cl os ehandl e (hout ) ; r e t ur n 0;, Windows. 2.

42 Wi ndows Sys t em Pr ogr ammi ng 3 1. <wi ndows. h>, Windows. 8) 2. Windows HANDLE. Cl os ehandl e. 3.. OS,. ( :.) 4. Windows.,. I NVALI D_HANDLE_VALUE GENERI C_READ. 5. Re adfi l e Wr i t e Fi l e... 9) 0. 0. 6. DWORD Get Las t Er r or. Windows 2-2. 7. Windows NT. 15. 8. Cr ea t e Fi l e,. Wi ndows Windows. ( C ). CopyFi l e, 8) A. 9) ANSI C and (&&) or ( ).

1 Wi n32 Wi n64 43., ( 256 ). CopyFi l e. 1-3 cpcf: Windows / * 1. cp., CopyFi l e Wi ndows. */ / * cpcf f i l e 1 f i l e2 : f i l e 1 f i l e2. */ #i n cl ude <wi ndows.h > #i n cl ude <s t di o. h> i nt mai n (i n t ar gc, LPTSTR a r gv [] ) { i f (ar gc!= 3 ) { p r i n t f ("Us age : cpcf f i l e 1 f i l e 2\ n " ) ; r et u r n 1 ; i f (!CopyFi l e (ar gv [1], a r gv [2], FALSE) ) { p r i n t f ("CopyFi l e Er r or : %x\ n ", Ge t La s t Er r or () ) ; r et u r n 2 ; r e t ur n 0; C Windows. C. Windows Windows, Windows. Windows. Windows NT5(XP, 2000, 2003)., NT Windows 9x(95, 98, Me).

44 Wi ndows Sys t em Pr ogr ammi ng 3 2 3 I/O. I/O, ASCII,,,,... Win 3 2 Win32, Marshall Brain Ron Reeves Win32 System Services Jeffrey Richter Programming Applications f or Microsof t Windows( Advanced Windows ). Windows 95 Windows NT. Microsoft Visual C++, Microsoft http://www.microsoft.com. Windows. MSDN(Microsoft Developer s Network).,,,. Win 6 4 Win64, Microsoft. 16. Win d o ws NT Wind o ws NT Windows Windows David Solomon Mark Russinovich Inside Windows 2000.,,,,, I/O, API Windows 9x, CE..

1 Wi n32 Wi n64 45, NT Helen Custer Solomon. UNIX ( ) W. Richard Stevens Advanced Programming in the UNIX Environment Windows UNIX. Stevens UNIX,. UNIX, UNIX( Linux). C I/O UNIX I/O, Windows. OS UNIX Eric S. Raymond The Art of UNIX Programming., Windows. Win d ows GUI Windows. Brent Rector Joseph M. Newcomer Win32 Programming Charles Petzold Programming Windows, Fif th Edition. OS. Abraham Silberschatz Operating System Concepts. ANS I C P. J. Plauger The Standard C Library., Brian W. Kernighan Dennis M. Ritchie The C Programming Language. C. C.

46 Wi ndows Sys t em Pr ogr ammi ng 3 Win d o ws CE Windows CE Jason P. Nottingham, Steven Makofsky, Andrew Tucker SAMS Teach Yourself Windows CE Programming in 24 Hours. UNIX Win d o ws Unix X Windows API Wine http://www.winehq.com. 1-1.,,. Microsoft Visual C++, UNIX ( Microsoft Visual C++ ). :. A Microsoft Visual Studio.NET Visual C++ 6.0. 1-2. Microsoft Visual Studio.NET Visual C++... A, Microsoft. 1-3. Windows - (CR- LF). 1-1? UNIX? 1-4...,. :. 6, C.