2006년 07월 29일
지금까지 배운 KO정리 - 2
* 프로세스의 생성
API의 프로세스 생성은 WinExec() 나 CreateProcess()를 통해서 생성할수있으며 하나의 프로세스가 실행시에는
ETHREAD와 EPROCESS의 KO를 생성한다. ETHREAD는 Thread Kernel Objec(TKO) 라고 줄여 부르겠음.
이 TKO는 여러개의 쓰레드를 생성할시 TKO도 늘어나게 된다.
*프로세스 죽이기
프로세스를 죽이는데에는 TerminateProcess()함수가 이용된다 이것을 알기전에 동기함수와 비동기 함수의 개념을
알아보자. 동기함수는 함수가 실행될때 그함수가 끝날때까지 대기하고 다음 코드를 실행하며 비동기 함수는 함수를
실핼중에 다음 코드를 바로 시작한다. 프로세스를 죽이는 함수가 비동기 함수에 포함된다. 동기함수처럼 기다리기
위해서는 WaitForSingleObject()가 사용된다.(나중에 다중쓰레드 사용시 WaitForMultipleObjects()이용)
* ID와 핸들의 개념(차이)

*프로세스 열거
프로세스의 열거에는 두가지 dll 이 제공된다 . kernel32.dll(Tool help API)와 PSAPE.dll 이 사용된다
일반적으로 커널32 를 사용한다.
*리다이렉션 - 출력 방향을 바꾼다.
ping 예제와 같이 화면에 출력되는것을 파일이나 기타 윈도우로 출력방향을 바꾸어준다. KOHT의 상속을 해주어
출력방향을 바꾼다.
API의 프로세스 생성은 WinExec() 나 CreateProcess()를 통해서 생성할수있으며 하나의 프로세스가 실행시에는
ETHREAD와 EPROCESS의 KO를 생성한다. ETHREAD는 Thread Kernel Objec(TKO) 라고 줄여 부르겠음.
이 TKO는 여러개의 쓰레드를 생성할시 TKO도 늘어나게 된다.
*프로세스 죽이기
프로세스를 죽이는데에는 TerminateProcess()함수가 이용된다 이것을 알기전에 동기함수와 비동기 함수의 개념을
알아보자. 동기함수는 함수가 실행될때 그함수가 끝날때까지 대기하고 다음 코드를 실행하며 비동기 함수는 함수를
실핼중에 다음 코드를 바로 시작한다. 프로세스를 죽이는 함수가 비동기 함수에 포함된다. 동기함수처럼 기다리기
위해서는 WaitForSingleObject()가 사용된다.(나중에 다중쓰레드 사용시 WaitForMultipleObjects()이용)
* ID와 핸들의 개념(차이)

*프로세스 열거
프로세스의 열거에는 두가지 dll 이 제공된다 . kernel32.dll(Tool help API)와 PSAPE.dll 이 사용된다
일반적으로 커널32 를 사용한다.
*리다이렉션 - 출력 방향을 바꾼다.
ping 예제와 같이 화면에 출력되는것을 파일이나 기타 윈도우로 출력방향을 바꾸어준다. KOHT의 상속을 해주어
출력방향을 바꾼다.
# by | 2006/07/29 15:47 | API SystemPrograming | 트랙백 | 덧글(0)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]