Jump to content

Ограничение ОЗУ

Максимальный объем оперативной памяти (ОЗУ), установленной в любой компьютерной системе, ограничен аппаратным, программным обеспечением и экономическими факторами. Аппаратное обеспечение может иметь ограниченное количество бит адресной шины , ограниченное процессорным корпусом или конструкцией системы. Часть адресного пространства может быть разделена между оперативной памятью, периферийными устройствами и постоянной памятью. В случае микроконтроллера без внешней оперативной памяти размер массива оперативной памяти ограничен размером кристалла интегральной схемы. В упакованной системе может быть предоставлено достаточно оперативной памяти только для необходимых функций системы, без возможности добавления памяти после изготовления.

Могут присутствовать программные ограничения на используемую физическую оперативную память. Операционная система может быть спроектирована так, чтобы выделять только определенный объем памяти, при этом старшие биты адреса зарезервированы для обозначения таких обозначений, как ввод-вывод или режим супервизора, или другой информации безопасности. Или операционная система может полагаться на внутренние структуры данных с фиксированными ограничениями на адресную память.

Что касается персональных компьютеров массового рынка, производитель может не получить финансовой выгоды от предоставления большего количества разъемов памяти, адресных линий или другого оборудования, чем необходимо для запуска программного обеспечения массового рынка. Когда устройства памяти были относительно дорогими по сравнению с процессором, часто из-за стоимости объем оперативной памяти, поставляемой с системой, был намного меньше адресной емкости оборудования.

Иногда ограничения оперативной памяти можно преодолеть с помощью специальных методов. Переключение банков позволяет при необходимости переключать блоки оперативной памяти в адресное пространство процессора под управлением программы. Операционные системы обычно управляют запущенными программами, используя виртуальную память , где отдельные программы работают так, как если бы они имели доступ к большому пространству памяти, которое моделируется путем замены областей памяти с дисковым хранилищем.

Ограничения адресации ЦП

[ редактировать ]

По соображениям производительности все параллельные адресные линии адресной шины должны быть действительными одновременно, иначе доступ к памяти будет задержан, а производительность серьезно снизится. Корпуса интегральных схем могут иметь ограничение на количество контактов, доступных для обеспечения шины памяти . Могут быть разработаны различные версии архитектуры ЦП в корпусах микросхем разного размера, сочетая уменьшенный размер корпуса с уменьшением количества выводов и адресного пространства. Можно найти компромисс между адресными выводами и другими функциями, ограничивая память, физически доступную архитектуре, даже если она изначально имеет более высокую емкость. С другой стороны, конструкции с сегментной коммутацией или переключением банков обеспечивают больше адресного пространства памяти, чем доступно во внутреннем адресном регистре памяти.

Поскольку память на интегральных схемах стала менее дорогостоящей, стало возможным разрабатывать системы с все большим и большим объемом физической памяти.

Менее 16 адресных контактов

[ редактировать ]

Устройства микроконтроллера со встроенным вводом-выводом и встроенной памятью иногда не имели адресной шины для внешних устройств или имели небольшую адресную шину. Например, семейство микроконтроллеров, доступное с адресным пространством 2 килобайта, может иметь вариант, в котором имеется 11-строчная адресная шина для внешнего ПЗУ; это можно сделать, переназначив контакты ввода-вывода как контакты адресной шины. Некоторые процессоры общего назначения со встроенным ПЗУ разделяют 16-битное адресное пространство между внутренним ПЗУ и внешней 15-битной шиной памяти.

Некоторые микропроцессоры имели менее 16 адресных контактов: например, MOS Technology 6507 (версия 6502 с уменьшенным количеством контактов) использовалась в Atari 2600 и была ограничена 13-строчной адресной шиной.

16 бит адреса, 16 адресных контактов

[ редактировать ]

Большинство 8-битных микропроцессоров общего назначения имеют 16-битное адресное пространство и генерируют 16 адресных строк. Примеры включают Intel 8080 , Intel 8085 , Zilog Z80 , Motorola 6800 , Microchip PIC18 и многие другие. Эти процессоры имеют 8-битные процессоры с 8-битными данными и 16-битной адресацией. Память этих процессоров адресуется на уровне байтов. Это приводит к ограничению адресуемой памяти в 2 16 × 1 байт = 65 536 байт или 64 килобайта.

16 бит адреса, 20 адресных контактов: 8086, 8088, 80186 и 80188.

[ редактировать ]

Intel 8086 и его производные, такие как 8088 , 80186 и 80188, составляют основу популярной платформы x86 и представляют собой первый уровень архитектуры IA16. Это были 16-битные процессоры с 20-битной адресацией. Память этих процессоров была адресуемой на уровне байтов. Эти процессоры могут адресовать 2 20 байты (1 мегабайт).

16-битные адреса, 24 адресных контакта: 80286

[ редактировать ]

Процессор Intel 80286 использовал 24-битную схему адресации. Каждая ячейка памяти имела байтовую адресацию. В результате общее адресное пространство составляет 2 24 × 1 байт = 16 777 216 байт или 16 мегабайт. 286 и более поздние версии также могли работать в реальном режиме , что накладывало ограничения на адресацию процессора 8086. У 286 была поддержка виртуальной памяти.

32-битные адреса, 24 адресных контакта

[ редактировать ]

Intel 80386SX был экономичной версией 386DX. У него была 24-битная схема адресации, в отличие от 32-битной у 386DX. Как и 286, 386SX может адресовать только до 16 мегабайт памяти.

Motorola 68000 имел 24-битное адресное пространство, что позволяло ему получать доступ к 16 мегабайтам памяти.

32-битные адреса, 32 адресных контакта

[ редактировать ]

386DX имел 32-битную адресацию, что позволяло ему адресовать до 4 гигабайт (4096 мегабайт) памяти.

Motorola 68020 , выпущенный в 1984 году, имел 32-битное адресное пространство, что давало ему максимальный предел адресуемой памяти 4 ГБ. Все последующие чипы серии Motorola 68000 унаследовали этот предел.

32-битные адреса, 36 адресных контактов: Pentium Pro (он же P6)

[ редактировать ]

Pentium Pro и все Pentium 4 имеют 36-битную адресацию, в результате чего общее адресное пространство составляет 64 гигабайта, но для этого требуется, чтобы операционная система поддерживала расширение физического адреса .

64-битные вычисления

[ редактировать ]

Современные 64-битные процессоры, такие как разработки ARM, Intel или AMD, обычно ограничены поддержкой менее 64 бит для адресов ОЗУ. Обычно они реализуют от 40 до 52 бит физического адреса. [ 1 ] [ 2 ] [ 3 ] [ 4 ] (поддержка от 1 ТБ до 4 ПБ ОЗУ). Как и предыдущие архитектуры, описанные здесь, некоторые из них предназначены для поддержки более высоких ограничений адресации ОЗУ по мере совершенствования технологии. Как в Intel64, так и в AMD64 предел физического адреса в 52 бита определен в спецификациях архитектуры (4 ПБ).

Ограничения оперативной памяти операционной системы

[ редактировать ]

Ограничение адресации CP/M и 8080

[ редактировать ]

Первой крупной операционной системой для микрокомпьютеров была CP/M . Эта операционная система была совместима с Altair 8800 типа микрокомпьютерами , созданными Гэри Килдаллом в сочетании с языком программирования PL/M , и была лицензирована производителям компьютеров компанией Килдалла Digital Research после того, как она была отклонена Intel . Intel 8080, используемый на этих компьютерах, представлял собой 8-битный процессор с 16-битным адресным пространством, что позволяло ему получать доступ к памяти до 64 КБ; По этой причине максимальный размер исполняемых файлов .COM, используемых с CP/M, составляет 64 КБ, как и исполняемые файлы, используемые операционными системами DOS для 16-битных микропроцессоров.

IBM PC и ограничение адресации 8088

[ редактировать ]

В оригинальном IBM PC базовый предел оперативной памяти составлял 640 КБ. Это сделано для того, чтобы обеспечить аппаратное адресное пространство в верхних 384 КБ ( верхняя область памяти (UMA)) из общего адресуемого пространства памяти в 1024 КБ (1 МБ). Способы преодоления барьера 640 КБ , как его стали называть, включали использование специальных режимов адресации, доступных в процессорах x86 286 и более поздних версиях. Общее адресное пространство в 1 МБ было результатом 20-битного ограничения адресного пространства, наложенного на процессор 8088.

Используя пространство буфера цветного видео, некоторые сторонние утилиты могут добавлять память в верхнюю часть обычной области памяти размером 640 КБ , чтобы расширить память до базового адреса, используемого аппаратными адаптерами. В конечном итоге это может привести к обратному заполнению оперативной памяти до базового адреса MDA.

Аппаратные расширения позволяли получить доступ к большему объему памяти, чем процессор 8086 мог адресовать через подкачивающую память. Эта память была известна как расширенная память . Отраслевой стандарт де-факто был разработан консорциумом LIM, в состав которого входят Lotus, Intel и Microsoft. Этим стандартом была спецификация расширенной памяти (EMS). Доступ к страницам памяти аппаратного обеспечения расширенной памяти осуществлялся через окно адресации, помещенное в свободную область пространства UMA, а также путем обмена его на другие страницы, когда это необходимо для доступа к другой памяти. EMS поддерживала 16 МБ пространства.

Благодаря особенности архитектуры 286 ЦП, область большой памяти (HMA) была доступна как первые 64 КБ, превышающие предел в 1 МБ для 20-битной адресации в архитектуре x86.

Используя возможности 24-битной адресации памяти архитектуры 286 ЦП, было доступно общее адресное пространство 16 МБ. Память выше предела в 1 МБ называлась расширенной памятью . Однако область между 640 КБ и 1 МБ была зарезервирована для аппаратной адресации в совместимых с IBM PC. DOS и другие программы реального режима, ограниченные 20-битными адресами, могли получить доступ к этому пространству только через эмуляцию EMS в расширенной памяти или аналог EMS для расширенной памяти. Microsoft разработала стандарт, известный как Спецификация расширенной памяти (XMS). Доступ к памяти над HMA требовал использования защищенного режима ЦП 286.

С развитием архитектуры процессора i386 адресное пространство было переведено на 32-битную адресацию и ограничение в 4 ГБ. Благодаря этому ЦП доступ к областям памяти объемом 16 МБ был доступен программам DOS, которые использовали расширители DOS , такие как DOS/4GW, MiniGW/16, MiniGW и другие. Первоначально был разработан де-факто отраслевой стандарт памяти для взаимодействия, известный как VCPI . Позже его заменил стандарт Microsoft, известный как DPMI . Эти стандарты позволяли прямой доступ к пространству размером 16 МБ вместо схемы подкачки, используемой EMS и XMS.

Ограничение 16-битной оперативной памяти OS/2

[ редактировать ]

16-битная OS/2 была ограничена 15 МБ из-за резервного пространства, предусмотренного в операционной системе. Он зарезервировал верхний 1 МБ из 24-битного адресного пространства размером 16 МБ для не-памяти (от 16 МБ до 15 МБ).

Ограничение 32-битной ОЗУ x86

[ редактировать ]

без PAE В режимах 32-разрядных процессоров x86 объем доступной оперативной памяти может быть ограничен менее 4 ГБ. Ограничения на память и адресное пространство зависят от платформы и операционной системы. Ограничения физической памяти для 32-битных платформ также зависят от наличия и использования расширения физического адреса (PAE), которое позволяет 32-битным системам использовать более 4 ГБ физической памяти.

PAE и 64-битные системы могут иметь возможность адресации до полного адресного пространства процессора x86.

См. также

[ редактировать ]
  1. ^ «Руководство программиста AMD64, том 2: Системное программирование» (PDF) . Передовые микроустройства. Декабрь 2016. с. 120.
  2. ^ «Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32, том 3A: Руководство по системному программированию, часть 1» (PDF) . Интел. Сентябрь 2016. с. 4-2.
  3. ^ «Справочное руководство по архитектуре ARM ARMv8, для профиля архитектуры ARMv8-A» . стр. Д4-1723, Д4-1724, Д4-1731.
  4. ^ https://developer.arm.com/documentation/den0001/c/ Принципы карт памяти ARM
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: fed3db35bbf08f4cee0cd6eb7395d221__1720983360
URL1:https://arc.ask3.ru/arc/aa/fe/21/fed3db35bbf08f4cee0cd6eb7395d221.html
Заголовок, (Title) документа по адресу, URL1:
RAM limit - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)