스레드
Posts
51 posts[라즈베리파이] 프로세스 - 커널 스레드(Kernel Thread) 소개
커널 스레드란커널 프로세스는 커널 공간에서만 실행하는 프로세스를 의미하며 대부분 커널 스레드 형태로 구동합니다. 커널 스레드는 리눅스 시스템 프로그래밍에서 데몬과 비슷한 일을 합니다. 데몬과 커널 스레드는 백그라운드 작업으로 실행하면서 시스템 메모리나 전원을 제어하는 역할을 수행합니다. 커널 스레드는 커널 내부에서 백그라운드로 구동하면서 커널 시스템에 도움을 주는 역할을 수행합니다. 데몬과 비교해서 커널 스레드는 커널 모드에서만 실행하고 시스템 콜과 인터페이싱 하지 않고 동작한다는 점입니다. 커널 스레드는 리눅스 커널 개발자나 드라이버 개발자가 구현하는 경우가 많습니다. 커널 스레드는 다음과 같이 3가지 특징이 있습니다.1. 커널 스레드는 커널 공간에서만 실행하며 유저 공간과 상호작용을 하지 않습니다.
[리눅스커널] 프로세스 - 커널 프로세스 생성 시 do_fork() 함수 흐름
커널 공간에서 시스템 리소스(메모리, 전원) 관리를 수행하는 프로세스를 커널 스레드라고 합니다. 커널 스레드는 어떻게 생성할까요? 다음과 같이 kthread_create() 함수에 적절한 인자를 전달하면 됩니다. 커널 스레드를 생성하는 코드를 같이 봅시다. [https://elixir.bootlin.com/linux/v4.14.70/source/drivers/vhost/vhost.c#L334]1 long vhost_dev_set_owner(struct vhost_dev *dev)2 {3 struct task_struct *worker;4 int err;...5 /* No owner, become one */6 dev->mm = get_task_mm(current);7 worker = kthread_c
[리눅스커널] 프로세스 - 프로세스, 태스크란
프로세스는 추상적이고 다양한 의미를 담고 있어 다양한 관점으로 설명할 수 있습니다. 프로세스란 무엇일까요? 프로세스(Process)는 리눅스 시스템 메모리에서 실행 중인 프로그램을 말합니다. 스케줄링 대상인 태스크와 유사한 의미로 쓰입니다. 다수 프로세스를 실시간으로 사용하는 기법을 멀티프로세싱이라고 말하며 같은 시간에 멀티 프로그램을 실행하는 방식을 멀티태스킹이라고 합니다. 우리가 쓰고 있는 스마트폰 동작을 잠깐 생각해봅시다. 전화를 하면서 메모를 남기고, 음악을 들으면서 브라우저를 볼 수 있습니다. 여러 어플리케이션이 동시에 실행하고 있습니다. 이것은 멀티태스킹을 수행해서 프로그램을 시분할 방식으로 처리하기 때문에 가능합니다. 이번에는 리눅스 개발자 입장에서 프로세스에 대해 생각해 봅시다. 프로세스
[리눅스커널] 프로세스 태스트 디스크립터 디버깅: 스레드와 스레드 그룹
T32로 프로세스 목록을 보면 다음과 같이 계층 구조를 볼 수 있다.magic___|___command_________|#thr|state_____|spaceid|pids_|C1A171B8| swapper/0 | 420|current | 0000 | 0. 2. 3. 5. 6. 7. 8. 9. 10F1618000| init | - |sleeping | 0001 | 1.E9AF8740| ueventd | - |sleeping | 01D0 | 464.E9AFAB80| logd | 7. |sleeping | 0208 | 520.E9AFC140| logd.daemon | |sleeping |
![[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)

