Có phải là một thực hành tốt để tạo một thư mục trong /run/shm
(trước đây /dev/shm
) và sử dụng như thư mục tạm thời cho một ứng dụng?
Bối cảnh: Tôi đang viết các bài kiểm tra hộp đen cho một chương trình thực hiện nhiều nội dung với các tệp và thư mục. Đối với mỗi thử nghiệm, tôi tạo rất nhiều tệp và thư mục, sau đó chạy chương trình và sau đó tạo tập hợp tệp và thư mục dự kiến và sau đó chạy diff để so sánh. Bây giờ tôi có khoảng 40 bài kiểm tra và chúng đã mất hơn 2 giây để chạy. Hy vọng tăng tốc mọi thứ tôi muốn chạy thử nghiệm trong một thư mục trên một số loại ramdisk.
Nghiên cứu về đĩa ram, tôi tình cờ phát hiện ra một câu hỏi với câu trả lời rằng việc tạo một thư mục trong đó /dev/shm
và sử dụng như thư mục tạm thời là ổn. Nghiên cứu thêm một số tuy nhiên tôi tình cờ thấy một trang wiki từ debian nói rằng đó là lỗi khi sử dụng /dev/shm
trực tiếp. Tôi nên sử dụng các shm_*
chức năng. Thật không may, các shm_*
chức năng dường như không có sẵn để sử dụng trong một kịch bản shell.
Tôi đang cảm thấy bối rối. Có ổn hay không sử dụng /run/shm
(trước đây /dev/shm
) như một thư mục tạm thời?
/tmp
là nhiều ngữ nghĩa. Nếu người dùng của bạn có đủ ram để sử dụng /dev/shm
cho các tệp tạm thời để tăng tốc mọi thứ, thì họ sẽ gắn kết nó ở đó. Nhưng nếu họ không có đủ ram và gắn nó vào đó làm chậm máy tính của họ bằng cách buộc tất cả các quy trình sử dụng tệp hoán đổi, thì họ sẽ lưu ram của họ cho những thứ quan trọng hơn và sử dụng không gian đĩa thông thường cho /tmp
hệ thống tệp. Nói cách khác, /tmp
là điều chỉnh nhiều hơn.
/tmp
vào bộ nhớ chia sẻ.