Computer/C, CPP, MFC
Windows Styles
Windows Style 을 그냥 번역기...이유는 간단하다.. 영어보다 한글이 눈에 잘 들어온다 -_-;; 없어도 되긴한데...(아~내가 이런것도 봤었구나....) 상수 / 값기술WS_BORDER0x00800000L창은 얇은 줄 테두리가 있습니다.WS_CAPTION0x00C00000L창 제목 표시 줄을 (포함이 WS_BORDER의 스타일을).WS_CHILD0x40000000L창은 자식 창입니다. 이 스타일 창은 메뉴 모음을 가질 수 없습니다. 이 스타일은 사용할 수 없습니다 WS_POPUP의 스타일.WS_CHILDWINDOW0x40000000L동일 WS_CHILD의 스타일.WS_CLIPCHILDREN0x02000000L도면은 부모 창 내에서 발생하는 경우 자식 창에 의해 점유 된 지역을 제외합니다. 부..
Computer/C, CPP, MFC
timeSetEvent 와 친구들
이틀째, 프로그램에서 데이터를 보내주는걸 확인하는 부분이 있는데 (사실 이부분도 몰랐다..내가 만든게 아니니ㅜㅜ)계속 무한루프 걸렸는지 '응답없음' 으로도도한 녀석 같으니 대꾸가~ 없어!!!!!!!! 이리보고 저리보고 이부분일꺼라고 예상은 되었다.. WaitForSingleObject 예상은 했지만, 역시나... 이녀석과 같이 놀고 있는 녀석이 범인이였다.timeSetEvent이놈옴~!!! 재현이 1시간이상 걸리니.. ㅜㅜ지루해~ WaitForSingleObject 에서 받아야되는데 받지를 못하니.. 참고: WaitForSingleObject 자! 그럼 timeSetEvent에 대해서 알아보자.멀티미디어 타이머로 아주아주 높은 정확도의 타이머이다.일정한 주기마다 표시된 콜백 함수나 이벤트를 호출 한다. ..
Computer/ETC
VS2013, 플러그인 없애고 싶은데...
VS2013에 설치한 플러그인 프로그램을 삭제하고 싶은데... 지난번 플러그인들중 쓸만한 것들이 많아서 마구마구 묻지마! 설치를 ... 그런데!! 막상 사용해 보니 불편한 것들이 있었다..어떻게 지우나?? -_-; 난 참 바보다 ㅋㅋㅋㅋㅋ플러그인들을 언인스톨 해보고 해도그놈의 잔재들은 VS2103에 있드라 ㅠ_ㅠ 아고고고고...없애자! 도구 - 확장 및 업데이트... 를 클릭! 여기서 안쓸꺼 제거! 막제거!그러면 된다.... 난 이걸 몰랐긔!왜냐? 메뉴얼 보거나 막 그런 스타일이 아니라..마구마구 눌러보고 경험해 보는 스타일이니깐.... 정말정말, 간단한건데 난 이걸로 엄청나게 짜증을 느꼈지..역시 알면 쉽고 간단한데 모르면...... 손발이 고생이여~
Computer/ETC
운영체제의 주요 구성 기술
1. 프로세스의 관리(1) 프로세스CPU에 의해 수행되는 시스템 및 사용자 프로그램, 프로시저의 활동, 비동기적 행위를 일으키는 주체, 운영체제가 관리하는 실행단위 (2) 스레드(Thread)프로세스에서 실행의 개념만 분리, 독립된 제어 흐름, 하나의 프로세스에 한 개의 스레드 또는 여러 개의 스레드가 존재, 하나의 프로세스 내에서 병행성을 증대시키기 위한 메커니즘, 경량 프로세스라고도 부른다. (3) 프로세스 제어 블록(PCB)운영체제가 프로세스에 대한 유용한 정보를 저장, 운영체제에게 프로세스에 대한 정보를 제공, 각 프로세스는 고유의 PCB 소유, 부모 프로세서와 자식 프로세서는 PCB(Process Control Block)를 공유하지 않는다. (4) 프로세서 제어 블록 포함 정보프로세서 식별자,..
Computer/ETC
Thread(스레드)
메인스레드 외에 다른 스레드를 사용하여 비동기로 동작할 필요성을 느끼게된다.이럴때 스레드를 사용하여 각각 독립적인 동작으로 사용할 수 있다.스레드를 분리하지 않고 메인스레드로만 이용한다면 다량의 데이터를 연산, 관리하는 부분에서 동작을 실행중이기 때문에 다른것들은 하지 못하고 그 동작이 끝날때 까지 기다려야한다. 스레드는 메인스레드와 독립된 동작이기 때문에 멤버변수나 해당클래스의 객체를 이용해서 접근해야한다.스레드 함수 안에서 해당클래스의 변수나 함수로 바로 접근할 수 없다. .h 헤더//타입은 UINT를 해야 하고 매개변수 lParam을 넘겨 주어야 한다static UINT ThreadProc(void *lParam); .cpp 구현AfxBeginThread(ThreadProc, this); nNum1..
Computer/C, CPP, MFC
PeekMessage
게임을 만들때 중요한것 중 확인하고 넘어가야 할 부분은 메세지 루프 입니다.일반적으로 message를 가져오는 GetMessage() 함수가 있습니다. 이 함수는 메세지 큐에서 message를 가져와 message구조체에 복사하고 message 큐에 복사한다.message가 없을때는 새로운 message가 들어올 때까지 리턴을 하지 않습니다. 메세지가 들어오기 전까지는 놀고 있게 되는건데,이 놀고 있는 시간을 dead time(데드 타임) 이라고 합니다. (MicroSoft 특허가 있다고 하더라..) 메세지가 없는 시간 또는 구간에 우리가 다른 작업을 할 수 있다면, 메세지 처리 시간과 별개로다른 작업에 영향을 주지 않고 실행해야할 것들을 처리할 수 있겠습니다. 만, GetMessage()의 특성상 메세..
Computer/ETC
항목4: 객체를 사용하기 전에 반드시 그 객체를 초기화하자
int x; 어떤 상황에서는 x의 값이 확실치 초기화되지만(0으로), 또 다른 상황에서는 그것이 보장되지 않는다. class Point{ int x, y; }; ... Point p; 이렇게 했을 때, p의 데이터 멤버 역시 어떤 상황에서는 초기화가 보장되지만 어쩔때는 또 안된다. 초기화되지 않은 값을 읽도록 내버려 두면 정의되지 않은 동작이 그대로 흘러 나오게 된다. 어떤 플랫폼의 경우에는 미초기화 객체를 읽기만 해도 프로그램이 서 버리기도 합니다. 대체적인 경우에는 적당히 무작위 비트의 값을 읽고 객체의 내부가 이상한 값을 갖게 된다. C++의 객체가 초기화가 중구난방인 것은 절대 아니다. 언제 초기화가 보장되며 언제 그렇지 않은지에 대한 규칙이 명확히 준비되어 있다. 안타까운점은 복잡하다.;;; 가..
Computer/ETC
운영체제의 개요
1. 운영체제의 개요(1) 운영체제의 목적 - 편의성 제공 : 컴퓨터 시스템의 자원을 최대한 효율적으로 관리, 운영함으로써 사용자들에게 편의성을 제공 - 처리능력의 향상 : 단위시간 내에 최대한 많은 양의 일을 처리 - 응답시간의 단축 : 사용자의 요청에 따라 컴퓨터 시스템이 결과를 처리하는 시간 - 사용가능도 향상 : 사용자가 요구할 때 어느정도로 신속하게 시스템 자원을 지원해 줄 수 있는가를 나타내는 것 - 신뢰도 향상 : 주어진 문제를 얼마나 정확하게 해결할 수 있는가를 나타내는 것 (2) 운영체제의 기능부팅, 사용자 인터페이스의 제공, 프로그램 생성, 프로그램 실행, 입출력 동작, 파일 시스템조작, 통신, 오류 발견 및 응답, 자원 할당, 계정관리 2. 운영체제의 구조1계층/ 프로세서 관리 - 동..
Computer/ETC
회선
이산회선은 영상 스무딩, 영상강화, 에지검출 등의 효과를 위해서 빈번하게 사용되는 영상처리 기법이다.회선기법은 원시 화소에서 이웃한 화소들 각가에 가중치를 곱한 합이라고 할수 있다. 가중치는 회선 마스크 혹은 회선 커널이라고 하는 작은 행렬로 결정된다. 일반적으로 행렬의 차원은 원시화소가 중앙에 위치하도록 홀수를 사용한다. 중앙의 위치는 출력 화소의 위치에 대응된다. 회선 윈도우라고 하는 슬라이딩 윈도우는 입력 영상의 각 화소들에 대하여 중앙에 위치하여 새로운 출력 화소들을 생성한다. 새로운 화소 값은 이웃한 화소들이 가진 값과 이에 대응하는 마스트의 가중치를 곱한 후, 곱해진 값들을 더함으로써 만들어진다. 생성된 화소들을 새로운 영상의 적절한 위치에 배정하는 것은 매우 중요한 작업이다. 기존의 화소가 ..