Limitations on 32-Bit Memory 4G address space

Source: Internet
Author: User

I. Limitations of 4 GB address space

First, we must first understand two concepts &

The first is "physical memory ". Generally, physical memory refers to the memory stick installed on the motherboard. Otherwise, in computer systems, physical memory includes not only the memory stick (RAM) installed on the motherboard ), it should also include the ROM of the motherboard BIOS chip, the memory (RAM) and BIOS (ROM) on the graphics card, and the ram and ROM on a variety of PCI, PCI-E devices.

The second is "address space ". The address space is the range of physical memory encoding (address encoding. "~ # R

The so-called encoding is to assign a unique address number to each physical storage unit (one byte). This process is also called "Addressing" or "address ing ". This process is like assigning a street number to each household in daily life. What corresponds to encoding is the "Addressing" process-assigning an address number to a storage unit is designed to help you find it and read and write data. This is "Addressing ", therefore, an address space is sometimes called an addressing space ". The system not only needs to address the memory on the motherboard, but also to address the above physical memory. They are all stored in the same address space, the physical memory after the addressing can be used or occupied by system resources. %

Starting from the Pentium Pro processor, the CPU address bus has been upgraded to 36-bit and the addressing capability has reached 64 GB. It is reasonable to say that the CPU supports 4 GB of memory. Therefore, the number of chipset (Northbridge-MCH) Address Bus determines the size of the physical memory address space. In intel 945 series and earlier than 945 chipset, nforce 550 series and earlier than 550 chipset only have 32 address lines, providing 4 GB address space for the system, that is, up to 4 GB memory can be installed.

Although the 4 GB memory can be installed, the 4 GB memory space cannot all be allocated to the memory, because from the top address of the 4 GB space (ffff_ffffh) at the beginning, mb-1gb of address space needs to be allocated to other physical memory on the motherboard.

 

We can see that 4 GB address space can be divided into two parts, 0 MB ~ The physical memory top address is allocated to the physical memory installed on the motherboard, 4 GB to the physical memory top address is allocated to the BIOS (ROM) and PCI/PCI-E device memory. Since these memories are basically used for system input and output, Intel calls this address space "mmio" (memory-mapped I/O-I/o memory ing ). When the system installs memory less than 3 GB, The mmio region does not overlap the address space of the physical memory, and the operating system can access almost all the physical memory, the physical memory displayed in the operating system properties is basically close to the actual memory capacity .!

When the system is installed with 4 GB memory, the problem occurs. Because part of the address space below 4 GB needs to be allocated to mmio first, the corresponding interval on the memory stick will not be assigned as the address, so the operating system will not be available.

Strictly speaking, even when 2 GB of memory is installed, the operating system cannot use all the memory capacity. For example, some occupied address space is occupied in the traditional dos Uma zone, however, because the occupied capacity is too small, it is ignored by many readers. The address space occupied by mmio is MB ~ Between 1 GB, such a big "waste", we certainly cannot "Turn a blind eye ".

Due to the limited 4 GB chipset address space (32 address lines), neither the Intel 945 series nor the previous chipset, NVIDIA nforce 550, or earlier chipset can bypass this restriction. There are three specific reasons: first, there is no available space for the chipset to be allocated for the operating system; second, the physical memory address must be continuous and cannot be cut off; third, the system must first read BIOS data from the top address of 4 GB (ffff_ffffh) when starting the system. This is a limitation of the ia32 architecture and 4 GB address space.

Therefore, we recommend that you do not install 4 GB memory for these chipset boards, so that some memory capacity cannot be used by the operating system. The only solution to the 4 GB memory limit is to expand the address space.

 

2. Support for chipset and memory re ing with memory larger than 4 GB

Faced with the limitations of the 4 GB memory of the original chipset, Intel and NVIDIA have long been preparing for a long time. They have adjusted the traditional 32-bit address bus and upgraded it to 36 bits, it also introduced a series of chipsets that can break through the 4 GB memory limit, which are Intel's 965 series and 975 series, NVIDIA's nforce 570/590 and 680 series.

 

Note: AMD's 64-bit socket AM2 CPU puts the memory controller into the CPU and provides a 40-bit physical address bus with a address space of 1000 GB. The supported address space and memory size depend on the bus design of the chipset and motherboard.

From the preceding chipset parameters, the address bus is upgraded from 32-bit to 36-bit, and the address space reaches 64 GB. 8 GB physical memory can be installed. However, the ia32 architecture requires that BIOS information be read from the 4 GB ffff_ffffh address at startup, even though the address space supported by the chipset increases, the maximum supported physical memory capacity also reaches 8 GB (or above), but in essence, it still cannot solve the problem that the mmio address occupies 4 GB of memory addressing. What should I do ?.

The 36-bit address bus supports a maximum of 64 GB address space, which provides conditions for moving the mmio address zone. Now the solution to this problem is the "memory re ing" technology-that is, based on the ia32 architecture, the BIOS (ROM) and the mmio address segments occupied by PCI/PCI-E devices are remapped to the address space above the top address of the memory stick (for example, 4 GB or above, in this way, the mmio address space that is unavailable to the operating system specified by the ia32 architecture under 4 GB is recycled to the physical memory to ensure the continuity of the physical memory addressing.

 

3. BIOS must support "memory re ing"

The "memory re ing" technology must be completed through the BIOS. Therefore, BIOS must have a function module that supports memory re ing to determine whether to enable the memory re ing function based on the memory capacity installed by the user. At the same time, the "Memory re-mapping" setting option should also be available in the BIOS settings menu. Users who use 4 GB or more of memory must set this setting to "enable ".

 

4. Operating System Support is required to solve the 4 GB memory problem

We usually use a 32-bit desktop operating system that supports 4 GB address space. We have introduced that the chipset that solves the 4 GB problem supports 64 GB address space. If a 32-bit operating system is installed on such a chipset motherboard, only 4 GB address space can be used, therefore, a 32-bit operating system that supports 4 GB address space cannot be used for 4 GB memory installation. A 32-bit or 64-bit operating system that supports more than 4 GB address space should be used.

 

V. Summary.

1. Because the ia32 architecture requires the BIOS (ROM) chip address, PCI, PCI-E memory address, APCI interrupt routing address and so on must occupy less than 4 GB of Space 256m-1gb. The mmio address zone cannot be allocated to the memory stick. The memory size of 4 GB is mb-1gb, which cannot be edited and wasted. &

2. If you use 4 GB memory or above, you must use a 64 GB chipset motherboard With an address (addressing.

3. Memory re ing is to move the addresses occupied by mmio to the address space above the memory capacity .)

4. BIOS should support the "memory re ing" function. The configuration item contains the memory remap feature option and is set to enable.

5. An OS with an addressing space greater than 4 GB must be installed. For example, Windows 2000 Advanced Server Edition and 64-bit operating system.

6. All 4 GB chipset addresses (before intel945 and nforce550) and 32-bit operating systems cannot use the memory re ing technology to solve 4 GB memory problems.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.