기본 콘텐츠로 건너뛰기

softirq

리눅스 2.4.x에서 등장한 것으로 인터럽트 핸들러가 처리하는 시간이 길어지는 동안 동일 비중의 인터럽트 처리가 늦어지거나 인터럽트 이벤트를 놓치는 것을 최대한 막고자 해당 인터럽트를 소프트웨어적으로 나누어 처리하는 것이다. ksoftirqd이라는 커널 스레드가 관리하는데 보통 엄청난 양의 인터럽트가 한꺼번에 발생할 때 나타나서 cpu 점유율을 상승한다. ksoftirqd의 cpu 점유율이 상승하는  때는 보통 디스크 오류로 인해 디스크 I/O가 원할하지 않거나 네트워크 부하가 심할 때 발생한다.

알아야할 사항:
  • Top-half: 인터럽트 핸들을 빠르게 처리한다.
  • Bottom-half: 핸들처리를 빨리 하지 않아도 되는 경우. 인터럽트 이벤트를 미리 받아놓고 softirq가 나중에 가끔씩 처리하게 하는 방식.

댓글

이 블로그의 인기 게시물

설치한 패키지에서 RPM 추출하기

오래된 패키지를 관리할 저장소가 없어졌고, 기존 패키지로 다른 서버를 세팅해야할 일이 생겼다면 RPM의 리패키지 기능을 이용해보자. $ rpm -e --repackage [PACKAGE_NAME] 위와 같이 리패키지하면, /var/spool/repackage/ 에 생성한 RPM파일이 있다. :-)

Winget 해시 무시하기

가끔씩 Winget 에서 패키지를 다운로드 했을 때, "설치 관리자 해시가 일치하지 않습니다." 오류가 뜰 때가 있다. 보안 이슈가 있지만, 그냥 무시하고 싶을 때, 아래 순서로 무시해준다. 관리자 권한 winget settings --enable InstallerHashOverride 설치 winget install --ignore-security-hash --id NirSoft.NirCmd