저는 RHEL 7.4의 크래시 덤프를 작업 중입니다. 일부 작업 상태를 PA로 표시합니다. 명령의 경우 -crash> ps | grep sample
- 31718 31717 3 ffff8806873a6eb0 **PA** 0.0 42260 8040 sample
- 32027 32025 3 ffff880462cf1fa0 **PA** 0.0 42260 8036 sample
- 32148 32146 5 ffff88081b75eeb0 **PA** 0.0 42260 8036 sample
- 32620 32618 0 ffff8802b1469fa0 **PA** 0.0 42260 8036 sample
이 작업 상태에 대한 세부 정보를 설명하는 도움말 페이지가 없습니다.
- PA가 어떤 작업 상태를 참조하는지 말해 줄 수 있는 사람이 있나요?
- 충돌 유틸리티에 언급된 모든 프로세스의 상태에 대한 링크나 세부 정보가 있습니까?
crash> help ps |grep PA
- the task state (RU, IN, UN, ZO, ST, TR, DE, SW, WA, PA).**
답변1
바라보다http://people.redhat.com/anderson/crash_sources/task.c
char *
task_state_string(ulong task, char *buf, int verbose)
{
long state;
int exclusive;
int valid, set;
if (_RUNNING_ == TASK_STATE_UNINITIALIZED)
initialize_task_state();
if (verbose)
return task_state_string_verbose(task, buf);
if (buf)
sprintf(buf, verbose ? "(unknown)" : "??");
state = task_state(task);
set = valid = exclusive = 0;
if (valid_task_state(_EXCLUSIVE_)) {
exclusive = state & _EXCLUSIVE_;
state &= ~(_EXCLUSIVE_);
}
if (state == _RUNNING_) {
sprintf(buf, "RU");
valid++;
}
if (state & _INTERRUPTIBLE_) {
sprintf(buf, "IN");
valid++;
set++;
}
if (state & _UNINTERRUPTIBLE_) {
if (valid_task_state(_NOLOAD_) &&
(state & _NOLOAD_))
sprintf(buf, "ID");
else
sprintf(buf, "UN");
valid++;
set++;
}
if (state & _ZOMBIE_) {
sprintf(buf, "ZO");
valid++;
set++;
}
if (state & _STOPPED_) {
sprintf(buf, "ST");
valid++;
set++;
}
if (valid_task_state(_TRACING_STOPPED_) &&
(state & _TRACING_STOPPED_)) {
sprintf(buf, "TR");
valid++;
set++;
}
if (state == _SWAPPING_) {
sprintf(buf, "SW");
valid++;
set++;
}
if ((state & _DEAD_) && !set) {
sprintf(buf, "DE");
valid++;
set++;
}
if (state == _PARKED_) {
sprintf(buf, "PA");
valid++;
}
if (state == _WAKING_) {
sprintf(buf, "WA");
valid++;
}
if (state == _NEW_) {
sprintf(buf, "NE");
valid++;
}
if (valid && exclusive)
strcat(buf, "EX");
return buf;
}
답변2
이 상태는 주차상태를 의미합니다. 이 상태는 3.9와 3.13 사이의 커널에만 유효합니다. ~에 따르면남성페이지:
state %c
One of the following characters, indicating process
state:
R Running
S Sleeping in an interruptible wait
D Waiting in uninterruptible disk sleep
Z Zombie
T Stopped (on a signal) or (before Linux 2.6.33)
trace stopped
t Tracing stop (Linux 2.6.33 onward)
W Paging (only before Linux 2.6.0)
X Dead (from Linux 2.6.0 onward)
x Dead (Linux 2.6.33 to 3.13 only)
K Wakekill (Linux 2.6.33 to 3.13 only)
W Waking (Linux 2.6.33 to 3.13 only)
P Parked (Linux 3.9 to 3.13 only)
이 상태라고도 합니다.방해받지 않는 수면. 인용하다이것자세한 내용은 링크를 참조하세요.