LINUX

포스트: 477|조회수: 0|TERM
Items

Posts

477 posts

[리눅스커널] 익명 페이지 메모리 누수(Memory Leak) 디버깅 - TRACE32

Guillermo Austin Kim|2019년 12월 16일

많은 리눅스 시스템 개발자들은 자신이 개발하고 있는 리눅스 커널의 버전이 주류였으면 하는 바램이 있다. 하지만 현실은 다르다. 현재 리눅스 커널의 최신 버전인 4.19(LTS 기준)으로 개발하고 있어도 이전 리눅스 커널 버전에서 다뤘던 자료 구조에 대해 알고 있어야 한다. 이번에는 커널 3.10 버전에서 struct anon_vma 구조체와 struct address_space 구조체의 관계에 대해 알아보겠다. 먼저 다음 TRACE32 명령어를 입력해 3번째 프레임의 페이지 디스크립터를 확인하자. $(TRACE32 명령어) v.v %d %t %h %i (struct page[0x7FFF])*mem_map (static struct page [32767]) (struct page[0x7FFF])*me

imagemagick - 이미지 파일의 밝기(brightness)/대비(contrast) 조정하기

반달가면|2019년 12월 16일

우선, 리눅스용 명령어 기반(CLI) 그림 파일 변환/편집 프로그램인 imagemagick에 대한 기본적인 내용은 이전 게시물을 참조하자. 여기로. 이전 게시물에서 이미지 파일 형식 변환이나 크기 조정(resize) 등 기본적인 내용은 정리해 두었는데, 꽤 자주 사용하는 밝기(brightness) 및 대비(contrast) 조정에 대해서도 정리해 두기로. 우선 기본적인 이미지 파일 변환 예시는 아래와 같다. # test.png -> test.jpg 변환, 화질 95, 크기 800*600 convert test.png -quality 95 -resize 800x600 test.jpg 밝기와 대비는 하나의 옵션에서 같이 지정할 수 있는데, -brightness-contrast 옵션

스피드크런치(SpeedCrunch) - 리눅스용 공학계산기

반달가면|2019년 12월 11일

MX리눅스(MX Linux)에 기본으로 딸려 오는 계산기 프로그램인 갈큘레이터(Galculator)가 별로 마음에 들지 않아서 다른 계산기를 찾아보다가, 꽤 오래전부터 윈도우에서 사용했던 스피드크런치(SpeedCrunch)가 리눅스용 버전도 있다는 사실을 알게 되었다. 처음 스피드크런치를 알았을 당시에는 리눅스용 버전이 없었던 것 같기도 한데, 아무튼 있으니 다행. 스피드크런치 공식 웹사이트는 아래와 같다. 공식 웹사이트에서 리눅스용 패키지 파일을 다운로드할 수도 있으나, 주요 배포판의 S/W저장소에서 기본적으로 제공하는 듯하다. 데비안/우분투 계열 배포판에서는 아래와 같이 설치하면 되겠다. # S/W 저장소 정보 갱신 sudo apt-get update # speedcrunch 설치

[리눅스커널] 커널 동적 타이머를 사용해 실행 시각을 측정해보기

Guillermo Austin Kim|2019년 12월 8일

이번에는 조금 더 재미있는 패치 코드를 같이 볼까요? 다음은 패치 코드의 내용입니다. diff --git a/kernel/workqueue.c b/kernel/workqueue.cindex cd8b61b..128c998 100644--- a/kernel/workqueue.c+++ b/kernel/workqueue.c@@ -49,7 +49,7 @@ #include #include #include -+#include #include "workqueue_internal.h" enum {@@ -2029,6 +2029,18 @@