커널에서 개발을 하다 보면 버퍼의 내용을 출력하여 확인하고 싶을 때가 있다.
이 때는 print_hex_dump() 를 사용하면 된다.
void print_hex_dump(const char *level,
const char *prefix_str,
int prefix_type,
int rowsize,
int groupsize,
const void *buf,
size_t len,
bool ascii);
예를 들어 buf 가 아래와 같다면
buf = "123456789abcdefghijklmnop";
print_hex_dump(KERN_ALERT, "", DUMP_PREFIX_OFFSET, 16, 1, buf, strlen(buf), 0);
위와 같이 호출하면 아래와 같은 출력을 볼 수 있다.
[70339.966181] 00000000: 31 32 33 34 35 36 37 38 39 61 62 63 64 65 66 67
아래와 같이 호출하면
buf = "123456789abcdefghijklmnop";
print_hex_dump(KERN_ALERT, "", DUMP_PREFIX_OFFSET, 16, 1, buf, strlen(buf), 1);
아래와 같이 호출하면
buf = "123456789abcdefghijklmnop";
print_hex_dump(KERN_ALERT, "김무겸바보", DUMP_PREFIX_OFFSET, 16, 1, buf, strlen(buf), 1);
유용한 API 임.
이 때는 print_hex_dump() 를 사용하면 된다.
void print_hex_dump(const char *level,
const char *prefix_str,
int prefix_type,
int rowsize,
int groupsize,
const void *buf,
size_t len,
bool ascii);
예를 들어 buf 가 아래와 같다면
buf = "123456789abcdefghijklmnop";
print_hex_dump(KERN_ALERT, "", DUMP_PREFIX_OFFSET, 16, 1, buf, strlen(buf), 0);
위와 같이 호출하면 아래와 같은 출력을 볼 수 있다.
[70339.966181] 00000000: 31 32 33 34 35 36 37 38 39 61 62 63 64 65 66 67
[70339.966480] 00000010: 68 69 6a 6b 6c 6d 6e 6f 70
아래와 같이 호출하면
buf = "123456789abcdefghijklmnop";
print_hex_dump(KERN_ALERT, "", DUMP_PREFIX_OFFSET, 16, 1, buf, strlen(buf), 1);
[70468.050260] 00000000: 31 32 33 34 35 36 37 38 39 61 62 63 64 65 66 67 123456789abcdefg
[70468.050819] 00000010: 68 69 6a 6b 6c 6d 6e 6f 70 hijklmnop
아래와 같이 호출하면
buf = "123456789abcdefghijklmnop";
print_hex_dump(KERN_ALERT, "김무겸바보", DUMP_PREFIX_OFFSET, 16, 1, buf, strlen(buf), 1);
[70553.053132] 김무겸바보00000000: 31 32 33 34 35 36 37 38 39 61 62 63 64 65 66 67 123456789abcdefg
[70553.054274] 김무겸바보00000010: 68 69 6a 6b 6c 6d 6e 6f 70 hijklmnop
유용한 API 임.
'development' 카테고리의 다른 글
[program] scandir() (0) | 2011.10.26 |
---|---|
[kernel] 커널 컴파일 완료후 꼭 해줘야 하는것. (0) | 2011.10.21 |
[crypto] RFC 3602(AES-CBC 암호화) (0) | 2011.10.20 |
[crypto] 암호화 알고리즘 정리 (0) | 2011.10.17 |
[crypto] Async MD5 example (0) | 2011.10.17 |