“인터럽터 블 슬립”상태는 무엇을 나타 냅니까? 관리자와 GUI 작업

Firefox를 Parted Magic LiveCD에서 실행 한 다음, 아마도 기억 나지 않는 키 조합의 결과로 화면과 작업 표시 줄 / 창 목록에서 빨리 사라졌습니다.

하나:

  1. ps ax | grep firefox아래와 불필요한 grep firefox줄을 반환합니다 . psGUI 작업 관리자와 GUI 작업 관리자 모두 변하지 않는 RSS, VM-SIZE 및 0 % CPU 사용량으로 파이어 폭스를 보여줍니다.

    johndoe 1916 36.6 14.0 923772 504372 tty1 Sl 13:30 12:15 파이어 폭스

  2. pstree | grep firefox 보고:

    init─┬─2 * [ROX-Filer───firefox───25 * [{firefox}]]

  3. strace -p 1916 돌아와서이 줄에 영원히 머무 릅니다.

    futex(0xac975608), FUTEX_WAIT_PRIVATE, 1, NULL

나는에 대한 답변에서 이해 PS의 평균에서 STAT 열 값을 무엇입니까? 있음 S(는에서 Sl) 프로세스는 것을 나타내는 interruptible sleep상태.

누구든지 국가가 무엇인지 더 자세하게 설명 할 수 있습니까?

편집하다

나는 원래의 두 번째 질문을 다루기 위해 배포판에 대해 더 구체적인 내용을 가진 새로운 질문을 시작할 것입니다.



답변

@msw는 두 번째 Q와 일부 첫 번째 설명을 잘 수행했습니다.

B) 개인 브라우징 모드에서 성가신 열었던 탭을 (최소한) 저장하기 위해 비교적 쉬운 방법을 제안하십시오.

그래서 나는 당신의 첫 번째 Q를 조금 더 다루려고 노력할 것입니다 :

A) 국가가 무엇인지 더 자세하게 설명해 주시겠습니까?

상태 값 Sl(소문자 L) :

   S    Interruptible sleep (waiting for an event to complete)
   l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

                 프로세스 수명주기

PROCESS STATE CODES
   R  running or runnable (on run queue)
   D  uninterruptible sleep (usually IO)
   S  interruptible sleep (waiting for an event to complete)
   Z  defunct/zombie, terminated but not reaped by its parent
   T  stopped, either by a job control signal or because
      it is being traced
   [...]

자세한 내용은 신호 매뉴얼 페이지 및 man 7 signal이 자습서 ( Linux 프로세스 상태)에서 확인할 수 있습니다.


답변

Firefox 프로세스에 아무런 작업을 수행하지 않았습니다. 이미 S 상태였습니다. “인터럽터 블 슬립”은 효과적으로 유휴 상태를 의미합니다. 프로세스가 대기 중이며 입력을 받으면 깨어납니다. 사용 중일 때 프로세스를 잡지 않으면 프로세스의 정상적인 상태입니다.

창이 사라졌습니다. 다른 데스크탑으로 보냈을 수도 있습니다. “일반적인”방법으로 되 돌리는 방법은 지정하지 않은 창 관리자에 전적으로 달려 있습니다.

다른 도구를 사용하여 창을 검색 할 수는 있지만 실제로 발생한 일과 창 관리자의 협조 여부에 따라 다릅니다. wmctrl을 사용해보십시오 . 먼저로 Firefox 창을 나열하십시오 wmctrl -l | grep Firefox. 첫 번째 열의 창 ID는 0x12345678입니다. 창을 현재 데스크탑으로 다시 가져 오려면 wmctrl -R 0x12345678; 또는 wmctrl -a 0x12345678데스크톱으로 전환하는 데 사용하십시오 . (화면 외부의 창을 처리하거나 단일 픽셀로 축소) 최대화하려면을 실행하십시오 wmctrl -r 0x12345678 -b add,maximized_vert,maximized_horz. 또는으로 창을 이동하고 크기를 조정하십시오 wmctrl -r 0x12345678 -e 1,50,100,1000,800. 당신은 풀어 내리기에 필요하거나 함께 창 숨기기를 취소 할 수 있습니다 wmctrl -r 0x12345678 -b remove,shaded또는 wmctrl -r 0x12345678 -b remove,hidden.


답변

X 클라이언트가 연결을 잃어 버릴 수 있으며 어쨌든 통보받지 못할 수 있습니다. 프로세스는 종종 소켓을 기다릴 것입니다. 아무것도 올 수없는 소켓에서 대기합니다.

Firefox 만 해당 (Gvim 또는 Chrome과 같은 일부 다른 프로그램은 오류 상태를 저장하기위한 특별 조항을 작성) 간단한 경우 :

$ kill -TERM pid

프로세스가 열린 탭 목록을 저장할 수있는 기회를 제공하지만 양식 내용이나 유지해야 할 다른 상태는 중요하지 않습니다.


답변