Вопросы по теме 'mmap'

В чем разница между MAP_SHARED и MAP_PRIVATE в функции mmap?
Играя с mmap ради удовольствия, у меня есть следующий код: (.. snip ..) fd = open("/home/me/straight_a.txt", O_RDONLY); if (fd == -1) { perror("open"); exit(1); } m = mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_FILE|MAP_PRIVATE, fd, 0);...
26918 просмотров
schedule 19.09.2021

как сделать mmap для кэшируемого PCIe BAR
Я пытаюсь написать драйвер с пользовательской функцией mmap() для PCIe BAR с целью сделать этот BAR кэшируемым в кеше процессора. Я знаю, что это не лучший способ достичь максимальной пропускной способности и что порядок записи непредсказуем (в...
4210 просмотров
schedule 26.11.2021

Почему mmap не работает на iOS?
Я пытаюсь использовать mmap для чтения и воспроизведения аудиофайлов на iOS. Он отлично работает с файлами размером до 400 МБ. Но когда я пробую файл размером 500 МБ, я получаю ошибку ENOMEM. char *path = [[[NSBundle mainBundle] pathForResource:...
7815 просмотров
schedule 31.10.2021

C mmap () записи в общую память не видны в других процессах
Я храню динамически созданный двумерный массив в общей памяти с помощью shm_open, ftruncate и mmap. Когда я делаю обновление массива, это обновление отображается только в процессе, который это обновление сделал, и ни в одном из других процессов,...
954 просмотров
schedule 24.11.2021

Как я могу гарантировать, что файл с отображением памяти сохраняет доступность страниц памяти?
Я использую Qt для сопоставления файла с частью страниц памяти QFile::map (qint64 offset, qint64 size, MemoryMapFlags flags = NoOptions) По сути, это должен быть вызов mmap системной функции. Интересно, как я могу гарантировать, что могу...
1332 просмотров
schedule 12.09.2021

Чтение данных из памяти mmap
вот мой вопрос. Я пытаюсь сделать простую программу с общей памятью. В основном дело заключается в том, что в одной части кода (Program1) необходимо открыть файл, прочитать данные (если они есть, потому что это может быть первый раз, когда файл...
760 просмотров
schedule 04.11.2021

Как реализовать функцию карты памяти в драйверах устройств в Linux?
Я пытаюсь изучить драйверы устройств, и я начал с драйвера устройства char. Я реализовал небольшую программу, которая может читать / писать из / в буфер ядра. Кроме того, я попытался реализовать отображение памяти, но это не работает должным...
3404 просмотров

Как сохранить строковый тип данных в общей памяти?
Я хочу создать программу, в которой один экземпляр приложения создаст структуру и поместит в общую память, например mmap или shm , а другой экземпляр будет делиться данными. Одна проблема, с которой я столкнулся, - это «Как записать строковый...
908 просмотров
schedule 05.10.2021

Запрос на MAP_PRIVATE
У меня есть запрос по MAP_PRIVATE. Как только я сопоставлю регион с помощью MAP_PRIVATE, я знаю, что внесенные мной изменения невидимы для других процессов. Но я просто хочу убедиться, что если какой-то другой процесс, который также работает в том...
100 просмотров
schedule 07.10.2021

Чтение структуры из mmap
typedef struct aaa { int a; int b; long ptr_to_st2; //offset from the beginning of the file. } st1; typedef struct bbb { int get; char it; } st2; У меня есть двоичный файл, сопоставленный с памятью с помощью mmap . Файл содержит...
356 просмотров
schedule 19.09.2021

mmap успешно, но запись не удалась
У меня есть очень простой код для проверки mmap на низком адресе памяти. unsigned long *p = mmap ((void*)(4096*16), 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_FIXED|MAP_PRIVATE|MAP_ANONYMOUS|MAP_GROWSDOWN, -1, 0); fprintf (stderr,...
651 просмотров
schedule 09.10.2021

Доступ к пространству памяти PCI-e с помощью mmap
Я использую порт PCI-e на процессоре Freescale MPC8308 (который основан на архитектуре PowerPC), и у меня возникают некоторые проблемы при его использовании. Конечное устройство PCI-e имеет объем памяти, равный 256 МБ. Я могу легко читать и...
7658 просмотров
schedule 23.09.2021

есть ли переносимый способ управлять структурными данными, хранящимися в отображаемом файле в Linux, не читая их побайтно?
Скажем, я хочу сохранить массив C (фиксированной длины N ) структур: typedef struct { type0 field0; type1 field1; } foo_struct; foo_struct array[N]; в файл, чтобы программа могла читать массив из файла, манипулировать им и записывать...
107 просмотров
schedule 14.10.2021

Как отправить пакет SOCK_DGRAM с помощью packet_mmap, не беспокоясь о MAC-адресе?
Я хочу отправлять пакеты с помощью packet_mmap для получения высокой скорости передачи пакетов. Мне удалось отправить пакеты с помощью пакетного сокета в необработанном режиме, для чего я создал L2, L3 и т. Д. В буфере и отправил его, используя...
405 просмотров

Почему диспетчер контекста не закрывает файловый дескриптор?
Я пытаюсь создать диспетчер контекста, который использует mmap , который сам является диспетчером контекста. Изначально у меня была тупая проблема с открытым файлом Почему нет mmap закрывает связанный файл (получение PermissionError: [WinError...
864 просмотров

Почему инициализация numpy.memmap выполняется так быстро?
numpy.memmap инициализируется нулями (в системах с семантикой файловой системы POSIX) . Тогда как может потребоваться всего 0,3 секунды, чтобы заполнить файл размером 10 ГБ такими нулями: n = 10000000000 f = np.memmap('tmp.mmap',...
105 просмотров
schedule 26.09.2021

Доступ к панели памяти PCI с низкой задержкой (Linux)
Фон: У меня есть карта PCI, которая в основном представляет собой часы. Он получает время по GPS и сохраняет текущее время в определенном регистре. Цель: Я хочу снова и снова считывать ограниченное количество регистров / байтов (например,...
924 просмотров
schedule 07.09.2021

Каков фактический размер красной зоны стека?
В x86-64 System V ABI указано, что пространство за $rsp - 128 - это так называемая красная зона, которую не трогают никакие обработчики сигналов. На моей машине $ ulimit -s 8192 Я ожидал, что в стопке всего 2 страницы. Поэтому я...
251 просмотров
schedule 06.09.2021

mmap errno 22 в c чтение описания типа данных openmpi
Я использую mmap для чтения из файла. mmap возвращает errno 22, недопустимый аргумент. stat.st_size в данном случае - 400, что я не считаю «слишком большим». Я не думаю, что сталкиваюсь с «нам не нравятся адрес, длина или смещение». Я запускаю...
152 просмотров
schedule 19.09.2021

нужно отлаживать MMAP, так где же объектный файл для MMAP или модуль, содержащий MMAP (), как найти в Linux?
Я пытаюсь отлаживать MMAP с помощью kprobe, но не знаю, как устанавливать точки останова внутри MMAP. В моей библиотеке / модулях я искал, но не нашел, что похоже на модуль, содержащий mmap. как я могу отлаживать mmap с помощью kprobe, поэтому мне...
71 просмотров
schedule 20.09.2021