CHAAANY ARCHIVE

workqueue

1개의 기록을 주제별로 둘러보세요.

Linux CPU 실행 경로: 시스템 콜·하드 IRQ·softirq·workqueue 구분

Linux에서 CPU가 커널 코드를 실행한다고 해서 모두 같은 경로와 제약을 갖는 것은 아니다. 사용자 프로세스가 요청한 시스템 콜, 장치가 일으킨 하드웨어 인터럽트, 커널이 미룬 softirq, worker thread가 처리하는 workqueue는 진입 원인과 실행 문맥이 다르다.이 차이를 알아야 함수 안에서 잠들 수 있는지, 어떤 지연이 사용자 요청에 포함되는지, 성능 도구의 숫자를 어떻게 해석할지 판단할 수 있다.사용자 함수가 곧바로 시스템 콜이 되는 것은 아니다애플리케이션 함수는 먼저 사용자 공간에서 실행된다. 그 함수가 커널의 서비스가 필요할 때 시스템 콜 경계를 통과한다.애플리케이션 함수 → 언어 런타임·C 라이브러리 → 필요할 때 시스템 콜 진입 → 커널 처리 → 사용자 공간 복귀예..

728x90