Адреса памяти хранятся в регистрах общего назначения относительно?
Нет.Они параллельны.Адреса одного типа преобразуются в адреса второго типа с помощью модуля управления памятью .
Когда программа сохраняет адрес памяти в регистре общего назначения, этот адрес является локальным /виртуальный процесс?
Это просто значение в георадаре.Это значение может использоваться для доступа к адресу, который является виртуальным адресом в пользовательском процессе.Этот адрес уникален для каждого процесса.
Возможно ли, что две совершенно разные программы, выполняющие разные операции, загрузят один и тот же адрес памяти в регистры общего назначения?
Twoразные программы могут использовать один и тот же адрес в георадаре для доступа к двум разным местам физической памяти.Преобразование адреса из виртуального адреса в физического адреса выполняется MMU .
Программой 1:
Virtual address ^ Physical address
0x04000000 = 0x00001234
Программа 2:
Virtual address ^ Physical address
0x04000000 = 0x12345678
Виртуальный адрес обоих процессов идентичен.
Физический адрес не равен.
Разница между нимиобрабатывается MMU, который переводит одно в другое для каждого процесса .