OS/Windows API

#2 Windows API의 시스템 알아보기

VallistA2014. 8. 20. 16:08

이번 장 에서는 Windows API의 시스템 및 데이터 형에 대해서 알아볼 것이며, 더불어 Windows API 윈도우 창이 생성되는 순서를

차근 차근히 밟아 가도록 하겠습니다.


API는 특정 시스템을 위한 함수 집합이라고 첫 시간에 말을 했습니다.

API는 그렇다면 어떤식으로 운영되는 것일까요? 



<그림 1> OS 내부의 API 함수와, API 함수가 연결해주는 것들 

(출처 : http://hoidu.tistory.com/entry/WinApi-%EC%A0%95%EB%B3%B5-%EC%A0%95%EB%A6%AC-%EA%B8%B0%EC%B4%88)



먼저 효과적으로 설명을 드리기 위해 다시 설명을 하자면, 맨 처음에 운영체제가 대두가 안되었을때는 우리는 장치 독립적인 프로그래밍을 하지 못했었습니다.

그래서 우리는 각각의 하드웨어별로 다른 프로그래밍을 해서 비효율적으로 프로그래밍을 하게 되었습니다.


어느새부턴가 운영체제가 활발해지기 시작하며 윈도우즈도 그 시기에 나왔죠. 

윈도우즈가 나오고 나서, 우리는 이제 각각의 하드웨어들을 독립적으로 코딩을 하지 않아도 운영체제에서 지원해주는 함수를 가지고 하드웨어를 다룰수 있게 되었습니다. 그래서 그것을 장치 독립적 프로그래밍 이라고 그 전 시간에 설명을 했구요.


자 그렇다면 우리는 API 시스템이 어떻게 구성되어 있는지에 대해서 다시 알아볼 필요성이 있습니다.

왜? 라고 물으신다면, 물을 먹고싶은데 물 따르는 법을 모르는 경우라고 말씀드리고 싶습니다. (뭐 어떻게든 먹겠죠)


먼저 API는 메시지 전달을 기반으로 사용하는 프로그래밍을 주로 하고 있습니다.

모든 게임이나 어플리케이션이 그렇겠지만, 실시간으로 돌리는 경우보다도 업데이트에서 응답을 기다리고 우리는 명령만 주는 그러한 형식의 프로그래밍 형태를 말하고 있는 것 입니다.


그렇다면 우리는 어떤식으로 API가 되어 있는지 봅시다.



<그림 2> 윈도우 API의 메인 루프의 순서



윈도우즈 API의 메인에서 윈도우 출력의 방법은 이렇습니다.


굉장히 심플합니다. 먼저 메모리에 만들어 주고 그 다음 윈도우 화면상에 출력하는 역할을 하게 됩니다.

댓글

VallistA

병특이 끝나서 게임에서 웹으로 스위칭한 프로그래머.
프로그래밍 정보등을 공유합니다.
현재는 이 블로그를 운영하지 않습니다.
vallista.kr 로 와주시면 감사하겠습니다!

자고 싶습니다. ㅠㅠ

Github      :: 링크

궁금한점 문의 주시면 답변드리도록 하겠습니다

VISITED

Today :

Total :

SNS

  • 페이스북아이콘
  • 카카오톡아이콘
  • 트위터아이콘

Lately Post

Lately Comment