프로세스
Posts
54 posts[라즈베리파이] 프로세스 확인하기 - ps
리눅스 시스템 개발자(디바이스 드라이버, 데브옵스)로 오래 동안 실력을 인정 받으려면 리눅스 커널을 잘 알면 좋습니다. 하지만 리눅스 커널은 그 내용이 방대하고 깊이가 있어 단기간에 익히기 어려운 기술 영역입니다. "프로세스란 무엇인가"란 질문으로 리눅스 커널을 시작합니다. 성경이나 불경같이 근엄한 단어를 많이 보입니다. 안타깝게도 20페이지 정도 읽다가 포기합니다. 너무 이론으로 프로세스를 설명하기 때문입니다. 프로세스에 익숙해지려면 리눅스 시스템에 익숙해져야 합니다. 이번 장에서는 라즈베리파이에서 명령어를 입력하고 ftrace 로그에서 출력되는 로그로 프로세스 동작을 확인합니다. 먼저 다음 리눅스 명령어로 시스템에서 프로세스 목록을 확인합시다. 이를 위해 라즈베리파이에서 x-terminal 프로그램
[리눅스커널] 프로세스 - 프로세스, 태스크란
프로세스는 추상적이고 다양한 의미를 담고 있어 다양한 관점으로 설명할 수 있습니다. 프로세스란 무엇일까요? 프로세스(Process)는 리눅스 시스템 메모리에서 실행 중인 프로그램을 말합니다. 스케줄링 대상인 태스크와 유사한 의미로 쓰입니다. 다수 프로세스를 실시간으로 사용하는 기법을 멀티프로세싱이라고 말하며 같은 시간에 멀티 프로그램을 실행하는 방식을 멀티태스킹이라고 합니다. 우리가 쓰고 있는 스마트폰 동작을 잠깐 생각해봅시다. 전화를 하면서 메모를 남기고, 음악을 들으면서 브라우저를 볼 수 있습니다. 여러 어플리케이션이 동시에 실행하고 있습니다. 이것은 멀티태스킹을 수행해서 프로그램을 시분할 방식으로 처리하기 때문에 가능합니다. 이번에는 리눅스 개발자 입장에서 프로세스에 대해 생각해 봅시다. 프로세스
[리눅스 커널] 유저 레벨 프로세스란
유저 레벨 프로세스에 대해 알아보기 전에 유저 모드가 무엇인지에 대해서 먼저 살펴봅시다. 우리가 라즈베리파이에서 바탕 화면에 있는 아이콘을 클릭해서 어떤 프로그램을 실행하고 있다고 가정합시다. 이 때 프로그램은 유저 모드나 커널 모드 중 하나로 동작합니다. ftrace 로그로 이 커널이 동작을 확인하면 정확히 유저 모드와 커널 모드를 자주 스위칭합니다. 유저 모드와 커널 모드로 나누는 기준은 무엇일까요? 이는 메모리 접근과 실행 권한으로 두 모드로 분류합니다. 실행 모드를 유저 모드와 커널 모드로 나누는 이유를 알기 위해 예를 들겠습니다. 어떤 시스템 메모리 공간을 0~4G까지 가상 메모리에서 연속으로 쓰고 있다고 가정합시다. 이 때 커널 코드와 전역 변수가 0~4G 메모리 구간에 메모리 주소로 매핑
[리눅스커널] Process - 프로세스, 경량 프로세스, 스레드 소개
프로세스라는 개념은 모든 멀티프로그래밍 운영체제의 기본입니다.프로세스는 실행중인 프로그램의 인스턴스로 정의할 수 있는데, 16명의 유저가 vi를 동시에 실행하면 각각 16개의 프로세스가 존재합니다. (물론 vi 코드는 동일한 것을 공유할 수 있습니다). 리눅스 코드에서는 프로세스를 태스크(task)나 쓰레드(thread)라고 부릅니다. 프로세스, 경량 프로세스 그리고 쓰레드프로세스라는 용어는 여러가지 다른 추상화 개념으로 씁니다. 프로세스는 프로그램이 어디까지 실행되었는지를 완벽하게 알고 있는 자료 구조체라 볼 수 있습니다. 프로세스는 마치 인간과 같습니다. 프로세스는 생성되고 중요하게 관리될 수 있으며 사소하기도 한 삶을 살고, 자식 프로세스를 생성하기도 하고 마지막에는 죽습니다. 아주 작은 차이가



![[CV] [Comi] 'ファイブスター物語'(더 파이브 스타 스토리즈) 19권. 연재분에서 벌어지는 '검성 대 검성'](https://img.zoomtrend.com/2026/06/06/1780766083-ECB2ABEB93B1EC9EA5EB8DB0ECBD94EC8AA4.jpg)