Können Sie einen sehr großen einzelnen Speicherblock (> 4 GB) in c oder c ++ zuweisen?

Mit sehr großen Mengen an RAM in diesen Tagen habe ich mich gefragt, ist es möglich, einen einzelnen Speicherblock zuzuweisen, der größer als 4 GB ist? Oder müsste ich ein paar kleinere Chunks zuweisen und zwischen ihnen wechseln?

Warum??? Ich arbeite an der Verarbeitung einiger Openstreetmap-XML-Daten und diese Dateien sind riesig. Ich streame sie gerade ein, da ich sie nicht alle in einen Block laden kann, aber ich wurde neugierig auf die Obergrenzen für Malloc oder New.