임베디드 Linux 설정에 스왑 파티션이 없는 것은 나쁜 생각입니까?

임베디드 Linux 설정에 스왑 파티션이 없는 것은 나쁜 생각입니까?

x86 보드에서 실행되는 컴팩트 플래시 드라이브에 설치된 buildroot를 통해 생성된 작은 임베디드 Linux 커널과 파일 시스템이 있습니다. 나는 정전에 대한 두려움 때문에 initramfs를 사용하고 있지만 지속되어야 하는 데이터를 보관하기 위해 CF 드라이브의 ext3 파티션에 소수의 디렉터리를 마운트하고 있습니다. 그러나 최근에는 현재 설정에서 스왑 파티션을 전혀 사용하지 않기 때문에 스왑 파티션과 그 용도에 대해 읽고 있습니다. 이것이 안전한지 알고 싶습니다. 기기에서 실행되는 애플리케이션이 많은 메모리를 사용할 것으로 예상하지는 않지만 어쨌든 스왑 파티션을 만드는 것이 더 나을까요? 나는 CF 장치에 수행할 수 있는 쓰기 작업이 제한되어 있다는 것을 잘 알고 있으므로 중요하지 않은 경우에는 스왑 파티션을 사용하지 않는 것이 좋습니다. 스왑 파티션 없이 계속할 경우 최악의 시나리오는 무엇입니까?

답변1

아니요, 그건 나쁜 생각이 아닙니다. 주변의 많은 장치에서 스왑 파티션 없이 Linux를 실행하고 있는 것을 볼 수 있습니다. 예를 들어, Linux가 내장된 DLink 라우터 모델이 많이 있습니다. 유일한 문제는 메모리가 부족할 수 있다는 것입니다. 그러나 임베디드 솔루션의 경우 시스템이 올바르게 설계되고(메모리 누수 등이 없음) 사용자가 추가 프로그램을 직접 시작할 수 없으면 이런 일이 발생하지 않습니다.

답변2

일반적인 작업 부하가 적합하도록 메모리를 구성해야 합니다(디스크는 메모리보다 훨씬 느립니다). 정의에 따르면 임베디드 장치는 제한적이고 고정된 작업 부하를 실행하며 해당 메모리 요구 사항은 매우 예측 가능합니다. 따라서 스왑을 추가하는 것은 의미가 없습니다.

답변3

실제로 권장됩니다. 플래시에 스왑 파티션을 설정하면 마모됩니다(플래시는 100,000번의 쓰기 주기를 갖습니다).

관련 정보