Я искал StackOverflow и нашел две темы, относящиеся к «ускорению межпроцессного взаимодействия», но обе они в основном касаются ОС Windows, а также не обсуждают проблему, с которой я столкнулся. Тот же поиск в Google — та же проблема — ОС Windows, а также большинству дискуссий уже много лет.
Моя проблема: На моем iMac (ОС Mojave) в папке «Мои документы» внезапно появилась папка с именем «boost_interprocess». Внутри папки находится документ с названием «pdfEngine-10.0.472-0a71a373-fe27-499f-be0c-2d67402dc128_shm». Каждый раз, когда он появлялся, я удалял его и очищал корзину. Оно случайно появляется на следующий день или через несколько дней. Я запускал Malwarebytes, и он не распознает его как угрозу.
Мой вопрос: Кто-нибудь знает, что это такое и как это навсегда удалить?
Piecemakers Costa Mesa
19.02.2019 01:03
Оператор pass в Python — это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции — это способ манипулировать массивами и играть с массивами данных. Благодаря.
Вся суть программирования на C++
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний.
Источник: reddeveloper.ru
boost_interprocess — что это за папка и можно ли ее удалить?
Приветствую друзья! Сегодня я постараюсь выяснить — что это за папка boost_interprocess, зачем она нужна и можно ли удалить. Постараюсь все написать простыми словами.
boost_interprocess — что это такое?
Папка от софта, который использует в своей работе библиотеку Boost.Interprocess.
boost_interprocess можно заметить в C:ProgramData .
Может появиться при наличии ПО Geforce Experience (фирменное ПО для видеокарт NVIDIA).
Причина появления — софт использует кроссплатформенную библиотеку Boost.Interprocess (C++), которая эмулирует разделяемую память с поведением как в POSIX, то есть создавая файлы на диске и отображая их в память. Эти файлы и создаются в папке boost_interprocess.
Сегодня при разработке GeForce уже используется язык C++. Поэтому все сходится.
Простыми словами — программисты пишут софт, но не все функции нужно создавать заново, иначе это будет долго. Многие функции уже созданы давно и протестированы. Чтобы их можно было использовать при разработке ПО на многих языках — существуют библиотеки, внутри которых уже присутствуют функции. Одна из таких библиотек и есть Boost.Interprocess, которая для своей корректной работы создает папку boost_interprocess. Ну а эту библиотеку уже может использовать разный софт.
Можно ли удалить boost_interprocess?
В принципе удалять не стоит — может повлиять на работу ПО, которое использует библиотеку Boost.Interprocess.
Boost C++ Сборка, Настройка и Использование.
Если папка постоянно пустая — значит она используется для временных файлов, которые после использования — удаляются. Это нормальное явление, даже грамотное.
Однако если удалить очень хочется, тогда предлагаю вам такой план действий:
- Создаем точку восстановления на всякий случаем и даем название, например До переименования boost_interprocess. Советую не игнорировать этот пункт!
- Выполняем перезагрузку ПК. После перезагрузки никакие программы не запускаем. А все, которые запустились автоматически — выходим из них.
- Папку не удаляете, а переименовываете, при этом лучше сохранить оригинальное название, я предлагаю просто добавить символ нижнего пробела _. Если при переименовании будут проблемы — используйте утилиту Unlocker, она спецом чтобы переименовывать и удалять неудаляемые папки/файлы.
- После переименования — выполняем перезагрузку. Тестируем некоторое время, день-два или больше.
- При проблемах — возвращаем оригинальное название папки и делаем перезагрузку. Если это не помогает — используем ранее созданную точку восстановления.
- Если проблем не будет, можем сделать вывод: папка временная, ее можно удалить, но если размер ее маленький — пусть будет, ведь компьютера она точно не грузит.
Судя по этой картинке — boost_interprocess может быть даже заблокирована:
Заключение
- boost_interprocess — папка, создаваемая софтом, который использует в своей работе библиотеку Boost.Interprocess.
- Таким софтом может выступать фирменное ПО для видеокарты, материнской платы.
- Удалять не рекомендуется, только в случае когда занимает много места. Предварительно создав точку восстановления!
Источник: 990x.top
boost interprocess что за папка
Я прочитал немного о boost::interprocess::file_lock и он, кажется, делает в значительной степени то, что мне нужно (поддержка разделяемой и эксклюзивной блокировки и разблокировка в случае сбоя или выхода из процесса).
Хотя в чем я не уверен, так это в чем делать в файл? Могу ли я использовать, например, файл длиной 0 байт? Есть ли boost::interprocess написать что-нибудь в это? Или о его присутствии заботится вся система?
Я использую boost::interprocess теперь в течение некоторого времени для надежного отображения в памяти файла и записи в него, теперь мне нужно выполнить многопроцессорность и убедиться, что чтение и запись в этот файл защищены; file_lock действительно кажется, что путь, мне просто интересно, если мне теперь нужно добавить еще один файл для использования в качестве мьютекса.
Решение
Boost ничего не делает с файлом, он полагается на операционную систему, чтобы выполнить эту работу. Поддержка отображаемых в память файлов является общей возможностью операционной системы виртуальной памяти с постраничной загрузкой. Как Windows, Linux, OSX. Память, как правило, поддерживается файлом подкачки, а резервное копирование этого файла — это лишь небольшой шаг. Boost просто предоставляет независимый от платформы адаптер, и ничего более.
Вы захотите взглянуть на соответствующие страницы документации ОС, чтобы увидеть, что возможно и как это будет работать, когда вы делаете что-то необычное. Для Linux и OSX вы хотите посмотреть на mmap справочные страницы. Для Windows посмотрите на CreatefileMapping ,
Да, вам почти всегда нужно разрешить доступ к файлу, отображенному в памяти, поэтому, например, один процесс будет пытаться прочитать данные только тогда, когда другой процесс закончит их запись. Наиболее подходящий для этого примитив синхронизации не file_lock (операционная система уже блокирует файл), это именованный мьютекс. Используйте, скажем, буст класс named_mutex .
Имейте в виду, что это очень Механизм взаимодействия низкого уровня и не имеет никаких удобств. К тому времени, когда вы добавляете всю необходимую синхронизацию, вы уже на полпути к тому, что ОС уже делает с именованным каналом или сокетом локальной петли. Если вы обнаружите, что вам необходимо скопировать данные в отображенное представление, что не редкость, поскольку его нелегко изменить, то вы потеряете все преимущества.
Пытаюсь построить класс в памяти, и потом в другом процессе его прочитать. Почему-то выдаёт другой адрес и вылетает Segmentation fault
1 ответ 1
Достаточно обычный #include , заменить на interprocess-овский.
И саму переменную объявлять не std::string , a boost::interprocess::string .
И ребёнок видет то что видет родитель и может менять, и его изменения так же увидет родитель. Точно так же надо отдельный, собственный vector, map и т.д. брать не из std:: , а из бустов. Полный список всех портов.
30 просмотра
1 ответ
1 Репутация автора
Я искал StackOverflow и обнаружил два потока, относящихся к «boost interprocess», но оба они в основном касаются только ОС Windows и также не обсуждают проблему, с которой я столкнулся. Тот же поиск в Google — та же проблема — ОС Windows, а также большинство дискуссий имеют возраст.
Моя проблема: На моем iMac (Mojave OS) в папке «Мои документы» неожиданно появилась папка с именем «boost_interprocess». Внутри папки находится документ с именем «pdfEngine-10.0.472-0a71a373-fe27-499f-be0c-2d67402dc128_shm». Каждый раз, когда это появлялось, я удалял это и очищал мусор. Это случайно появляется на следующий день или несколько дней спустя. Я запустил Malwarebytes, и он не распознает его как угрозу.
Мой вопрос: кто-нибудь знает, что это такое и как навсегда удалить его?
Ответы (1)
0 плюса
168 Репутация автора
Папка boost_interprocess является одним из методов межпроцессного взаимодействия посредством разделяемой памяти, и вы можете увидеть эту папку в других ОС, так как это механизм наддува .
Файлы, которые вы видите в папке, называются объектами общей памяти.
В вашем случае, похоже, что некоторые данные механизма PDF передаются таким образом, и нет причин для тревоги.
Источник: computermaker.info