많은 파일을 USB 드라이브에 복사 할 때 데스크탑이 잠기는 이유는 무엇입니까? 많은 흰색이 보입니다. 언뜻 보면, 파일을 USB 드라이브에

내 데스크탑은 일반적으로로드가 많은 경우에도 매우 반응이 빠릅니다. 그러나 파일을 USB 드라이브에 복사하면 일정 시간이 지나면 항상 잠 깁니다. “잠금”은 다음을 의미합니다.

  • 한 창에서 다른 창으로 초점을 이동하는 데 10-20 초가 걸릴 수 있습니다
  • 데스크톱 전환에는 10-20 초 소요
  • 동영상이 더 이상 업데이트되지 않습니다 (YouTube에서는 오디오가 계속 재생되고 동영상 만 정지 함)

이런 일이 발생했을 때 시스템로드는 예외적으로 높지 않습니다. 때로는 xosview에서 커널이 어느 곳에서 바쁘다는 것을 나타내는 많은 흰색이 보입니다.

언뜻 보면, 파일을 USB 드라이브에 복사하는 것이 어떻게 든 compiz를 방해하는 것처럼 보이지만 연결이 무엇인지 상상할 수 없습니다.

출력은 다음과 같습니다 htop.

정지 직후의 정지 출력

iostat -c -z -t -x -d 12 분 동안 의 출력은 다음과 같습니다 .

19.07.2012 20:38:22
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1,27    0,00    0,38   37,52    0,00   60,84

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sdg               0,00     2,00    0,00  216,00     0,00 109248,00  1011,56   247,75  677,69    0,00  677,69   4,63 100,00

보다시피, 외장 하드 디스크 만 활성화되어 있습니다. 전체 로그는 다음과 같습니다. http://pastebin.com/YNWTAkh4

중단은 20:38:01에 시작하여 20:40:19에 끝났습니다.

소프트웨어 정보 :

  • 오픈 수세 12.1
  • KDE 4.7.x
  • 파일 시스템 : 내부 하드 디스크의 reiserfs 및 btrfs, USB 드라이브의 btrfs


답변

필자의 첫 번째 추측은 btrfs이 파일 시스템의 I / O 프로세스가 때때로 인계 된 이후였습니다. 그러나 X가 왜 잠기는 지 설명하지 않습니다.

인터럽트를 보면 다음과 같습니다.

# cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7
  0:        179          0          0          0          0          0          0          0  IR-IO-APIC-edge      timer
  1:          6          0          0          0          0          0          0          0  IR-IO-APIC-edge      i8042
  8:          1          0          0          0          0          0          0          0  IR-IO-APIC-edge      rtc0
  9:          0          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   acpi
 12:         10          0          0          0          0          0          0          0  IR-IO-APIC-edge      i8042
 16:    3306384          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb1, nvidia, mei, eth1

글쎄 USB 드라이버는 그래픽 카드와 동일한 IRQ를 사용하며 체인에서 첫 번째입니다. 파일 시스템이 고가이기 때문에 잠기면 그래픽 카드가 굶주립니다 (그리고 네트워크도).


답변

openSUSE 12.1의 linux-3.1 커널에서 비슷한 문제를 보았고 투명한 거대한 페이지를 비활성화하면 도움이되는 것으로 나타났습니다.

echo never > /sys/kernel/mm/transparent_hugepage/enabled

근본적인 문제는 응용 프로그램이 4MB 이상을 할당하면 커널이 거대한 페이지를 제공하려고 시도하기 때문에 전체 4MB RAM이 필요하다는 것입니다. 이제 주변에 더티 페이지가 많고 느린 USB 장치에 기록해야하는 경우 메모리 할당을 계속하기 전에 해당 IO가 완료 될 때까지 기다립니다.


답변

언급했듯이 이것은 아마도 커널 hugepages 설정과 관련이 있습니다. 나는이 문제를 가진 여러 사람들을 알고 있습니다. 웹에서 이에 대한 몇 가지 문서를 찾을 수 있습니다.

다음을 수행하여 설정 문제를 완전히 해결했습니다. YMMV에 주목하십시오. 아래의 모든 수정 사항이 필요한 것은 아니며 충분하지 않을 수도 있습니다. 나는 정직한 것을 잊었을 수 있습니다. 어쨌든 그것은 내 설정이며 작동합니다.

  • linux-ck 커널 사용
  • echo madvise > /sys/kernel/mm/transparent_hugepage/enabled
  • echo never > /sys/kernel/mm/transparent_hugepage/defrag

답변

케이블을 교체하십시오. USB 포트 / 케이블에서 산화를 제거하십시오.


답변