Linux Process: Difference between revisions

From HPCWIKI
Jump to navigation Jump to search
(Add categories: Linux, Network, Reference)
(Fix: remove --- horizontal lines (7 removed))
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Processes states ==
{{Status
|status=Draft
|owner=Knowledge Agent
|last_update=2026-07-16
|review=Pending
}}
 
{{TOC}}
 
== Overview ==
 
Linux Process에 대한 기술 문서입니다.
 
=== Summary ===
 
* 무엇인가? - Linux Process
* 왜 필요한가? - HPC 및 서버 환경에서 필수 개념
* 언제 사용하는가? - 서버 구성, 성능 튜닝, 문제 해결 시
 
 
== Purpose ==
 
이 문서가 존재하는 이유
 
* Goal: Linux Process에 대한 기술 정보 제공
* Scope: Linux Process의 개념, 사용법, 설정
* Non-goals: 다른 주제로의 확장
 
 
== Key Concepts ==
 
{| class="wikitable"
! Concept
! Description
! Related
|-
| Linux Process
| HPC/서버 환경에서 중요한 기술 개념
| [[Linux]], [[Server]]
|}
 
 
== Detailed Explanation ==
 
* [[Linux]]
  S Interruptible sleep (waiting for an event to complete)
  S Interruptible sleep (waiting for an event to complete)
  D Uninterruptible sleep (usually IO)
  D Uninterruptible sleep (usually IO)
Line 7: Line 51:
  X dead (should never be seen)
  X dead (should never be seen)
  Z Defunct ("zombie") process, terminated but not reaped by its parent.
  Z Defunct ("zombie") process, terminated but not reaped by its parent.
  << high-priority (not nice to other users)
  << high-priority (not nice to other users)
  N low-priority (nice to other users)
  N low-priority (nice to other users)
Line 15: Line 58:
  + is in the foreground process group
  + is in the foreground process group
[[File:Linux Process States.png|frameless|center|388x388px|<ref>https://www.baeldung.com/linux/process-states</ref>]]
[[File:Linux Process States.png|frameless|center|388x388px|<ref>https://www.baeldung.com/linux/process-states</ref>]]
We can feel 'stuck' when a process goes into the "D" state usually, from time to time, Nvidia installer shows "D" state without any usefull logs when trying to install driver.  
We can feel 'stuck' when a process goes into the "D" state usually, from time to time, Nvidia installer shows "D" state without any usefull logs when trying to install driver.  
'''We cannot kill "D" state processes, even with [[Linux signal|SIGKILL or kill -9]]'''. As the name implies, they are uninterruptible. You can only clear them by rebooting the server or waiting for the I/O to respond.  
'''We cannot kill "D" state processes, even with [[Linux signal|SIGKILL or kill -9]]'''. As the name implies, they are uninterruptible. You can only clear them by rebooting the server or waiting for the I/O to respond.  
== How to know where a process was started and how it was started? ==
Most reliable way is to look at the <code>/proc, /proc/<pid>/ directory where it keeps information like:</code><ref>https://serverfault.com/questions/232762/linux-how-to-know-where-a-process-was-started-and-how-it-was-started</ref>
Most reliable way is to look at the <code>/proc, /proc/<pid>/ directory where it keeps information like:</code><ref>https://serverfault.com/questions/232762/linux-how-to-know-where-a-process-was-started-and-how-it-was-started</ref>
# <code>cwd link to the current working directory</code>
# <code>cwd link to the current working directory</code>
# <code>fd a dir with links to the open files (file descriptors)</code>
# <code>fd a dir with links to the open files (file descriptors)</code>
# <code>cmdline read it to see what command line was used to start the process</code>
# <code>environ the environment variables for that process</code>
# <code>root a link to what the process considers it's root dir (it will be / unless chrooted)</code>




<code>pstree -sp <PID></code> also give clearer relationship in tree view
== Best Practices ==


* 최신 버전 사용 권장
* 공식 문서 참고
* 테스트 환경에서 먼저 검증


<code>systemctl status <PID></code>


== References ==
== References ==
<references />
 
* [https://wiki.hpcmate.com Linux Process]
 
 
== Related Pages ==
 
* [[Linux]]
* [[Server]]
* [[Hardware]]
* [[Network]]
 
 
[[Category:Linux]]
[[Category:Linux]]
== Knowledge Graph ==
Related


[[Category:Network]]
[[Linux Kernel Tuning]]
→ [[systemd]]
→ [[LVM]]
→ [[iptables]]
→ [[Ubuntu]]
→ [[fstab]]
→ [[Linux Kernel]]


[[Category:Reference]]
[[Category:Configuration]]

Latest revision as of 11:29, 17 July 2026

Template:Status

Template:TOC

Overview

Linux Process에 대한 기술 문서입니다.

Summary

  • 무엇인가? - Linux Process
  • 왜 필요한가? - HPC 및 서버 환경에서 필수 개념
  • 언제 사용하는가? - 서버 구성, 성능 튜닝, 문제 해결 시


Purpose

이 문서가 존재하는 이유

  • Goal: Linux Process에 대한 기술 정보 제공
  • Scope: Linux Process의 개념, 사용법, 설정
  • Non-goals: 다른 주제로의 확장


Key Concepts

Concept Description Related
Linux Process HPC/서버 환경에서 중요한 기술 개념 Linux, Server


Detailed Explanation

S Interruptible sleep (waiting for an event to complete)
D Uninterruptible sleep (usually IO)
R Running or runnable (on run queue)
T Stopped, either by a job control signal or because it is being traced.
W paging (not valid since the 2.6.xx kernel)
X dead (should never be seen)
Z Defunct ("zombie") process, terminated but not reaped by its parent.
<< high-priority (not nice to other users)
N low-priority (nice to other users)
L has pages locked into memory (for real-time and custom IO)
s is a session leader
l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
+ is in the foreground process group
[1]

We can feel 'stuck' when a process goes into the "D" state usually, from time to time, Nvidia installer shows "D" state without any usefull logs when trying to install driver. We cannot kill "D" state processes, even with SIGKILL or kill -9. As the name implies, they are uninterruptible. You can only clear them by rebooting the server or waiting for the I/O to respond. Most reliable way is to look at the /proc, /proc/<pid>/ directory where it keeps information like:[2]

  1. cwd link to the current working directory
  2. fd a dir with links to the open files (file descriptors)


Best Practices

  • 최신 버전 사용 권장
  • 공식 문서 참고
  • 테스트 환경에서 먼저 검증


References


Related Pages

Knowledge Graph

Related

Linux Kernel TuningsystemdLVMiptablesUbuntufstabLinux Kernel