LINUX
Posts
477 posts[Linux][Kernel] 슬랩 메모리: kmalloc 소개
리눅스 커널에서 메모리란 소리만 나와도 공포에 질리는 분들이 있습니다. 예전에 저도 그랬죠. 스타크래프트에서 테란 조이기를 당할 때와 비슷한 느낌이었죠. 정말 갑갑했죠. 메모리풀, vmalloc, 슬랩 메모리, 하이 메모리 등등 용어를 듣다 보면 뇌정지가 올 때가 있습니다. 그런데 나중에 깨닫게 된 사실은 리눅스 커널에서 메모리를 제대로 이해하는 개발자가 매우 적다는 것이었습니다. 그래서 조금 위안을 가졌죠. 리눅스 커널 메모리 시스템을 이해하려고 리눅스 커널 코드를 열어 보는 분들이 있습니다. 이것은 정말 옵져버 없이 럴커 밭에 달려드는 질럿과 같습니다. 절대 이렇게 분석하면 포기할 수 밖에 없습니다. 그 이유는 리눅스 커널 메모리 관련 코드가 정말 어렵거든요. 그럼 어떻게 리눅스 커널 메모리 시스템을
![[Linux][Kernel] IPI call - call_single_queue](https://img.zoomtrend.com/2018/04/08/a0386257_5ac98a564af4b.png)
[Linux][Kernel] IPI call - call_single_queue
IPI call을 수행할 때의 queue이 call_single_queue 분석.
![[Linux][Kernel] 라덱스 트리 radex tree](https://img.zoomtrend.com/2018/04/07/a0386257_5ac8c24c7fa22.png)
[Linux][Kernel] 라덱스 트리 radex tree
인터럽트 디스크립터를 관리하는 라덱스 트리를 분석했습니다. 리눅스 커널 버전: 3.18 ~ 4.4까지 구조 리눅스 커널 버전: 4.9 구조
리눅스에서 MD5, SHA1, SHA256, SHA512 해시 계산
리눅스에는 각종 해시(hash)값을 계산해 주는 프로그램들이 기본으로 제공된다. 파일의 무결성 검사 등에 활용 가능. 우선 MD5 해시값 계산의 예시를 보자. md5sum이라는 프로그램을 이용한다. # my_data.dat 파일에 대한 MD5 해시값 계산 md5sum my_data.dat 84dec2711e5e6b2ad88ae98271da0f4c my_data.dat cat my_data.dat | md5sum 84dec2711e5e6b2ad88ae98271da0f4c - # 문자열 "abc"에 대한 MD5 해시값 계산(줄바꿈 포함) echo "abc" | md5sum 0bee89b07a248e27c83fc3d5951213c1 - # 문자열 "abc"에 대한 MD5



