Free Essay

Memory Management Comparison

In: Computers and Technology

Submitted By chrisl71875
Words 677
Pages 3
Memory Management Comparison
Christopher Liebenrood
POS/355
March 24, 2014
Chris Miserendino

Memory Management Comparison
While researching the differences between the memory management systems of Windows and Linux operating systems there was not many differences except a small few.
To start the memory management system is one of the most vital parts of the system. It manages and organizes the structure of (RAM) Random Access Memory as well as the hard disk. The important task it performs includes allocation and deallocation of the memory. This includes the logistics of the operating system and the use or start of virtual memory by using the hard disk as extra RAM. It is important to utilize or optimize the full potential of the systems memory considering it greatly affects the performance and speed of the operating system.
So let's start with the Windows Operating System. Windows has two kinds of memory virtual and physical. The memory of this particular operating system is managed with pages and processes demand it as it becomes necessary. Memory pages are 4KB in size for both kinds of memory (Sneath, 2014). Depending on the architecture of the system you may allocate large pages for efficiency (Sneath, 2014). Windows organizes its memory in a tree structure. Every branch of the tree is called a node and they are virtual address descriptors (VAD). The VAD marks a range of address and they have the same security parameters and commit state information. The VAD designates the node as committed, free, or reserved. The Window's operating system calls pages into memory through a process called clustered demand paging. This is a process where when the pages are called for Windows brings a cluster of pages into memory that is between 1-8 pages. This process depends on the current state of the system.
Linux's Operating System, on the other hand, uses a memory structure similar to the UNIX operating system. Linux uses a linked list to maintain its virtual memory structure called structs. These structures are the continuous memory areas and they too have the same security parameter. Linux divided the lists into a specific set of categories which are an active list, inactive-dirty list, inactive-clean list, and a free list. An advantage that Linux has over other operating systems is the amount of control and reconfigurability that each user has over the computing environment. With this in mind it is no surprise that Linux was designed for a multiuser environment. All the users and administrators have their own home directory, which holds the data specific to the individual user including the user's email (Rupley, Kaven, & Steinhart, 2005).

One thing Linux has in common with Windows is the function of the operating systems kernels. "Similar to the Microsoft kernel in the Windows operating systems the Linux kernel manages all the low-level functions of all the programs that run on the system, such as process management, interrupt handling, scheduling, I/O control, and memory management" (Rupley, Kaven, & Steinhart, 2005).
The operating systems have a many things in common and just a few differences technically speaking. Windows was developed in a commercial setting where Linux was developed in a Hacker setting. Windows was developed with a strong monetary motivation; this has taken the operating system through more effort and thought in its design and development. Linux, on the other hand, its creators went with simplicity against performance. This design has made Linux simple and elegant and Windows is more sophisticated and complex (Khetan, 2002).

References

Khetan, G. (2002). Comparison of memory management systems of bsd, windows, and linux. Unpublished raw data, Department of Computer Science, University of Southern California,, Los Angeles, Retrieved from http://www.weblearn.hs-bremen.de/risse/RST/docs/Memory/comparison.pdf
Rupley, S., Kaven, O., & Steinhart, M. J. (2005). LINUX BASICS. PC Magazine, 24(16), 104-101.
Sneath, T. (2014). PDC10: Mysteries of Windows Memory Management Revealed: Part One. Retrieved from http://blogs.msdn.com/b/tims/archive/2010/10/28/pdc10-mysteries-of-windows-memory-management-revealed-part-one.aspx

Similar Documents

Free Essay

Lab 3 : Exploring Buses

...Task 1 1. RS232 – 2 USB – 6 FireWire – 1 Infrared – 0 2. infrared infrared RS232 RS232 USB USB FireWire FireWire Task 2 MS (memory stick) MS (memory stick) SD (secure digital) SD (secure digital) MD (micro drive) MD (micro drive) CF (compact flash) CF (compact flash) Task 1: 1. https://www.google.com/search?q=MS+MD+CF+SD+memory+slots&client=firefox-a&hs=avn&rls=org.mozilla:en-US:official&channel=np&source=lnms&tbm=isch&sa=X&ei=JgUqVLPfLtf_yQT5lYBA&ved=0CAgQ_AUoAQ&biw=1080&bih=483#rls=org.mozilla:en-US:official&channel=np&tbm=isch&q=RS232+USB+FireWire+connector&imgdii=_ 2. https://www.google.com/search?q=MS+MD+CF+SD+memory+slots&client=firefox-a&hs=avn&rls=org.mozilla:en-US:official&channel=np&source=lnms&tbm=isch&sa=X&ei=JgUqVLPfLtf_yQT5lYBA&ved=0CAgQ_AUoAQ&biw=1080&bih=483#rls=org.mozilla:en-US:official&channel=np&tbm=isch&q=infrared+connector&imgdii=_ Task 2:...

Words: 294 - Pages: 2

Free Essay

Lab Assignment 3

... 1394a Port P/S 2 Keyboard USB Ports Serial Port VGA Port Speakers Line In Microphone Port 2. Locate and print a picture of a: a. Secure Digital (SD) card or card reader b. Compact Flash (CF) card or card reader c. Micro Drive or reader d. Memory Stick or reader 3. Be sure to label each picture, and a flash drive is not the same as any of these devices. A. Secure Digital (SD) card B. Compact Flash (CF) card C. Micro Drive D. Memory Stick...

Words: 286 - Pages: 2

Free Essay

Memory Management

...Operating 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...

Words: 1317 - Pages: 6

Free Essay

Distributed Garbage Collection

...study and comparison of Mark-Sweep and Reference Counting Tanmay Mogra Y7471 Shashwat Mishra Y7416 Table of Contents History and Motivation 1 ------------------------------------------------ Work Completed Mark and Sweep ------------------------------------------------2 Basic Algorithm ------------------------------------------------2 Strengths and Weaknesses ------------------------------------------------2 Varations of Mark and Sweep -------------------------------------------------2 Reference Counting Basic Algorithm Strengths and Weaknesses 3 3 Mark and Sweep vs. Reference Counting Design/Implementation A Simulation of Reference Counting using JAVA's ----------------------------------------------Remote Method Invocation API Conclusion References -----------------------------------------------------------------------------------------------6 7 5 -----------------------------------------------4 Variations of Ref. Counting --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------3 3 History and Motivation The problem statement requires one to study and compare the efficiency of two garbage collection algorithms, Mark and Sweep and Reference Counting, in the context of distributed object systems. It also involves the implementation of one of the two algorithms. Modern systems come with limited memory. Part of this memory is known as...

Words: 3051 - Pages: 13

Premium Essay

Memory Management

...COURSE TITLE: OPERATING SYSTEM 1 COURSE CODE: CMP 307 TOPIC: MEMORY MANAGEMENT DATE SUBMITTED: 15 – 02 – 2016 LECTURER IN CHARGE: DR ADESHINA MEMORY MANAGEMENT Memory management is the functionality of an operating system which handles or manages primary memory. Memory management keeps track of each and every memory location either it is allocated to some process or it is free. It checks how much memory is to be allocated to processes. It decides which process will get memory at what time. It tracks whenever some memory gets freed or unallocated and correspondingly it updates the status. Memory management provides protection by using two registers, a base register and a limit register. The base register holds the smallest legal physical memory address and the limit register specifies the size of the range. For example, if the base register holds 300000 and the limit register is 1209000, then the program can legally access all addresses from 300000 through 411999. Instructions and data to memory addresses can be done in following ways Compile time -- When it is known at compile time where the process will reside, compile time binding is used to generate the absolute code. Load time -- When it is not known at compile time where the process will reside in memory, then the compiler generates re-locatable code. Execution time -- If the process can be moved during its execution from one memory segment to another, then binding must be delayed to be done at run...

Words: 2862 - Pages: 12

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

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

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

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

Free Essay

Memory Management Requirements

...Memory Management Requirements POS/355 Introduction to Operating Systems March 3, 2014 Paul Rouk Introduction The main memory of a computer is divided into two categories; the operating system and programs that are currently being executed. Memory management itself is the task of subdivision. There are also four basic requirements to memory management which include; relocation, protection, sharing, logical organization and physical organization. Relocation Main memory is generally shared among a number of various processes. Since programmers cannot know in advance what other programs will be using the main memory when their program is executed thus creates the need for having the ability to swap processes in and out of the main memory. During swapping it is possible that the memory may be placed within different memory regions. Protection Each process should be protected against unwanted interference by other processes. This means programs in other processes should not be able to reference memory locations in a process for reading or writing purposes without permission. Since the operating system is unable to anticipate all of the memory references that a program will make it is important; the hardware rather than the software must satisfy the memory protection requirements. Sharing When it comes to sharing the protection mechanism must have the flexibility to allow several processes to access the same portion of the main memory. The memory management system...

Words: 400 - Pages: 2

Free Essay

Memory Management Requirements

...Memory Management Requirements Main memory is an important part in a computer system because the operating system and many user applications must input into the main memory before the execution stage begins. The effectiveness of memory management affects the efficiency of the computer system. Efficient amount of memory must be obtainable to reduce the quantity of processor idle time while the computer’s devices are arranging to react. Effect memory management consists of a series of important requirements, which are relocation, protection, sharing, logical and physical organization. Relocation Once a source code is translated into an object code, there is no indication were loading of the code will occur when a program asks for it to execute. The code may even reside in a different portion of the memory every time the run is executed (Stallings, 2012). Program occasionally will switch in and out of memory and reside in different physical locations at different times. Physical addresses to the instructions and data values in programs are impossible to assign by the translator. Precise physical addresses must be located once the program code and data are loaded by the processor and operating system (Stallings, 2012). Memory management decides where instructions and data are located and relocation is a method of changing the logical address to physical address (AW-BC, 2013). Protection Once two programs occupy memory simultaneously, the programs can interfere with each other...

Words: 549 - Pages: 3

Free Essay

Memory Management

...Memory management requirements can be broken up into five different sections: Relocation, Protection, Sharing, Local organization, and Physical organization. Many online resources confirm these exact requirements and seem to have the same information published so it is difficult to find something unique. It will be necessary to use information from the referenced textbook to explain memory management requirements. In a multiprogramming system, relocation is the act of moving a process into different areas of memory from which it began. To maximize efficiency, processes move into and out of main memory. Relocation therefore is essential for moving the process into available memory while keeping the memory reference information up to date. Protection of memory is best understood as preventing unwanted access to processes resident in memory and allowing authorized access only to the level allowed when permission is granted. It is important to understand that the physical processor and not the operating system is responsible for protecting memory since the operating system cannot always be scanning for memory reference violations (Stallings, 2012). Sharing capabilities are essential to reduce the amount of wasted or duplicated data in memory. Stallings stated, “The memory management system must therefore allow controlled access to shared areas of memory without compromising essential protection” (p. 309). In addition, shared memory is one of the fastest methods used for interprocess...

Words: 545 - Pages: 3