일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Local TempDB
- MSCS on VMWare
- LiveKD
- 터키여행
- Windows Server 2016
- dsquery
- windows update
- SQL Server 2008
- 안철수
- 클러스터
- Nested VM
- ftp7.5 장애조치 클러스터
- FTP7.5
- iSCSI target
- cluster node as Domain controller
- Hyper-V
- Windows Server 2008
- Xperf
- 작업관리자
- 프로세스 CPU 사용량
- nonpaged pool
- SQL Server 2012R2 FCI
- windbg
- Session space
- failover cluster
- windows media service
- paged pool
- 인문고전
- Windows Server 2016 Hyper-v Cluster
- windows debugging tool
- Today
- Total
류짱:Beyond MySelf
Pool Tag(풀 태그)란 무엇인가? 본문
아래 정리한 글은 Ask the Performance Team 블로그에 기재 된 An Introduction to Pool Tags의 내용을 참고하여 작성 하였습니다.
원문을 보시려면 아래 사이트를 참고 하시기 바랍니다.
https://blogs.technet.com/b/askperf/archive/2008/04/11/an-introduction-to-pool-tags.aspx
Pool Tag(풀 태그)란 무엇인가?
Pool Tag는 4byte 문자로 하나의 드라이버가 Pool memory 공간에 동적으로 메모리를 할당 받을 때 ExAllocatedPoolWithTag 루틴이 사용 되는데 이때 명시 되어지는 것으로 쉽게 얘기하자면 Pool Memory를 사용하는 드라이버들의 이름을 구분 하기 위한 별칭이다.
위 루틴이 사용 될 때 명시 되는 세 가지 파라미터가 있습니다.
PoolType : 할당 할 Pool 메모리 Type 지정(Paged Pool or NonPaged Pool)
Number of Bytes: 얼마 만큼의 메모리를 할당 할 것인지
Tag: 위에서 설명한 4bytes 케릭터 PoolTag (할당 된 메모리를 사용할 driver의 별칭).
하나의 드라이버가 메모리 할당을 요청 할 때 "Fred"라는 Tag를 사용 하면 실제 pool dump에서
는 "derF"로 나타난다.
PoolTag 의 중요한 점은 반드시 유일한 문자이어야 한다는 것이다. 즉 tag 이름이 중복 되지 않아야 한다는 것이다.
사이즈가 작은 driver는 하나의 PooTag를 사용 하지만 큰 Drivers는 여러 개의 driver를 가지기도 한다.
그럼 어떤 드라이브가 어떤 Tag를 사용하는지는 어떻게 확인 할 수 있을 까?
첫번째로 Debugging tools for windows 를 설치 하면 생성 되는 pooltag.txt라는 파일을 통해서 확인 할 수 있고
두번째로는 위 pool.txt 에 해당 Tag가 없다면 명령 프롬프트에서 findstr /m /l <tag> *.sys 명령어를 사용하여 찾을 수 있다.
위 명령어 실행은 %systemroot%\system32\drivers 폴더에서 실행하면 된다.
예) findstr /m /l File *.sys
Windows에서 제공하는 "File"이라는 tag는 많은 driver들이 사용하고 있음을 확인 할 수 있다.
[참고 자료]
How to find pool tags that are used by third-party drivers
http://support.microsoft.com/kb/298102
Who's Using the pool?
http://msdn.microsoft.com/en-us/windows/hardware/gg463213.aspx
How to use Memory Pool Monitor (Poolmon.exe) to troubleshoot kernel mode memory leaks
메모리 풀 모니터(Poolmon.exe)를 사용하여 커널 모드 메모리 누수 문제를 해결하는 방법
http://support.microsoft.com/kb/177415/ko
감사합니다.^^