05-05-2010
Quote:
Originally Posted by
Sendil Kumar
Hi All,
From C++, I just want to find the address space size that a process is allowed to use. For ex, in 32 bit OS the allowed address space is 4GB and in 64 bit OS I guess this is 16GB or more.
To expand on achenle's suggestion, 4GB in a 32-bit system is the physical limit. There are 4GB
possible different addresses a process can possibly have in its' address space in a 32-bit address space. Doesn't mean the OS will actually let it have that much.
9 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hello,
Please help me to know, How to find out the how much amount of process addres space is required/is used for/by a process.
Tnx & Regards
Vishwa. (1 Reply)
Discussion started by: S.Vishwanath
1 Replies
2. AIX
Hi,
I have migrated some processing from true64 --> AIX 5.3. my problem is to process large files in memory by diff or awk program. I need to load app. 1.3 GB of data into memory but it fails that there is not enough memory.
I need following:
diff file1 file2
orig. aix diff err... (2 Replies)
Discussion started by: Petr
2 Replies
3. Programming
Hi,
I am looking to work on unix systems which include (hp-ux, ibm aix, solaris and linux). I want to get the total virtual address space of a process, the used virtual memory i am able to get without any problem. I have tried using getrlimit and getrlimit64, but that gives only ... (4 Replies)
Discussion started by: uiqbal
4 Replies
4. UNIX for Advanced & Expert Users
Can kernel process access user address space ? (2 Replies)
Discussion started by: subhotech
2 Replies
5. Web Development
Any clues on how to get rid of this PHP error?
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 71 bytes) in /website/www/includes/functions_manpages.php on line 58
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 71... (4 Replies)
Discussion started by: Neo
4 Replies
6. Shell Programming and Scripting
While running script I am getting an error like
Few lines in data are not being processed.
After googling it I came to know that adding such line would give some memory to it
ini_set("memory_limit","64M");
my input file size is 1 GB.
Is that memory limit is based on RAM we have on... (1 Reply)
Discussion started by: elamurugu
1 Replies
7. Shell Programming and Scripting
I have this script. (options is an array) It works fine. It responds fine to all items that are stored in the array. But when I press spacebar when I am asked for input. It will not give an error only run the function again. While I put : || ] in the script to capture the space. What am I missing... (6 Replies)
Discussion started by: Alex400
6 Replies
8. Programming
Suppose I have 3 gb of ram and 250 gb hard disk in my pc.
Now I wrote a simple C program having only one statement malloc() to allocate 4 gb of memory as 32 bit os can address 4gb address space then will the malloc succeed?
If yes then how it will get extra 1 gb of memory?
Does the process gets... (3 Replies)
Discussion started by: rupeshkp728
3 Replies
9. Solaris
Hi ,
In a server /tmp has almost reached 75% and i can see the File system utilization is 48Mb only , so i believe some process is using the /tmp space. I would like to know which process is using /tmp space.
# df -h /tmp
Filesystem size used avail capacity Mounted on
swap ... (9 Replies)
Discussion started by: chidori
9 Replies
mem(7D) Devices mem(7D)
NAME
mem, kmem, allkmem - physical or virtual memory access
SYNOPSIS
/dev/mem
/dev/kmem
/dev/allkmem
DESCRIPTION
The file /dev/mem is a special file that provides access to the physical memory of the computer.
The file /dev/kmem is a special file that provides access to the virtual address space of the operating system kernel, excluding memory
that is associated with an I/O device.
The file /dev/allkmem is a special file that provides access to the virtual address space of the operating system kernel, including memory
that is associated with an I/O device. You can use any of these devices to examine and modify the system.
Byte addresses in /dev/mem are interpreted as physical memory addresses. Byte addresses in /dev/kmem and /dev/allkmem are interpreted as
kernel virtual memory addresses. A reference to a non-existent location returns an error. See ERRORS for more information.
The file /dev/mem accesses physical memory; the size of the file is equal to the amount of physical memory in the computer. This size may
be larger than 4GB on a system running the 32-bit operating environment. In this case, you can access memory beyond 4GB using a series of
read(2) and write(2) calls, a pread64() or pwrite64() call, or a combination of llseek(2) and read(2) or write(2).
ERRORS
EFAULT Occurs when trying to write(2) a read-only location (allkmem), read(2) a write-only location (allkmem), or read(2) or
write(2) a non-existent or unimplemented location (mem, kmem, allkmem).
EIO Occurs when trying to read(2) or write(2) a memory location that is associated with an I/O device using the /dev/kmem spe-
cial file.
ENXIO Results from attempting to mmap(2) a non-existent physical (mem) or virtual (kmem, allkmem) memory address.
FILES
/dev/mem Provides access to the computer's physical memory.
/dev/kmem Provides access to the virtual address space of the operating system kernel, excluding memory that is associated with an
I/O device.
/dev/allkmem Provides access to the virtual address space of the operating system kernel, including memory that is associated with an
I/O device.
SEE ALSO
llseek(2), mmap(2), read(2), write(2)
WARNINGS
Using these devices to modify (that is, write to) the address space of a live running operating system or to modify the state of a
hardware device is extremely dangerous and may result in a system panic if kernel data structures are damaged or if device state is
changed.
SunOS 5.10 18 Feb 2002 mem(7D)