mmap

mmap ist ein POSIX-kompatibler Unix-Systemaufruf, der Dateien oder Geräte in den Speicher ablegt.
1
Antwort

Java-Map / nio / NFS-Problem, das einen VM-Fehler verursacht: "Bei einem kürzlich durchgeführten unsicheren Speicherzugriffsvorgang in kompiliertem Java-Code ist ein Fehler aufgetreten"

Ich habe eine Parser-Klasse für ein bestimmtes Binärformat geschrieben ( nfdump wenn jemand interessiert ist), die java.nios MappedByteBuffer , um Dateien mit jeweils einigen GB zu lesen. Das binäre Format besteht nur aus einer Reihe von Heade...
01.06.2010, 11:36
1
Antwort

Verringern Sie die Speicherfragmentierung mit MALLOC_MMAP_THRESHOLD_ und MALLOC_MMAP_MAX_.

Ich habe mit den Variablen MALLOC_MMAP_THRESHOLD_ und MALLOC_MMAP_MAX_ env experimentiert, um die Speicherverwaltung in einem lang laufenden Python 2-Prozess zu beeinflussen. Siehe Ссылка Ich habe die Idee von diesem Fehlerbericht: Ссылка...
26.02.2016, 20:14
1
Antwort

Kopieren von Daten aus einem Shared-Memory-Mapped-Objekt mit sendfile () / fcopyfile ()

Ist es möglich - und wenn es so umsichtig ist - sendfile() (oder sein Darwin / BSD-Cousin fcopyfile() ) zu verwenden, um Daten direkt zwischen einem Shared-Memory-Objekt und einer Datei hin- und herzuschieben? Funktionen wie sendfile()...
13.05.2017, 22:56
2
Antworten

Solr verwendet zu viel Speicher

Wir haben eine Solr 3.4-Instanz unter Windows 2008 R2 mit Oracle Java 6 Hotspot JDK, die nicht mehr reagiert. Als wir uns die Maschine ansahen, bemerkten wir, dass der verfügbare physische Speicher auf Null ging. Der Tomcat7.exe-Prozess verwe...
27.03.2012, 17:36
6
Antworten

Warum gibt POSIX mmap keine flüchtige void * zurück?

Mmap gibt ein void *, aber kein volatile void* zurück. Wenn ich den gemeinsamen Speicher mit mmap abbilde, könnte ein anderer Prozess in diesen Speicher schreiben, was bedeutet, dass zwei aufeinanderfolgende Lesevorgänge vom gleichen Speicher...
08.07.2010, 20:18
4
Antworten

Effizientes Lesen einer sehr großen Textdatei in C ++

Ich habe eine sehr große Textdatei (45 GB). Jede Zeile der Textdatei enthält zwei durch Leerzeichen getrennte 64-Bit-Ganzzahlen ohne Vorzeichen (siehe unten). 4624996948753406865 10214715013130414417 4305027007407867230 4569406367070518418...
04.11.2014, 13:47
7
Antworten

Wie wird der Stack für den Systemaufruf clone () unter Linux getapert?

Der Systemaufruf clone () unter Linux verwendet einen Parameter, der auf den Stapel verweist, damit der neu erstellte Thread verwendet werden kann. Der offensichtliche Weg dies zu tun besteht darin, einfach etwas Speicherplatz zu malloc und über...
04.07.2009, 23:30
5
Antworten

Ist es möglich, Zeiger im Shared Memory zu speichern, ohne Offsets zu verwenden?

Bei der Verwendung von gemeinsam genutztem Speicher kann jeder Prozess die gemeinsame Region in einen anderen Bereich seines jeweiligen Adressraums kopieren. Dies bedeutet, dass Sie beim Speichern von Zeigern innerhalb der gemeinsamen Region di...
22.03.2010, 03:39
1
Antwort

Verwenden von mmap und madvise für große Seiten

Ich möchte Speicher auf den riesigen Seiten reservieren, die von einem Linux-Rechner benutzt werden. Ich sehe, dass es zwei Möglichkeiten gibt, dies zu tun, mit mmap und madvise . Das heißt, das MAP_HUGETLB Flag mit dem mmap Aufruf...
26.05.2015, 23:59
2
Antworten

Warum führt eine Leseoperation in einer speicherabgebildeten Null-Byte-Datei zu SIGBUS?

Hier ist der Beispielcode, den ich geschrieben habe. %Vor% Wenn ich diesem Programm ein Nullbyte foo.txt gebe, endet es mit SIGBUS. %Vor% Wenn ich diesem Programm ein Byte foo.txt gebe, dann gibt es kein solches Problem. %Vor% mmap...
01.01.2017, 13:59