Configuring the Operating System Configure Performance Options Processor scheduling and memory usage Virtual memory Memory for network performance Configure.

Slides:



Advertisements
Similar presentations
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 3 Memory Management Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
Advertisements

16.317: Microprocessor System Design I
Virtual Memory Chapter 18 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer,  S. Dandamudi.
CS 333 Introduction to Operating Systems Class 12 - Virtual Memory (2) Jonathan Walpole Computer Science Portland State University.
CS 333 Introduction to Operating Systems Class 11 – Virtual Memory (1)
Memory Management (II)
CS 342 – Operating Systems Spring 2003 © Ibrahim Korpeoglu Bilkent University1 Memory Management -3 CS 342 – Operating Systems Ibrahim Korpeoglu Bilkent.
Memory Management and Paging CSCI 3753 Operating Systems Spring 2005 Prof. Rick Han.
CE6105 Linux 作業系統 Linux Operating System 許 富 皓. Chapter 2 Memory Addressing.
Memory Management. 2 How to create a process? On Unix systems, executable read by loader Compiler: generates one object file per source file Linker: combines.
Chapter 3.2 : Virtual Memory
Chapter 3 Memory Management
Computer Organization Cs 147 Prof. Lee Azita Keshmiri.
©UCB CS 162 Ch 7: Virtual Memory LECTURE 13 Instructor: L.N. Bhuyan
Chapter 91 Translation Lookaside Buffer (described later with virtual memory) Frame.
CS 241 Section Week #12 (04/22/10).
Virtual Memory By: Dinouje Fahih. Definition of Virtual Memory Virtual memory is a concept that, allows a computer and its operating system, to use a.
Operating Systems Chapter 8
Computer Architecture Lecture 28 Fasih ur Rehman.
1 Chapter 3.2 : Virtual Memory What is virtual memory? What is virtual memory? Virtual memory management schemes Virtual memory management schemes Paging.
Operating Systems COMP 4850/CISG 5550 Page Tables TLBs Inverted Page Tables Dr. James Money.
Memory Management – Page 1 of 49CSCI 4717 – Computer Architecture Memory Management Uni-program – memory split into two parts –One for Operating System.
1 Linux Operating System 許 富 皓. 2 Memory Addressing.
Chapter 4 Memory Management Virtual Memory.
Virtual Memory. Virtual Memory: Topics Why virtual memory? Virtual to physical address translation Page Table Translation Lookaside Buffer (TLB)
Virtual Memory 1 1.
1 Memory Management. 2 Fixed Partitions Legend Free Space 0k 4k 16k 64k 128k Internal fragmentation (cannot be reallocated) Divide memory into n (possible.
Review °Apply Principle of Locality Recursively °Manage memory to disk? Treat as cache Included protection as bonus, now critical Use Page Table of mappings.
Introduction to Virtual Memory and Memory Management
Operating Systems Unit 7: – Virtual Memory organization Operating Systems.
Paging (continued) & Caching CS-3013 A-term Paging (continued) & Caching CS-3013 Operating Systems A-term 2008 (Slides include materials from Modern.
Swap Space and Other Memory Management Issues Operating Systems: Internals and Design Principles.
4.3 Virtual Memory. Virtual memory  Want to run programs (code+stack+data) larger than available memory.  Overlays programmer divides program into pieces.
Virtual Memory.  Next in memory hierarchy  Motivations:  to remove programming burdens of a small, limited amount of main memory  to allow efficient.
Demand Paging Reference Reference on UNIX memory management
Paging Paging is a memory-management scheme that permits the physical-address space of a process to be noncontiguous. Paging avoids the considerable problem.
1  2004 Morgan Kaufmann Publishers Chapter Seven Memory Hierarchy-3 by Patterson.
Page Replacement Implementation Issues Text: –Tanenbaum ch. 4.7.
CHAPTER 3-3: PAGE MAPPING MEMORY MANAGEMENT. VIRTUAL MEMORY Key Idea Disassociate addresses referenced in a running process from addresses available in.
Memory Management Continued Questions answered in this lecture: What is paging? How can segmentation and paging be combined? How can one speed up address.
Memory Management. 2 How to create a process? On Unix systems, executable read by loader Compiler: generates one object file per source file Linker: combines.
CS203 – Advanced Computer Architecture Virtual Memory.
Operating Systems, Winter Semester 2011 Practical Session 9, Memory 1.
Virtual Memory (Section 9.3). The Need For Virtual Memory Many computers don’t have enough memory in RAM to accommodate all the programs a user wants.
CS161 – Design and Architecture of Computer
Memory Management Virtual Memory.
ECE232: Hardware Organization and Design
CS161 – Design and Architecture of Computer
Lecture Topics: 11/19 Paging Page tables Memory protection, validation
CS703 - Advanced Operating Systems
Address Translation Mechanism of 80386
Memory Management References text: Tanenbaum ch.4.
Page Replacement Implementation Issues
CS510 Operating System Foundations
Chapter 8: Main Memory.
Lecture 28: Virtual Memory-Address Translation
CSCI206 - Computer Organization & Programming
Memory Management References text: Tanenbaum ch.4.
Page Replacement Implementation Issues
Practical Session 9, Memory
CSE 451: Operating Systems Autumn 2005 Memory Management
CSE 451: Operating Systems Autumn 2003 Lecture 10 Paging & TLBs
CSE 451: Operating Systems Autumn 2003 Lecture 10 Paging & TLBs
CSE 451: Operating Systems Autumn 2003 Lecture 9 Memory Management
CS703 - Advanced Operating Systems
Operating Systems: Internals and Design Principles, 6/E
Virtual Memory and Paging
4.3 Virtual Memory.
Virtual Memory 1 1.
Page Main Memory.
Presentation transcript:

Configuring the Operating System Configure Performance Options Processor scheduling and memory usage Virtual memory Memory for network performance Configure Environment Variables Configure Startup and Recovery Configure Power Options

Configure Processor Scheduling Start/Control Panel/System/Advanced System settings/Advanced Performance Settings/Advanced Allows the user to configure how processor resources are allocated Background services setting –All programs running will receive equal amount of processor time Program setting –All programs running at the server console will receive most processor’s resources

Configure Data Execution Prevention(DEP) Start/Control Panel/System/Advanced System settings/Data Execution Prevention While programs are running, DEP monitors how they use memory Computer viruses, Trojan horses and worms try to access memory spaces allocated to system functions

Protection on x86 Both Linux and Win32, only 0 and 3 are used Access to segments done by evaluating: –CPL: internal register stores current privilege level –DPL: descriptor privilege level –RPL: requestor’s privilege level Level

Configure Virtual memory Virtual memory expands the limitation of physical RAM by using disk memory When the current running program exceeds the RAM, it uses the disk space as the actual memory, except it is slower. The mapping of physical memory to virtual memory is know as paging Good article on setting virtual memory: – ualMemoryPageFileEtc.htm

Virtual Memory Useful when the combined size of the program, stack, data exceeds the available physical memory Memory Management Unit(MMU) maps virtual addresses to physical addresses Page table

Paging Pages –virtual address space divided into pages –typical 4K byte size (e.g. 64K program in 16 pages) –program extends over 1 page will take the entire additional page Page Frames –physical address space divided into page frames –same size as pages (e.g. 32K memory in 8 page frames) Page Tables –tells which page frame is assigned to each page of the virtual address(VA)

Virtual and Physical Addresses The relation between virtual addresses and physical memory addresses given by page table

Internal Operations of MMU Specify 16-bit address and a 4-KB page size using 4 bits for virtual pages and 12 bits for offset present bit also called valid bit(v bit) in x86

Multilevel Page Tables 32-bit address space has 1 million 4KB pages Get around having to store huge page tables in memory all the time

Multilevel Paging Example 0x corresponds to PT1 =0x01, PT2=0x03, offset =0x04 MMU uses PT1 to index into the top level table and PT1=1 corresponds to addresses 4M-8M MMU uses PT2 to index into the second level table and PT2=3 points to 3x4096 to 4x within the 4M chunk If page is not in memory, Present/absent bit =0 and accessing the page causes a page fault If page is in memory, present/absent bit =1 and the second page memory and offset forms the physical address 4M chunk 4K chunk

Paging Overhead 4 MB page tables are kept in memory To access VA 0x , we need to do 3 memory references. A large burden! –look up entry 0x48 in page directory –look up entry 0x345 in page table –look up address (page frame number| 678) Use hardware Translation Lookaside Buffers (TLB) to speed up the VA to PA mapping

Backing Store (a) Paging to static swap area - problem with process that increases in size after starting (b) Backing up pages dynamically - allocate disk space when the page is swapped out and deallocate it when it is swapped back in Proc size Proc size