워크
Posts
55 posts[라즈베리파이] 워크큐(Workqueue) - 딜레이워크(delayed_work) 소개
워크큐는 대표적인 커널 후반부 처리 기법으로 후반부 처리 코드를 워크 핸들러에서 실행합니다. 동기적으로 처리 할 필요가 없는 코드를 워크 핸들러에 위치시켜 비동기적으로 커널 쓰레드 레벨에서 처리하는 겁니다. 이런 구조로 드라이버를 설계하면 다양한 디바이스 드라이버 시나리오에 맞게 코드를 구성할 수 있습니다. 워크에서 유연성을 추가한 기법이 딜레이 워크입니다. 구체적으로 딜레이 워크란 무엇일까요? 딜레이 워크는 워크를 일정 시각(HZ 단위) 후에 지연시켜 실행합니다. 여기서 말하는 지연 시각은 디바이스 드라이버 시나리오에 맞게 변경할 수 있습니다. 예를 들어 다음 온도를 콘트롤하는 드라이버 시나리오를 생각해 봅시다.1. 온도가 높아지면 인터럽트가 발생2. 인터럽트 핸들러에서 워크를 워크큐에 큐잉3. 워크
![[라즈베리파이] 워크큐(Workqueue) - 워크를 워크큐에 어떻게 큐잉할까?(1)](https://img.zoomtrend.com/2018/09/08/c0246238_5b933e53d810f.png)
[라즈베리파이] 워크큐(Workqueue) - 워크를 워크큐에 어떻게 큐잉할까?(1)
워크를 초기화만 하면 워크를 실행할 수는 없습니다. 우선 워크를 워크큐에 큐잉해야 워커 쓰레드는 워크를 실행할 수 있습니다. 이번절에서는 워크를 워크큐에 큐잉하면 워크큐 전체 흐름으로 어떤 동작을 하는지 알아 보겠습니다. 워크 초기화는 struct work_struct 타입 변수를 INIT_WORK() 함수에 전달하거나 DECLEAR_WORK() 함수로 struct work_struct 변수를 선언하면 됩니다. 이 워크를 워크큐를 큐잉하려면 struct work_struct 타입 변수를 schedule_work()이라는 함수에 파라미터로 전달하면 됩니다. 이번에는 워크를 워크큐에 큐잉하는 코드는 다음과 같습니다.[https://elixir.bootlin.com/linux/v4.14.43/source/d
[라즈베리파이] 워크큐(Workqueue) - 워크(struct work_struct) 란
리눅스 커널에서 work라고 부르나 워크(struct work_struct)로 명시 하겠습니다. 워크란 무엇이고 어떤 동작을 할까요? 워크는 워크큐 실행 단위이며 워커 쓰레드에서 실행합니다. 커널 후반부 처리 기법으로 워크큐를 많이 쓴다고 했는데 워크가 바로 후반부 처리를 합니다. 워크가 어떻게 동작하는지 이번 장에서 코드를 분석하면서 상세히 알아볼 예정입니다. struct work_struct 구조체워크를 표현하는 자료구조는 무엇일까요? 정답은 struct work_struct 이며 다음 코드와 같습니다.[https://elixir.bootlin.com/linux/v4.14.43/source/include/linux/workqueue.h]1 struct work_struct {2 atomic_long
[라즈베리파이] 워크큐(Workqueue) 용어 알아보기
이번에는 워크큐에서 쓰이는 여러 용어를 소개합니다.많은 개발자들이 워크큐를 낯설어하는 이유는 자료구조와 그 개념을 익히기 어렵기 때문입니다. 워크와 워커쓰레드 그리고 풀워크가 자료구조가 어떤 형태로 연결되서 처리하는지 큰 그림을 그리기 어렵습니다. 각각 의미와 자료 구조를 살펴보겠습니다. 1. 워커 쓰레드우선 워커 쓰레드부터 알아보겠습니다. 워커 쓰레드는 워크를 실행하는 프로세스입니다. 리눅스 시스템에서 항상 백그라운드로 실행하는 친숙한 프로세스입니다. 프로세스 이름은 "kworker/"로 시작하며 워크큐 종류에 따라 "kworker/" 이후 번호가 붙습니다. 다음은 라즈베리파이에서 확인한 워커 쓰레드입니다.root@raspberrypi:/# ps -ely | grep kworkerS UID P



![[1년 전 오늘] 250608 인천 무의도 덕점방파제 바다루어낚시 - 장대, 광어](https://img.zoomtrend.com/2026/06/10/1781084366-20250608122254.jpg)
![[CV] [Comi] '終末のハーレム ファンタジア' (종말의 하렘 판타지아) 17권. 그동안 SAVAN에 무슨 일이 있었던 거냐](https://img.zoomtrend.com/2026/06/10/1781084386-ECA484EBA6ACEC9790.jpg)