Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I read many threads related to "how linux handle system memory" but I cannot really understand how Linux use memory. I'm working with RH 7.3 with 500Mb of RAM and 2 CPUs PIII. I know that memory cache isn't really used by O.S. but why Linux still use memory during system swap?
Here an example of what happen to my system:
From the above command it's possible to see that memory really used is 177M and free 323M but swap used is 211 why? Why Linux use 318M to cache and start to swap?
When I first started using linux, I also used to worry about how memory was managed, and how much the hard disk was fragmented. These had been problems with windows (and previously DOS). I soon learnt not to worry: linux handles these things completely differently, and a whole lot better.
The main problems with memory and disk management were sorted out long ago. If you ask linux how much memory is free (mem), it will probably report "very little", and you might start to worry, but any "free" memory is usually allocated to buffers to speed the whole system up. But if the system really needs memory, it will flush the buffers and make it available without any interaction with you. It generally does this in a surprisingly efficient way (unlike that other operating system). Those kernel developers are a clever bunch!
I have two computers, both running mandrake 9.1 One has 64MB memory, the other 1GB. Linux runs fine on both, although I can hear it swapping memory on the smaller computer (the swap partition is on a different and very noisy drive), and of course it it slower, but it does run just fine without falling over.
So: stop worrying, let the kernel do its thing, I'm beginnning to believe it really does know what it is doing.
thanks to your reply.
Unfortunately the problem is that when the system start to use swap memory became very slow as you can know. So I'm looking for to know if the amount of memory it's enough to run a DB server, a web server, several web application, a cluster manager and other processes. I'm sure that my application haven't memory leak problem.
For my purpose it isn't enough to know that everything run properly; my web application should answer in "real time".
Ok,
So you are running
- A DB server
- A web server
- "several" web applications
- a cluster manager
AND "other processes".
This is quite a lot for 500M, especially if you are also running X, KDE and the rest.
You could either just add more memory, and see if that improves performance, or try starting your applications one-by-one, and working out which one is the real memory hog. Then concentrate on optimising that one.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.