Публикации по теме 'memory-mapping'
Подводные камни, которых следует избегать при использовании np.memmap
нулевая версия: 1.22.4
Введение
При работе с очень большими массивами numpy могут возникнуть проблемы с ограничениями памяти. Чтобы справиться с этим, numpy предоставляет удобную функцию np.memmap(); memmap = memory mapped . Вместо того, чтобы читать все данные за один раз, он лениво считывает данные, поэтому потребляет мало оперативной памяти. Цитирование википедии
Файл с отображением памяти — это сегмент виртуальной памяти [1] , которому назначена прямая..
Вопросы по теме 'memory-mapping'
Управление шириной доступа для чтения и записи в отображенные в память регистры в C
Я использую ядро на базе x86 для управления 32-битным регистром отображения памяти. Мое оборудование работает правильно только в том случае, если ЦП генерирует 32-битные операции чтения и записи в этот регистр. Регистр выровнен по 32-битному...
1508 просмотров
schedule
19.10.2023
Что означают разрешения ---p в /proc/self/maps?
Я понимаю значение битов rwxps. r-xp для .text. rw-p для .data/.bss/heap/stack. Какая польза от ---p страниц?
Например, посмотрите этот вывод cat /proc/self/maps
00400000-0040b000 r-xp 00000000 08:03 827490...
5201 просмотров
schedule
27.03.2023
Дальнейший вопрос с интерфейсом с отображением памяти
У меня все еще есть некоторые проблемы с моим кодом C, который имеет дело с устройством с отображением памяти. На данный момент я объявляю адресное пространство для регистров, которые я записываю, как изменчивый указатель, и я записываю в них данные,...
522 просмотров
schedule
28.02.2023
Почему сегменты данных и стека исполняемые?
Я только что заметил, что моя простая программа имеет исполняемые сегменты данных и стека. Я видел это в /proc/[pid]/maps, и простой код подтвердил это.
Например:
; prog.asm
section .data
code: db 0xCC ;int3
section .text
global...
2384 просмотров
schedule
26.09.2022
Проблемы с использованием общей памяти с CreateFileMapping и MapViewofFile
У меня есть 2 вопроса по поводу использования общей памяти. Я использую CreateFileMapping для создания общей области памяти между двумя процессами.
1) Я понимаю, что мне нужно вызывать CloseHandle для каждого дескриптора, возвращенного из вызова...
1980 просмотров
schedule
15.04.2022
Простое сопоставление памяти загрузчика процессов
Я пишу очень простой загрузчик процессов для Linux. Исполняемые файлы, которые я загружаю, уже скомпилированы, и я знаю, где каждый из них ожидает найти в памяти. Первый подход, который я пробовал, заключался в использовании mmap() для ручного...
531 просмотров
schedule
22.10.2023
Совместное использование объекта между двумя процессами в C #
Я ищу способ разделить объект между двумя процессами. Первый процесс должен создать объект, а второй должен только скопировать его, не внося никаких изменений в оригинал.
Кто-нибудь знает, как это сделать?
2331 просмотров
schedule
17.10.2022
Mmap не использует данный адрес
Хотя запрошенный адрес сопоставления является началом страницы, он будет использовать адрес, сдвинутый на несколько страниц.
Я пытаюсь сделать что-то вроде этого:
char *mapped = mmap(base, page_size, PROT_NONE, MAP_SHARED,...
1324 просмотров
schedule
12.10.2022
Доступ к базе данных SQLite из MMF
Я использую System.Data.SQLite lib для доступа к моей базе данных SQLite. Я хочу загрузить файл db в память и использовать MMF (файлы с отображением памяти) для доступа к базе данных.
Возможно ли это с помощью библиотеки SQLite по умолчанию?...
1166 просмотров
schedule
19.08.2022
Linux — отображение памяти пользовательского пространства в коде ядра
Я пишу фрагмент кода, который должен хранить 10 КБ памяти, расположенной по определенному физическому адресу, до того, как SOC отключится.
Моя проблема в том, что этот физический адрес не является частью пространства ядра, поэтому мне нужно создать...
5330 просмотров
schedule
27.05.2022
Тика не могла удалить временные файлы
В нашем приложении мы обрабатываем файлы с помощью Apache Tika. Но есть некоторые файлы (например, *.mov, *.mp4), которые Tika не может обработать и оставляет соответствующий файл *.tmp в папке Temp пользователя. После некоторых исследований я...
2980 просмотров
schedule
23.04.2022
2D-массив с отображением памяти с использованием повышения
Я пытаюсь использовать boost для сопоставления файла с памятью, имеющей 3 числа с плавающей запятой в строке (координаты точек x, y, z). Я пытаюсь сохранить данные в типе cl_float3 (для openCL), но, похоже, это не работает. Это мой код:...
405 просмотров
schedule
11.06.2022
Отображение памяти, виртуальная и физическая память в C++
Я пытаюсь решить следующую проблему: имея пользовательский контейнер данных, который управляет универсальным типом, мне нужно разрешить другим компонентам приложения извлекать внутренний указатель контейнера и использовать его, как если бы это была...
681 просмотров
schedule
16.03.2023
Память инструкций/данных карты памяти в VHDL.
Я разрабатываю процессор на основе MIPS, и мне поручено создать память инструкций и память данных с отображенной ниже памятью.
Ваша память инструкций должна быть реализована с компонентом «altsyncram», 32-битной шиной вывода, 8-битной адресной...
2380 просмотров
schedule
16.09.2022
ядро linux предварительно выделенная не отображенная виртуальная память
У меня следующий сценарий: qemu-kvm (гость) --- имеет виртуальную память, получить физическую ---> virtio (отправить физический адрес на хост) --- сопоставить физическую виртуальную память хоста - -> host Предварительно выделена физическая...
342 просмотров
schedule
25.06.2023
Почему эта строка сборки является «недопустимым использованием регистра»?
Я просматриваю некоторые руководства по разработке ОС и постоянно вижу следующий раздел кода:
.intel_syntax noprefix
do_e820:
xor ebx, ebx # ebx must be 0 to start
xor bp, bp # keep an entry count in bp
mov edx,...
1633 просмотров
schedule
18.10.2022
Файлы данных отображения памяти в коде ядра Linux
Вот мой вопрос: я хочу отобразить часть файла данных из кода, работающего в пространстве ядра Linux. Я хочу позже отменить ту же карту памяти, также из кода, работающего в пространстве ядра Linux. Как мне это сделать и чем они отличаются от...
1470 просмотров
schedule
04.09.2022
Не найден /proc/self/maps для платформы QNX
У нас есть код, написанный для Linux, где мы анализируем файл карт, используя std::ifstream ifs("/proc/self/maps");. Я переношу этот код для платформы QNX, где я вижу, что папка /proc/self/ доступна, но файл карт недоступен.
Кто создает файл...
206 просмотров
schedule
30.07.2023
Почему FileChannel работает лучше, чем MemoryMappedBuffer?
Я читаю файл размером 50 ГБ (только для чтения), используя несколько потоков, при этом каждый поток читает последовательный сегмент из файла. Я попробовал два подхода
Использование файлового канала
Использование MemoryMappedBuffer, полученного...
46 просмотров
schedule
12.05.2023
Vulkan: одновременная запись хоста и чтение устройства в отдельные части одного и того же VkMemory
Чтобы передать свои статические данные в графический процессор, я думаю о том, чтобы иметь один промежуточный объект VkMemory (приблизительный размер 64 МБ) и использовать его как вращающуюся очередь. Однако у меня есть несколько потоков, создающих...
190 просмотров
schedule
24.07.2023