LINUX.ORG.RU

Зачем «общая память» связана с файловой системой?

 


0

1

Читал страницы https://man7.org/linux/man-pages/man7/shm_overview.7.html и https://man7.org/linux/man-pages/man3/shm_open.3.html потом немного stackoverflow.

«On Linux, it searches for a tmpfs mount which is usually mounted under /dev/shm or /var/run/shm. they are by default created inside of /dev/shm, you can simply use test, and that will create /dev/shm/test and if you want them somewhere else, you have to mount a tmpfs file-system in that desired directory.»

Вопрос - зачем Linux создаёт файл в файловой системе? Общая память как раз нужна, чтобы без файлов обойтись… Понятно, что дискам обращений нет. Не нравится то, что это имя видно снаружи, что его могут занять или переназначить на нём права, чтобы файл не открывался. Или могут открыть приложением, которому туда доступа быть не должно…

★★★

Последнее исправление: Shushundr (всего исправлений: 1)

Ответ на: комментарий от Shushundr

Так может и не нужно, чтобы доступ получали независимые процессы? Может быть нужно оставить только зависимым процессам? Например передать хендл во время fork-а только дочерним процессам…

Сам же написал, что есть mmap().

Sorcerer ★★★★★
()