Sponsored Content
Top Forums UNIX for Advanced & Expert Users Linux Virtual Memory Question Post 302560798 by achenle on Saturday 1st of October 2011 08:58:33 AM
Old 10-01-2011
Quote:
Originally Posted by Corona688
I beg to differ:

Code:
$ cat megaalloc.c
#include <stdio.h>
#include <unistd.h>

int main(void)
{
    sbrk((1024L*1024L*1024L));
    while(1);
}
$ gcc megaalloc.c
$ ./a.out

Code:
top - 17:46:55 up  6:12,  4 users,  load average: 0.24, 0.17, 0.11
Tasks: 127 total,   2 running, 124 sleeping,   0 stopped,   1 zombie
Cpu(s): 45.5%us,  3.5%sy,  0.0%ni, 48.2%id,  0.3%wa,  2.5%hi,  0.0%si,  0.0%st
Mem:   3797432k total,  3236628k used,   560804k free,   161272k buffers
Swap:  2104476k total,        0k used,  2104476k free,  1373932k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
10599 monttyle  20   0 1027m  296  228 R   73  0.0   0:02.19 a.out              
 3825 root      20   0  748m  82m  10m S    8  2.2  25:52.57 X                  
10017 monttyle  20   0  149m 8032 5936 S    8  0.2   3:49.15 mplayer            
 9712 monttyle  20   0  220m  15m  10m S    5  0.4   4:38.51 gnome-terminal     
 5988 monttyle  20   0 1591m 1.3g  26m S    3 37.0  52:49.71 firefox-bin        
 9710 monttyle  20   0 71692  13m 4900 S    2  0.4   3:03.59 wish               
 5256 monttyle  20   0  216m  14m  10m S    1  0.4   2:54.01 metacity           
    8 root      20   0     0    0    0 S    0  0.0   0:10.05 events/1           
  453 root      20   0     0    0    0 S    0  0.0   1:20.78 kondemand/1        
 5278 monttyle  20   0  346m  23m  15m S    0  0.6   4:30.59 gnome-panel        
    1 root      20   0  3892  620  516 S    0  0.0   0:01.42 init               
    2 root      20   0     0    0    0 S    0  0.0   0:00.00 kthreadd           
    3 root      RT   0     0    0    0 S    0  0.0   0:00.06 migration/0        
    4 root      20   0     0    0    0 S    0  0.0   0:00.42 ksoftirqd/0        
    5 root      RT   0     0    0    0 S    0  0.0   0:00.01 migration/1        
    6 root      20   0     0    0    0 S    0  0.0   0:02.82 ksoftirqd/1        
    7 root      20   0     0    0    0 S    0  0.0   0:07.20 events/0

My process certainly does not have 1027M resident. It doesn't have it on disk, either -- having not used any of that gig of ram, none of it is actually paged in, resident, or even backed in any form. Other systems might demand sufficient swap to back it but not Linux, which by default has virtual swap.
Linux doesn't have "virtual swap", but by default Linux does overcommit swap space - IMO a REALLY, REALLY BAD IDEA.

Because eventually it's going to get used. Which means the OOM killer is going to wake up and start randomly killing processes, aiming for heavy memory users.

You know - the processes like web servers and databases that are the actual reason you're using the computer in the first place.

"Works most of the time, then goes BOOM!" is an awfully low reliability standard.

Quote:
On a 64-bit system you can also inflate that value by plunking in your entire hard disk as a memory segment via mmap. 300G virtual. I suppose that would count as on disk though.
That wouldn't usually need swap space because the backing store for the virtual memory would be your hard disk you mmap()'d, but you could probably map it in such a way that if you were to write to it, the changed pages would require swap backing. Maybe by mmap()'ing a read-only file descriptor read/write?
 

10 More Discussions You Might Find Interesting

1. News, Links, Events and Announcements

Linux Virtual Memory Book

. (0 Replies)
Discussion started by: Driver
0 Replies

2. Shell Programming and Scripting

get physical and virtual memory

What command can i use to get the physical and virtual memory of a database? (7 Replies)
Discussion started by: tads98
7 Replies

3. UNIX for Dummies Questions & Answers

virtual memory

Hi, can anyone explain me what virtual memory is ( for which we use vmstat commande line ) comparing with RAM ? many thanks before. (2 Replies)
Discussion started by: big123456
2 Replies

4. Programming

about virtual memory and memory leak

Hi, First of all I appreciate this group very much for its informative discussions and posts. Here is my question. I have one process whose virtual memory size increases linearly from 6MB to 12MB in 20 minutes. Does that mean my process has memory leaks? In what cases does the... (4 Replies)
Discussion started by: shriashishpatil
4 Replies

5. HP-UX

Virtual Memory

Hi! I work with HP-UX and I have to monitorize the use of virtual memory for different processes. (java processes for Tibco Adapter) And if these processes exceed a limit send a message to the syslog. I donīt know how to monitorize this... Should I do a script? or use an aplication, for example... (3 Replies)
Discussion started by: Kurohana
3 Replies

6. AIX

ulimits max locked memory virtual memory

Hi, Would any one be so kind to explain me : are ulimits defined for each user seperately ? When ? Specialy what is the impact of : max locked memory and virtual memory on performance of applications for a user. Many thanks. PS : this is what I can see in MAN : ulimit ] ... (5 Replies)
Discussion started by: big123456
5 Replies

7. UNIX for Dummies Questions & Answers

cpu, memory and virtual memory usage

Hi All, Does anyone know what the best commands in the UNIX command line are for obtaining this info: current CPU usage memory usage virtual memory usage preferably with date and time parameters too? thanks ocelot (4 Replies)
Discussion started by: ocelot
4 Replies

8. UNIX for Dummies Questions & Answers

Virtual Memory

Hi, Can anyone please help me workout how much virtual memory I have running on a T2000 running Solaris 10. Thanks # df -h swap 3.5G 1.0M 3.5G 1% /etc/svc/volatile swap 3.5G 208K 3.5G 1% /tmp swap 3.5G 56K ... (2 Replies)
Discussion started by: jamba1
2 Replies

9. UNIX for Advanced & Expert Users

What is the function to get address of the virtual memory block in linux??

I want address of current virtual memory block? i am using fedora10:wall::wall: (1 Reply)
Discussion started by: powyama
1 Replies

10. UNIX for Beginners Questions & Answers

Virtual Memory in UNIX

So, I would ask you a piece of advice about which books or titles could give me comprehensive information about virtual memory in UNIX. Especially, I would found out that virtual address translation corresponds structures of kernel! Thanks! (2 Replies)
Discussion started by: Fadedfate
2 Replies
All times are GMT -4. The time now is 03:33 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy