LINUX.ORG.RU

FreeBSD и shared memory file

 ,


1

1

Есть код, который маппит шаред мемори:

namespace ipc = boost::interprocess;
sharedMemPool = new ipc::shared_memory_object( ipc::open_only, SHMEM_NAME, ipc::read_only );
mappedRegion = new ipc::mapped_region( *sharedMemPool, ipc::read_only )
Как определить какой файл в ФС freebsd соответствует шаред мемори?
В линуксах я делаю следующим образом:
char line[256] = { '\0' }; /* /path/to/shmem */
std::ostringstream command;
command << "lsof -Fn -p" << getpid() << "|grep " << SHMEM_NAME;
FILE *cmd = popen( command.str().c_str(), "r" );
fgets( line, sizeof(line), cmd );
pclose( cmd );
В freebsd 8.2 даже пути такого нет /dev/shm

Ы. Епт. Сделайте меня развидеть это.

tailgunner ★★★★★ ()

линукс убивает учеловека последние остатки разума все там есть и даже больше

anonymous ()

Есть код, который маппит шаред мемори:

Ебать тебя перекосило

UVV ★★★★★ ()

Я тебе подскажу, тебе стоит начать с ввода следующей команды в консоли:

man 3 shm_open

UVV ★★★★★ ()
Ответ на: комментарий от nerdogeek

ipcs показывает созданные объекты разделяемой памяти только для SysV IPC, для posix оно ничего не покажет.

UVV ★★★★★ ()

спасибо вам

классный тред -)

Stil ★★★★★ ()
Ответ на: комментарий от nerdogeek

Ну раз остатков разума там нет, то о чём разговор тогда? )

UVV ★★★★★ ()

command << "lsof -Fn -p" << getpid() << "|grep " << SHMEM_NAME;

Ощутил ненависть к ТСу(

hizel ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.