정기적인 호출을 위해 실행 파일을 RAM에 어떻게 로드합니까?

정기적인 호출을 위해 실행 파일을 RAM에 어떻게 로드합니까?

장기 실행 Bash 스크립트에서 사용자 정의 실행 파일(getIdle)는 시스템의 유휴 시간을 반환합니다.

이 실행 파일을 정기적으로 호출해야 하기 때문에 장기적으로 하드 드라이브에 엄청난 읽기 로드가 발생할 것으로 예상됩니다.

해결책으로 먼저 exe를 복사한 /dev/shm/다음 거기에서 실행했습니다. 그러나 이것이 휴대용 솔루션인지 확실하지 않으므로 내 질문은 다음과 같습니다.

주기적으로 호출하는 것이 문제가 되지 않도록 실행 파일을 RAM에 캐시하려면 어떻게 해야 합니까?

답변1

장기적으로 보면 내 하드 드라이브에 엄청난 읽기 부하가 걸릴 것이라고 생각합니다.

아니요. 대량의 데이터를 디스크에 읽거나 쓰지 않는 한 그렇지 않습니다. Linux는 모든 읽기/쓰기 작업에 캐싱을 사용하므로 Linux가 (이미) 실행되면 바이너리가 캐시되고 이후 커널은 캐시의 이미지를 사용하며 파일은 디스크에서 읽혀지지 않습니다.

답변2

당신은 만들 수 있습니다임시 파일 시스템실행 파일을 복사하십시오.

$ sudo mount -t tmpfs -o size=10M tmpfs /mnt/mytmpfs

관련 정보