Free Essay

Memory Management Paper

In:

Submitted By cory68352
Words 641
Pages 3
Memory Management
Memory management is an important core part to any operating system. The basic function is to manage the RAM and hard disks on a computer. The tasks include allocating the memory and processes taking care of logistics and implementation of the virtual memory. It does this by utilizing the hard disks memory as more RAM. Optimization of the memory affects the overall performance and speed of the computer system.

Windows uses an executive component known as Virtual Memory Manager to manage memory. Windows moves pages from disk to main memory known as prefetching and pagefiles the files that do not fit in the main memory. Windows Xp supports 16 pagefiles on its 32 bit virtual address space along with 4 GB of virtual address space. There is a 64 bit edition that has 64 bit address space. Windows user space is different than the system space, processes can only access user space whereas; the virtual memory manager stores page tables and other data in the system space. Windows dedicates 2 GB for the user space and 2 GB for system space with 4 KB pages.
Windows on a positive note uses NTFS, but it is old and yet stable. The downside to this is that it is an outdated file system with an inability to organize files and it requires the user to defragment the OS to fix. Eventually NTFS moves files into random places on the hard drive through defragmentation which will begin to slow down the computer.

Linux memory manager supports 32- 64 bit addresses along with NUMA (Nonuniform memory access architectures. This allows Linux to run on from desktop workstations to servers and supercomputers. Linux often uses single page paging exclusively, on 32 bit systems kernel addresses 4 GB and 64 bit support 2 petebytes of data. Linux has 3 levels of page tables which are page global directory, page middle directory and page tables. Using paging tablets allows Linux the ability to reduce slow down. The virtual address space is organized into virtual memory by groups with the same segments or permissions. The kernel’s address space is directly mapped into the main memory this way it can access any information to any given process. Linux has 3 memory zones; DMA memory, normal memory and high memory. DMA is the first 16mb of kernels anything over 16mb but less then 896mb is stored in normal memory and anything over 896mb is permanently mapped to high memory. Linux is great when it comes to organization because it is able to organize itself which in turn allows for speed because it does not have to search the hard drive.
According to "Memory Management In Mac Os" (2002),” When the Macintosh Operating System starts up, it divides the available RAM into two broad sections. It reserves for itself a zone or partition of memory known as the system partition. The system partition always begins at the lowest addressable byte of memory(memory address 0) and extends upward. All memory outside the system partition is available for allocation to applications or other software components. In system software version 7.0 and later (or when MultiFinder is running in system software versions 5.0 and 6.0), the user can have multiple applications open at once. When an application is launched, the Operating System assigns it a section of memory known as its application partition.”

References
Memory Management in Mac OS. (2002). Retrieved from http://www.mindfiresolutions.com/mindfire/Mac_Memory_Manager.pdf
Noble, S. (2014). Memory Management. Retrieved from http://tips.dataexpedition.com/memory.html
Memory Management. (2014). Retrieved from http://msdn.microsoft.com/en-us/library/windows/desktop/aa366779
Mac OS memory management. (2014). Retrieved from http://en.wikipedia.org/wiki/Mac_OS_memory_management
Memory Manager Reference (Legacy). (2007). Retrieved from https://developer.apple.com/legacy/library/documentation/Carbon/Reference/Memory_Manager/Reference/reference.html

Similar Documents

Premium Essay

Memory Management Paper

...Memory Management Paper Edward Mellon POS355 6/10/13 BHUPINDER SINGH There are several policies associated with memory management, and in order for it to function properly, there are several requirements that need to be met. First is relocation. When a source code program is translated into object code by a translator or interpreter or assembler, it does not know by itself where the code will be loaded when the program is run. It may actually occupy a different area of memory each time the program is run. A program can be swept in and out of memory; it may occupy different address locations at different times. This is because the translator cannot assign absolute physical addresses to instructions and data values in programs, but once the program is run, the CPU and OS must be able to reference those physical addresses. With relocation, the logical referenced addresses are converted to a physical address so that the code and values can be seen. Next is protection. Program access space includes process control information, program code, data segment and stack or heap space. The operating system must protect the address space of a process from that of another process. It must be able to block unauthorized access...

Words: 643 - Pages: 3

Premium Essay

Memory Management Paper

...Memory Management Paper JJ Barnes POS/355 Version 9 April 15, 2013 John Buono Memory Management Paper As any person utilizes a computer system, what appears to be a simple click-and-point user interface is actually a symphony of data management being controlled by both memory and process management. At their simplest form, the data manager is how the computer system stores and recalls date collected from the user and the process manager controls the processes and systematic applications with the data. This paper will further define both of these managers and discuss their functionality and purpose. Without these two important key pieces, the computing of today would be impossible. Before a process manager can be discussed, the memory manager should be explained. The computers today are multitaskers. They are constantly running multiple processes at any given time. Stallings (2102) stated “Effective memory management is vital in a multiprogramming system” (306). What does the memory manager do with the data that has been given to it? The best way to answer this question would be to simplify the data. Data, in the form that this paper is referring to, is all information used by a computer in order to store, reuse, or even compute. The memory manager must take the data and figure out a way to store it in a way that it will not be overwritten and in a secure spot where the data can be retrieved when needed. The memory manager uses various mechanisms that assist...

Words: 778 - Pages: 4

Free Essay

Memory Management Paper Pos/355

...Memory Management Paper POS/355 February 16, 2013 Bhupinder Singh Memory Management Paper Memory management is a key function of the operating system. Without proper memory management it can slow the running of the operating systems and can limit the number of tasks the system is able to do at the same time. The memory management is divided into two parts Multi-Programming and Uniprogramming system. One part would be the uniprogramming, it process things one at a time. Some users only do things one at a time more for personal computers, and then there is the multi- programming, which several programs can run at the same time. The operating system has the capability of causing an interruption after a specified time interval. The multiprogramming is a rudimentary form of parallel processing, so the operating system will allow each program for a given length of time. So what the memory management does is of the act of handling the computer’s operating systems memory space. In order for the operating system to run efficiently the memory management part has to share and store properly. It is a critical component to the operating system to run efficiently. There are requirements to the memory management. The mechanism and policies are in place to be required for the use of the operating system. These requirements are Protection, Sharing, Relocation, Physical Organization, and Logical Organization. Protection is one, it must be provided by...

Words: 511 - Pages: 3

Premium Essay

The Benefits and Uses of Virtual Memory

...The Benefits and Uses of Virtual Memory Marcia Amnay POS/355 Steven Kernan April 22nd, 2013 The Benefits and Uses of Virtual Memory This paper will discuss the benefits and uses of virtual memory. Programs require memory to start and run on computers. When several jobs are being processed at the same time, the operating system must keep track of how the computer’s memory and make sure there is enough. Computers come with a limited amount of random access memory which is known as RAM. RAM is the main memory on a computer. If a user is running multiple applications at the same time, the RAM on it will not be enough to execute the processes. This is when virtual memory comes in and balances the process. Virtual memory is a memory management technique. Virtual memory is secondary memory that can act as if it were part of the main memory. When the RAM is used up, virtual memory places data by using the hard disk or another disk of some kind for space. The hard disk is much slower then RAM so the more virtual memory used, the slower your computer will run. The computer will look for areas on the RAM that are not in use and copy it to the hard disk to free up space on the RAM. Virtual memory keeps ‘active’ process in the RAM and keeps the ‘inactive’ processes on the address space on the disk. When an ‘inactive’ process is needed, it will bring that process back to the RAM from the disk. This process is running in the background without the user being aware...

Words: 788 - Pages: 4

Free Essay

Memory Management

...Memory Management Paper Scott Wells University of Phoenix Memory Management Paper There are six memory management requirements that will discussed in this paper. Those requirements are relocation, protection, sharing, logical organization, and physical organization. Memory management is the act of managing the computer’s memory, this basically means the steps necessary to provide ways of allocating portions of memory to programs at their request and feeing it up for reuse when no longer needed (Stallings, 2012). This management system is critical to the computer system. In order for memory management to multi-task it must utilize and deal with the six requirements of memory management. The first one of these requirements utilized is the relocation of memory. Relocation of memory pertains to programs that are swapped from the memory during different stages of processing (Stallings, 2012). In the virtual memory programs must be able to switch and reside in different parts of memory at different times. Once memory has been swapped out it will not always be replaced back into the same part of the memory. Memory management should be able to relocate programs in memory to handle memory references so they always relocate to the right location of the memory. In order for this process of memory swapping to work right there must be some type of address translation. This leads to the next requirement of memory management which is protection. Protection refers to protecting...

Words: 663 - Pages: 3

Free Essay

Memory Management

...Memory Management Paper Gene Cotton POS/355 Terance Carlson 10/06/2014 The act of managing computer memory is known as memory management. This system is also known for allocating memory for certain programs as requested. Managing the memory properly is vital to any CPU system. If the there isn’t enough memory to run a program or application then the CPU may freeze or fail. There are two types of memory allocations systems that are commonly used Virtual Memory and Garbage Collection. Virtual Memory systems separate memory from physical addresses to distinguish between the amounts of RAM used efficiently through disk swapping. Basically the quality of the virtual manager can positively or negatively impact the overall CPU performance. The Garbage collection system is a distribution and or redistribution of the computer memory cores for a program or application. Usually this is maintained and managed at the programming level. The downside to Garbage collection is it may take up a large amount of total processing time and this also can affect the outcome of CPU performance. With memory management systems on multi-tasking operating systems the virtual memory programs must be able to be launched from different parts of the memory at any given time. So relocation is very important and is a requirement. The reason behind this is that when a program is closed or swapped back into memory it may not always be transitioned back to same place it came from. Most virtual memory...

Words: 400 - Pages: 2

Premium Essay

Assignment: Noncontiguous Memory Allocation In Memory Management System

...MEMORY MANAGEMENT UNIT Special Assignment(Term Paper) HIMANSHU RATHOD (13BEC176) Electronics & Communication Engineering Institute of Technology Nirma University 13BEC176@nirmauni.ac.in ABSTACT:- In memory management unit we have limited memory so we used virtual memory. Mapping is between pages and frames. Mapping is done by MMU. Processor after dividing the program into pages generates virtual address. Through this mapping we received virtual address of page and by mapping generates the physical address of the frame so we can read the program and execute it.so large program can be executed in small memory. Keywords: MMU;...

Words: 815 - Pages: 4

Free Essay

Os Concepts

...Memory Management in Mac OS Memory Management in Mac OS Mindfire Solutions www.mindfiresolutions.com March 6, 2002 Abstract: This paper discusses memory management by macintosh operating system. This paper is a summarized form of “Inside Macintosh: Memory” and is directed towards developers who are new to Mac development but had previous development experience on other operating system. After going through this article you will be familiar with memory architecture in Mac, ways to allocate and deallocate memory, using temporary memory, A5 world, heap management, heap zones, heap fragmentation and several other features provided by memory manager. MEMORY MANAGEMENT IN MAC OS.................................................................. 1 ORGANIZATION OF MEMORY IN MAC OS ......................................................... 3 The System Heap ..................................................................................................... 4 The System Global Variables................................................................................... 4 ORGANIZATION OF MEMORY IN AN APPLICATION PARTITION 1...................................... 4 The Application Stack 1........................................................................................... 6 The Application Heap 1........................................................................................... 6 The Application Global Variables and A5 World 1 .................................................

Words: 9576 - Pages: 39

Free Essay

Memory Management

...Systems Comparison Paper. Barbara Poe Pos 355 Introduction to Operating Systems 11-10-14 William Davis Unix®, Linux®, Mac OS®, Windows® Operating Systems Comparison Paper. Memory management is the act of managing computer memory. The essential requirement of memory management is to provide ways to dynamically allocate portions of memory to programs at their request, and free it for reuse when no longer needed. The memory management system is one of the important parts of the operating system. Its basic function is to manage the memory hierarchy of RAM and secondary memory devices. There is always a need of more memory than physical memory. Memory management allows this to be done through the concept of virtual memory. Virtual memory can be many times larger than the physical memory. The most important task of memory management includes allocation and dealloacation of memory to the processes running on the system. Other requirements of memory management are relocation, protection, sharing, logical organization, and physical organization Relocation Stallings states, when an active process is swapped out of main memory to disk it would be quite limiting to specify that when it is next swapped back in, it must be placed in the same main memory region as before. Instead, we may need to relocate the process to a different area of memory (Stallings, 2015). Protection The main purpose of memory protection is to prevent a process from accessing memory that has not been...

Words: 1317 - Pages: 6

Free Essay

Xen Memory Management Study

...Xen – Memory Management (Part II) Virtual Execution Environments – Group 009 Department of Computer Science and Engineering at IST Daniel Andrade Mudit Verma 2011/2012 Andr´ Amado e Abstract This paper presents an overview of Xen’s memory management system. Keywords: Xen, memory management, virtual machine, ballooning, migration 1 Introduction Xen is an x86 virtual machine monitor that allows several operating systems to run in a managed manner on commodity hardware, with a minor impact on performance [1]. It provides a virtual machine abstraction, similar to the underlying hardware, to which operating systems can be ported. In this paper we detail Xen’s memory management model focusing on the ubiquitous x86. We first make a small introduction to some memory management fundamentals, proceed to talk about Xen’s memory management and conclude with an explanation of how it deals with memory during live migration. ory and after the instruction is executed, results may be stored back in memory. Memory management is a central piece of an operating system. To understand Xen’s memory management model we must first be aware of how it is done in a regular operating system. Several approaches exist from a bare-machine approach to paging or segmentation [4]. Paging consists in dividing physical memory into fixed-sized blocks called frames and dividing logical memory into blocks of the same size called pages. When a process is near execution its pages are loaded into...

Words: 2176 - Pages: 9

Free Essay

Fast

...parts... http://www.ccleaner.com Run Disk Cleanup (Start>All Programs>Accessories>System Tools) check/tick all boxes, they're all safe to remove. Run Disk Defragmenter (Start>All Programs>Accessories>System Tools). Increase Virtual Memory... Open Computer Management, click Start, and then click Control Panel. Double-click Administrative Tools, and then double-click Computer Management. XP In the console tree, right-click Computer Management (Local), and then select Properties. On the Advanced tab, click Performance Options, and under Virtual memory, uncheck the check box of Automatically manage paging file size for all drives, click Change. In the Drive list, click the drive that contains the paging file you want to change (usually C:). Under Paging file size for selected drive, type a new paging file size (4095 for both) in the Initial Size and Maximum Size box, and then click Set. Click Apply and OK. Vista/Win 7 1.Open Control Panel>System and Maintenance>System. 2.In the left “Tasks”, click on 'Advanced System Settings'. 3.Click the “Advanced” tab. In “Performance” section, click on 'Settings' button. 4.Click on 'Advanced' tab. 5.In the “Virtual Memory” section, click on 'Change' button. 6.By default, “Automatically manage paging file size for all drives” setting is selected so that Windows Vista system can manage the paging file without user’s interruption. If you want change the paging file size,uncheck...

Words: 401 - Pages: 2

Free Essay

80386 Microprocessor

...80386 MICROPROCESSOR It is a 32-bit microprocessor. It has 32 bit data bus and 32 bit address bus, so it can address up to 232 = 4GB of RAM. Features -Multitasking -Memory management -Software protection -Segmentation and paging -Large memory system(64Tbytes in virtual mode) Operating modes -Real mode -Protected mode -Virtual mode Internal architecture: There are 6 parallel functional units: -The bus unit: The bus interface unit provides a 32-bit data bus, a 32-bit address bus and control signals. 8-bit (byte), 16-bit (word) and 32-bit (double word) data transfers are supported. It has separate pins for its address and data bus lines. This processing unit contains the latches and drivers for the address bus, transceivers for the data bus, and control logic for signaling whether a memory input/output, or interrupt acknowledgement bus cycle is to be performed. -The prefetch unit: The prefetch unit performs a mechanism known as an instruction stream queue. This queue permits a prefetch up to 16 bytes (8 memory words) of instruction code which is used by the instruction decoder. Whenever bytes are loaded into the queue they are automatically shifted up through the FIFO to the empty location near the output. -The decode unit: It reads the machine-code instructions from the output side of the prefetch queue and decodes them into microcode instruction format...

Words: 4779 - Pages: 20

Premium Essay

Computer Science

...you prefer. 1. With a fresh system (reboot to make sure), dump the first 4 PTEs and analyze them (status bits, what VA->PA translation they do). 2. Find and dump the first 4 PTEs for the Tutor program and analyze them. The Tutor program starts at VA 50000. Find some PTEs for pages that have never been touched since system reset, above VA 50000, i.e. after Tutor. We can play with pages 0-20 or so without much worry about necessitating a reset, because these are left over from being bootstrap scratch memory. All the sensitive data is above 0x50000, including the interrupt vector table. 3. Set page 3 as valid but not yet referenced. Then do a read on it, check the PTE, then a write, check the PTE and interpret your findings. 4. Now set page 3 as invalid (not present) and try reads and writes. You see that nothing special has happened. That's because the PTE in the TLB is still showing the page as present, and the MMU checks the TLB before looking at memory PTs. 5. Writing a value in the CR3 registers flushes the TLB, i.e., makes it drop all its cache entries. This can be done using the Tutor register-set command. Use the same old CR3 value, of course, or expect to reboot, for example: "Tutor> rs cr3 51000". Do this and retry 4. You should see a page fault, exception 14. Use "rd all" to see CR2, the "linear address", which is the address that causes the page fault. Note on linear addresses (LAs): We have...

Words: 641 - Pages: 3

Free Essay

Memory Management

...Memory Management Requirements Memory management requirement is important to operating systems. The memory management function is to manage the computer’s primary memory storage. Since all new computers and laptops run multiple programs at any one time, it is imperative to manage what programs can run in the main memory or RAM and which programs can be swapped to secondary memory storage. Using memory management techniques and virtual memory systems process can efficiently manage an operating system. The quality of these techniques or systems can have an extensive effect on the overall system performance of the operating system. Memory management methods such as single allocation, partitioned allocation, paged memory management, and segmented memory management are processes that are used to determine how memory is distributed through different processes. This process decides which program gets a space of the main memory, when the program can get the space, and how much memory space is available for each program. Single contiguous allocation is the easiest memory management method. The entire computer’s memory, except for the operating systems reserved memory, is available to a single application. Any operating system that uses single contiguous allocation can still multi-task by swapping the contents of memory to switch among applications. A partitioned allocation splits the main memory into multiple main memory partitions. In addition, each partition may contain information...

Words: 619 - Pages: 3

Free Essay

Memory Managment

...Markus Robinson Memory Management James Welti, Jr. POS/355 July 10, 2015 Memory Management And Its Requirements Memory management is the act of managing computer memory at the system level. The essential requirement of memory management is to provide ways to dynamically allocate portions of memory to programs at their request, and free it for reuse when no longer needed. Memory needs to be allocated to ensure a reasonable supply of ready processes to consume available processor time. Memory management also involves subdividing memory to accommodate multiple processes. This process, involving controlling and coordinating computer memory, assigns portions called blocks to various running programs. By doing this the overall system performance is optimized to its maximum performance. Memory management resides in hardware, the operating system, as well as in programs and applications. Within hardware, memory management involves components that physically store data. The components that are involved in memory management include random access memory (RAM) chips, memory caches, and flash-based solid-state drives (SSDs). As users demand change, memory management involves the allocation and ongoing reallocation of specific memory blocks to individual programs in the operating system. By combining two related tasks, known as allocation and recycling, application memory management ensures the availability of adequate memory for the objects and data structures of each running...

Words: 814 - Pages: 4