Free Essay

Windows and Linux Memory Management

In:

Submitted By mikaaaaa
Words 1371
Pages 6
Linux Memory Management:
Its similarities and difference with Windows’ Memory Management specifically in
Page swapping algorithms

Abstract
Memory management in all the operating system is important because it is crucial for both programming and system administration. In order to make the system faster is that to use an algorithm that saves the time for managing processes and jobs. The article stated the brief discussion on how the Linux memory management works and thus it states that it works almost the same as what the Windows operating system with 32-bit and 64-bit is using. All i/o Linux goes through the page cache and area that caches to improve disk i/o performance same as with the one used in Windows’ cache and Virtual Memory. The paper discussed the difference and similarities of Windows’ memory management and Linux’s Memory Management. It concludes that Linux’s memory management is simpler and easier to maintain compared to Windows’ though, thus Window’s memory management favors the performance and Linux’s having its operating system open sourced, needs improvement through some researches and open sourced programmers.

Keywords: Linux, Unix, Page Swapping, Windows, Memory, Virtual Memory, Paging, Placement Policy, Least Recently Used (LRU), Not Recently Used (NRU)

Linux Memory Management:
Its similarities and difference with Windows’ Memory Management specifically in
Page swapping algorithms Operating systems is the heart of all computers may it be for personal use, schools and government use. It is the bridge from the end user to the hardware components of the system. It gives the end user the privilege to understand on how the computer works. Memory management is the most important part in the operating system, the faster the computer is the better. Understanding the memory management of the two operating systems namely Linux and Windows is important to be able to differentiate its purpose and thus give the end user knowledge on what is the better OS when it comes to memory.
Literature Review
In Charles D. Cranor and Gurudatta M. Parulkar (1999)’s article reviewing the virtual memory system, The Memory Management System is one of the important part of an operating system. Its function is to manage the memory hierarchy of RAM and hard disks. Its job include allocation and de-allocation of memory to processes of logistics, and the us of Virtual Memory by making use of hard disk as extra for RAM. The Memory system should be optimized, since the performance affects the performance and speed of the system. In C. Cranor. (1998)’ article about the implementation of the uvm virtual memory system, For the virtual memory system to work, mapping functions is required that performs address translation, that converts virtual address to physical address. Virtual address is an address that the applications use to refer to a memory location, and physical address is an actual memory location transferred to the local memory bus. According to Flynn and Mchoes (2011), placement policy is of importance only for optimizing certain behavior. Behavior of a paging system is dependent only on the fetch and placement policy. For the fetch policy a demand paging system is used in which the system brings a page to memory only when needed. For page replacement policy, LRU is used in most of the windows’ operating system.
Discussion
The Linux has been founded by Linux Torvalds. Windows and Linux memory management is similar in some aspects. Data structure and its features are similar. Some similarities of these systems are stated by E. G. Coffman and P. J. Denning (1998) – Hardware Abstraction Layer (HAL) which all of the OS have, that does the system-dependent work, and ables the rest of the kernel to be coded in platform independent. Copy-on-write: According to Dennig and Coffman when a page is to be shared, the system uses only one page with both processes sharing that same copy of the page. But, when one of the processes does a write into the page, a copy is made for that process, which it can then manipulated independently. Due to this characteristic it makes the system efficient. Background daemon: it is invoked periodically and performs tasks like page flushing, freeing unused memory. Shadow paging: A shadow object is created for an original object such that the shadow object has some of its pages modified from the original object, but shares the rest of the pages with the original object. Inter-Process Communication: The memory mapped files are allowed to be then shared between processes forming a method for inter-process communication. Memory mapped Files: A file can be mapped onto memory, can be used with memory read/write instructions.
Data structures used by Windows NT are in a tree form. Each node of the tree is called Virtual Address Descriptors (VAD). Each VAD denotes a range of address which has the same protection parameters and commit state information. It is balanced, which means that depth of the tree is short, which makes the search time shorter. The VAD marks each node as used, free, or reserved.
Linux has a virtual memory data structures as of UNIX. These are structures which represent continuous memory areas which have the same protection parameters. This list is searched whenever a page is to be found at a particular location. The structure records the range of address it is mapping into, protection mode, whether it is not page-able, and the direction it will be in. It records whether it is public or not. If the number of entries is greater than 32 then it is converted in to tree form from link list. Distribution of Process Address Space in Linux, usually 3GB is kept for the process and 1 GB given to the kernel, while in Windows; 2GB are kept for each. Page Replacement is important part in memory management. It is concerned with choosing which page swap out of the memory, whenever there is a need for more free memory. The Optimal Algorithm is the most ideal algorithm for page replacement it removes the page which will be required in the most distant future. It will decrease the number of page faults thus improve the system by minimizing swapping or read and write functions at the same time.
Up to Linux 2.2, the Linux Virtual Memory (VM) had focused on simplicity and low overhead. Hence it was rather quite primitive and had many problems, especially under heavy load. It was influenced by System V. However Riel has worked a lot on the Linux VM in the past couple of years, and improved it a lot for the Linux release. His discussion with Linux uses a demand paged system with no pre-paging. Until kernel version 2.2, Linux used NRU algorithm for page replacement, but due to the various shortcomings of the algorithm, they have changed it and implemented an approximate Least Recently Used in 2.4.The aging to effect LRU is brought about by increasing the age a counter associated with a page of to be referenced during a scan, and, decreased exponentially divided by 2 when found not to have been referenced according to Mathew Dillon and Rik Van Riel (2000)
Limitation
The limitation of this case study is to only compare the performance of the Linux OS with Windows OS regardless of the version but with only general information by its memory management. The topic discussed here is only concerned with the basic algorithm or concept used in improving each one’s page swapping thus resulting to the efficiency of the operating system.
Conclusion
Linux and Windows are both modern when it comes to memory management, both of the uses the LRU algorithm in swapping or similar to LRU concept which is modified when it comes to higher versions of windows. Linux’s memory management is simpler and easier to maintain compared to Windows’ though, thus Window’s memory management favors the performance and Linux’s having its operating system open sourced, needs improvement through some researches and open sourced programmers. The develop Open Source Operating systems, which are maintained by a lot of hackers and programmers around the world, it will be expected that in the future, these operating systems will become better than the Windows operating systems.

Similar Documents

Premium Essay

The Differences in Memory Management Between Windows® and Linux®.

...Paper 1 POS/355 Option 2: The Differences in Memory Management between Windows® and Linux®. Linux and Windows are both operating systems for the common home PC. Each of them offers positive benefits and negative detriments. Some people try to claim that one is better than the other. But as an active user of Linux for over half a decade, I can honestly say that both are superior in their respective strengths. I would never attempt to do any type of visual work like video editing or photo editing that requires anything in depth on a Linux machine. The native programs are just not as good as anything that Adobe offers in the Windows world. However if I am surfing the net checking out random sites that might be questionable in nature, I would not dare so unless I was on my Linux partition. In reference to memory managements differences between Windows and Linux; We have to first start with the base. Memory can be viewed in both a RAM basis and memory as in storage and a base for operating system. Windows has been locked into a dated filesystem for the basis of their operating system. This file system is called NTFS. NTFS positive is that it is old and stable. Its positives are know and it’s negatives are so well know that they come as no surprise to end users. Sadly this outdated file system technology requires the end user to periodically defragment the operating system to combat NTFS’s gross lack of the ability to organize files. Over time NTFS moves files...

Words: 474 - Pages: 2

Premium Essay

Differences Between Memory Management Between Windows and Linux Pos/355

...Differences Between memory management Between Windows and Linux Gerard T Doris POS/355 03-21-14 New Orleans Differences Between memory management Between Windows and Linux In this paper I will discuss the difference between Windows and Linux memory management. Many business and homes use windows and Linux operating systems to conduct everyday duties. Most consumers never heard of Linux. Linux operating systems is not known for the flashness that Windows have. In my opinion if you want a stable system that you are not looking to do photo, video editing or things in that nature I would use Linux. Both operating systems use Ram and memory storage to help execute the functions of the computer. Windows uses a file system called New Technology File System ( NTFS). NTFS is a stable file system that Windows uses. It replaced the old FAT32 file system. According to Microsoft 2014 The capability to recover from some disk-related errors automatically, which FAT32 can not. Improved support for larger hard disks. Better security because you can use permissions and encryption to restrict access to specific files to approved users. The only thing I have a problem with, is have to defragment the OS. The reason you have to defrag is because NTFS tends to put files in random places. Windows management system is called Pagefile. Pagefile take objects that are less frequently used and put them in a allocated location on the hard drive. This frees up RAM and allows the computer...

Words: 442 - Pages: 2

Premium Essay

Nt1410 Module 2 Exercise 1

...Memory Management Answer these review questions based operating systems: 1. List the memory management functions of operating systems. * Memory management is the process of coordinating computer memory and allocating blocks of memory for different running programs to achieve optimum performance. Memory management takes place within the hardware of a computer, the operating system, and in the programs and applications. Memory is one of the most essential components of any computer system. No matter which operating system is being used, whether it is Windows, Linux or Mac’s OS X, the same basic requirements of memory management exist. The main requirements of memory management are protection, sharing, relocation and organization. Memory protection is necessary because it stops unauthorized programs, which may contain harmful threats, from accessing the computer’s memory. Memory sharing is when multiple programs need to access the same portion of memory. Proper management of memory ensures that this happens without hindering the performance of the system. Relocation involves moving programs between virtual memory and physical memory 2. Compare two common operating systems—Windows 8 and Fedora 20—on the difference in the memory management features. * Full access vs. No access * Linux Fedora 20: Linux has the most significant access to the source code, allowing the users to alter the code that serves as the foundation of the Linux operating system. *...

Words: 1293 - Pages: 6

Premium Essay

Pos/ Final Paper Compare Windows Linux Unix and Mac

...UNIX®/Linux® versus Mac® versus Windows® POS/355 October 29, 2012 Carol S. Eichling UNIX®/Linux® versus Mac® versus Windows® There are several computer operating systems available on the market, and it is sometimes difficult to choose. Therefore, it is important to compare the system capabilities to make the decision easier. The three biggest players in the operating systems market are UNIX®/Linux®, Mac®, and Microsoft® Windows® with Windows® holding the largest market share (Boitor & Brătucu, 2011). These three operating systems are capable of multi-processing and have similar capabilities; however, and it is important to compare and contrast how they handle memory management, process management, file management, and security, which are critical system functions. Discussing memory management, which is a vital component in operating systems, is first. Memory Management Memory management refers to the way a system makes use of the computer’s RAM (Random Access Memory). Many of the operating systems in use on computer systems have positives and negatives in their use of memory attributes. “Memory management is usually divided into three areas: hardware, operating system, and application…although the distinctions are a little fuzzy. In most computer systems, all three are present to some extent, forming layers between the user's program and the actual memory hardware” (Ravenbrook Limited, 2001, p. 1). There are several types of memory, including main memory, file system...

Words: 2974 - Pages: 12

Free Essay

Memory Management

...Memory Management Amanda Dyer POS/355 August 28, 2014 August Smith Memory Management Windows and Linux are two popular operating systems used in today’s technology age. Windows is most commonly used as a desktop environment for beginners and has advanced into a well-developed operating system. Linux isn’t every users first choice as an operating system, but has become more and more popular over the past years. Linux is harder to manage than Windows, but comes with a great deal a configuration choices, as well as, flexibility. Both operating systems are similar in areas and offer countless benefits. However, with similarities come differences. One of the foremost differences between Windows and Linux is their memory management. What is memory management? According to Tutorialspoint (2014), memory management is the functionality of an operating system, which handles or manages primary memory. The memory structure affects the overall functionality and speed of the system. Therefore, it is one of the most vital parts of an operating system. Every memory location is tracked, whether free or allocated. The memory management system provides features such as address space, memory mapping, paging, shared virtual memory, fair physical memory allocation, and protection. Windows can access up to 4GB of physical memory on a 32bit x86 system. Paging on Windows allows for the use of a logical memory address vice the physical address. The logical address is translated...

Words: 605 - Pages: 3

Free Essay

Memory Management Comparison

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

Words: 677 - Pages: 3

Premium Essay

Os Comparison

...Comparison of Windows, Mac OS X and Linux Operating Systems Team A POS/355 March 6, 2015 Memory Management System Memory management is the process of allocating memory during your programs runtime. Memory Management in MAC OS is a multi-core and multi-processor execution that is supported and a programming API, which is called grand central dispatch. It is in the MAC OS. It provides a pool of available threads. There are ways to prevent memory related problems; Freeing data that is still in use, this can cause memory corruption that can result in your application crashing or worse corrupted user data. The MAC operating system can provide most concurrency as possible based on the number of cores available, and those threads depend on the capacity of the system. Windows memory management system is both physical and has virtual memory. It is mainly controlled by the virtual memory managers and pages. “Windows operating system operates on many platforms then it uses page sizes that can range between 4KB to 64KB. So this means that windows virtual memory can control how memory can allocate paging performance” (Stallings, 2013). Committed, Available, and Reserved are three types of regions of space or memory that the operating system can manage. Committed region is space it’s pages that have been stored either in physical or virtual memory. It also allows the process to access the virtual memory pages. Available region is where the address of the process is not being used...

Words: 2964 - Pages: 12

Premium Essay

Contrast and Comparison of Operating Systems

...the UNIX/Linux, Microsoft Windows, and MacOS systems. In particular we will contrast and compare the different operating systems in regards to memory management, processing, file management and security. Operating systems at the core is all about the kernel. The kernel in all of the operating systems is the main component that is responsible in the management of memory, processing, file management and security. Contrast and Comparison of Memory Management within Operating Systems Memory management in comparison and contrasts between the different operating systems is due to the way the kernel works in conjunction with the memory. Since each operating system has different kernel’s they each have similar and different ways that they manage memory. Contrasts and comparisons on Mac OS, Windows, and UNIX/Linux are described below. 1. UNIX: Though UNIX and Linux are extremely similar when it comes to how things work internally; there are slight differences that make UNIX distinct from its counterpart. One process that UNIX utilizes is known as swapping; this is done by moving chunks of the Virtual Memory (called pages), out of the main memory and moving others in. In order for this process to work at its best, those pages that are needed must be accessible in the Main Memory at the demand of the CPU. When a page is expected to be needed in the very near future it is termed a resident set. If the CPU attempts to access a page that is no longer available in the Main Memory, a page...

Words: 3967 - Pages: 16

Free Essay

Memory Management

...Windows and Linux- Memory Management Marlana Muzny POS/355 May 13, 2013 Joe Fischer Windows and Linux- Memory Management Memory management is the process that the operating system takes to manage the computers processes and memory. This means that the operating system has to figure out what sections of the memory are free and are being used at the current time allocating and reallocating as needed. Memory management is extremely important in how a computer operates. In this paper, we will compare the new Windows 8 to the Linux operating system and describe the differences in the memory management. Windows 8, it is the newest product in operating systems for Microsoft. With enhancements from the previous version, Windows 8 makes better use of the memory management than the previous version Windows 7. In Windows 7, Microsoft started making changes to the operating system when it came to memory management; however, fell short compared to what was already being done in Linux operating system. With the previous versions, most of the memory management occurred upon login. This slowed the processor down taking up all the resources at one time using the system memory. To address this issue and correct it in Windows 8, Microsoft implemented a start on demand model. What this means is that processes that are needed are delayed until the process is needed verses having all the processes start automatically when the computer is started. This makes more run...

Words: 876 - Pages: 4

Free Essay

Unix/Linux Versus Mac Versus Windows

...between the computer’s user and its hardware. There are many different types of Operating serves that are available to use. There are four main Operating systems that are used in today’s Technological world: UNIX, Linux, Mac, and Windows. Each one of these systems has its own unique aspects to offer users, while still sharing the same basics that an operating system needs. Memory Management UNIX/Linux In comparison to other operating systems, UNIX is quite different when it comes to managing its memory. It uses extremely sophisticated memory management algorithms to make the best use of memory resources. Though UNIX and Linux are extremely similar when it comes to how things work internally, there are slight differences that make UNIX distinct. One process that UNIX uses is Swapping; this is done by moving chunks of the Virtual Memory, known as pages, out of the main memory and moving others in. In order for this process to work at its best, those pages that are needed must be accessible in the Main Memory at the demand of the CPU. When a page is expected to be needed in the very near future it is called a resident set. This can lead to errors due to memory allocation issues. If the CPU attempts to access a page that is no longer available in the Main Memory, a page fault will occur, and the needed page will then have to be located, as the CPU...

Words: 4984 - Pages: 20

Free Essay

Synopsis

...paper is a study of memory management systems of two different operating systems. We begin with a brief introduction to memory management systems and then we compare the memory management systems of real life operating systems – Microsoft Windows and Linux. We will not be much interested in the performance characteristics of these systems in this paper; instead our focus will be on their design and architecture. Memory management system is important part of each operating system. The main function of this system is to manage the memory system of random access memory and the other storing devices which are available on the system. Main tasks that come under the memory management are allocation and deallocation of memory to the various processes running on the system. The memory management system should be optimized as its function affects the speed and the performance of the operating system. Memory management is the heart of operating systems; it is crucial for both programming and system administration. Learning objective Compare the memory management of windows with Linux. To know the similarities to know the differences in memory management and how memory management is an important part of an operating system. My term paper will further explore following topics: * Introduction * Memory management system * Large Address Space * Protection * Memory Mapping * Fair Physical Memory Allocation * Shared Virtual Memory * Paging ...

Words: 412 - Pages: 2

Premium Essay

Kohls Manager

...UNIX/Linux versus Mac versus Windows Rough Draft Annette Freshwater, POS355 November 4, 2013 Alicia Pearlman UNIX/Linux versus Mac versus Windows Final In today’s world of technology creation, development, and enhancement there are key factors to take into consideration. The choice of operating systems can determine the software and hardware utilized, the applications of the devices or programs, and determines the demographic, which will use the products. However the ever-changing field of technology has become more user-friendly, compatible, and more accepted in main stream than before. The main operating systems employed today are as follows: UNIX/Linux, Mac, and Windows. We will explore the various aspects of key components in these operating systems, memory, process, and file management along with the security of each system. The comparison of each system will determine the operating system best suited for the needs of our creations, projects, and improvements to the technology of the past, present, and future. MEMORY MANAGEMENT Memory management in multiprocessor systems is essential in executing several processes simultaneously. The multitasking of a system aids the user in accomplishing his or her task more efficiently than with a single processor system, which is important in the current climate of today’s multifaceted mix of professional and personal world. Why choose UNIX/Linux, Mac, or Windows to develop a device, product, or program? The...

Words: 2557 - Pages: 11

Premium Essay

Evolution of the Universe

...UNIX, Linux, Mac, and Windows OS Comparison Paper B. James Bryant UNIX, Linux, Mac, and Windows OS Comparison In 1956, General Motors produced the first OS for its IBM 704 series mainframe. Since then companies around the world, both big and small, have been tirelessly researched, testing, and releasing newer and faster operating systems for the world to use. Among these are systems developed by/for UNIX, Linux, Microsoft, and Apple. In fact, it’s safe to say that these four companies have a monopoly on all current technology used in both the military, corporate, and private sectors all around the world. UNIX Operating System Unix operating systems have the ability to be multi-user, multi-tasking and portable. Multi-user capabilities are accomplished through time sharing which means the processor allocates slices of time to first one process and then the next, sharing the available time in sequence with waiting processes (Nagpal, 2009). Unix can run in either command line interface, CLI, or graphic user interface or GUI mode. A key and unique feature of Unix is that it has a modular design which allows parts of the system to be added or removed without affecting performance of the other parts making Unix systems highly customizable. Unix operating systems have four core components, (1) the kernel, (2) the shell, (3) the file system, and (4) the utilities or tools and applications (Love et al, 2005). The kernel is the lowest layer of the operating system that...

Words: 5010 - Pages: 21

Free Essay

Unix, Linux, Mac Os, Windows Os Comparison

...The most commonly known Operating Systems (OS) today are UNIX, Linux, MacOS, and Windows. These operating systems all behave in their own way and similar in others. This paper will discuss this comparison of how these operating systems utilize memory, process handling, file management, and security. Memory Management Each operating system is required to allocate a certain amount of memory for the operating system itself for the processes that are being used or executed. There are two places memory exists: physically on the motherboard of the computer and within the operating system itself. When the operating system dynamically divides the memory usage between these two areas, this is called memory management. Each operating system manages memory different from the others; however they all follow some basic rules of memory management. All of the operating system’s memory management in general follows these requirements: relocation, protection, sharing, logical organization, and physical organization (Stallings, 2015). Relocation of memory is the process that allows the operating system to move a process or file from physical memory to virtual memory and back again, depending on the need for that data. Virtual memory exists within the operating system which uses the hard drive to store temporary information and physical memory is located on the motherboard of the computer. While the process is in memory, protection of that area needs to be enabled to block interference...

Words: 2918 - Pages: 12

Premium Essay

Memory Management Differences

...Memory Management Differences Randall Anderson POS/355 July-27, 2015 Alicia Pearlman Memory Management Differences Before anyone can begin to understand the differences between Windows and Linux memory management, one must understand memory management and its requirements in today’s systems. These requirements play a very important part in a computers performance and speed. Both operating systems share some similar characteristics as to how their memory management works, but also differ as to their complexity. Windows is a more complex system where Linux is more simplistic. Stallings states that “Linux shares UNIX characteristics but has its own features and is very complex” (Stallings, 2012,). The architecture of Linux’s virtual memory is one of a three level structure. Page 1 is equivalent to one page. Entries are directed to the page directory and the page must be in the main memory to be active (Stallings, 2012). The middle page directory can be as large as multiple pages. Each entry points to one page of the table. The last is what is known as the page table and it refers to one virtual page of the process. The structure was designed for a 64 bit Alpha processor and is independent. What is known as the buddy system is used to help Linux increase it efficiency. This system works by splitting and merging pages which are allocated and deallocated in the main memory (Stallings, 2012). Linux uses a page replacement algorithm which deals with the simple clock that...

Words: 560 - Pages: 3