Tôi có một chương trình ánh xạ khá ít (100) tệp có dung lượng lớn từ 10-100MB mỗi tệp. Tôi cần tất cả chúng được lập bản đồ cùng một lúc.Tôi có cần giữ một tệp mở sau khi gọi mmap trên đó không?
Hiện tại tôi đang gọi open
, sau đó là mmap
ở đầu chương trình, theo sau là munmap
và close
ở cuối.
Thường thì tôi phải điều chỉnh giới hạn tệp đang mở chạy ulimit -n
trước khi chạy chương trình.
Câu hỏi là tôi có thực sự cần giữ các tệp mở hay không hoặc open
mmap
close
thực hiện một số xử lý dữ liệu lớn sau đó munmap
khi tôi bị phạt.
Trang hướng dẫn sử dụng mmap dường như không rõ ràng đối với tôi trên trang này.
lý do tại sao 'proc//fd' không chứa thông tin về tệp mmapped? Có phải vì 'mmap' là' syscall', vì vậy các fds này có cấu trúc dữ liệu của hạt nhân không? _asking cho một người bạn_ –
Paschalis