On Fri, Apr 15, 2011 at 12:12 AM, Haojian Zhuang <haojian.zhuang@xxxxxxxxx> wrote: > On Thu, Apr 14, 2011 at 11:43 PM, Andrzej Kardas <andrzej-kardas@xxxxx> wrote: >> >> >> On 14.04.2011 17:09, Adrian Cornish wrote: >> >> Just a thought - lower end graphic cards use system RAM as their own >> dont they >> >> You right, devices like graphic card, ethernet cards etc. are mapped into >> memory, what cause some amount RAM is not available for system use. But as >> i've wrote before, i'm wondering why addresses in /proc/iomem (where the map >> of memory is) are not contiguous. I think, there should be info about what >> region of memory is mapped where (BIOS, PCI bus, for system use etc) for >> whole 4GB (Am I right??) address space (for 32bit OS). Instead of that, >> there are small "holes" in addresses and the total size of this holes (in my >> case) is about 400MB. So i wonder where that memory is. >> > What you see from /proc/iomem is virtual address. For the 32-bit > system, it's 4GB size. > Virtual address needn't be sorted one by one. > > You have 4GB physical memory. But only a part is mapped linearly in > virtual address. > They're called lowmem. The rest are used as highmem what can be > allocated by device > driver or applications. Kernel needs to map it first before accessing highmem. > > CPU's MMU manages the mapping table between virtual address and > physical address. > Oh, my inputs are wrong. Please ignore it. I messed something. What we saw should be physical memory. I think the real hardware should be accessed by 36-bit, not 32-bit. >> _______________________________________________ >> Kernelnewbies mailing list >> Kernelnewbies@xxxxxxxxxxxxxxxxx >> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies >> >> > _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies