🚀 В Linux у каждого процесса своё виртуальное адресное пространство.
Поэтому два приложения могут видеть один и тот же адрес вроде
Когда программа вызывает
Из-за этого одинаковый адрес в процессе A и процессе B не означает общую память. Для каждого процесса отображение своё — именно так и работает изоляция.
Без виртуальной памяти не было бы нормального
#Linux #память #MMU
Поэтому два приложения могут видеть один и тот же адрес вроде
0x555555..., но фактически работать с разными участками RAM.Когда программа вызывает
malloc, она получает не «прямой доступ к железу», а виртуальный адрес. Дальше ядро вместе с MMU сопоставляет его с конкретной физической страницей памяти.Из-за этого одинаковый адрес в процессе A и процессе B не означает общую память. Для каждого процесса отображение своё — именно так и работает изоляция.
Без виртуальной памяти не было бы нормального
multitasking, fork, mmap, shared libraries и привычной безопасности Linux. Подписывайся, чтобы не пропустить — здесь регулярно выходят такие разборы по Linux и внутренностям систем.#Linux #память #MMU
👍1