Sponsored Content
Operating Systems Linux How does the Operating System handle memory? Post 302894334 by Lost in Cyberia on Monday 24th of March 2014 11:52:19 PM
Old 03-25-2014
How does the Operating System handle memory?

Hey everyone. Ok, so I know that from inside of any particular program, it see's through virtualized memory, a full range of available memory. It is given the ability then to place variables, data, user input etc, on the Stack, Heap, BSS, or Code segment of it's range. My question is what does the OS then do with this clump of requested memory? Does the OS itself have it's own form of data segementation like the stack and heap? What if the OS wants to run a service or something, where does it store it's variables, and user input?
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Unix Operating System

I need the Unix operating system on disc as im new to unix. Im studying unix and x windows next year at Sheffield University and would like to get a head start. Any suggestions would be appreciated (2 Replies)
Discussion started by: jeffersno1
2 Replies

2. Programming

How to handle memory error?

Hi, I need to know what is the right way of handling out of memory conditions. If a program is not able to dynamically allocate memory (new fails), is it right to wait for some amount of time (say 5 sec) and then try again to allocate memory? Or should we kill the process and again restart it?... (1 Reply)
Discussion started by: diganta
1 Replies

3. UNIX for Dummies Questions & Answers

Operating System

Which is much more powerful as an operating system: 1. Windows 2000 2. Windows 98 3. Windows XP 4. Windows ME 5. Unix 6. Linux and why is it much more powerful than the other operating systems that i have mentioned. thanks for your info... (1 Reply)
Discussion started by: alecks1975
1 Replies

4. Homework & Coursework Questions

Operating system LINUX

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: Write a C program that accepts 3 parameters. Each parameter indicates the quantity of product to be produced.... (1 Reply)
Discussion started by: paradise
1 Replies

5. Homework & Coursework Questions

Operating system LINUX

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: Write a C program that accepts 3 parameters. Each parameter indicates the quantity of product to be produced.... (0 Replies)
Discussion started by: paradise
0 Replies

6. UNIX for Advanced & Expert Users

Best Operating System

Hello All, I want to install Linux on my machine, so please tell me one thing which is the best to install- 1.)Red Hat 2.)Cent OS 3.)Red Hat 4.)Ubuntu 5.)Fedora except that if there is any please tell me. (1 Reply)
Discussion started by: parthmittal2007
1 Replies

7. UNIX for Advanced & Expert Users

What's my Operating System

Can we know the operating given the IP address or DNS of the host. All I have is file://myserver/myapp (4 Replies)
Discussion started by: mohtashims
4 Replies

8. Android

Android (operating system)

From Wikipedia (FYI): (0 Replies)
Discussion started by: Neo
0 Replies

9. UNIX and Linux Applications

Pick Operating System

Anyone know anything about "Advanced Plus Operating Environment". Preferably release 10 Revision 522Gcd probably dated 2003. (4 Replies)
Discussion started by: jgt
4 Replies
MUNMAP(2)						      BSD System Calls Manual							 MUNMAP(2)

NAME
munmap -- remove a mapping SYNOPSIS
#include <sys/mman.h> int munmap(void *addr, size_t len); DESCRIPTION
The munmap() system call deletes the mappings for the specified address range, causing further references to addresses within the range to generate invalid memory references. DIRTY PAGE HANDLING
How munmap() handles a dirty page, depends on what type of memory is being unmapped: [Anonymous] If the memory is anonymous memory and if the last reference is going away, then the contents are discarded by definition of anonymous memory. [System V Shared] If the memory mapping was created using System V shared memory, then the contents persist until the System V memory region is destroyed or the system is rebooted. [File mapping] If the mapping maps data from a file (MAP_SHARED), then the memory will eventually be written back to disk if it's dirty. This will happen automatically at some point in the future (implementation dependent). Note: to force the memory to be written back to the disk, use msync(2). If there are still other references to the memory when the munmap is done, then nothing is done to the memory itself and it may be swapped out if need be. The memory will continue to persist until the last reference goes away (except for System V shared memory in which case, see above). RETURN VALUES
Upon successful completion, munmap returns zero. Otherwise, a value of -1 is returned and errno is set to indicate the error. ERRORS
Munmap() will fail if: [EINVAL] The addr parameter was not page aligned (i.e., a multiple of the page size). [EINVAL] The len parameter was negative or zero. [EINVAL] Some part of the region being unmapped is not part of the currently valid address space. LEGACY SYNOPSIS
#include <sys/types.h> #include <sys/mman.h> The include file <sys/types.h> is necessary. int munmap(caddr_t addr, size_t len); The type of addr has changed. SEE ALSO
getpagesize(3), msync(2), munmap(2), mprotect(2), madvise(2), mincore(2), compat(5) HISTORY
The munmap() function first appeared in 4.4BSD. BSD
October 16, 2008 BSD
All times are GMT -4. The time now is 01:00 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy