В чем смысл мест памяти в Ram. Я действительно не понимаю определения слова памяти в оперативной памяти. Скажите, какой словарь английского языка в Google вы использовали, чтобы найти значение слова «Местоположение памяти» в «Оперативной памяти»?
2 ответа
Места памяти - более известные как Адреса - это сложная тема, и одного словарного или энциклопедического определения недостаточно, чтобы передать их точную природу. Я попытаюсь охватить адреса физической памяти, которые в наши дни отличаются от адресов логической памяти благодаря MMU компьютера.
По сути, компьютеры используют хитроумные устройства логических логических элементов (физически представленные наноскопическими транзисторами) для хранения крошечных объемов информации. Элементарные логические элементы, такие как AND, OR, NOR и т.д., Сгруппированы в так называемую защелку, так называемую, поскольку она "защелкивается" на заданном фрагменте данных. Это может рассматриваться как самый низкий уровень аранжировок и может помнить только 1 или 0, истина или ложь. Это крошечные схемы, где "запоминание" 1 или 0 представлено наличием тока в цепи или нет. Схема задумана таким образом, чтобы она могла надежно сохранять ток в своей системе или нет. Существуют и другие компоненты, необходимые для этой компоновки, в частности, вход для этой же схемы "разрешен на запись".
Так что теперь мы можем хранить 1 бит памяти - 1 или 0, истина или ложь - что не очень полезно. Для перспективы, чтобы сохранить число "5" в памяти, вам потребуется по крайней мере три из этих компонентов, работающих вместе для хранения 101. Смотрите этот двоичный в десятичную таблицу. Группа защелок, работающих вместе для хранения одного числа, называется регистром, а число битов (защелок) в регистре называется его шириной. Если мы сгруппируем 8 защелок вместе, мы можем использовать наш новый 8-битный регистр для запоминания чисел до 11111111 или 255.
Поскольку для доступа ко всем защелкам в данном регистре требуется все больше и больше цепей, используется другая хитрая схема, позволяющая сократить количество отдельных цепей. Это новое расположение в форме матрицы.
Вычислительная деятельность обязана своим существованием относительно недавнему сочетанию микроскопических и наноскопических технологий производства, а также разумному расположению схем, позволяющих представлять больше данных на меньших и меньших компонентах.
И теперь мы приходим к адресам памяти - или физическим адресам для наших целей - это просто способ найти заданную защелку в ее матрице. Матрица может рассматриваться как последовательность строк и столбцов, как электронная таблица Excel. Несмотря на поверхностную аналогию, мы тем не менее представляем строки и столбцы с четырехбитным двоичным числом в каждой, добавляя до 8-битного адреса в нашем простом примере.
Дополнительные ресурсы:
- Это 12-минутное видео от SciShow, которое блестяще иллюстрирует процесс более подробно
- Этот углубленный и технический курс выдержки из Университета Техаса
[Некоторое из этого упрощено, чтобы обеспечить представление высокого уровня]
Процессоры загружают и хранят инструкции, которые читают и записывают данные с адресов. Любая запущенная вами программа, использующая ОЗУ, будет использовать эти инструкции.
Эти адреса начинаются с 0, а максимальный адрес, который вы можете указать, зависит от типа и "разрядности" процессора.
На 64-битных процессорах наибольший адрес равен 2 64 минус 1 или 18446744073709551615.
На 32-разрядных процессорах наибольший адрес равен 2 32 минус 1 или 4294967295 ..
(Для удовольствия: на старых 8-битных процессорах, таких как 6502-совместимый в старом NES - который обычно имел 16 адресных строк - самый высокий адрес - 2 16 минус 1, или 65535.)
Типичная, "традиционная" вещь, которую вы делаете, когда используете инструкции load и store, - это чтение и запись из RAM или ROM.
Конечно, установленная вами ОЗУ будет отображаться по некоторым из этих адресов. Не все из них будут оперативной памятью на современном 64-разрядном процессоре, поскольку вы еще не можете установить в систему 17179869184 ГБ ОЗУ (но 32-разрядные системы долгое время были максимально загружены).
UEFI или BIOS ROM появятся в некоторых из них, так что CPU может что-то делать, когда он включается.
Некоторые адреса подключены к аппаратным устройствам - при чтении и записи определенных адресов поведение аппаратного устройства может быть настроено, изменено или данные могут быть получены / взяты с него.
Ожидается, что некоторые адреса будут содержать информацию, важную для самого ЦП, например, векторы исключений / прерываний и различные структуры данных, относящиеся к MMU / поисковому вызову, управлению виртуальными машинами и управлению "анклавом" для функций Intel "SGX".
Некоторые адреса не будут "поддерживаться" чем-либо и могут вызвать блокировку системы при доступе или возврат случайных данных.
Говоря о MMU, он может изменить представление CPU об оперативной памяти - заставляя то, что физически живет по заданным адресам, появляться в другом месте через механизм, называемый "пейджинг". Режим ядра в ЦП может изменить это отображение, процессы, не работающие в режиме ядра, должны использовать любую подкачку, настроенную ядром. Таким образом, процесс, который не работает в режиме ядра, увидит "виртуальное" представление настройки адресного пространства ядром, изолируя и защищая его от перезаписи других программ и позволяя нескольким процессам работать на одном процессоре.