Sponsored Content
Operating Systems Linux SuSE shmat failed due to Cannot allocate memory Post 302486077 by ManoharanMani on Friday 7th of January 2011 12:11:47 AM
Old 01-07-2011
actually once i observed the problem from then on my program was not working due to same reason.

BTW, one more question is from the shmmax value i can see that its around some giga bytes. but that much memory is not available in the system. so it means will shmmax size will be set to 32MB(default shared memory maximum size)?

Once i got this issue, then on the same issue is continuously occuring till i restart the system.

---------- Post updated at 10:41 AM ---------- Previous update was at 10:39 AM ----------

ipcs command output:
ipcs -m
0x00000000 904855586 user 777 131072 2 dest
0x0052e2c1 1401815075 user 600 37879808 5
0x0000f24f 1401847844 root 644 28 22
0x00238003 1401880613 root 644 16 2
0x00000000 1402142758 user 777 12096 2 dest
0x00000000 1291714599 user 777 15840 2 dest
 

10 More Discussions You Might Find Interesting

1. Programming

how allocate virtual memory

Hi Folks can any body suggest how to allocate virtual memory any function for that (2 Replies)
Discussion started by: munnu
2 Replies

2. Linux

shmat() Failure While Using a Large Amount of Shared Memory

Hi, I'm developing a data processing pipeline with multiple stages, with data being moved between the stages using shared memory segments. The size of the data is typically of the order of hundreds of megabytes, and there are typically a few tens of main shared memory segments each of size... (2 Replies)
Discussion started by: theicarusagenda
2 Replies

3. UNIX for Advanced & Expert Users

unable to allocate enough memory

On SunOS 5.8 I get an error when starting a large Java process with over 2Gb memory. Error occurred during initialization of VM Could not reserve enough space for object heap When stopping several other Java processes we can start this process. This seems to indicate that we don't have... (11 Replies)
Discussion started by: rein
11 Replies

4. UNIX for Advanced & Expert Users

How to allocate memory

Hi, I have 2 systems with same hardware and software. One system is giving me error "Error occurred during initialization of VM Could not reserve enough space for object " when I tried to increase JBoss App's heap size to 2GB while the other system is running fine without any issue. Is there... (5 Replies)
Discussion started by: ravi3553
5 Replies

5. UNIX for Advanced & Expert Users

Oracle how many memory allocate really

hi... i want to find oracle allocate how many memory really.. i execute this code to list memory on unix system : ps -eo pmem,args | sort -k 1 -r -n outputs ; %mem command 12.9|ora_smon_RTX 12.9|ora_s000_RTX 12.9|ora_reco_RTX 12.9|ora_qmnc_RTX... (2 Replies)
Discussion started by: utoptas
2 Replies

6. SuSE

Compile failed due to 'out of memory'

Maybe increase swap space will help? How to do it? When I install suse 11 on this box, I remeber it shows the swap space is 2G, I didn't find it anywhere now... (5 Replies)
Discussion started by: fld2007
5 Replies

7. SuSE

shmget failed - cannot allocate memory

Hi, In my proj, one process was running for 2 days. after 2 days its throwing an error message "shmget failed cannot allocate memory". the same problem happened every time.i.e. i can reproduce the same issue if my process is running for every 2 days for a same operation.Within this 2 days there... (1 Reply)
Discussion started by: ManoharanMani
1 Replies

8. Linux

shmget failed - cannot allocate memory

Hi, In my proj, one process was running for 2 days. after 2 days its throwing an error message "shmget failed cannot allocate memory". the same problem happened every time.i.e. i can reproduce the same issue if my process is running for every 2 days for a same operation.Within this 2 days there... (1 Reply)
Discussion started by: ManoharanMani
1 Replies

9. Linux

shmget failed - cannot allocate memory

Hi, In my proj, one process was running for 2 days. after 2 days its throwing an error message "shmget failed cannot allocate memory". the same problem happened every time.i.e. i can reproduce the same issue if my process is running for every 2 days for a same operation.Within this 2 days there... (1 Reply)
Discussion started by: ManoharanMani
1 Replies

10. Programming

How to allocate memory to a string in C?

hi I want to take string as a input from user and the string is very very length. From the lengthy string i have to substring take first 16 letters, then next 8 letters,................... Please guide me how to write program to take lengthy string from user and sub string it. Thanks (4 Replies)
Discussion started by: atharalikhan
4 Replies
SHMAT(2)						      BSD System Calls Manual							  SHMAT(2)

NAME
shmat, shmdt -- map/unmap shared memory SYNOPSIS
#include <sys/types.h> #include <sys/ipc.h> #include <sys/shm.h> void * shmat(int shmid, void *shmaddr, int shmflg); int shmdt(void *shmaddr); DESCRIPTION
shmat() maps the shared memory segment associated with the shared memory identifier shmid into the address space of the calling process. The address at which the segment is mapped is determined by the shmaddr parameter. If it is equal to 0, the system will pick an address itself. Otherwise, an attempt is made to map the shared memory segment at the address shmaddr specifies. If SHM_RND is set in shmflg, the system will round the address down to a multiple of SHMLBA bytes (SHMLBA is defined in <sys/shm.h> ). A shared memory segment can be mapped read-only by specifying the SHM_RDONLY flag in shmflg. shmdt() unmaps the shared memory segment that is currently mapped at shmaddr from the calling process' address space. shmaddr must be a value returned by a prior shmat() call. A shared memory segment will remain existant until it is removed by a call to shmctl(2) with the IPC_RMID command. RETURN VALUES
shmat() returns the address at which the shared memory segment has been mapped into the calling process' address space when successful, shmdt() returns 0 on successful completion. Otherwise, a value of -1 is returned, and the global variable errno is set to indicate the error. ERRORS
shmat() will fail if: [EACCES] The calling process has no permission to access this shared memory segment. [ENOMEM] There is not enough available data space for the calling process to map the shared memory segment. [EINVAL] shmid is not a valid shared memory identifier. shmaddr specifies an illegal address. [EMFILE] The number of shared memory segments has reached the system-wide limit. shmdt() will fail if: [EINVAL] shmaddr is not the start address of a mapped shared memory segment. SEE ALSO
shmctl(2), shmget(2), mmap(2) BSD
August 17, 1995 BSD
All times are GMT -4. The time now is 08:29 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy