[Linux][Kernel] ftrace: stack tracer
By Guillermo Austin Kim | 2017년 12월 6일 |
리눅스 커널에서 제공하는 여러 profile tool 중에 ftrace가 있어요. 매우 강력해요. 잠깐 기억하는게, 저번 리눅스 커널 세미나에 갔었을 때 리눅스 커널 고수들이 ftrace로 벌이는 향연을 보고 참 라이브 공연에 있는 듯한 착각을 받았어요. ftrace 기능 중 stack tracer 기능을 잠깐 소개하고자 해요. 리눅스 커널 고수들 ftrace 로그를 밥 먹듯이 본다고 하네요. 저도 밥 먹듯이 보고는 있지만, 영 실력이 느는 것 같지 않아 짜증이 나지만요. 우선 stack tracer 기능을 좀 소개하려고 해요. 기능도 참 강력해요. 아래와 같이 커널 Config를 설정합니다.--- a/arch/arm/configs/pompeii_com_defconfig+++ b/arch/arm/conf
Q4OS 4.11에서 한글 입력 설정 문제
By 반달가면 | 2023년 1월 29일 |
데비안 계열의 경량 리눅스 배포판인 Q4OS의 최신 버전 4.11 KDE Plasma에서 한글 입력 설정이 제대로 되지 않아서 한참 이리 저리 해 보다가 어쨌든 해결이 되었기에 관련 내용을 정리해 둔다. 버추얼박스(VirtualBox) 가상머신으로 Q4OS 4.11을 설치하고(언어 설정은 영어), 처음에 한글 입력 설정 절차는 예전에 Q4OS 4.8에서 작업했던 것과 동일하게 진행했다. ibus-setup으로 설정하고 im-config에서 ibus를 활성화한다. 상세한 내용은 이전 게시물을 참고하자. 여기로 ibus를 이용해서 한글 입력을 설정했는데, 무슨 이유인지 한글 입력을 추가해도 다시 ibus 설정을 확인하면 추가되어 있지 않았다. 당연히 한글 입력도 불가능. 입력기 목록에 분명이 한글을
blkid - 리눅스에서 연결(마운트)된 저장장치(파티션) 정보 표시
By 반달가면 | 2019년 9월 16일 |
blkid 명령으로 리눅스에서 현재 연결(마운트)된 저장장치(파티션, partition)에 관한 정보를 확인할 수 있다. 장치이름, 파일시스템 종류(type), 고유식별자(UUID) 등이 출력된다. 배포판에 따라서 해당 정보를 열람하려면 루트(root) 권한을 요구할 수도 있다. 일반 사용자 권한으로 실행했을 때 아무런 출력도 없다면 루트 권한으로 실행해 보자. # blkid 실행 sudo blkid /dev/sda1: LABEL="rootMX18.1" UUID="ef8a7380-6cc0-4bbd-aef2-b2617588e528" TYPE="ext4" PARTUUID="abb0a64f-01" 위의 예시를 보면, 장치는 /dev/sda1, 레이블(lable)은 "rootMX18.1", 고유
[리눅스커널] 워크큐: 워커 쓰레드 핸들 worker_thread() 함수 분석
By Guillermo Austin Kim | 2019년 2월 9일 |
워크는 워커 쓰레드가 실행합니다. 워커 쓰레드를 관리하는 자료구조는 struct worker 구조체이며 이를 워커라고 부릅니다. 이전 절까지는 자료구조 중심으로 워크를 분석했는데 이번에는 워커 쓰레드가 쓰레드 관점으로 어떻게 실행하는지 알아봅니다. 다음은 워커 자료구조인 struct worker 구조체 선언부입니다.[https://elixir.bootlin.com/linux/v4.14.43/source/kernel/workqueue_internal.h#L24]1 struct worker {2union {3struct list_headentry; 4struct hlist_nodehentry; 5};6struct work_struct*current_work;7work_func_tcu