LINUX
Posts
487 posts[bash: awk] 특정 필드(field)의 값이 있는 경우, 또는 없는 경우 판별하기
여러개의 항목 또는 필드(field)로 이루어진 내용에서 특정한 항목의 값이 있는지 없는지 판별할 때, 즉 특정한 필드 값의 유무에 따라 선별을 해야 할 경우에 awk를 활용할 수 있다. (우선 awk에서 조건에 따른 작업에 대한 기본적인 내용은 이전 게시물을 참고하자. 여기로) 예를 들어 이름, 전화번호, 이메일을 저장한 파일에서 전화번호가 없는 사람만 골라서 출력한다거나 아니면 이메딜 주소가 있는 사람만 출력하는 경우다. 각 항목을 탭(tab)으로 구분한다고 가정한다. # list.txt 파일 내용 확인 cat list.txt john 123-1234 [email protected] jane [email protected] sam 222-3434 위의 예시에서 탭이
[라즈베리파이][리눅스커널] in_interrupt() 함수란
in_interrupt() 함수란리눅스 커널이 실행할 때 수많은 함수가 각자 서로를 호출합니다. 어떤 함수는 프로세스 컨택스트에서 실행(커널 쓰레드)되는데 대부분 함수는 인터럽트 컨택스트, 즉 인터럽트 처리하는 도중 호출될 수 있습니다. 만약 현재 실행하는 코드가 인터럽트를 처리 중이면 더 빨리 처리해야겠죠? 인터럽트 서비스 루틴은 실행 중인 프로세스를 멈추고 동작하므로 인터럽트 컨택스트 조건에서만 신속하게 코드를 실행시키고 싶을 때가 있습니다. 그럼 현재 실행 중인 코드가 인터럽트 컨택스트 구간인지 어떻게 알 수 있을까요? in_interrupt()란 함수가 이 정보를 알려줍니다. 그럼 다음 패치를 함께 살펴 봅시다. diff --git a/drivers/md/dm-region-hash.c b/dr
[라즈베리파이][리눅스커널]IRQ Thread(threaded IRQ) 란 #CS
From [라즈베리파이]인터럽트 후반부 처리(Bottom Half) 소개 #CS http://rousalome.egloos.com/9977984 리눅스 커널을 익히는 과정에서 만나는 걸림돌 중 하나가 어려운 용어입니다. 어려운 개념을 낯선 용어로 설명하니 이해하기 어렵죠. IRQ Thread의 의미를 알기 전에 IRQ란 용어부터 알아볼까요? IRQ는 Interrupt Request의 약자로 하드웨어에서 발생한 인터럽트를 처리 한다는 의미입니다. 조금 더 구체적으로 인터럽트 발생 후 인터럽트 핸들러까지 처리하는 흐름입니다. IRQ Thread란 뭘까요? 인터럽트 핸들러에서는 처리하면 오래 걸리는 일을 수행하는 프로세스입니다. 인터럽트 후반부 처리를 위한 인터럽트 처리 전용 프로세스입니다. 리눅스 커널
리눅스에서 ZFS 압축 기능 사용
ZFS 설치, zpool 생성, 파일 시스템 생성 등 기본적인 작업은 이전 게시물을 참고하자. 여기로 CPU 자원이 충분한데 입출력(I/O)을 좀 더 향상시키고 싶다면 ZFS 입출력 데이터를 압축하도록 설정할 수 있다. 예를 들어 my_test_pool이라는 zpool에 있는 data라는 파일 시스템에 대하여 압축을 활성화하려면 아래와 같이 작업한다. # my_test_pool/data 파일 시스템에서 압축 활성화 sudo zfs set compression=on my_test_pool/data 압축을 비활성화하려면 아래와 같이 작업한다. compression 설정을 off로 변경. # my_test_pool/data 파일 시스템에서 압축 비활성화 sudo zfs set compre

