Итак, согласно спецификации - современные чипсеты позволяют адресовать несколько гигабайт ячеек памяти.
Для примера возьмем любой чипсет, который может организовать доступ к данным, размещенным по 4096М адресам.
Так называемые, системные ресурсы, занимают верхние адреса адресного пространства чипсета.
Для нормальной работы системы ей требуется около 750МБ. Может и меньше - всё зависит от того насколько сильно
нагружена система различными внешними и встроенными устройствами
Когда обьем установленной оперативной памяти равен 3Гигабайта и менее - это "откусывание" памяти
системой под свои нужды - НЕЗАМЕТНО (хотя и снизу - с нулевых адресов ячеек памяти - тоже системные
ресурсы есть, но они мАлы по сравнению с гигабайтами ОБЩЕГО адренсного пространства).
Допустим, стоИт у вас в системе AGP-видеокарта с 256МБ памяти на борту - её видеопамять будет размещаться
по адресам верхнего диапазона, например, в районе 0хЕ000 0000h-0xEFFF FFFFh, и эти адреса будут запрещены
для обращения со стороны пользовательских приложений. Но приложения пока в этот диапазон и не лезут
(пока не лезут, лишь пока) - ОПЕРАТИВНОЙ памяти-то всего 3Гига. Они и уживаются в этой трехгиговой памяти,
спокойно, вместе с системными ресурсами, которым оперативной памяти не требуется, а требуется, всего лишь,
несколько сотен мегабайт адресуемых ячеек в верхней области ОБЩЕГО адресного пространства. Всем места хватает.
НО стОит, установленной в систему памяти, достичь размера в 3.2 Гигабайта и выше, как сразу же это ограничение
(по доступным для приложений адресам памяти) становится ЗАМЕТНЫМ.
За неимением более подходящего документа, могу привести только, выдержку из описания на МоВо Интел D915PBC (i915P) :
Цитата:
2.2 Memory Resources
2.2.1 Addressable Memory
The board utilizes 4 GB of addressable system memory. Typically the address space that is
allocated for PCI Conventional bus add-in cards, PCI Express configuration space, BIOS
(firmware hub), and chipset overhead resides above the top of DRAM (total system memory). On
a system that has 4 GB of system memory installed, it is not possible to use all of the installed
memory due to system address space being allocated for other system critical functions. These
functions include the following:
• BIOS/firmware hub (2 MB)
• Local APIC (19 MB)
• Digital Media Interface (40 MB)
• Front side bus interrupts (17 MB)
• PCI Express configuration space (256 MB)
• MCH base address registers, internal graphics ranges, PCI Express ports (up to 512 MB)
• Memory-mapped I/O that is dynamically allocated for PCI Conventional and PCI Express
add-in cards
|
Всё, что может адресовать чипсет - это пространство адресов. Оперативка - лишь его кусок.
Но его же куском (этого пространства) являются ещё и адреса обмена, которые принадлежат НЕ оперативке,
а куче контроллеров внутри чипсета (AGP, ACPI, PnP, SMBus, EHCI, OHCI, AHCI, FirmwareHub и прочие Hubs) ,
их собственным БИОСам и регистрам, УСБ-устройствам и картам расширения.
Их адресует чипсет - НО - контроллер памяти (имеется в виду - оперативки) в этой адресации не принимает участия.
Вот этот-то последний (по адресам расположения) кусок, который служит для обслуживания системы и который присутствует всегда в системе (в виде запретов на адресацию тех или иных кусков адресного пространства)
наряду с основным БИОСом и видеоБИОСом и является системной областью куда "вход посторонним запрещен".
В случае со старыми чипсетами... - там другое, гораздо мЕньшее, количество памяти, запрещалось для доступа приложениям в связи с мЕньшими аппетитами системы, но это запрещение существовало ВСЕГДА.
Вообще-то при POST можно, что угодно написать - можно РЕАЛЬНО доступную память, а можно -
УСТАНОВЛЕННУЮ в систему. При определенных условиях - когда РЕАЛЬНАЯ память не перекрывает
по своему размеру определенной величины и не вторгается в адресное пространство системной области -
ЭТИ величИны будут равны. Даже во времена DOS - верхнее адресное пространство было недоступно
приложениям - там сидели и сидят до сих пор БИОС, видеоБИОС, БИОС LAN/SCSI/PCI.
БИОСы были написаны по иному - не было много из того что есть сейчас.
Я уж не говорю про времена когда не было PnP BIOS. Тогда система довольствовалась только БИОСом
в конце адресного пространства и 64КБ в его начале, а все остальное адресное пространство было отдано приложениям.
Короче - это наследство, в виде 640КБ основной оперативной памяти, (UMB) верхних адресов,
системных областей и прочих атрибутов РС АТ ещё долго будет сказываться на распределении
ресурсов вычислительных систем.
В 440ВХ ещё не было, т.н., ХАБОВОЙ архитектуры (I/O Controller Hub - ICH), которая болеее требовательна к системным ресурсам . Но в нем тоже есть запрещенные (для обращения со стороны пользовательских программ) адреса - просто таких адресов гораздо меньше - не более 30-40МБ. Потому и незаметны ограничения по адресации памяти.
При наличии чипсета, который может адресовать 8Г ячеек, Вы почувствуете, что Вам чего-то не хватает только
при установке в систему оперативной памяти обьемом 7.2Г и более.
ИсточникЖ
http://forum.asus.ru/viewtopic.php?p...d0495d9382af93