Адреса памяти хранятся в регистрах общего назначения относительно? - PullRequest
0 голосов
/ 27 января 2019

Когда программа хранит адрес памяти в регистре общего назначения, является ли этот адрес локальным / виртуальным для процесса?

Возможно ли , что две совершенно разные программы, выполняющие разные вещи, будут загружатьсяодин и тот же адрес памяти в регистрах общего назначения?

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Адреса памяти хранятся в регистрах общего назначения относительно?

Нет.Они параллельны.Адреса одного типа преобразуются в адреса второго типа с помощью модуля управления памятью .

Когда программа сохраняет адрес памяти в регистре общего назначения, этот адрес является локальным /виртуальный процесс?

Это просто значение в георадаре.Это значение может использоваться для доступа к адресу, который является виртуальным адресом в пользовательском процессе.Этот адрес уникален для каждого процесса.

Возможно ли, что две совершенно разные программы, выполняющие разные операции, загрузят один и тот же адрес памяти в регистры общего назначения?

Twoразные программы могут использовать один и тот же адрес в георадаре для доступа к двум разным местам физической памяти.Преобразование адреса из виртуального адреса в физического адреса выполняется MMU .

Программой 1:

Virtual address ^ Physical address
0x04000000      = 0x00001234

Программа 2:

Virtual address ^ Physical address
0x04000000      = 0x12345678

Виртуальный адрес обоих процессов идентичен.
Физический адрес не равен.
Разница между нимиобрабатывается MMU, который переводит одно в другое для каждого процесса .

0 голосов
/ 28 января 2019

ЦП работает с виртуальными адресами.Если два разных процесса помещают один и тот же виртуальный адрес в регистр, это не имеет значения, потому что каждый виртуальный адрес будет преобразовываться в разные физические адреса (с помощью ОС *).

* более подробно: ОСотвечает за присвоение адреса в специальном регистре, который указывает на начало таблицы преобразования адресов.эта таблица (и ее адрес) уникальны для каждого процесса.

...