Chapter 4. Protection in General-Purpose Operating Systems. ch. 4 1
|
|
- Dorothy Hodges
- 6 years ago
- Views:
Transcription
1 Chapter 4 Protection in General-Purpose Operating Systems ch. 4 1
2 Chapter Outline 4.1 Protected Objects and Methods of Protection 4.2 Memory and Address Protection 4.3 Control of Access to General Objects 4.4 File Protection Mechanisms 4.5 User Authentication 4.6 Summary of Security for Users ch. 4 2
3 Introduction OS still software ch. 3 vulnerabilities still apply OS must protect users from each other memory protection file protection general control and access to objects user authentication ch. 4 3
4 Chapter Outline 4.1 Protected Objects and Methods of Protection 4.2 Memory and Address Protection 4.3 Control of Access to General Objects 4.4 File Protection Mechanisms 4.5 User Authentication 4.6 Summary of Security for Users ch. 4 4
5 Fundamental Tradeoff operating systems tradeoff between: sharing protection sharing is desirable protection is difficult ch. 4 5
6 Early History no OS programs entered directly in binary through switches user s program only one on system user responsible for: loading dependent libraries, other tools scheduling time to use computer ch. 4 6
7 later machines very expensive people less expensive maximize use of machine allow many users ch. 4 7
8 multiple users. protection. multiple users need protection prevent A from writing on B s stuff B from writing on A s stuff A, B from writing on the OS ch. 4 8
9 protect what? memory sharable I/O devices, e.g., disks serially reusable I/O devices, e.g., printers, tapes shared programs, libraries networks sharable data ch. 4 9
10 OS protection. separation. physical separation, e.g. 1 user/printer temporal separation logical separation user thinks own machine cryptographic separation combinations of these ch. 4 10
11 levels of protection no protection isolation share all or nothing share via access limitation share by capabilities limit use of an object ch. 4 11
12 no protection e.g. early versions of windows some embedded environments ch. 4 12
13 isolation processes unaware of other processes each process: own address space, files, etc. OS provides confinement virtual machines ($100 laptop) ch. 4 13
14 share all or nothing owner of object declares it: public available to all users private not available ch. 4 14
15 share via access limitation Access control lists Access Control Matrices Capabilities ch. 4 15
16 limit use of an object sophisticated access control examples: can view a file, but can t print given aggregate info from database, but not individual records ch. 4 16
17 granularity at what level to protect? byte, word, field, record, file, volume? fine granularity more control but more complex more overhead ch. 4 17
18 Chapter Outline 4.1 Protected Objects and Methods of Protection 4.2 Memory and Address Protection 4.3 Control of Access to General Objects 4.4 File Protection Mechanisms 4.5 User Authentication 4.6 Summary of Security for Users ch. 4 18
19 Memory and Access Protection Fences Relocation Base/Bounds Registers Tagged Architecture Segmentation Paging Combined Paging with Segmentation ch. 4 19
20 Fences protect OS from user program confine users to one side of a boundary predefined memory address user code on one side OS on the other problem fixed boundary too restrictive doesn t protect users from each other moveable fence: store fence location in fence register os space user space ch. 4 20
21 Relocation programs written to run starting at address 0 can be run at any address addresses in source are symbolic: e.g., numstudents compiler binds these to relocatable addrs. e.g. 20 bytes from beginning of module func then linker or loader binds to absolute addresses e.g logical addresses mapped to physical by MMU program never sees real addresses ch. 4 21
22 address limits moveable fence register: base register stores smallest legal physical memory address i.e., lower bound bounds register stores upper address limit or limit register make sure each access falls within range base, limit registers only accessible by OS access through privileged instruction fragmentation is a problem though ch. 4 22
23 base/bounds registers base register j+1 k bounds register etc. addresses 0 j j+1 k k+1 etc. OS prog A prog B prog C ch. 4 23
24 program segment base/bounds goal of base/bounds registers confine program to own address space what about within an address space? errant program can still write data over own instructions base/bounds within a single address space: confine instructions to program segment confine data to data segment ch. 4 24
25 program segment base/bounds ch. 4 25
26 tagged architecture set of bits for every memory word permissions R read RW read/write X execute can also be used to label data type not common in modern systems ch. 4 26
27 segmentation intro memory is an array of bytes programmers don t usually see this way instead, think of chunks like modules classes functions data structures ch. 4 27
28 Segmentation ch. 4 28
29 why segmentation? any segment can be loaded anywhere in physical memory shared segments e.g. on multi-user system: text editor common libraries don t need to load multiple copies same protection for entire segment e.g. read-only program segment, rw for data, ch. 4 29
30 how to do segmentation? logical addr. space = group of segments each segment has a: name length logical address = <seg. number, offset> segment table maps logical address to physical address logical address <seg#,offset> physical 2 dimensional space ch one dimensional
31 how to do segmentation? ch. 4 31
32 paging divide program into equal-sized pieces logical pieces called pages physical pieces called frames MMU helps map logical to physical page size typically power of Bytes to 16 MBytes helps minimize fragmentation common in modern operating systems ch. 4 32
33 paging page #, index in page table ch offset in page same as offset in frame
34 why page size power of 2? convenient if page size is a power of 2, say 2 n logical address low order n bits: offset within the frame remaining high order bits: page number i.e., index in page table ch. 4 34
35 why power of 2 example suppose: 8 byte, i.e., 2 3, pages 8 bit addresses logical address would be page 26, byte page number offset ch. 4 35
36 segmentation with paging break program up into segments segments broken into fixed sized pages Intel 386 ch. 4 36
37 segmentation with paging ch. 4 37
38 we re getting tired. what s the point of this again? each process has its own address space thinks it s the only process on machine MMU provides translation between process address space and physical space process cannot generate address not in its own space ch. 4 38
39 Chapter Outline 4.1 Protected Objects and Methods of Protection 4.2 Memory and Address Protection 4.3 Control of Access to General Objects 4.4 File Protection Mechanisms 4.5 User Authentication 4.6 Summary of Security for Users ch. 4 39
40 4.3 Control of Access to General Objects previous section: control of memory now: control of any kind of object examples: memory secondary storage hardware devices some data structure instructions passwords and user-authentication mechanism the protection mechanism itself ch. 4 40
41 goals in protecting objects check every access user permitted doesn t mean always permitted enforce least privilege grant access to minimum set of objects required to complete a task verify acceptable usage stack: push(), pop(), shouldn t be able to do anything else to stack ch. 4 41
42 directory not directory as in FS directory each user has a list (directory) of objects the user owns no user should be able to write to the directory for each file, directory contains list of permissions, e.g. R, W, X, and owner ch. 4 42
43 directory ch. 4 43
44 directory simple *but* lists can get very long what about shared libraries, programs? same item in many lists revoking permissions have to go through everyone s lists ch. 4 44
45 access control lists maintain a list per object, not user use wildcards (*) to grant permission to a group e.g. administrator-* ch. 4 45
46 unix file permissions ch. 4 46
47 access control matrix row for each user column for each protected object simple lookups but probably lots of empty spaces ch. 4 47
48 capabilities ticket implementation grant permission to a user allow user to perform particular op tickets transferable? should be unforgeable revokeable? ch. 4 48
49 kerberos later lots more on this in ch 7 ch. 4 49
50 procedure-oriented protection ch. 4 50
51 Chapter Outline 4.1 Protected Objects and Methods of Protection 4.2 Memory and Address Protection 4.3 Control of Access to General Objects 4.4 File Protection Mechanisms 4.5 User Authentication 4.6 Summary of Security for Users ch. 4 51
52 Chapter Outline 4.1 Protected Objects and Methods of Protection 4.2 Memory and Address Protection 4.3 Control of Access to General Objects 4.4 File Protection Mechanisms 4.5 User Authentication 4.6 Summary of Security for Users ch. 4 52
53 What s in a badge? Frank Coco flashed his lights told driver to pull over had to drive in front of other driver s car and put on brakes to force him to stop beat up the driver for not stopping left Frank wasn t a cop: to coworkers: he s Crazy Frank >1,000 such incidents in Chicago area in 3 years authentication problem ch. 4 53
54 Recover Lost Passwords Answer a secret question, e.g. mother s maiden name pet s name first car Good idea? ch. 4 54
55 Paris Hilton s Sidekick The Simple Life Password: tinkerbell ch. 4 55
56 Palin Yahoo! Reset password. No access to original . Questions: Birthday? February 11th, 1964 Zip code? Where d you meet spouse? Wasilla High ch. 4 56
57 Cracking Passwords recall password cracking lab cracking passwords already in use: offline crackers L0phtcrack John the Ripper online crackers, e.g.. http password crackers many, many others ounce of prevention check password strength when creating password but beware of rules that are too strict. Why? ch. 4 57
58 Password Authentication Instead of storing cleartext passwords Store passwords transformed through some one-way function, e.g. the hash of the password When user sends password take hash of the password, H(pass) check H(pass) == what s in password file ch. 4 58
59 Salt think about our password crack lab password cracker stores word lists why not store lists of precomputed hashes of words instead? create your own tables: to prevent against this, add randomness to password hash random data called salt ch. 4 59
60 Salted Password File userid salt hash jfiore hash(56129 jfiore's password) skippy hash(21592 skippy's password) lenny hash(55573 lenny's password) etc. ch. 4 60
61 authentication future graphical passwords? biometrics? two factor authentication? password + token password + something like SecureID password + biometrics ch. 4 61
62 authentication future graphical passwords? biometrics? two factor authentication? password + token password + something like SecureID password + biometrics ch. 4 62
63 biometrics Panacea or overkill? Privacy issues? Compromised back-end database? ch. 4 63
64 one-time passwords Lamport: chain of hashes h 1 =hash(secret) or hash(secret+salt) h 2 =hash(h 1 ) h n =hash(h n-1 ) at authentication time: first time, send h n next time, send h n-1, etc. when you reach 1, reset password ch. 4 64
65 web cookies for authentication e.g., Yahoo!, paid websites first page username, password sent over SSL each additional page session cookie ch. 4 65
66 Chapter Outline 4.1 Protected Objects and Methods of Protection 4.2 Memory and Address Protection 4.3 Control of Access to General Objects 4.4 File Protection Mechanisms 4.5 User Authentication 4.6 Summary of Security for Users ch. 4 66
67 Summary. Topics. memory protection file protection general object access control user authentication ch. 4 67
Chapter 4 Protection in General-Purpose Operating Systems
Chapter 4 Protection in General-Purpose Operating Systems Charles P. Pfleeger & Shari Lawrence Pfleeger, Security in Computing, 4 th Ed., Pearson Education, 2007 1 An operating system has two goals: controlling
More informationOperating systems and security - Overview
Operating systems and security - Overview Protection in Operating systems Protected objects Protecting memory, files User authentication, especially passwords Trusted operating systems, security kernels,
More informationOperating systems and security - Overview
Operating systems and security - Overview Protection in Operating systems Protected objects Protecting memory, files User authentication, especially passwords Trusted operating systems, security kernels,
More information16 Sharing Main Memory Segmentation and Paging
Operating Systems 64 16 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per
More information15 Sharing Main Memory Segmentation and Paging
Operating Systems 58 15 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per
More informationChapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition
Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation
More informationChapter 8: Main Memory
Chapter 8: Main Memory Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and 64-bit Architectures Example:
More informationChapter 8: Memory-Management Strategies
Chapter 8: Memory-Management Strategies Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and
More informationChapter 7: Main Memory. Operating System Concepts Essentials 8 th Edition
Chapter 7: Main Memory Operating System Concepts Essentials 8 th Edition Silberschatz, Galvin and Gagne 2011 Chapter 7: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure
More informationCHAPTER 8 - MEMORY MANAGEMENT STRATEGIES
CHAPTER 8 - MEMORY MANAGEMENT STRATEGIES OBJECTIVES Detailed description of various ways of organizing memory hardware Various memory-management techniques, including paging and segmentation To provide
More informationMemory Management. Goals of Memory Management. Mechanism. Policies
Memory Management Design, Spring 2011 Department of Computer Science Rutgers Sakai: 01:198:416 Sp11 (https://sakai.rutgers.edu) Memory Management Goals of Memory Management Convenient abstraction for programming
More informationChapter 8: Main Memory. Operating System Concepts 9 th Edition
Chapter 8: Main Memory Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel
More informationChapter 8: Main Memory
Chapter 8: Main Memory Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel
More informationChapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition
Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation
More informationChapter 8: Memory- Management Strategies
Chapter 8: Memory Management Strategies Chapter 8: Memory- Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and
More informationUser Authentication. Modified By: Dr. Ramzi Saifan
User Authentication Modified By: Dr. Ramzi Saifan Authentication Verifying the identity of another entity Computer authenticating to another computer Person authenticating to a local/remote computer Important
More informationPrinciples of Operating Systems
Principles of Operating Systems Lecture 18-20 - Main Memory Ardalan Amiri Sani (ardalan@uci.edu) [lecture slides contains some content adapted from previous slides by Prof. Nalini Venkatasubramanian, and
More informationCS307: Operating Systems
CS307: Operating Systems Chentao Wu 吴晨涛 Associate Professor Dept. of Computer Science and Engineering Shanghai Jiao Tong University SEIEE Building 3-513 wuct@cs.sjtu.edu.cn Download Lectures ftp://public.sjtu.edu.cn
More informationCHAPTER 8: MEMORY MANAGEMENT. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.
CHAPTER 8: MEMORY MANAGEMENT By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the
More informationMemory management. Last modified: Adaptation of Silberschatz, Galvin, Gagne slides for the textbook Applied Operating Systems Concepts
Memory management Last modified: 26.04.2016 1 Contents Background Logical and physical address spaces; address binding Overlaying, swapping Contiguous Memory Allocation Segmentation Paging Structure of
More information6 - Main Memory EECE 315 (101) ECE UBC 2013 W2
6 - Main Memory EECE 315 (101) ECE UBC 2013 W2 Acknowledgement: This set of slides is partly based on the PPTs provided by the Wiley s companion website (including textbook images, when not explicitly
More informationChapter 8: Memory Management. Operating System Concepts with Java 8 th Edition
Chapter 8: Memory Management 8.1 Silberschatz, Galvin and Gagne 2009 Background Program must be brought (from disk) into memory and placed within a process for it to be run Main memory and registers are
More informationBackground. Contiguous Memory Allocation
Operating System Lecture 8 2017.5.9 Chapter 8 (Main Memory) Background Swapping Contiguous Memory Allocation Segmentation - Paging Memory Management Selection of a memory-management method for a specific
More informationPart Three - Memory Management. Chapter 8: Memory-Management Strategies
Part Three - Memory Management Chapter 8: Memory-Management Strategies Chapter 8: Memory-Management Strategies 8.1 Background 8.2 Swapping 8.3 Contiguous Memory Allocation 8.4 Segmentation 8.5 Paging 8.6
More informationUser Authentication. Modified By: Dr. Ramzi Saifan
User Authentication Modified By: Dr. Ramzi Saifan Authentication Verifying the identity of another entity Computer authenticating to another computer Person authenticating to a local/remote computer Important
More informationMemory management. Requirements. Relocation: program loading. Terms. Relocation. Protection. Sharing. Logical organization. Physical organization
Requirements Relocation Memory management ability to change process image position Protection ability to avoid unwanted memory accesses Sharing ability to share memory portions among processes Logical
More informationMemory Management. Reading: Silberschatz chapter 9 Reading: Stallings. chapter 7 EEL 358
Memory Management Reading: Silberschatz chapter 9 Reading: Stallings chapter 7 1 Outline Background Issues in Memory Management Logical Vs Physical address, MMU Dynamic Loading Memory Partitioning Placement
More informationAddress Translation. Tore Larsen Material developed by: Kai Li, Princeton University
Address Translation Tore Larsen Material developed by: Kai Li, Princeton University Topics Virtual memory Virtualization Protection Address translation Base and bound Segmentation Paging Translation look-ahead
More informationChapter 8 Main Memory
COP 4610: Introduction to Operating Systems (Spring 2014) Chapter 8 Main Memory Zhi Wang Florida State University Contents Background Swapping Contiguous memory allocation Paging Segmentation OS examples
More informationChapter 8: Main Memory
Chapter 8: Main Memory Operating System Concepts 8 th Edition,! Silberschatz, Galvin and Gagne 2009! Chapter 8: Memory Management Background" Swapping " Contiguous Memory Allocation" Paging" Structure
More informationCS399 New Beginnings. Jonathan Walpole
CS399 New Beginnings Jonathan Walpole Memory Management Memory Management Memory a linear array of bytes - Holds O.S. and programs (processes) - Each cell (byte) is named by a unique memory address Recall,
More information8.1 Background. Part Four - Memory Management. Chapter 8: Memory-Management Management Strategies. Chapter 8: Memory Management
Part Four - Memory Management 8.1 Background Chapter 8: Memory-Management Management Strategies Program must be brought into memory and placed within a process for it to be run Input queue collection of
More informationChapter 8: Main Memory
Chapter 8: Main Memory Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table Segmentation Example: The Intel Pentium 8.2 Silberschatz, Galvin
More informationChapter 9: Memory Management. Background
1 Chapter 9: Memory Management Background Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 9.1 Background Program must be brought into memory and placed within a process for
More informationChapter 8 Memory Management
Chapter 8 Memory Management Da-Wei Chang CSIE.NCKU Source: Abraham Silberschatz, Peter B. Galvin, and Greg Gagne, "Operating System Concepts", 9th Edition, Wiley. 1 Outline Background Swapping Contiguous
More informationChapter 8: Memory Management Strategies
Chapter 8: Memory- Management Strategies, Silberschatz, Galvin and Gagne 2009 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table
More informationLecture 8 Memory Management Strategies (chapter 8)
Bilkent University Department of Computer Engineering CS342 Operating Systems Lecture 8 Memory Management Strategies (chapter 8) Dr. İbrahim Körpeoğlu http://www.cs.bilkent.edu.tr/~korpe 1 References The
More informationOutline Key Management CS 239 Computer Security February 9, 2004
Outline Key Management CS 239 Computer Security February 9, 2004 Properties of keys Key management Key servers Certificates Page 1 Page 2 Introduction Properties of Keys It doesn t matter how strong your
More informationChapter 8: Memory Management
Chapter 8: Memory Management Chapter 8: Memory Management Background Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 8.2 Background Program must be brought into memory and placed
More informationCS 3733 Operating Systems:
CS 3733 Operating Systems: Topics: Memory Management (SGG, Chapter 08) Instructor: Dr Dakai Zhu Department of Computer Science @ UTSA 1 Reminders Assignment 2: extended to Monday (March 5th) midnight:
More informationIntroduction to Computer Security
Introduction to Computer Security Instructor: Mahadevan Gomathisankaran mgomathi@unt.edu CSCE 4550/5550, Fall 2009 Lecture 17 1 Mid Term Mean = 32.64, Median = 33.53 8 7 6 5 4 3 2 1 0 0-5 5-10 10-15 15-20
More informationI.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 8: MEMORY
I.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 8: MEMORY MANAGEMENT Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure of the
More informationMemory Management. Memory Management
Memory Management Gordon College Stephen Brinton Memory Management Background Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 1 Background Program must be brought into memory
More informationMemory Management. CSCI 315 Operating Systems Design Department of Computer Science
Memory Management CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture are based on those from Operating Systems Concepts, 9th ed., by Silberschatz, Galvin,
More informationCSE 421/521 - Operating Systems Fall Lecture - XII Main Memory Management. Tevfik Koşar. University at Buffalo. October 18 th, 2012.
CSE 421/521 - Operating Systems Fall 2012 Lecture - XII Main Memory Management Tevfik Koşar University at Buffalo October 18 th, 2012 1 Roadmap Main Memory Management Fixed and Dynamic Memory Allocation
More informationTopics: Memory Management (SGG, Chapter 08) 8.1, 8.2, 8.3, 8.5, 8.6 CS 3733 Operating Systems
Topics: Memory Management (SGG, Chapter 08) 8.1, 8.2, 8.3, 8.5, 8.6 CS 3733 Operating Systems Instructor: Dr. Turgay Korkmaz Department Computer Science The University of Texas at San Antonio Office: NPB
More informationMemory Management Cache Base and Limit Registers base limit Binding of Instructions and Data to Memory Compile time absolute code Load time
Memory Management To provide a detailed description of various ways of organizing memory hardware To discuss various memory-management techniques, including paging and segmentation To provide a detailed
More informationGoals of Memory Management
Memory Management Goals of Memory Management Allocate available memory efficiently to multiple processes Main functions Allocate memory to processes when needed Keep track of what memory is used and what
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 L17 Main Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Was Great Dijkstra a magician?
More informationMulti-Process Systems: Memory (2) Memory & paging structures: free frames. Memory & paging structures. Physical memory
Multi-Process Systems: Memory (2) What we will learn A detailed description of various ways of organizing memory Discuss various memory-management techniques, including paging and segmentation To provide
More informationFile Systems. OS Overview I/O. Swap. Management. Operations CPU. Hard Drive. Management. Memory. Hard Drive. CSI3131 Topics. Structure.
File Systems I/O Management Hard Drive Management Virtual Memory Swap Memory Management Storage and I/O Introduction CSI3131 Topics Process Management Computing Systems Memory CPU Peripherals Processes
More informationI.-C. Lin, Assistant Professor. Textbook: Operating System Principles 7ed CHAPTER 8: MEMORY
I.-C. Lin, Assistant Professor. Textbook: Operating System Principles 7ed CHAPTER 8: MEMORY MANAGEMENT Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure of
More informationPROCESS VIRTUAL MEMORY. CS124 Operating Systems Winter , Lecture 18
PROCESS VIRTUAL MEMORY CS124 Operating Systems Winter 2015-2016, Lecture 18 2 Programs and Memory Programs perform many interactions with memory Accessing variables stored at specific memory locations
More informationMemory Management. Dr. Yingwu Zhu
Memory Management Dr. Yingwu Zhu Big picture Main memory is a resource A process/thread is being executing, the instructions & data must be in memory Assumption: Main memory is super big to hold a program
More informationChapter 9 Memory Management
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 informationCompile: compiler. Load: loader. compiler linker loader memory. source object load code module module 2
Part III Storage Management Chapter 8: Memory Management Fall 2010 1 Address Generation Address generation has three stages: Compile: compiler Link: linker or linkage editor Load: loader compiler linker
More informationOutline. Operating System Security CS 239 Computer Security February 23, Introduction. Server Machines Vs. General Purpose Machines
Outline Operating System Security CS 239 Computer Security February 23, 2004 Introduction Memory protection Interprocess communications protection File protection Page 1 Page 2 Introduction Why Is OS Security
More informationModule 8: Memory Management
Module 8: Memory Management Background Logical versus Physical Address Space Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging Operating System Concepts 8.1 Silberschatz and Galvin
More informationMemory Management. Dr. Yingwu Zhu
Memory Management Dr. Yingwu Zhu Big picture Main memory is a resource A process/thread is being executing, the instructions & data must be in memory Assumption: Main memory is infinite Allocation of memory
More informationModule 8: Memory Management
Module 8: Memory Management Background Logical versus Physical Address Space Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 8.1 Background Program must be brought into memory
More informationModule 9: Memory Management. Background. Binding of Instructions and Data to Memory
Module 9: Memory Management Background Logical versus Physical Address Space Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 9.1 Background Program must be brought into memory
More informationMain Memory (Part I)
Main Memory (Part I) Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Amir H. Payberah (Tehran Polytechnic) Main Memory 1393/8/5 1 / 47 Motivation and Background Amir
More informationMain Memory. Electrical and Computer Engineering Stephen Kim ECE/IUPUI RTOS & APPS 1
Main Memory Electrical and Computer Engineering Stephen Kim (dskim@iupui.edu) ECE/IUPUI RTOS & APPS 1 Main Memory Background Swapping Contiguous allocation Paging Segmentation Segmentation with paging
More informationChapter 9 Memory Management Main Memory Operating system concepts. Sixth Edition. Silberschatz, Galvin, and Gagne 8.1
Chapter 9 Memory Management Main Memory Operating system concepts. Sixth Edition. Silberschatz, Galvin, and Gagne 8.1 Chapter 9: Memory Management Background Swapping Contiguous Memory Allocation Segmentation
More information[07] SEGMENTATION 1. 1
[07] SEGMENTATION 1. 1 OUTLINE Segmentation An Alternative to Paging Implementing Segments Segment Table Lookup Algorithm Protection and Sharing Sharing Subtleties External Fragmentation Segmentation vs
More informationCS 31: Intro to Systems Virtual Memory. Kevin Webb Swarthmore College November 15, 2018
CS 31: Intro to Systems Virtual Memory Kevin Webb Swarthmore College November 15, 2018 Reading Quiz Memory Abstraction goal: make every process think it has the same memory layout. MUCH simpler for compiler
More informationMidterm 1. Administrivia. Virtualizing Resources. CS162 Operating Systems and Systems Programming Lecture 12. Address Translation
Midterm 1 CS162 Operating Systems and Systems Programming Lecture 12 Address Translation March 5, 2018 Profs. Anthony D. Joseph & Jonathan Ragan-Kelley http://cs162.eecs.berkeley.edu Lec 12.2 Administrivia
More informationSumy State University Department of Computer Science
Sumy State University Department of Computer Science Lecture 1 (part 2). Access control. What is access control? A cornerstone in the foundation of information security is controlling how resources are
More informationFall 2017 :: CSE 306. Introduction to. Virtual Memory. Nima Honarmand (Based on slides by Prof. Andrea Arpaci-Dusseau)
Introduction to Virtual Memory Nima Honarmand (Based on slides by Prof. Andrea Arpaci-Dusseau) Motivating Virtual Memory (Very) old days: Uniprogramming only one process existed at a time OS was little
More informationCS307 Operating Systems Main Memory
CS307 Main Memory Fan Wu Department of Computer Science and Engineering Shanghai Jiao Tong University Spring 2018 Background Program must be brought (from disk) into memory and placed within a process
More informationChapter 8: Memory- Manage g me m nt n S tra r t a e t gie i s
Chapter 8: Memory- Management Strategies Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table Segmentation Example: The Intel Pentium 2009/12/16
More informationOperating Systems Memory Management. Mathieu Delalandre University of Tours, Tours city, France
Operating Systems Memory Management Mathieu Delalandre University of Tours, Tours city, France mathieu.delalandre@univ-tours.fr 1 Operating Systems Memory Management 1. Introduction 2. Contiguous memory
More informationChapter 7: File-System
Chapter 7: File-System Interface and Implementation Chapter 7: File-System Interface and Implementation File Concept File-System Structure Access Methods File-System Implementation Directory Structure
More informationO/S & Access Control. Aggelos Kiayias - Justin Neumann
O/S & Access Control Aggelos Kiayias - Justin Neumann One system Many users Objects that require protection memory I/O devices (disks, printers) programs and processes networks stored data in general Separation
More informationClassifying Information Stored in Memory! Memory Management in a Uniprogrammed System! Segments of a Process! Processing a User Program!
Memory Management in a Uniprogrammed System! A! gets a fixed segment of (usually highest )"! One process executes at a time in a single segment"! Process is always loaded at "! Compiler and linker generate
More information12: Memory Management
12: Memory Management Mark Handley Address Binding Program goes through multiple steps from compilation to execution. At some stage, addresses in the program must be bound to physical memory addresses:
More informationChapter 2: Operating-System Structures
Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System
More informationLecture 17: Address Translation. James C. Hoe Department of ECE Carnegie Mellon University
18 447 Lecture 17: Address Translation James C. Hoe Department of ECE Carnegie Mellon University 18 447 S18 L17 S1, James C. Hoe, CMU/ECE/CALCM, 2018 Your goal today Housekeeping see Virtual Memory into
More informationPage Table Structure. Hierarchical Paging. Hashed Page Tables. Inverted Page Tables
Page Table Structure Hierarchical Paging Hashed Page Tables Inverted Page Tables 1 Hierarchical Page Tables Problem: for very large logical address spaces (2 32 and 2 64 ) the page table itself becomes
More informationCPE300: Digital System Architecture and Design
CPE300: Digital System Architecture and Design Fall 2011 MW 17:30-18:45 CBC C316 Virtual Memory 11282011 http://www.egr.unlv.edu/~b1morris/cpe300/ 2 Outline Review Cache Virtual Memory Projects 3 Memory
More informationMain Memory Yi Shi Fall 2017 Xi an Jiaotong University
Main Memory Yi Shi Fall 2017 Xi an Jiaotong University Goals Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Background Program must be brought (from disk)
More informationPage 1. Goals for Today" Virtualizing Resources" Important Aspects of Memory Multiplexing" CS162 Operating Systems and Systems Programming Lecture 20
Goals for Today" CS162 Operating Systems and Systems Programming Lecture 20 Address Translation" November 7, 2011 Anthony D. Joseph and Ion Stoica http://inst.eecs.berkeley.edu/~cs162 Address Translation
More informationMain Memory. CISC3595, Spring 2015 X. Zhang Fordham University
Main Memory CISC3595, Spring 2015 X. Zhang Fordham University 1 Memory Management! Background!! Contiguous Memory Allocation!! Paging!! Structure of the Page Table!! Segmentation!! Example: The Intel Pentium
More informationMemory Management. Contents: Memory Management. How to generate code? Background
TDIU11 Operating systems Contents: Memory Management Memory Management [SGG7/8/9] Chapter 8 Background Relocation Dynamic loading and linking Swapping Contiguous Allocation Paging Segmentation Copyright
More informationMemory Management 9th Week
Department of Electrical Engineering and Information Technology Faculty of Engineering Universitas Gadjah Mada, Indonesia Operating System - TIF 206 Memory Management 9th Week Sunu Wibirama Copyright 2011
More informationSHANDONG UNIVERSITY 1
Chapter 8 Main Memory SHANDONG UNIVERSITY 1 Contents Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table Segmentation Example: The Intel Pentium SHANDONG UNIVERSITY 2 Objectives
More informationMain Memory (II) Operating Systems. Autumn CS4023
Operating Systems Autumn 2017-2018 Outline 1 Main Memory (II) Outline Main Memory (II) 1 Main Memory (II) Paging Main Memory (II) Physical address space of a process can be noncontiguous; process is allocated
More informationRecall: Address Space Map. 13: Memory Management. Let s be reasonable. Processes Address Space. Send it to disk. Freeing up System Memory
Recall: Address Space Map 13: Memory Management Biggest Virtual Address Stack (Space for local variables etc. For each nested procedure call) Sometimes Reserved for OS Stack Pointer Last Modified: 6/21/2004
More informationChapter 7 Memory Management
Operating Systems: Internals and Design Principles Chapter 7 Memory Management Ninth Edition William Stallings Frame Page Segment A fixed-length block of main memory. A fixed-length block of data that
More informationMemory Management. Minsoo Ryu. Real-Time Computing and Communications Lab. Hanyang University.
Memory Management Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Topics Covered Introduction Memory Allocation and Fragmentation Address Translation Paging
More informationLecture 10 File Systems - Interface (chapter 10)
Bilkent University Department of Computer Engineering CS342 Operating Systems Lecture 10 File Systems - Interface (chapter 10) Dr. İbrahim Körpeoğlu http://www.cs.bilkent.edu.tr/~korpe 1 References The
More informationCOS 318: Operating Systems. Virtual Memory and Address Translation
COS 318: Operating Systems Virtual Memory and Address Translation Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Today s Topics
More informationPerformance of Various Levels of Storage. Movement between levels of storage hierarchy can be explicit or implicit
Memory Management All data in memory before and after processing All instructions in memory in order to execute Memory management determines what is to be in memory Memory management activities Keeping
More information3. Memory Management
Principles of Operating Systems CS 446/646 3. Memory Management René Doursat Department of Computer Science & Engineering University of Nevada, Reno Spring 2006 Principles of Operating Systems CS 446/646
More informationMemory Management Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University
Memory Management Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Topics Covered Introduction Memory Allocation and Fragmentation Address Translation Paging
More informationLogical versus Physical Address Space
CHAPTER 8: MEMORY MANAGEMENT Background Logical versus Physical Address Space Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging Operating System Concepts, Addison-Wesley 1994
More informationCS 152 Computer Architecture and Engineering. Lecture 9 - Address Translation
CS 152 Computer Architecture and Engineering Lecture 9 - Address Translation Krste Asanovic Electrical Engineering and Computer Sciences University of California at Berkeley http://www.eecs.berkeley.edu/~krste
More informationPage 1. Goals for Today" Important Aspects of Memory Multiplexing" Virtualizing Resources" CS162 Operating Systems and Systems Programming Lecture 9
Goals for Today" CS162 Operating Systems and Systems Programming Lecture 9 Address Translation" February 24, 2014 Anthony D. Joseph http://inst.eecs.berkeley.edu/~cs162 Address Translation Schemes Segmentation
More informationIntroduction to Operating Systems
Introduction to Operating Systems Lecture 6: Memory Management MING GAO SE@ecnu (for course related communications) mgao@sei.ecnu.edu.cn Apr. 22, 2015 Outline 1 Issues of main memory 2 Main memory management
More informationChapter 8 & Chapter 9 Main Memory & Virtual Memory
Chapter 8 & Chapter 9 Main Memory & Virtual Memory 1. Various ways of organizing memory hardware. 2. Memory-management techniques: 1. Paging 2. Segmentation. Introduction Memory consists of a large array
More information