Lectures 21 : Memory Management (ii) Thu 19 Nov 2009
|
|
- Duane Griffin
- 7 years ago
- Views:
Transcription
1 CS211: Programming and Operating Systems Lectures 21 : Memory Management (ii) Thu 19 Nov 2009 CS211 Lectures 21 : Memory Management (ii) 1/23
2 This afternoon... 1 Recall... Memory management 2 Contiguous Memory Allocation 3 Fragmentation 4 Paging Implementation of Page Table 5 Virtual Memory 6 Demand Paging 7 Page Fault CS211 Lectures 21 : Memory Management (ii) 2/23
3 Recall... Memory management On Monday we discussed 1 Logical versus Physical Address Space 2 Swapping Today: 1 Contiguous Memory Allocation 2 Fragmentation 3 Paging CS211 Lectures 21 : Memory Management (ii) 3/23
4 Contiguous Memory Allocation In a multiprogramming environment, memory space is occupied by the operating system and a collection of user processes. In order to maximise the degree of multiprogramming on the system, the OS will load as many procs into memory as there is space for. When new procs arrive in the Input queue, it picks the first one and loads it into memory unless there is not enough room to accommodate it. In this case, it may search through to procs in the Input queue and load the first one for which there is a large enough space to accommodate. CS211 Lectures 21 : Memory Management (ii) 4/23
5 Contiguous Memory Allocation When user procs terminate, memory holes are created. The operating system must allocated one of these hole to a new proc that is starting. If the hole it too large, only part of it is allocated and a new smaller hole is created. Also, when a proc terminates, if its space is adjacent to a free hole, they are amalgamated to create a larger one. The scheduler then checks if they new hole is large enough to accommodate the next job in the Input queue. If this procedure of splitting and amalgamating of holes continues for a while, we end up with blocks of available memory of various size are scattered throughout memory. This is called Fragmentation and is to be avoided. Strategies/Algorithms for allocating memory to procs is a crucial part of memory management. CS211 Lectures 21 : Memory Management (ii) 5/23
6 Contiguous Memory Allocation To summarise: Goal: In a multiprogramming environment, we wish to maximise the degree of multiprogramming on the system, by loading as many procs into memory as there is space for. Whats the problem? When user procs terminate, memory holes (or pockets ) are created. If the hole it too large, only part of it is allocated to the next proc., creating a smaller hole. When a proc terminates, if its space is adjacent to a free hole, they are amalgamated to create a larger one. How does the OS deal with this? Use strategies/algorithms/policy for allocating memory to procs. Try to maintain efficiency while minimising fragmentation. CS211 Lectures 21 : Memory Management (ii) 6/23
7 Contiguous Memory Allocation Three different strategies are: 1 First Fit (FF): allocate the first hole that is large enough to accommodate the new proc. This is the fastest method, but may cause the most fragmentation i.e, the most small pockets of unused non-contiguous memory. 2 Best Fit (BF): search all available holes and allocate the smallest hole that is big enough to accommodate the new proc. This is slower than best-fit, but leads to the smallest pocket sizes. 3 Worst Fit (WF): search all available holes and assign part of the the largest available hole. This is the slowest method but may leave a smaller number of larger holes than either first or best fit. CS211 Lectures 21 : Memory Management (ii) 7/23
8 Contiguous Memory Allocation Example Suppose that a system has four free memory holes orders as follows: H 1 = 100k, H 2 = 200k, H 3 = 500k, H 4 = 600k. Four procs arrive in the following order: P 1 (210k), P 2 (450k), P 3 (120k), P 4 (200k). Show how these would be allocated by the FF, BF, and WF strategies. CS211 Lectures 21 : Memory Management (ii) 8/23
9 Fragmentation Memory is partitioned into contiguous segments and allocated to different processes. The methods for contiguous memory allocation described above can lead to External fragmentation: total memory space exists to satisfy a request, but it is not contiguous. That is, memory is available but is broken up into pockets between partitions that are too small to be used. Internal fragmentation: Suppose there is a free hole of size 12,100 bytes and we require a partition of size 12,080 bytes. The OS may require more that 20 bytes to keep track of the unused portion, so it can be more economical to allocate all 12,100 bytes even though this is slightly larger than requested memory; this is called internal fragmentation CS211 Lectures 21 : Memory Management (ii) 9/23
10 Fragmentation One solution to the fragmentation problem is compaction, i.e., shuffle memory contents to place all free memory together in one large block. This is not always possible requires dynamic memory relocation. Also it can be time-consuming. Furthermore, fragmentation may happen in the swap space. However, compaction is certainly not feasible in that instance. (Why?) The other alternative is to allow for non-contiguous memory allocation. This is done by paging or segmentation, or some hybrid of these two approaches. CS211 Lectures 21 : Memory Management (ii) 10/23
11 Paging Basic idea: Logical address space of a process can be non-contiguous; process is allocated physical memory whenever the latter is available. Divide physical memory into fixed-sized blocks called frames. All frames on the system are of the same size, some power of 2, between 512 bytes and 8192 bytes (determined by the hardware). CS211 Lectures 21 : Memory Management (ii) 11/23
12 Paging To find out the page size on a Linux system, run this program: 1 / / Try this for Windows 2 #include <s t d i o. h> 3 # include <windows. h> From size link! 5 i n t main ( void ) 6 { 7 SYSTEM INFO s i ; 8 GetSystemInfo (& s i ) ; 10 p r i n t f ( The page size f o r t h i s system i s %u bytes.\ n, 11 s i. dwpagesize ) ; 12 return 0; 13 } CS211 Lectures 21 : Memory Management (ii) 12/23
13 Paging From size link! 1 / / Try this for Linux 2 #include <s t d i o. h> 3 #include <u n i s t d. h> / / sysconf(3) 4 i n t main ( void ) 5 { 6 p r i n t f ( The page size f o r t h i s system i s %l d bytes.\ n, 7 sysconf ( SC PAGESIZE ) ) ; 8 return ( 0 ) ; 9 } CS211 Lectures 21 : Memory Management (ii) 13/23
14 Paging Logical memory into blocks called pages. Frames and Pages are of the same size. the OS keeps track of all free frames in memory. To run a program of size n pages, we need to find n free frames and load program. Page Table maintained to translate logical to physical addresses. CS211 Lectures 21 : Memory Management (ii) 14/23
15 Paging Address Translation Scheme An address generated by CPU is divided into: Page number (p), used as an index into a page table which contains base address of each page in physical memory; Page offset (d), combined with base address to define the physical memory address that is sent to the memory unit. CS211 Lectures 21 : Memory Management (ii) 15/23
16 Paging Implementation of Page Table The Page table is kept in main memory. Page-table base register (PTBR) points to the page table. Page-table length register (PRLR) indicates size of the page table. Every data/instruction access requires two memory accesses one for the page table and one for the data/instruction. The two memory access problem can be solved by the use of a special fast-lookup hardware cache called associative registers or translation look-aside buffers (TLBs) Example: Suppose we have 128kb of physical memory, pages/frames of size 8kb, and a process that requires 32kb... By using paging we avoid external fragmentation. A problem with paging is that, on average, internal fragmentation accounts for one half page per process. CS211 Lectures 21 : Memory Management (ii) 16/23
17 Virtual Memory We have already considered using some hard-drive space as temporary storage for data that should reside in main memory but which belongs to a process that is not currently running in the CPU (e.g., it is ready or waiting ). We extend this idea to allow part of the address space of a process to be swapped out into secondary ( backing ) storage even though the process is in the CPU. We will look at a system that allows the total addressable logical memory to include physical memory and part of the backing storage. Key concepts include 1 Introduction 2 Demand paging 3 Page faults 4 the dirty bit 5 Page fault handling 6 page replacement algorithms 7 Thrashing CS211 Lectures 21 : Memory Management (ii) 17/23
18 Virtual Memory CS211 Lectures 21 : Memory Management (ii) 18/23
19 Virtual Memory Basic Idea: Only part of the program needs to be in memory for execution. Why? Often a process does not have to access all of its memory at once. For example, if the process has error handling routines, these will rarely be required. Logical address space can therefore be much larger than physical address space. Hence we can run procs that require more memory than is available on the system. Also, we can increase the degree of multi-programming in the system. (the number of procs that are ready to be brought into the CPU at any time.) VM requires that pages to be swapped/paged in and out (of swap space) in a procedure known as demand paging CS211 Lectures 21 : Memory Management (ii) 19/23
20 Demand Paging Basic ideas: Bring a page into memory only when it is needed (lazy paging). Pages belonging to a proc may be memory resident or not. The system needs some mechanism for distinguishing between resident and non-resident pages. Therefore the page table associates a valid/invalid bit with each page. 1 resident 0 not in physical memory. If a proc wishes to access a valid page it can do so. If a proc wishes to access an invalid page then the paging hardware generates a Page Fault. CS211 Lectures 21 : Memory Management (ii) 20/23
21 Page Fault If there is a reference to an invalid page, reference will trap to OS. reference to nonexisting page abort Just not in memory must bring page into memory. 1 Reference is made to invalid page 2 Page fault generated trap to Operating system (PCB of user process is saved and OS given access to CPU) 3 Locate empty frame in physical memory. 4 Swap page into frame. 5 Reset tables, flip validation bit (change to 1) 6 Restart user process (load PCB and perform next instruction) CS211 Lectures 21 : Memory Management (ii) 21/23
22 Page Fault CS211 Lectures 21 : Memory Management (ii) 22/23
23 Page Fault What happens if there is no free frame? Page replacement find some page in memory, but not really in use, and swap it out. We need an algorithm for selecting such a page. The algorithm will be evaluated on the basis of the generation of a minimum number of page faults. (More about this later...) CS211 Lectures 21 : Memory Management (ii) 23/23
Memory Management Outline. Background Swapping Contiguous Memory Allocation Paging Segmentation Segmented Paging
Memory Management Outline Background Swapping Contiguous Memory Allocation Paging Segmentation Segmented Paging 1 Background Memory is a large array of bytes memory and registers are only storage CPU can
More informationMemory management basics (1) Requirements (1) Objectives. Operating Systems Part of E1.9 - Principles of Computers and Software Engineering
Memory management basics (1) Requirements (1) Operating Systems Part of E1.9 - Principles of Computers and Software Engineering Lecture 7: Memory Management I Memory management intends to satisfy the following
More informationThe Deadlock Problem. Deadlocks. Deadlocks. Bridge Crossing Example
The Deadlock Problem Deadlocks A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set. Example System has 2 tape drives. P 1 and P 2 each
More informationOPERATING SYSTEM - MEMORY MANAGEMENT
OPERATING SYSTEM - MEMORY MANAGEMENT http://www.tutorialspoint.com/operating_system/os_memory_management.htm Copyright tutorialspoint.com Memory management is the functionality of an operating system which
More informationChapter 7 Memory Management
Operating Systems: Internals and Design Principles Chapter 7 Memory Management Eighth Edition William Stallings Frame Page Segment A fixed-length block of main memory. A fixed-length block of data that
More informationChapter 7 Memory Management
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 7 Memory Management Patricia Roy Manatee Community College, Venice, FL 2008, Prentice Hall Memory Management Subdividing
More informationVirtual vs Physical Addresses
Virtual vs Physical Addresses Physical addresses refer to hardware addresses of physical memory. Virtual addresses refer to the virtual store viewed by the process. virtual addresses might be the same
More informationCS 61C: Great Ideas in Computer Architecture Virtual Memory Cont.
CS 61C: Great Ideas in Computer Architecture Virtual Memory Cont. Instructors: Vladimir Stojanovic & Nicholas Weaver http://inst.eecs.berkeley.edu/~cs61c/ 1 Bare 5-Stage Pipeline Physical Address PC Inst.
More information& Data Processing 2. Exercise 3: Memory Management. Dipl.-Ing. Bogdan Marin. Universität Duisburg-Essen
Folie a: Name & Data Processing 2 3: Memory Management Dipl.-Ing. Bogdan Marin Fakultät für Ingenieurwissenschaften Abteilung Elektro-und Informationstechnik -Technische Informatik- Objectives Memory Management
More informationOperating Systems, 6 th ed. Test Bank Chapter 7
True / False Questions: Chapter 7 Memory Management 1. T / F In a multiprogramming system, main memory is divided into multiple sections: one for the operating system (resident monitor, kernel) and one
More informationPage 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems
Lecture Outline Operating Systems Objectives Describe the functions and layers of an operating system List the resources allocated by the operating system and describe the allocation process Explain how
More informationLecture 17: Virtual Memory II. Goals of virtual memory
Lecture 17: Virtual Memory II Last Lecture: Introduction to virtual memory Today Review and continue virtual memory discussion Lecture 17 1 Goals of virtual memory Make it appear as if each process has:
More informationChapter 12. Paging an Virtual Memory Systems
Chapter 12 Paging an Virtual Memory Systems Paging & Virtual Memory Virtual Memory - giving the illusion of more physical memory than there really is (via demand paging) Pure Paging - The total program
More informationOPERATING SYSTEMS MEMORY MANAGEMENT
OPERATING SYSTEMS MEMORY MANAGEMENT Jerry Breecher 8: Memory Management 1 OPERATING SYSTEM Memory Management What Is In This Chapter? Just as processes share the CPU, they also share physical memory. This
More informationOPERATING SYSTEM - VIRTUAL MEMORY
OPERATING SYSTEM - VIRTUAL MEMORY http://www.tutorialspoint.com/operating_system/os_virtual_memory.htm Copyright tutorialspoint.com A computer can address more memory than the amount physically installed
More informationMemory unit sees only the addresses, and not how they are generated (instruction counter, indexing, direct)
Memory Management 55 Memory Management Multitasking without memory management is like having a party in a closet. Charles Petzold. Programming Windows 3.1 Programs expand to fill the memory that holds
More informationW4118: segmentation and paging. Instructor: Junfeng Yang
W4118: segmentation and paging Instructor: Junfeng Yang Outline Memory management goals Segmentation Paging TLB 1 Uni- v.s. multi-programming Simple uniprogramming with a single segment per process Uniprogramming
More informationVirtual Memory. Virtual Memory. Paging. CSE 380 Computer Operating Systems. Paging (1)
Virtual Memory CSE 380 Computer Operating Systems Instructor: Insup Lee University of Pennsylvania Fall 2003 Lecture Note: Virtual Memory (revised version) 1 Recall: memory allocation with variable partitions
More informationMemory Management 1. Memory Management. Multitasking without memory management is like having a party in a closet.
Memory Management 1 Memory Management Multitasking without memory management is like having a party in a closet. Charles Petzold. Programming Windows 3.1 Programs expand to fill the memory that holds them.
More informationHow To Write A Page Table
12 Paging: Introduction Remember our goal: to virtualize memory. Segmentation (a generalization of dynamic relocation) helped us do this, but has some problems; in particular, managing free space becomes
More informationVirtual Memory. How is it possible for each process to have contiguous addresses and so many of them? A System Using Virtual Addressing
How is it possible for each process to have contiguous addresses and so many of them? Computer Systems Organization (Spring ) CSCI-UA, Section Instructor: Joanna Klukowska Teaching Assistants: Paige Connelly
More informationCOS 318: Operating Systems. Virtual Memory and Address Translation
COS 318: Operating Systems Virtual Memory and Address Translation Today s Topics Midterm Results Virtual Memory Virtualization Protection Address Translation Base and bound Segmentation Paging Translation
More informationMemory Management CS 217. Two programs can t control all of memory simultaneously
Memory Management CS 217 Memory Management Problem 1: Two programs can t control all of memory simultaneously Problem 2: One program shouldn t be allowed to access/change the memory of another program
More informationCS5460: Operating Systems
CS5460: Operating Systems Lecture 13: Memory Management (Chapter 8) Where are we? Basic OS structure, HW/SW interface, interrupts, scheduling Concurrency Memory management Storage management Other topics
More informationMemory management. Chapter 4: Memory Management. Memory hierarchy. In an ideal world. Basic memory management. Fixed partitions: multiple programs
Memory management Chater : Memory Management Part : Mechanisms for Managing Memory asic management Swaing Virtual Page relacement algorithms Modeling age relacement algorithms Design issues for aging systems
More informationBoard Notes on Virtual Memory
Board Notes on Virtual Memory Part A: Why Virtual Memory? - Letʼs user program size exceed the size of the physical address space - Supports protection o Donʼt know which program might share memory at
More informationOperating Systems. Virtual Memory
Operating Systems Virtual Memory Virtual Memory Topics. Memory Hierarchy. Why Virtual Memory. Virtual Memory Issues. Virtual Memory Solutions. Locality of Reference. Virtual Memory with Segmentation. Page
More information361 Computer Architecture Lecture 14: Cache Memory
1 361 Computer Architecture Lecture 14 Memory cache.1 The Motivation for s Memory System Processor DRAM Motivation Large memories (DRAM) are slow Small memories (SRAM) are fast Make the average access
More informationTwo Parts. Filesystem Interface. Filesystem design. Interface the user sees. Implementing the interface
File Management Two Parts Filesystem Interface Interface the user sees Organization of the files as seen by the user Operations defined on files Properties that can be read/modified Filesystem design Implementing
More informationMemory Allocation. Static Allocation. Dynamic Allocation. Memory Management. Dynamic Allocation. Dynamic Storage Allocation
Dynamic Storage Allocation CS 44 Operating Systems Fall 5 Presented By Vibha Prasad Memory Allocation Static Allocation (fixed in size) Sometimes we create data structures that are fixed and don t need
More informationRecord Storage and Primary File Organization
Record Storage and Primary File Organization 1 C H A P T E R 4 Contents Introduction Secondary Storage Devices Buffering of Blocks Placing File Records on Disk Operations on Files Files of Unordered Records
More informationOutline: Operating Systems
Outline: Operating Systems What is an OS OS Functions Multitasking Virtual Memory File Systems Window systems PC Operating System Wars: Windows vs. Linux 1 Operating System provides a way to boot (start)
More informationSecondary Storage. Any modern computer system will incorporate (at least) two levels of storage: magnetic disk/optical devices/tape systems
1 Any modern computer system will incorporate (at least) two levels of storage: primary storage: typical capacity cost per MB $3. typical access time burst transfer rate?? secondary storage: typical capacity
More informationThe Linux Virtual Filesystem
Lecture Overview Linux filesystem Linux virtual filesystem (VFS) overview Common file model Superblock, inode, file, dentry Object-oriented Ext2 filesystem Disk data structures Superblock, block group,
More informationComputer Architecture
Computer Architecture Slide Sets WS 2013/2014 Prof. Dr. Uwe Brinkschulte M.Sc. Benjamin Betting Part 11 Memory Management Computer Architecture Part 11 page 1 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin
More informationPeter J. Denning, Naval Postgraduate School, Monterey, California
VIRTUAL MEMORY Peter J. Denning, Naval Postgraduate School, Monterey, California January 2008 Rev 6/5/08 Abstract: Virtual memory is the simulation of a storage space so large that users do not need to
More informationTraditional IBM Mainframe Operating Principles
C H A P T E R 1 7 Traditional IBM Mainframe Operating Principles WHEN YOU FINISH READING THIS CHAPTER YOU SHOULD BE ABLE TO: Distinguish between an absolute address and a relative address. Briefly explain
More informationChapter 11 I/O Management and Disk Scheduling
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 11 I/O Management and Disk Scheduling Dave Bremer Otago Polytechnic, NZ 2008, Prentice Hall I/O Devices Roadmap Organization
More informationHY345 Operating Systems
HY345 Operating Systems Recitation 2 - Memory Management Solutions Panagiotis Papadopoulos panpap@csd.uoc.gr Problem 7 Consider the following C program: int X[N]; int step = M; //M is some predefined constant
More informationDisk Space Management Methods
Volume 1, Issue 1, June 2013 International Journal of Advance Research in Computer Science and Management Studies Research Paper Available online at: www.ijarcsms.com Disk Space Management Methods Ramakrishna
More informationWe r e going to play Final (exam) Jeopardy! "Answers:" "Questions:" - 1 -
. (0 pts) We re going to play Final (exam) Jeopardy! Associate the following answers with the appropriate question. (You are given the "answers": Pick the "question" that goes best with each "answer".)
More informationCS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team
CS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team Lecture Summary In this lecture, we learned about the ADT Priority Queue. A
More informationHypervisor: Requirement Document (Version 3)
Hypervisor: Requirement Document (Version 3) Jean-Raymond Abrial and Rustan Leino No Institute Given 1 Requirement Document 1.1 A single system memory handling - SM-0: An operating system (OS) makes use
More informationOS OBJECTIVE QUESTIONS
OS OBJECTIVE QUESTIONS Which one of the following is Little s formula Where n is the average queue length, W is the time that a process waits 1)n=Lambda*W 2)n=Lambda/W 3)n=Lambda^W 4)n=Lambda*(W-n) Answer:1
More informationChapter 2 Basic Structure of Computers. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan
Chapter 2 Basic Structure of Computers Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan Outline Functional Units Basic Operational Concepts Bus Structures Software
More informationOperating Systems. Steven Hand. Michaelmas / Lent Term 2008/09. 17 lectures for CST IA. Handout 3. Operating Systems N/H/MWF@12
Operating Systems Steven Hand Michaelmas / Lent Term 2008/09 17 lectures for CST IA Handout 3 Operating Systems N/H/MWF@12 What is an Operating System? A program which controls the execution of all other
More informationFile-System Implementation
File-System Implementation 11 CHAPTER In this chapter we discuss various methods for storing information on secondary storage. The basic issues are device directory, free space management, and space allocation
More informationTechnical Properties. Mobile Operating Systems. Overview Concepts of Mobile. Functions Processes. Lecture 11. Memory Management.
Overview Concepts of Mobile Operating Systems Lecture 11 Concepts of Mobile Operating Systems Mobile Business I (WS 2007/08) Prof Dr Kai Rannenberg Chair of Mobile Business and Multilateral Security Johann
More informationHigh-Performance Processing of Large Data Sets via Memory Mapping A Case Study in R and C++
High-Performance Processing of Large Data Sets via Memory Mapping A Case Study in R and C++ Daniel Adler, Jens Oelschlägel, Oleg Nenadic, Walter Zucchini Georg-August University Göttingen, Germany - Research
More informationFile System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System
CS341: Operating System Lect 36: 1 st Nov 2014 Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati File System & Device Drive Mass Storage Disk Structure Disk Arm Scheduling RAID
More informationChapter 1 13 Essay Question Review
Chapter 1 13 Essay Question Review Chapter 1 1. Explain why an operating system can be viewed as a resource allocator. Ans: A computer system has many resources that may be required to solve a problem:
More informationChapter 11: File System Implementation. Chapter 11: File System Implementation. Objectives. File-System Structure
Chapter 11: File System Implementation Chapter 11: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods Free-Space Management Efficiency
More informationCS 464/564 Introduction to Database Management System Instructor: Abdullah Mueen
CS 464/564 Introduction to Database Management System Instructor: Abdullah Mueen LECTURE 14: DATA STORAGE AND REPRESENTATION Data Storage Memory Hierarchy Disks Fields, Records, Blocks Variable-length
More informationMass Storage Structure
Mass Storage Structure 12 CHAPTER Practice Exercises 12.1 The accelerating seek described in Exercise 12.3 is typical of hard-disk drives. By contrast, floppy disks (and many hard disks manufactured before
More informationSegmentation. 16.1 Segmentation: Generalized Base/Bounds
16 Segmentation So far we have been putting the entire address space of each process in memory. With the base and bounds registers, the OS can easily relocate processes to different parts of physical memory.
More informationOperating System Tutorial
Operating System Tutorial OPERATING SYSTEM TUTORIAL Simply Easy Learning by tutorialspoint.com tutorialspoint.com i ABOUT THE TUTORIAL Operating System Tutorial An operating system (OS) is a collection
More informationGeneral Purpose Operating System Support for Multiple Page Sizes
The following paper was originally published in the Proceedings of the USENIX Annual Technical Conference (NO 98) New Orleans, Louisiana, June 1998 General Purpose Operating System Support for Multiple
More informationVirtualization. Explain how today s virtualization movement is actually a reinvention
Virtualization Learning Objectives Explain how today s virtualization movement is actually a reinvention of the past. Explain how virtualization works. Discuss the technical challenges to virtualization.
More informationBeyond Physical Memory: Mechanisms
21 Beyond Physical Memory: Mechanisms Thus far, we ve assumed that an address space is unrealistically small and fits into physical memory. In fact, we ve been assuming that every address space of every
More informationLecture 15. IP address space managed by Internet Assigned Numbers Authority (IANA)
Lecture 15 IP Address Each host and router on the Internet has an IP address, which consist of a combination of network number and host number. The combination is unique; no two machines have the same
More informationMidterm Exam #2 Solutions November 10, 1999 CS162 Operating Systems
Fall 1999 Your Name: SID: University of California, Berkeley College of Engineering Computer Science Division EECS Midterm Exam #2 November 10, 1999 CS162 Operating Systems Anthony D. Joseph Circle the
More informationChapter 3 Operating-System Structures
Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual
More informationName: 1. CS372H: Spring 2009 Final Exam
Name: 1 Instructions CS372H: Spring 2009 Final Exam This exam is closed book and notes with one exception: you may bring and refer to a 1-sided 8.5x11- inch piece of paper printed with a 10-point or larger
More informationChapter 1 8 Essay Question Review
Chapter 1 8 Essay Question Review 1. Explain why an operating system can be viewed as a resource allocator. Ans: A computer system has many resources that may be required to solve a problem: CPU time,
More informationAn Introduction to RAID. Giovanni Stracquadanio stracquadanio@dmi.unict.it www.dmi.unict.it/~stracquadanio
An Introduction to RAID Giovanni Stracquadanio stracquadanio@dmi.unict.it www.dmi.unict.it/~stracquadanio Outline A definition of RAID An ensemble of RAIDs JBOD RAID 0...5 Configuring and testing a Linux
More informationOperating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note:
Chapter 7 OBJECTIVES Operating Systems Define the purpose and functions of an operating system. Understand the components of an operating system. Understand the concept of virtual memory. Understand the
More informationWindows Server Performance Monitoring
Spot server problems before they are noticed The system s really slow today! How often have you heard that? Finding the solution isn t so easy. The obvious questions to ask are why is it running slowly
More informationb. A program calls malloc to request more memory from the operating system. i.what system call would malloc use to request more memory of the OS?
CS 4410 Operating Systems Prelim II, Fall 2013 Profs. Sirer and van Renesse Name: NETID: This is a closed book examination. It is 10 pages long. You have 120 minutes. No electronic devices of any kind
More informationComputer-System Architecture
Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection General System Architecture 2.1 Computer-System Architecture 2.2 Computer-System
More informationVirtual Memory Paging
COS 318: Operating Systems Virtual Memory Paging Kai Li Computer Science Department Princeton University (http://www.cs.princeton.edu/courses/cos318/) Today s Topics Paging mechanism Page replacement algorithms
More information1. Computer System Structure and Components
1 Computer System Structure and Components Computer System Layers Various Computer Programs OS System Calls (eg, fork, execv, write, etc) KERNEL/Behavior or CPU Device Drivers Device Controllers Devices
More informationPaging: Introduction. 18.1 A Simple Example And Overview
18 Paging: Introduction It is sometimes said that the operating system takes one of two approaches when solving most any space-management problem. The first approach is to chop things up into variable-sized
More informationMemories Are Made of This
Memories Are Made of This Betriebssysteme 2012/2013 10. Oktober 2013 1/94 History long tradition in operating systems Historically very important memory was very expensive ecient use of available memory
More information1 File Management. 1.1 Naming. COMP 242 Class Notes Section 6: File Management
COMP 242 Class Notes Section 6: File Management 1 File Management We shall now examine how an operating system provides file management. We shall define a file to be a collection of permanent data with
More informationVirtual Machines. COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361
s COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361 1 Virtualization! Create illusion of multiple machines on the same physical hardware! Single computer hosts multiple virtual machines
More informationHow To Understand And Understand An Operating System In C Programming
ELEC 377 Operating Systems Thomas R. Dean Instructor Tom Dean Office:! WLH 421 Email:! tom.dean@queensu.ca Hours:! Wed 14:30 16:00 (Tentative)! and by appointment! 6 years industrial experience ECE Rep
More informationHow To Write A Virtual Machine (Or \"Virtual Machine\") On A Microsoft Linux Operating System (Or Microsoft) (Or Linux) ( Or Microsoft Microsoft Operating System) (For A Non-Power Os) (On A
Operating Systems Steven Hand Michaelmas Term 2010 12 lectures for CST IA Operating Systems N/H/MWF@12 Course Aims This course aims to: explain the structure and functions of an operating system, illustrate
More informationPresentation of Diagnosing performance overheads in the Xen virtual machine environment
Presentation of Diagnosing performance overheads in the Xen virtual machine environment September 26, 2005 Framework Using to fix the Network Anomaly Xen Network Performance Test Using Outline 1 Introduction
More informationAPP INVENTOR. Test Review
APP INVENTOR Test Review Main Concepts App Inventor Lists Creating Random Numbers Variables Searching and Sorting Data Linear Search Binary Search Selection Sort Quick Sort Abstraction Modulus Division
More informationLesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization
Lesson Objectives To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization AE3B33OSD Lesson 1 / Page 2 What is an Operating System? A
More informationChapter 11: File System Implementation. Operating System Concepts with Java 8 th Edition
Chapter 11: File System Implementation 11.1 Silberschatz, Galvin and Gagne 2009 Chapter 11: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation
More informationData Storage - I: Memory Hierarchies & Disks
Data Storage - I: Memory Hierarchies & Disks W7-C, Spring 2005 Updated by M. Naci Akkøk, 27.02.2004 and 23.02.2005, based upon slides by Pål Halvorsen, 11.3.2002. Contains slides from: Hector Garcia-Molina,
More informationChapter 13: Query Processing. Basic Steps in Query Processing
Chapter 13: Query Processing! Overview! Measures of Query Cost! Selection Operation! Sorting! Join Operation! Other Operations! Evaluation of Expressions 13.1 Basic Steps in Query Processing 1. Parsing
More informationChapter 10: Virtual Memory. Lesson 03: Page tables and address translation process using page tables
Chapter 10: Virtual Memory Lesson 03: Page tables and address translation process using page tables Objective Understand page tables Learn the offset fields in the virtual and physical addresses Understand
More informationOperating System Software
Operating System Software Lecture 7 The operating system Defines our computing experience. First software we see when we turn on the computer, and the last software we see when the computer is turned off.
More informationA3 Computer Architecture
A3 Computer Architecture Engineering Science 3rd year A3 Lectures Prof David Murray david.murray@eng.ox.ac.uk www.robots.ox.ac.uk/ dwm/courses/3co Michaelmas 2000 1 / 1 6. Stacks, Subroutines, and Memory
More informationINTRODUCTION The collection of data that makes up a computerized database must be stored physically on some computer storage medium.
Chapter 4: Record Storage and Primary File Organization 1 Record Storage and Primary File Organization INTRODUCTION The collection of data that makes up a computerized database must be stored physically
More informationTopics in Computer System Performance and Reliability: Storage Systems!
CSC 2233: Topics in Computer System Performance and Reliability: Storage Systems! Note: some of the slides in today s lecture are borrowed from a course taught by Greg Ganger and Garth Gibson at Carnegie
More informationTested product: Auslogics BoostSpeed
Software Tested Tested product: Auslogics BoostSpeed www.softwaretested.com CONTENTS 1 Contents Background... 3 Purpose of the Tests... 5 Testing Environment... 6 Test Results... 10 Windows Startup Time...
More informationCRASH RECOVERY FOR REAL-TIME MAIN MEMORY DATABASE SYSTEMS
CRASH RECOVERY FOR REAL-TIME MAIN MEMORY DATABASE SYSTEMS Jing Huang Le Gruenwald School of Computer Science The University of Oklahoma Norman, OK 73019 Email: gruenwal@mailhost.ecn.uoknor.edu Keywords:
More informationW4118 Operating Systems. Instructor: Junfeng Yang
W4118 Operating Systems Instructor: Junfeng Yang Outline x86 segmentation and paging hardware Linux address space translation Copy-on-write Linux page replacement algorithm Linux dynamic memory allocation
More informationKernel. What is an Operating System? Systems Software and Application Software. The core of an OS is called kernel, which. Module 9: Operating Systems
Module 9: Operating Systems Objective What is an operating system (OS)? OS kernel, and basic functions OS Examples: MS-DOS, MS Windows, Mac OS Unix/Linux Features of modern OS Graphical operating system
More informationOperating Systems CSE 410, Spring 2004. File Management. Stephen Wagner Michigan State University
Operating Systems CSE 410, Spring 2004 File Management Stephen Wagner Michigan State University File Management File management system has traditionally been considered part of the operating system. Applications
More informationMemory Management Simulation Interactive Lab
Memory Management Simulation Interactive Lab The purpose of this lab is to help you to understand deadlock. We will use a MOSS simulator for this. The instructions for this lab are for a computer running
More informationAn Implementation Of Multiprocessor Linux
An Implementation Of Multiprocessor Linux This document describes the implementation of a simple SMP Linux kernel extension and how to use this to develop SMP Linux kernels for architectures other than
More informationIOMMU: A Detailed view
12/1/14 Security Level: Security Level: IOMMU: A Detailed view Anurup M. Sanil Kumar D. Nov, 2014 HUAWEI TECHNOLOGIES CO., LTD. Contents n IOMMU Introduction n IOMMU for ARM n Use cases n Software Architecture
More informationChapter 2: OS Overview
Chapter 2: OS Overview CmSc 335 Operating Systems 1. Operating system objectives and functions Operating systems control and support the usage of computer systems. a. usage users of a computer system:
More informationWindows OS File Systems
Windows OS File Systems MS-DOS and Windows 95/98/NT/2000/XP allow use of FAT-16 or FAT-32. Windows NT/2000/XP uses NTFS (NT File System) File Allocation Table (FAT) Not used so much, but look at as a contrast
More informationSegmentation and Fragmentation
Segmentation and Fragmentation Operating System Design MOSIG 1 Instructor: Arnaud Legrand Class Assistants: Benjamin Negrevergne, Sascha Hunold September 16, 2010 A. Legrand Segmentation and Fragmentation
More informationFiling Systems. Filing Systems
Filing Systems At the outset we identified long-term storage as desirable characteristic of an OS. EG: On-line storage for an MIS. Convenience of not having to re-write programs. Sharing of data in an
More information