General :: Mapping Kernel Virtual Address Space To Physical Memory Zones?

Nov 4, 2010

As i undertsand - out of 1GB of the virtual Address space for Kernel from 3GB to 4GB of the process address space, Kernel image (code, data, bss, stack, heap) resides staring @0x0 address. Vmalloc area starts either at the end of Physical ram size or at 896M. This 896M cap is mandated to ensure that minimum of 128MB is reserved as vmalloc_reserve for vmalloc,kmap etc.

Is the understanding correct? Now trying to map Physical Zones into this 1GB address space

Initial 16MB is mapped to ZONE_DMA
16MB - 896MB is mapped to ZONE_NORMAL
896MB - 1024MB is mapped to ZONE_HIGHMEM

Does this mean that Kernel image is residing in ZONE_DMA area? Any call to vmalloc() in kernel code will return address beyond 896M? insmod of any LKM will internally invoke vmalloc() to obtain contiguous area - where will this code physically located along with rest of kernel code in ZONE_DMA or in ZONE_HIGHMEM?

View 1 Replies


General :: Virtual Memory Address To Physical Address?

Apr 13, 2010

How can I get the physical address corresponding to a virtual address in linux by using /proc file system

View 1 Replies View Related

General :: Virtual Address To Physical Memory Access ?

Feb 21, 2010

A process is trying one access to memory, for example through an array (ex.: vect[0]=123. What happens?

Here below what I guess but I'm not sure and accept any comment (please, distinguish between "the system" and "the CPU" in case).

Let's suppose swapping to disk disbled.

We have two scenarios: without and with cache.

If no cache is present in the system:
1. The CPU must discover the phys addr of vect[0] virtual addr. To do that, has to read from 3 (or 2 depending on the system?) pages tables, stored in memory as well.
2. The CPU writes to the final address.

These mean 4 memory accesses.

If cache is present:
1. Like above but, if the pages tables are in cache, we have 3 accesses to that.
2. If the req. page is not in cache, it's reads from ram and transferred to it. Afterwards, cache is written.
In the best case we have 4 cache accesses.

View 2 Replies View Related

General :: Application Virtual Address Space Memory Allocation - Memory Does Not Get Free

Apr 20, 2010

I am using malloc and frees a lot in my program. It shows its allocated but when i remove it doesnt show as the memory is removed(I am using the top command to view VIRT memory usage). If this continously grows what would happen to my program (Will it go out of memory?)

View 4 Replies View Related

General :: Mapping Memory Space To A Path/filename?

May 4, 2010

I'm working with a lot of data, but always the same. I have, say 2GB that I keep loading 100 times a day from a local disk to do some computations.I was wondering if anyone knew if it is possible to read it once for all and then access it like a file but with the speed of RAM access. I would be looking for something like: Code: file2mem ~/mybigdatafile.dat ~/mybigdata_thats_now_accessed_superfast.dat And then the data is accessible in a way like with a symlink...

View 9 Replies View Related

General :: Why Set Swap Space Twice Big As Physical Memory

Sep 12, 2010

When we want to setup a linux system, there is a common a suggestion like set the swap space as twice as big than your physical memory, I want to know why do we need this and how is this suggestion come from?

View 4 Replies View Related

General :: Physical And Virtual Memory Upper Limit For 32 Bit?

Jun 26, 2010

I have a 32 bit Ubuntu installed and my Laptop has 4GB RAM, but only 3GB is considered by Linux. My question is: what is the reason for the upper limit on physical memory ?

dmesg | grep Memory [0.000000] Memory: 3052428k/3112960k available (4673k kernel code, 56364k reserved, 2121k data, 656k init, 2200904k highmem) I am familiar with the virtual memory concept where linux splits upper 1GB for kernel and lower 3GB for user processes. In total, linux 32bit can address 4GB virtual addresses. Does this meant that 1GB of physical memory is already mapped to 1GB of kernel space and Linux only shows the remaining 3GB physical memory left for the user in the above command.

I did some searching on the internet and found some articles related to this, but it only confused me further since some articles suggest 4GB is the upper limit with mentioning whether it's virtual or physical memory, some bring in the concept of PAE, etc. I'm relative new to Linux's memory management, so it'd be really helpful if someone could answer this.

View 4 Replies View Related

General :: Division Of Logical Memory Space In To User Space And Kernel Space

Jan 4, 2010

Logical Memory Space of 4GB is divided in to 3GB User Space and 1GB Kernel Space. Always. Correct?

1. How can we change it? (just changing value of PAGE_OFFSET is okay?)

2. If system have only 256MB of memory (embedded system) and suppose Kernel Modules eat away all the memory during boot. User space will be left will no memory. Is this case possible?

View 2 Replies View Related

Programming :: Access At Physical Address - I/O Address In My Map Memory?

Dec 17, 2008

When I try to access at physical address (0xD0000), we known that it is necessary to convert physical address to virtual address using function IOREMAP(0xD0000, 1024) and return me 0xC00D0000.

Now our doubt is when I have a board with I/O in address 0x150, is it necessary to convert this address to other virtual address??? or with inb(0x150) return me state of I/O in this address? How can I known where is this I/O address in my map memory?

View 7 Replies View Related

Programming :: Physical Versus Virtual Mac Address And Mac Address From NIC's Firmware?

Apr 6, 2011

I need a small shell based program that prints the mac address of physical ethernet adapter from it's firmware. I need this utility for license generation and appliance activation. I have tried several example but none of them is flawless, The easiest method I have found is to parse the output of "ifconfig" command but it has also some drawbacks.

1. Firstly program should differentiate between physical and virtual adapters. Physical means installed on board(wired or wireless) or installed additionally. Virtual adapters are those created by VPN or created by virtualization apps such as VirtualBox/VMWare etc. I am not interested in virtual ones.

2. In case of more them one physical adapters(wired and wireless), it should print the mac address and description(name & vendor) of both/all adapters.

3. If media is disconnected then also it should be able to read the mac address and description(name, vendor) of card.

4. This one is bit complex. I know that 'ethtool' can show you the universal mac address but it's limited to use only 2 types of drivers and won't work in all cases.

View 2 Replies View Related

Programming :: Translate Virtual Address To Physical Address In Application?

Nov 18, 2009

I want to translate the virtual address to physical address in linux C application, how to do that?

View 1 Replies View Related

Server :: Free Physical Memory Available Then Why Swap Space Used

Jun 20, 2010

Why linux uses swap space, even if there are free physical memory available.

View 4 Replies View Related

Software :: Physical And Virtual Address Differences?

Jul 15, 2010

I am interested to know memory layout in linux os.What are the differences between physical address and virtual address?

View 1 Replies View Related

Programming :: Find Physical Address Of Memory Provided By Kmalloc

Oct 22, 2009

I allocated a chunk of memory using kmalloc in a Device Driver. Kmalloc provides a pointer to the allocated memory. This is one of my first few drivers.

I assume that the address returned is a Virtual address. I need to find the physical address of the memory location. I am working on an Intel 64 bit Fedora machine. I used the virt_to_phys() routine present in <asm/io_64.h>. I found that this routine returns an unsigned long value (32 bit) instead of an unsigned long long value (64 bit). Moreover, it seems that it simply returns the address - OFFSET instead of extracting the value in the page tables.

So is there any function / system call in Linux which will allow me to see the actual physical address on the Intel 64 arch.

View 3 Replies View Related

Programming :: Shared Memory Address Area In Process Address Space?

Feb 21, 2011

if i attach a shared memory to my process whch part of the address space it will add(like stack, heap, data, code...).

View 3 Replies View Related

General :: System Do Fragmentation On Virtual Address Space?

Apr 21, 2010

I have millions of small chunks of new's and delete's in my program. Even though no memory leak is detected through valgrind or purify, memory grows. But the growth is degrading over the number of times of the execution of the tasks. Can i think that fragmentation plays a role in this?

View 6 Replies View Related

General :: Set The Limits For Unlimited Virtual Memory With Limited Ram And Swap Space On Disk??

Apr 6, 2010

clarify me with ulimit output and memory limit?

ulimit -a output:
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) 1572864


View 2 Replies View Related

Hardware :: Obtain A Real Memory Address From User Space - Mmap() And /dev/mem

Feb 25, 2010

I'm running an embedded Linux kernel, and I want to obtain a real memory address from user space. After goggeling a little, I found that the only way was to use mmap to access /dev/mem. But I never used mmap. I want to load a program in memory, in order to make it available from another processor, that has access to the DDR, but not to the flash memory where program is stored. Here is the code I use:

Code: // Open file and get its size
FILE* program = fopen(argv[3],"rb");
fseek(program, 0, SEEK_END);
long program_size = ftell(program);
fseek(program, 0, SEEK_SET);
// Prepare memory to copy it in
void* program_address = malloc(program_size+1);
FILE* memory_stream = fmemopen(program_real_address, program_size + 1, "wb");

View 5 Replies View Related

General :: Use Where Save For The Physical Address Going Towards The MAC Address

Jul 19, 2010

im REALLY new with linux and ive downloaded and installed heres the do i set up WLAN internet use? ive tried using ipconfig/all on windows command but im not sure which info to use where save for the Physical Address going towards the MAC Address info

View 14 Replies View Related

General :: Configure Physical Memory Map?

May 18, 2010

I am trying to build and bring-up Linux (embedded) for a piece of hardware which have MIPS 74K proccessor 16MB Flash, 128MB DDR and network/usb support. How to configure/set into the kernel the exact addresses of the physical memory map? How does the kernel know where is the system ram, i/o memory, root FS? I have read some book and I found how the applications can go and read some special files like /proc/iomem to find out info about memory but what I need is how to set those addresses at the beginning when I build the kernel and FS in order to boot the kernel on my h/w.

View 3 Replies View Related

Server :: Clear Cache Memory ( RHEL 5.1 ) As It Consumes Almost 100% Physical Memory?

Jan 11, 2010

let me know how to clear cache memory ( RHEL 5.1 ) as it consumes almost 100% physical memory.

View 3 Replies View Related

Hardware :: Why Dmesg / Grep Memory Gives Two Different Physical Memory Amounts

Oct 20, 2010

I am monitoring physical memory in a server I administer, and my hardware provider told me they had increased physical memory size to 4Gb... However, using several tools (free -m; top; dmesg | grep Memory; grep MemTotal /proc/meminfo I discovered that I actually have 3Gb, not 4... But, my doubt comes from the fact that dmesg | grem Memory tells me I have 3103396k/4194304k available The first number is effectively 3Gb, but the second one, is 4! so, why I am looking at this two different numbers?

View 1 Replies View Related

General :: Get The Physical Memory Used By A Couple Of Processes?

Sep 3, 2010

I am doing a test to get the memory used by apache`s apache2 processes. I used a script to get VmSize and VmRss from /proc/pid/status, and loop through that to get the sum of VmSize and VmRss of all the apache2 processes.

I found the VmSize (about 4GB) and VmRss (about 3.4GB) are much larger than the physical memory (1GB) when apache server was saturated. It was said because of the multi-counted libiraries size used by many processes simultaneously. Then , how to get the physical memory used by apache2 processes? Or how to get a more reasonable memory data?

View 7 Replies View Related

General :: Mapping A Folder Between Two Virtual Installs?

Feb 23, 2011

I am working on a few different Linux related self-education projects, and I'm trying to stump myself as much as possible so I can learn as quickly as possible. Using VMWare, I have several Linux and Windows flavors I am using for various purposes. To the point, I have an Ubuntu server (text only) and a Fedora desktop installed, and I need to figure out how to map a drive on the Fedora VM so that I can access it on the Ubuntu server VM. I have installed Samba on both, and I can send a ping from one to the other with no problems. I guess I just need some help with the command line syntax?

On a related note, I have NOT been able to figure out how DNS works in a setup like this, so when I say I can ping them, it is by IP address only. I'll work on the DNS stuff soon, but for right now, I just need access to my Fedora VM, unless for some reason you can ONLY set this up via DNS.

Ubuntu server
Fedora desktop -
Folder I need to access: [Fedora desktop]/home/[username]/downloads/

View 5 Replies View Related

General :: How To Read/write Physical Address

May 17, 2010

One of the tasks I want to do is to read/write from/to any physical address. My question is how do I get a physical address on my Linux desktop. I was thinking of using some utility to dump my BIOS settings, and modify a "not so important" memory address there? Is this possible. Otherwise is there any other physical address I can read/write

View 3 Replies View Related

General :: Virtual Space Seen By Each New Process In User Space?

Jun 21, 2010

In a 32-bit system, max memory addressable is 4GB. Now Linux kernel does memory mapping division of 1GB for kernel address space and 3GB for user address space. That means 4GB of virtual address space is divided between kernel (1GB) and user (3GB).

Q1. All virtual mapping utilizes the available physical RAM without any division? I mean to say that if RAM is 512MB then a page in kernel space can lie any where RAM (leave aside old PCI dma accesses)? (How this fits to fact that kernel memory is non-pageble)

Q2. If a process is created in user space, it has visibility 4GB address space or 3GB address space?

View 2 Replies View Related

General :: Calling User Space Callback Function From Kernel Space?

Sep 22, 2009

I am writing device driver in which i have to call callback function from kernel space, which are saving my data. But the callback functions are in userspace. While accessing them i am getting segmentation fault.

View 1 Replies View Related

Fedora :: Mapping The File In Memory?

Feb 2, 2010

I need to read many files very fast: reading them from the disk leads to bad performance!!I copied the files into /dev/shm, being sure that they were copied in memory, but the performance didn't improve.Then I created a tmp file system in /mnt (/mnt/tmpfs) and I mounted it withmount -osize=400m tmpfs /mnt/tmpfs -t tmpfsand copied the file in. But the performance still remain almost the same.I've the doubt that I didn't copied the file in memory!The question is: Did I make the right things?I run a FC 11 64 bit on a dual procs server with 16 Gb memory

View 1 Replies View Related

Ubuntu :: Memory Mapping Failed. Error: 1?

May 26, 2011

So, I was working with Ubuntu 9.10 and I wrote a C program which was working just fine. Then, I have installed Ubuntu 10.10 and tried to run this same program again. However, I get the following error: Code: Memory Mapping failed. Error: 1 Part of the code has the following: Code: volatile ulong *memory;

int fd = open("/dev/mem", O_RDWR | O_SYNC);
if (fd < 0) {
printf("Could not open memory.

Does anyone have an idea what the problem could be? I do not know if there would be any significant change between Ubuntu 9.10 and 10.10 that could be generating me this problem.

View 3 Replies View Related

OpenSUSE Install :: Virtual Memory / Resident Memory Of Server?

Feb 3, 2010

we found that if we use 'top' to show the memory usage of a server (SuSe Linux 10), we can get virtual memory usage as well as 'Resident memory' usage. For virtual mem or a particular process, it is around 1.1GB, which is large but for resident memory, it only consumes 300MB. Are there anyone who knows what the differences are? I would also like to know whether the difference (1.1GB - 300MB) = 800MB are actually available for use by other applications in the system.

View 1 Replies View Related

Copyrights 2005-15, All rights reserved