TGViewer
Azalio_tech Azalio_tech @azalio_tech · 668 subscribers
Post #18 356
#linux #mem

Как вы думаете какое максимальное количество виртуальной памяти может выделить себе процесс в Linux?

Говорят примерно до 128 TB на x86_64
https://www.kernel.org/doc/Documentation/arch/x86/x86_64/mm.rst

И 256TB на ARM64
https://www.kernel.org/doc/Documentation/arch/arm64/memory.rst

Я решил проверить :)
Вот программка с помощью которой я это проверял:


#define _GNU_SOURCE
#include <stdio.h>
#include <stdlib.h>
#include <sys/mman.h>

int main() {
char *chars;
size_t nbytes;

while(chars != MAP_FAILED) {
nbytes += 0x39999999; // almost 1GB
chars = mmap(
NULL,
nbytes,
PROT_READ | PROT_WRITE,
MAP_SHARED | MAP_ANONYMOUS,
-1,
0
);

munmap(chars, nbytes);
}

printf("Allocated %ld total GB\n", nbytes/1024/1024/1024);
exit(EXIT_FAILURE);
}


А вот что получилось:


5.14.0-362.18.1.el9_3.x86_64 #1 SMP PREEMPT_DYNAMIC

# free -m
total used free shared buff/cache available
Mem: 1031182 7334 1026066 82 2273 1023847
Swap: 0 0 0

# echo 0 > /proc/sys/vm/overcommit_memory - ОС смотрит на сколько памяти в системе + добавляет своп
# ./main.out
Allocated 1007 total GB
# echo 1 > /proc/sys/vm/overcommit_memory - ОС "не ограничивает" выделение памяти
# ./main.out
Allocated 130859 total GB
# echo 2 > /proc/sys/vm/overcommit_memory - ОС не дает больше чем в реальности сможет выделить
# ./main.out
Allocated 503 total GB - почему тут получилось 503GB мне не до конца ясно.



5.15.0-1034-raspi #37-Ubuntu SMP PREEMPT

# free -m
total used free shared buff/cache available
Mem: 905 198 346 3 360 616

(тут я немного модифицировал программу чтобы учесть что у меня всего 1GB оперативной памяти)
# echo 0 > /proc/sys/vm/overcommit_memory
# ./main.out
Allocated 906 total MB
# echo 1 > /proc/sys/vm/overcommit_memory
# ./main.out
Allocated 170 total TB
# echo 2 > /proc/sys/vm/overcommit_memory
root@raspberrypi-1:/home/azalio# ./main.out
Allocated 921 total MB


Что в итоге?
На ARM64 памяти выделили 170TB, а обещали 256TB.
  • 🔥 4
More from @azalio_tech
  1. Oct 4, 2026Ебушки-воробушки, меня забанили в Claude Code 1 октября пришло письмо счастья: мы ограничи…
  2. Oct 2, 2026В моём канале с автоматическими выжимками попалась новость про YDB. Я тут собирал поиск по…
  3. Sep 26, 2026#ai #llm #codereview Проверил, нужен ли в моём AI-ревью ансамбль из трёх моделей. Не нужен…
  4. Sep 25, 2026#ai #llm #codereview Перепрогнал тест своей системы AI-ревью кода на свежих китайских моде…
  5. Sep 22, 2026Post #90
  6. Sep 7, 2026А хорошо бы запускать спокойно батчевые задачи на всех нодах кубера и не беспокоиться за S…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →