Red Hat :: Shared Memory Limitations In RHEL AS 4?
Jul 16, 2010Does anyone know if there is a size limitation for shared-memory segments in RHEL AS 4?
View 1 RepliesDoes anyone know if there is a size limitation for shared-memory segments in RHEL AS 4?
View 1 RepliesI want to create a "Shared Memory" in linux, then create multiple "Shared Objects" that can access to a Table for example; And one of them can write something into the Table and the other can access and read it, so that these operations can be handled by programmer! I'm using Ubuntu 9.04 and I've set it's runlevel at 3 (I have commandline environment now!) I've searched the Internet so much, but couldn't find a good sample code for this! I have no experience about it and need your help to introduce me a sample code about it and advise me how to compile and use it with "GCC"?!
View 6 Replies View Relatedlet me know how to clear cache memory ( RHEL 5.1 ) as it consumes almost 100% physical memory.
View 3 Replies View RelatedI have 2 applications that send and receive messages through shared memory IPC. When I run the app ..it works but the number of messages per sec keeps changing drastically sometimes it is 400-500 per sec..then 800 then 1200 then 2000. is this normal with SHM IPC or could it be a code related issue.
View 9 Replies View Relatedhow come shared memory is only using 4 gigs of ram?
Code:
localhost router # free -m
total used free shared buffers cached
Mem: 8001 858 7142 0 130 235
-/+ buffers/cache: 492 7508
[code]...
I am trying to troubleshoot an Apache/Mysql server that once every few days falls over due to memory starvation. I thought I had tuned my httpd.conf file with relativley small MaxClients and so on, but then noticed some unusual RES values in top while monitoring.
In short, `top -b -n1 -u apache` shows that I have 28 httpd processes. their VIRT is ~300MB for each process (I understand this is shared), and the RES ~50MB for each. I thought this wasn't shared. Is this true? I just noticed 2 of the processes jump to 1.2g. If RES represents non-shared memory then concievably 1.2g x 28 processes would be a problem on an 8GB server.
I'm running a Debian based distro.
When I run ipcs this pops up:
This happens only while KDE3 is running. Regardless of the runlevel, if kdm is not started, this will not show.
By running ipcs -p the PID points to process
Is there anything wrong with that command?
When I boot into Linux i see some shared memory which is blocked, due to this I am unable to start my processes which needs some shared memory.I tried removing the shared memory using ipcrm -m but no use, the shared memory is not cleaned but its still in use.I tried removing the shared memory using root user also normal user but unable to remove the shared memory.
[pin01]$ ipcs -m
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
[code]...
I have to figure out how to pass data between a Fortran application and a C++ application. The memory has to be locked/unlocked to prevent data corruption. I know very little about Fortran. I have done mutex lock/unlock stuff in Linux apps, multi-threaded, using mutex locks before.
Digging around on the Web, I do not find any info on a Fortran app including linux headers, library calls such as those in ipc.h, shm.h and sem.h. What is an approach to this problem?
Any good tutorial on sharing dynamically allocated objects across shared libraries in the same process and between shared libaries and main(). In particular, I need to know what creation and destruction sequences are valid when libraries are being loaded and unloaded. For example, is it valid to allocate an object from inside a shared library procedure, and then delete that pointer from a different module, especially in the case where the allocating module has already been unloaded.
I imagine there might be all kinds of problems with this. Although my preliminary tests seem to work most of the time, I get crashes from time to time, but I'm not sure if they're caused by memory management or by threading issues. I've been restructuring my code to use a global context object to manage object creation and destruction from main(), but I'd like to find a clear exposition of the specific issues I'm dealing with before I go too much further.
I'm writing a producer-consumer program, where the producer and the consumer are different processes and they communicate using queued signals, and when I run it it comes out always 'segmentation fault'.
Here is my code:
(note: I tried using both 'shm_open()' and 'mmap()', and 'shmget()' and shmat()')
Code:
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
[code]....
So I'll try to be brief and to the point here: I've got a couple of C / C++ apps that communicate with one another via shared memory. These worked completely fine until.. well, about twenty minutes ago when I finished making some network card changes and suddenly, I've got a weird problem going on. At one point, Parent app waits for Child app to set a boolean indicating it's finished initialization. This worked fine the last time I ran this app up (a few days ago). But right now, the shared flag never seems to get triggered (I've added a printf("Waiting..."); in Parent app until the flag is set). All the code leading up to it being set in Child app seem to be running smoothly, so I tried spitting out the addresses of the shared memory locations. The addresses mapped by Parent app and Child app are different; this seemed odd, so I went back and wrote a simple miniature app that just opened a shared structure on my own box, and I get the same thing - different addresses - but the miniature apps work just fine.
Is it normal for a shared memory space to be mapped to two different addresses across two processes?
If so, does anyone have any idea what might be the issue at hand with my Parent / Child app scenario? The Child creates the shared memory, the Parent has a wait before it opens it, and if it doesn't exist should fail (opening with PROT_READ | PROT_WRITE)... it doesn't fail so it's evidently there.
All of this worked until literally just a few hours ago and I made some changes to my network cards, and I can't even imagine how that could have changed whether or not shared memory mapping worked...
please help to mount windows storage server 2008 shared drives and folders( without password) to rhel ent server 6 through acl. I want restricted access to those drives and folders.
View 3 Replies View RelatedRecently I came across this error while booting up our RHEL 5 server:
Starting send mail:/ user/ sbin/sendmail:error while loading shared libraries libdb-4.3.so cannot open shared object. error-27
sm-client:/ user/ sbin/sendmail:error while loading shared libraries libdb-4.3.so cannot open shared object. error-27
Also, while creating a new squid user, I get the same error: htpasswd /etc/squid/squid_passwd alok
htpasswd: error while loading shared libraries: libdb-4.3.so: cannot open shared object file: Error 27
The libdb-4.3.so file exists in my /usr/lib. When I looked up for error code 27, it says " File too large ". I thought maybe its because of the number of users. But even after removing some duplicate user accounts, I still can't figure out why the error remains.
When the systen is running there is a program/utility/kernel-driver? kthreadd in system monitor all the following programs are a child process of kthreadd. Is kthreadd part of elevator=cfq and can kthreadd be influenced by params. kthreads uses no cpu time memory or shared memory so it must be in kernel. is there any documentation on this subject? System 11.3 on quad processor 8 gb mem nvidia-card and driver.
View 3 Replies View RelatedHow do I change the size of the available shared memory on Linux?evidently 4GB is not enough for what I am doing (I need to load a lot of data into shared memory - my machine got 8GB of RAM).
View 2 Replies View RelatedI have what should be a relatively simple program (fadec.c) that maps a struct from an included header file (fadec.h) to a shared memory region, but Im struggling accessing members in the struct from the pointer returned by shmat. Ultimately, I want to access members in the shared memory structure with a globally declared version of the struct, shm__. Not only do I not know how to accomplish that, but I cant even seem to access members of the shared struct directly from the pointer itself (compiler complains about dereferencing pointer to incomplete type). Im at a loss and could use another set of eyes if you guys dont mind taking a gander:
Compile Errors:
tony-pc:/cygdrive/p/test> cc -o fadec fadec.c
fadec.c: In function 'main':
fadec.c:30: error: dereferencing pointer to incomplete type
fadec.c:31: error: dereferencing pointer to incomplete type
[Code]...
I have been battling an issue for a couple of days and I have it down to 2 possibilities. Memory or mobo. A server in the DC is being very sketchy. Sometimes it will boot fine, sometimes it will boot but will not show all the memory, and sometimes it will hang before it even posts. I have replaced just about everything inside the system except for the memory and the mobo.
I would like to test the memory before replacing either because both are a few hundred dollars. The problem is, the memory doesn't log any errors and running a memory test with ubcd doesn't work because it's ecc memory. I thought I remembered hearing that there is a way to run a memory test during a Centos or RHEL installation, but I can't figure out how.
The memory is
DDR2 667 FB-DIMM
and the board is
Tyan S5380
I have been doing a lot of research on the web to piece together the components I need to understand what is probably a very simple thing. I've read up on buffers/cache vs. physical memory and using free -m and top and understanding that output, and reviewed Red Hat's article on virtual memory. I am hoping to get some assistance in putting it all together to understand what's happening in my situation because so far I have a lot of dangling factoids and no glue. I have also referenced the thread http://www.linuxquestions.org/questi...memory-309767/ but I didn't find my answer there.
My company is running a cluster of physical web servers (they are clones so running the same OS, with same RAM and applications installed). I'll be referring to a single system although the question applies to all because they're all showing similar output. The Multi Router Traffic Grapher is showing a steady swap usage for 3-4 months now. The average usage for today is 81%. There is, as far as I know, no performance hit because of it, but a developer noticed this and wanted to know what was going on, and I'd using this opp to learn. The system is Linux version 2.6.18-128.7.1.el5, running JBOSS, postgres, Apache, and Java. Here is the output from the memory commands I have used to try and understand what's going on.
Code:
top - 21:19:27 up 159 days, 7:43, 1 user, load average: 0.52, 0.61, 0.64
Tasks: 144 total, 1 running, 143 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.2%us, 8.0%sy, 0.0%ni, 91.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
[code]....
So my interpretation of this output tells me that my system has 4GB of RAM installed, 23MB of free "physical" RAM, and 1.35GB of RAM in cache (according to the second line of free -m, which represents free physical memory and useable mapped memory if I understand correctly). I have a 2GB swap partition, 1.5GB of which is currently being used, and according to the MRTG is the average that has been in use since January. So the swap size isn't decreasing. Java (JBOSS) is using the most physical RAM at 1.6GB.
My question is: if I have 1.35GB of RAM cached, why is my system using all of that swap space and not using any of the cached RAM? I thought I understood that Linux is supposed to either re-use unmodified pages in cache or send older pages to disk when more RAM was needed. It seems like my system is always sending pages to disk, which I guess would normally mean I just need more RAM but, to have close to the same swap size consistently seems like there must be more to it.
My problem is I installed Zone Minder for camera security and I'm testing it on my laptop with the built in webcam and everything seems to work perfectly except when I try to view the live feed from the camera, it's just a black box. No video.
I checked this website and it's exactly the problem I'm having with a fix for it but his fix doesn't work. He says to type:
Code:
user@ubuntu:~$ sudo echo "256000000" > /proc/sys/kernel/shmmax
user@ubuntu:~$ sudo service apache2 restart
user@ubuntu:~$ sudo service zoneminder restart
But when I do the first line, I get this:
Code:
deemar@Clementine:~$ sudo echo "256000000" > /proc/sys/kernel/shmmax
bash: /proc/sys/kernel/shmmax: Permission denied
I just opened an (unmanaged) VPS account and and have been encountering nothing but problems with trying to get Apache up and running (its something I've done many times before).Basically the inital error was with LDAP not having enough space, so I disabled the related extensions and Apache still would not run. Looking at the log, it contains: (28)No space left on device: Unable to create scoreboard (anonymous shared memory failure)
View 1 Replies View RelatedI need to find the memory usage of a shared library loaded in Linux environment.
I need this information for deciding on whether to make the library part in to application or a seperate application itself.
I have a program that creates and uses a shared memory segment. I am trying to find out how to detach and delete this shared memory segment when I hit crtl-C, and I still need the process to terminate.shmdt() and shmctl() have variables that are local to the main passed to them(shared and shmid)
Code:
//Prototype
void leave(int sig);
//part of code trying to use signal handling
if(signal(SIGINT, leave))
[Code]...
I wrote a program that multiplies 2 matrices using multi-threads and another one using multiple processes and shared memory. Both in C.I need to find the total memory usage of these programs. I know of the top command, but when my matrices are relatively small they don't even show up on top because they complete so fast, how can I find the memory usage for these instances?Also, how can I find the total turnaround time of my programs
View 1 Replies View Relatedif 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 RelatedIs there a system admin tool for RHEL on montioring and logging system memory used and released that can dump to a log file?I'm having an issue with memory not being released when an application is closed. I need to have a tool monitor and log so I can troubleshoot to verify that it's an application not the OS.
View 2 Replies View RelatedI am using Fedora 8 in my PC and i'm trying to create a shared memory (below is the sample program) i'm getting error while creating shared memory. Can anyone pl tell what is the possible cause for this.
View 2 Replies View RelatedI'm considering setting up a virtual machine running Windows, with Ubuntu 10.10 as the host OS, for those cases where I have a Windows-only program.I understand that using a VM will lose some performance, but are there other limitations to what the OS in a virtual machine can do compared to "running on bare metal"?
For example:
Can a VM play games, like Dragon Age Origins or Civilization V? (Possibly with poorer framerates and/or lower resolution, but does it play at all?) Can a VM rip DVD/Blue-ray using AnyDVD or similar Windows program? Can a VM handle new hardware that requires dedicated drivers, but the drivers are only available for the OS running inside the VM? (Ex. graphics card, digital camera, card reader for smart card authentication.) Is it possible to say anything about "general limitations" of VMs, or is this wholly dependent on the specific VM?
I noticed that firefox sometimes uses a lot of memory. Can something like setrlimit be used to control it? I tried to use it on the command line, but it didn't work.
View 1 Replies View RelatedI need to share some space on my hard disk with my wife, over our home network. I'm dualbooting Ubuntu and Windows.
My Ubuntu partition is limited to 30GB, and the Windows partition gets all the remaining disk space. Does /host suffer size limitations while being accessed through Ubuntu, or it's size is the same as the Windows partition?
EDIT: For the record, she's using Windows XP on her machine, only... no dual boot. Couldn't get her off Windows yet, but i'm still trying