Linux가 이동식 메모리를 활용할 수 있습니까?

Linux가 이동식 메모리를 활용할 수 있습니까?

RAM PCI-E 카드를 만들었습니다. https://linustechtips.com/topic/1118940-wtf-is-this-thing-ram-on-a-pci-card/

이 카드의 이동식 16GB 버전이 95%의 시간 동안 사용 가능하다고 가정해 보겠습니다(예: 4시간 동안 15분의 가동 중지 시간 1회). Linux가 이미 16GB(업그레이드 불가)를 갖춘 호스트에서 이 추가 16GB PCI-RAM을 활용할 수 있습니까? 일반적인 설치에서는 몇 번이나 조정해야 합니까?
물론 갑자기 연결이 끊어지지는 않으며 호스트에 신호가 전송됩니다.
중단 시간과 기간은 사용자가 결정합니다.

해결 방법 1:
사용자는 PCI-RAM이 다시 연결될 때까지 컴퓨터를 "일시 중지"하기를 원하므로 최대 절전 모드로 들어가는 것을 고려했습니다. PCI-ram의 내용이 보존된다면 그냥 슬립모드로 진입해서 pci를 제거하고 pci를 다시 삽입하고 깨우기만 하면 되는 문제일까요?

해결 방법 2:
또 다른 해결 방법은 PCI-RAM을 제거하기 전에 RAM의 전체 내용을 로컬 SSD에 쓰는 것입니다. 어떻게 해야 하나요? 2개의 스왑 파티션을 마운트하고 16GB PCI 스왑의 우선 순위를 지정하시겠습니까? 그리고 pci가 꺼져 있거나 켜져 있을 때 스왑을 마운트 해제/다시 마운트하시겠습니까?

답변1

Linus가 논의하고 있는 게이트웨이 I-RAM 카드에 관한 한 SATA 장치로 나타납니다. 따라서 Linux에서 RAM을 지원하기 위해 이를 사용하려면 솔루션 2에서 제안한 대로 스왑 장치로 사용할 수 있습니다.

하나를 제거하면 더 이상 스왑 장치로 사용되지 않는다는 의미입니다. 런타임 시에는 가능합니다. 확인만 하면 됩니다.

  • 스왑의 모든 내용은 메모리에 맞습니다.
  • 또는 다른 스위칭 장비를 사용할 수 있습니다.

불행하게도 Linux에서 대량의 데이터를 교환하는 것은 기본적으로 매우 느리지만 이를 해결할 수 있는 방법이 있습니다.예를 들어LVM을 사용하여 하나의 물리 볼륨(RAM 카드)에서 다른 물리 볼륨(대체 저장소)으로 데이터를 이동합니다.

Linux는 또한 핫 플러그 ​​가능한 저장 장치, PCI 장치, RAM은 물론 핫 플러그 ​​가능한 하드웨어(대형 서버)의 CPU까지 지원합니다. I-RAM 카드는 하이브리드 SATA/PCI 장치입니다. 즉, 데이터 전송에는 SATA를 사용하고 전원에는 PCI를 사용합니다. 따라서 핫 스왑 가능한 SATA를 지원한다고 가정하면 핫 스왑 가능한 SATA를 지원하는 PCI 호스트에서는 위에서 설명한 대로 카드 사용을 중지하고 SATA 케이블을 분리한 다음 PCI 슬롯의 전원을 끄고 카드를 제거할 수 있습니다.

핫 스왑 가능한 메모리가 있는 시스템에서는 주어진 메모리 장치를 오프라인으로 전환하고 싶다는 것을 커널에 알려야 합니다( state적절한 /sys/devices/system/memory하위 디렉터리의 파일에 기록). 커널은 페이지를 다른 메모리 장치로 이동합니다. , 완료되면 메모리를 닫고 삭제할 수 있습니다.

최대 절전 모드를 사용하여 유사한 목표를 달성하려는 시도는 성공할 가능성이 낮습니다. 시스템은 절전 모드로 전환하고 깨어나는 사이에 하드웨어 설정이 크게 변경되면 제대로 반응하지 않습니다.

관련 정보