HashCache: Cache Storage for the Next Billion

Size: px
Start display at page:

Download "HashCache: Cache Storage for the Next Billion"

Transcription

1 HashCache: Cache Storage for the Next Billion Anirudh Badam KyoungSoo Park Vivek S. Pai Larry L. Peterson Princeton University 1

2 Next Billion Internet Users 2

3 Next Billion Internet Users Schools, urban middle class in developing regions 2

4 Next Billion Internet Users Schools, urban middle class in developing regions $200 Affordable hardware OLPC and Intel Classmate 2

5 Next Billion Internet Users Schools, urban middle class in developing regions $200 Affordable hardware OLPC and Intel Classmate Expensive Internet $1500+ per month per Mbps $1500 per month Unlikely to improve in the near future 2

6 Bandwidth Saving 3

7 Bandwidth Saving Connectivity is a precious resource 3

8 Bandwidth Saving Cache Connectivity is a precious resource Internet Saving bandwidth important Disk caches reduce network bandwidth requirement 3

9 Bandwidth Saving Cache Connectivity is a precious resource Internet Saving bandwidth important Disk caches reduce network bandwidth requirement Good news - disk is very cheap $100/TB 3

10 Why Large Caches? 4

11 Why Large Caches? Larger bandwidth savings Refreshes cheaper than re-fetches Overnight prefetch, content push from peers 4

12 Why Large Caches? Larger bandwidth savings Good offline behavior Preload websites Enables local search Refreshes cheaper than re-fetches Overnight prefetch, content push from peers 4

13 Why Large Caches? Larger bandwidth savings Good offline behavior Preload websites Enables local search Refreshes cheaper than re-fetches Overnight prefetch, content push from peers Save even on dynamic content WAN Acceleration = packet caching 4

14 What is the Cost? 5

15 What is the Cost? 70 seeks per sec In-memory data structures Hash table avoids seeks for misses Cache replacement (LRU, etc) 5

16 What is the Cost? 70 seeks per sec In-memory data structures Hash table avoids seeks for misses Cache replacement (LRU, etc) RAM index size per TB Open Source (Squid) - 10 GB Commercial (Tiger) - 5 GB 5

17 What is the Cost? 70 seeks per sec In-memory data structures Hash table avoids seeks for misses Cache replacement (LRU, etc) RAM index size per TB Open Source (Squid) - 10 GB Commercial (Tiger) - 5 GB x 20 Can not use laptops for cache 2 servers, $2K each = 20 laptops 5

18 Our Solution 6

19 Our Solution HashCache: storage engine w/ plug-in indexing 6 schemes in paper, 3 shown here New Web proxy using HashCache engine 6

20 Our Solution HashCache: storage engine w/ plug-in indexing 6 schemes in paper, 3 shown here New Web proxy using HashCache engine Efficiency and Performance: Range of policies trading speed and memory 20-50x less RAM for Squid-like speed 6-10x less RAM vs Tiger (Commercial) 6

21 Our Solution HashCache: storage engine w/ plug-in indexing 6 schemes in paper, 3 shown here New Web proxy using HashCache engine Efficiency and Performance: Range of policies trading speed and memory 20-50x less RAM for Squid-like speed 6-10x less RAM vs Tiger (Commercial) Can now use cheap laptops vs servers Even for TB-sized caches 6

22 4 Our Solution 3 HashCache Current Better Gigabytes/Dollar Squid Tiger Performance: req/sec/disk 6

23 A Brief History of Cache 7

24 A Brief History of Cache URL 7

25 A Brief History of Cache URL ddddhhhhbbbb 7

26 A Brief History of Cache URL ddddhhhhbbbb } } } Directory Level 1 Directory Level 2 Actual File 7

27 A Brief History of Cache URL ddddhhhhbbbb } } } In-memory Hashtable Directory Level 1 Directory Level 2 Actual File 7

28 A Brief History of Cache URL Squid ddddhhhhbbbb } } } In-memory Hashtable Directory Level 1 Directory Level 2 Actual File 7

29 A Brief History of Cache URL 7

30 A Brief History of Cache URL Filesystem Circular Log 7

31 A Brief History of Cache URL hash_value Filesystem Circular Log 7

32 A Brief History of Cache URL hash_value hash_value Filesystem Circular Log offset Memory 7

33 A Brief History of Cache URL Tiger hash_value hash_value Filesystem Circular Log offset Memory 7

34 A Brief History of Cache Open Source Implementation - Squid Multiple seeks for hit, miss and write Dependent on default filesystems Commercial/High Performance - Tiger One seek for hit Custom file layout 7

35 Index Element Sizes 8

36 Index Element Sizes Functionality Existence Identification Replacement Policy Location Information Other 8

37 Index Element Sizes Functionality Existence Identification Replacement Policy Location Information Other Implementation Choice Hashtable Chaining Pointers Hash LRU List Pointers Disk Offset, Version Number, etc Expiration Date, Size, HTTP header info etc Total 8

38 Index Element Sizes Functionality Implementation Choice Existence Identification Replacement Policy Location Information Other Hashtable Chaining Pointers Hash LRU List Pointers Disk Offset, Version Number, etc Expiration Date, Size, HTTP header info etc Total 8 Focusing mainly on reducing the size of the index

39 Index Element Sizes Functionality Implementation Choice Squid (Bits) Existence Identification Hashtable Chaining Pointers 96 Hash 160 Replacement Policy LRU List Pointers 64 Location Information Other Disk Offset, Version Number, etc Expiration Date, Size, HTTP header info etc Total 560 8

40 Index Element Sizes Functionality Implementation Choice Squid (Bits) Tiger (Bits) Existence Identification Hashtable Chaining Pointers Hash Replacement Policy LRU List Pointers Location Information Other Disk Offset, Version Number, etc Expiration Date, Size, HTTP header info etc Total

41 Revisiting the Index... 9

42 Revisiting the Index... Application Cache Manager In-memory Index Reliable Filesystem 9

43 Revisiting the Index... Application Cache Manager Cache size limited by memory size In-memory Index Reliable Filesystem 9

44 Revisiting the Index... Application Cache Manager Cache size limited by memory size In-memory Index Reliable Filesystem Performance depends on disk seeks 9

45 Revisiting the Index... Application Cache Manager Cache size limited by memory size reduce the dependency In-memory Index Reliable Filesystem Performance depends on disk seeks 9

46 Revisiting the Index... Application Cache Manager Cache size limited by memory size reduce the dependency In-memory Index Reliable Filesystem Performance depends on disk seeks optimize for seeks 9

47 Revisiting the Index... Application Cache Eliminate(?) in-memory index Manager In-memory Index Reliable Filesystem 9

48 Revisiting the Index... Application Cache Manager Eliminate(?) in-memory index Need membership and location information In-memory Index Reliable Filesystem 9

49 Revisiting the Index... Application Cache Manager In-memory Index Eliminate(?) in-memory index Need membership and location information Use disk as hash table Reliable Filesystem 9

50 Revisiting the Index... Application Cache Manager In-memory Index Reliable Filesystem Eliminate(?) in-memory index Need membership and location information Use disk as hash table On disk data structures for key lookup Store the object as values for the keys 9

51 Revisiting the Index... Application Cache Manager Application Application Cache Manager Logic In-memory Index In-memory Index Reliable Filesystem HashCache Reliable Filesystem Engine 9

52 Revisiting the Index... Application Cache Manager Application Logic In-memory Index In-memory Index Reliable Filesystem HashCache Reliable Filesystem Engine 9

53 Revisiting the Index... Application Cache Manager Application Logic In-memory Index In-memory Index Reliable Filesystem HashCache Engine 9

54 Revisiting the Index... Application Cache Manager Application Logic In-memory Index Reliable Filesystem In-memory Index HashCache Engine 9

55 Revisiting the Index... Application Cache Manager Application Logic In-memory Index Reliable Filesystem In-memory Index HashCache Engine 9

56 HashCache: Basic Policy 10

57 HashCache: Basic Policy URL 10

58 HashCache: Basic Policy URL data 10

59 HashCache: Basic Policy URL hash_value H Bits data 10

60 HashCache: Basic Policy URL hash_value H Bits data N contiguous blocks (Disk Table) Filesystem 10

61 HashCache: Basic Policy URL hash_value t % N H Bits data N contiguous blocks (Disk Table) Filesystem 10

62 HashCache: Basic Policy URL hash_value % N H Bits t t th block data N contiguous blocks (Disk Table) Filesystem 10

63 HashCache: Basic Policy URL hash_value % N H Bits t t th block head data N contiguous blocks (Disk Table) 10 Filesystem Circular Log

64 HashCache: Basic Policy URL hash_value % N H Bits t t th block head N contiguous blocks (Disk Table) 10 Filesystem Circular Log

65 HashCache: Basic Policy URL hash_value % N H Bits t t th block head N contiguous blocks (Disk Table) 10 Filesystem Circular Log

66 HashCache: Basic Policy Advantages No index memory needed Tuned for one seek for most objects 10

67 HashCache: Basic Policy Advantages No index memory needed Tuned for one seek for most objects Disadvantages One seek per miss No collison control No cache replacement policy 10

68 Collision Control 11

69 Collision Control 11

70 Collision Control Chaining 11

71 Collision Control Does not transition well to disk-based Multiple seeks per operation Chaining Walking hash bin list Global replacement policy crosses bins 11

72 Collision Control Chaining 11

73 Collision Control Fixed locations where each object can be found Allocated contiguously, read together Set Associativity T-Ways 11

74 Collision Control Fixed locations where each object can be found Allocated contiguously, read together Seek time dominates short read Set Associativity T-Ways 11

75 Collision Control Fixed locations where each object can be found Allocated contiguously, read together Seek time dominates short read Set Associativity Eliminate global cache replacement policies T-Ways 11

76 Reducing Seeks 12

77 Reducing Seeks Bin Pointers 32 Chaining Pointers 64 In-memory hash table Too much memory for pointers Hash 32 Total (bits) 128 In-memory Hash Table 12

78 Reducing Seeks In-memory hash table Too much memory for pointers Disk is already a hash table Pointers not needed Large bitmap with the same layout as the disk Disk Table 12

79 Reducing Seeks H Bits Disk Block In-memory Bitmap Disk Table In-memory hash table Too much memory for pointers Disk is already a hash table Pointers not needed Large bitmap with the same layout as the disk Just store hash per URL 12

80 Reducing Seeks H Bits Disk Block In-memory Bitmap Disk Table In-memory hash table Too much memory for pointers Disk is already a hash table Pointers not needed Large bitmap with the same layout as the disk Just store hash per URL 12

81 Reducing Seeks 64 Original Hash Original hash of the URL: 64 bits 12

82 Reducing Seeks 64 Original Hash log(s) Original hash of the URL: 64 bits Eliminate bits for (same) bin # (2 28 objs, 8-way, #bins=2 25 (S)) 12

83 Reducing Seeks 64 Original Hash log(s) 8 low FP hash Original hash of the URL: 64 bits Eliminate bits for (same) bin # (2 28 objs, 8-way, #bins=2 25 (S)) Shrink hash size: Just to eliminate most false positives (8 bits) 12

84 Cache Replacement 64 Original Hash log(s) 8 low FP hash 13

85 Cache Replacement Large disks: million objects 64 Original Hash log(s) Global caching relevant when disk size working set When disk >> working set, local policies global policies 8 low FP hash 13

86 Cache Replacement Large disks: million objects 64 Original Hash log(s) 8 low FP hash 11 hash + rank Global caching relevant when disk size working set When disk >> working set, local policies global policies Local replacement benefits 3 bits per URL Performed on contiguous objects False positives limited by set size 13

87 HashCache: SetMem Policy 14

88 HashCache: SetMem Policy URL 14

89 HashCache: SetMem Policy URL data 14

90 HashCache: SetMem Policy URL hash_value % S t data 14

91 HashCache: SetMem Policy URL hash_value % S t head data Memory Filesystem 14

92 HashCache: SetMem Policy URL hash_value % S 11 Bits t th set t data t th set head Memory Filesystem 14

93 HashCache: SetMem Policy URL hash_value % S 11 Bits t th set t data t th set head Memory Filesystem 14

94 HashCache: SetMem Policy URL hash_value % S 11 Bits t th set t t th set head Memory Filesystem 14

95 HashCache: SetMem Policy URL LRU hash_value % S LRU 11 Bits t th set t t th set head Memory Filesystem 14

96 HashCache: SetMem Policy Advantages No seeks for most misses 1 seek per read, 1 seek per write Good hash + replacement in 11 bits 14

97 HashCache: SetMem Policy Advantages No seeks for most misses 1 seek per read, 1 seek per write Good hash + replacement in 11 bits Disadvantages Writes still need seeks 14

98 Further Reducing Seeks Disk Table 15

99 Further Reducing Seeks Storing objects by hash can produce random reads & writes Disk Table 15

100 Further Reducing Seeks Storing objects by hash can produce random reads & writes Restructure on-disk table Disk Table 15

101 Further Reducing Seeks Storing objects by hash can produce random reads & writes Restructure on-disk table 11 hash rank Store only hash, rank, offset 15

102 Further Reducing Seeks Storing objects by hash can produce random reads & writes Restructure on-disk table 11 hash rank Store only hash, rank, offset Move all data to log 43 hash offset rank 15

103 Further Reducing Seeks Storing objects by hash can produce random reads & writes Restructure on-disk table 11 hash rank 43 hash rank offset 15 Store only hash, rank, offset Move all data to log Benefits Group writes amortize seeks Scheduling related writes enables read prefetch Both reads & writes < 1 seek

104 Further Reducing Seeks 0 HC-Basic 11 HC-SetMem 43 HC-Log Storing objects by hash can produce random reads & writes Restructure on-disk table Move all data to log Store only hash, rank, offset Benefits Group writes amortize seeks Scheduling related writes enables read prefetch Both reads & writes < 1 seek 15

105 Further Reducing Seeks 0 HC-Basic 11 HC-SetMem 43 HC-Log 232 Tiger 560 Squid Storing objects by hash can produce random reads & writes Restructure on-disk table Move all data to log Benefits Store only hash, rank, offset Group writes amortize seeks Scheduling related writes enables read prefetch Both reads & writes < 1 seek 15

106 HashCache: Log Policy 16

107 HashCache: Log Policy URL 16

108 HashCache: Log Policy URL data 16

109 HashCache: Log Policy URL hash_value % S t data 16

110 HashCache: Log Policy hash_value URL LRU % S head t data Circular Log Memory Filesystem 16

111 HashCache: Log Policy hash_value URL LRU % S head t t th set 43 Bits data Circular Log Memory Filesystem 16

112 HashCache: Log Policy hash_value URL LRU % S head t t th set 43 Bits data Circular Log Memory Filesystem 16

113 Implementation 17

114 Implementation HashCache Storage Engine with plug-in policies 17

115 Implementation HashCache Storage Engine with plug-in policies HashCache Web proxy using storage engine 17

116 Implementation HashCache Storage Engine with plug-in policies HashCache Web proxy using storage engine Multiple apps on same box, sharing memory 17

117 Implementation HashCache Storage Engine with plug-in policies HashCache Web proxy using storage engine Multiple apps on same box, sharing memory 20,000 lines C code for the proxy and 1000 lines for the indexing policies 17

118 Implementation HashCache Storage Engine with plug-in policies Event Driven implementation with non-blocking I/O HashCache Web proxy using storage engine Multiple apps on same box, sharing memory 20,000 lines C code for the proxy and 1000 lines for the indexing policies 17

119 Implementation HashCache Storage Engine with plug-in policies HashCache Web proxy using storage engine Multiple apps on same box, sharing memory Event Driven implementation with non-blocking I/O Design similar to that of Flash Web Server. Helpers for I/O and DNS lookups 20,000 lines C code for the proxy and 1000 lines for the indexing policies 17

120 Implementation HashCache Storage Engine with plug-in policies HashCache Web proxy using storage engine Multiple apps on same box, sharing memory 20,000 lines C code for the proxy and 1000 lines for the indexing policies Event Driven implementation with non-blocking I/O Design similar to that of Flash Web Server. Helpers for I/O and DNS lookups Balances load across multiple disks easily and makes scaling obvious 17

121 Evaluation - Web Polygraph De-facto feature and performance testing tool for web proxies Compare all variants of HashCache with Squid and Tiger 18

122 Evaluation - Web Polygraph De-facto feature and performance testing tool for web proxies Compare all variants of HashCache with Squid and Tiger Experiment Name Setting Configuration Comparision 18

123 Evaluation - Web Polygraph De-facto feature and performance testing tool for web proxies Compare all variants of HashCache with Squid and Tiger Experiment Name Setting Configuration Comparision Low End Small School using Laptop 1.4 GHz 256 MB 60 GB SATA HashCache vs Squid vs Tiger 18

124 Evaluation - Web Polygraph De-facto feature and performance testing tool for web proxies Compare all variants of HashCache with Squid and Tiger Experiment Name Setting Configuration Comparision Low End Small School using Laptop 1.4 GHz 256 MB 60 GB SATA HashCache vs Squid vs Tiger High End ISP with High-End Server 2 GHz 3.5 GB 5x18 GB SCSI HashCache-Log vs Squid vstiger 18

125 Evaluation - Web Polygraph De-facto feature and performance testing tool for web proxies Compare all variants of HashCache with Squid and Tiger Experiment Name Setting Configuration Comparision Low End Small School using Laptop 1.4 GHz 256 MB 60 GB SATA HashCache vs Squid vs Tiger High End ISP with High-End Server 2 GHz 3.5 GB 5x18 GB SCSI HashCache-Log vs Squid vstiger Large Disk Large School with Mini-Tower 1.4 GHz 2 GB 2x1TB USB HashCache-Log vs HashCache-SetMem 18

126 Hit Rate Comparison 60 Max 45 Hit Rate HC-Basic Squid HC-SetMem HC-Log Tiger 19

127 Low End Configuration

128 Low End Configuration 300 Performance req/sec HC-Basic Squid HC-SetMem Tiger HC-Log

129 Low End Configuration 300 Open Source and Commercial 50% 20% could index only 18 GB Performance req/sec % RAM for Index HashCache could index 60 GB 75% 5% 0 HC-Basic Squid HC-SetMem Tiger HC-Log

130 High End Configuration 3,000 5x18 GB Disk Performance req/sec 2,250 1, Squid HashCache-Log Tiger 21

131 High End Configuration 3,000 5x18 GB Disk Performance req/sec 2,250 1, % RAM for Index 4% 18% 0 Squid HashCache-Log Tiger 21

132 Index Efficiency

133 Index Efficiency Squid Tiger HC-Log HC-SetMem 0 1,500 3,000 4,500 6,000 Max Disk for 1GB RAM

134 Index Efficiency Squid 40 reqs/sec Tiger 300 HC-Log 300 HC-SetMem ,500 3,000 4,500 6,000 Max Disk for 1GB RAM

135 Large Disk Configuration 1 TB Disk 300 Performance req/sec HC-Basic HC-SetMem HC-Log 23

136 Large Disk Configuration 1 TB Disk MB Performance req/sec MB Index 150 MB 0 HC-Basic HC-SetMem HC-Log 23

137 Conclusions & Status New Storage Engine & Web Cache From no RAM per object to tiny no. of bits/obj 6-10x better than Tiger, 20-50x vs Squid Enables large disk w/ only laptop-class machine More policies, details in paper Suitable for developing-world usage Current deployments: Ghana, Nigeria Working w/ school supplier on new deployments 24

138 Thank You! 25

Indexing. Jan Chomicki University at Buffalo. Jan Chomicki () Indexing 1 / 25

Indexing. Jan Chomicki University at Buffalo. Jan Chomicki () Indexing 1 / 25 Indexing Jan Chomicki University at Buffalo Jan Chomicki () Indexing 1 / 25 Storage hierarchy Cache Main memory Disk Tape Very fast Fast Slower Slow (nanosec) (10 nanosec) (millisec) (sec) Very small Small

More information

CS 550 Operating Systems Spring File System

CS 550 Operating Systems Spring File System 1 CS 550 Operating Systems Spring 2018 File System 2 OS Abstractions Process: virtualization of CPU Address space: virtualization of memory The above to allow a program to run as if it is in its own private,

More information

File Systems. Kartik Gopalan. Chapter 4 From Tanenbaum s Modern Operating System

File Systems. Kartik Gopalan. Chapter 4 From Tanenbaum s Modern Operating System File Systems Kartik Gopalan Chapter 4 From Tanenbaum s Modern Operating System 1 What is a File System? File system is the OS component that organizes data on the raw storage device. Data, by itself, is

More information

Disks and Files. Storage Structures Introduction Chapter 8 (3 rd edition) Why Not Store Everything in Main Memory?

Disks and Files. Storage Structures Introduction Chapter 8 (3 rd edition) Why Not Store Everything in Main Memory? Why Not Store Everything in Main Memory? Storage Structures Introduction Chapter 8 (3 rd edition) Sharma Chakravarthy UT Arlington sharma@cse.uta.edu base Management Systems: Sharma Chakravarthy Costs

More information

File Systems: Fundamentals

File Systems: Fundamentals File Systems: Fundamentals 1 Files! What is a file? Ø A named collection of related information recorded on secondary storage (e.g., disks)! File attributes Ø Name, type, location, size, protection, creator,

More information

Computer Science 146. Computer Architecture

Computer Science 146. Computer Architecture Computer Architecture Spring 2004 Harvard University Instructor: Prof. dbrooks@eecs.harvard.edu Lecture 18: Virtual Memory Lecture Outline Review of Main Memory Virtual Memory Simple Interleaving Cycle

More information

Storage hierarchy. Textbook: chapters 11, 12, and 13

Storage hierarchy. Textbook: chapters 11, 12, and 13 Storage hierarchy Cache Main memory Disk Tape Very fast Fast Slower Slow Very small Small Bigger Very big (KB) (MB) (GB) (TB) Built-in Expensive Cheap Dirt cheap Disks: data is stored on concentric circular

More information

File System Internals. Jo, Heeseung

File System Internals. Jo, Heeseung File System Internals Jo, Heeseung Today's Topics File system implementation File descriptor table, File table Virtual file system File system design issues Directory implementation: filename -> metadata

More information

File Systems: Fundamentals

File Systems: Fundamentals 1 Files Fundamental Ontology of File Systems File Systems: Fundamentals What is a file? Ø A named collection of related information recorded on secondary storage (e.g., disks) File attributes Ø Name, type,

More information

COMP 530: Operating Systems File Systems: Fundamentals

COMP 530: Operating Systems File Systems: Fundamentals File Systems: Fundamentals Don Porter Portions courtesy Emmett Witchel 1 Files What is a file? A named collection of related information recorded on secondary storage (e.g., disks) File attributes Name,

More information

File Systems. CS170 Fall 2018

File Systems. CS170 Fall 2018 File Systems CS170 Fall 2018 Table of Content File interface review File-System Structure File-System Implementation Directory Implementation Allocation Methods of Disk Space Free-Space Management Contiguous

More information

Chapter 11: Implementing File Systems

Chapter 11: Implementing File Systems Chapter 11: Implementing File Systems Operating System Concepts 99h Edition DM510-14 Chapter 11: Implementing File Systems File-System Structure File-System Implementation Directory Implementation Allocation

More information

RAID in Practice, Overview of Indexing

RAID in Practice, Overview of Indexing RAID in Practice, Overview of Indexing CS634 Lecture 4, Feb 04 2014 Slides based on Database Management Systems 3 rd ed, Ramakrishnan and Gehrke 1 Disks and Files: RAID in practice For a big enterprise

More information

File system internals Tanenbaum, Chapter 4. COMP3231 Operating Systems

File system internals Tanenbaum, Chapter 4. COMP3231 Operating Systems File system internals Tanenbaum, Chapter 4 COMP3231 Operating Systems Architecture of the OS storage stack Application File system: Hides physical location of data on the disk Exposes: directory hierarchy,

More information

Chapter 10: File System Implementation

Chapter 10: File System Implementation Chapter 10: File System Implementation Chapter 10: File System Implementation File-System Structure" File-System Implementation " Directory Implementation" Allocation Methods" Free-Space Management " Efficiency

More information

CS356: Discussion #9 Memory Hierarchy and Caches. Marco Paolieri Illustrations from CS:APP3e textbook

CS356: Discussion #9 Memory Hierarchy and Caches. Marco Paolieri Illustrations from CS:APP3e textbook CS356: Discussion #9 Memory Hierarchy and Caches Marco Paolieri (paolieri@usc.edu) Illustrations from CS:APP3e textbook The Memory Hierarchy So far... We modeled the memory system as an abstract array

More information

CSE 124: Networked Services Lecture-17

CSE 124: Networked Services Lecture-17 Fall 2010 CSE 124: Networked Services Lecture-17 Instructor: B. S. Manoj, Ph.D http://cseweb.ucsd.edu/classes/fa10/cse124 11/30/2010 CSE 124 Networked Services Fall 2010 1 Updates PlanetLab experiments

More information

Lecture 18 File Systems and their Management and Optimization

Lecture 18 File Systems and their Management and Optimization CS 423 Operating Systems Design Lecture 18 File Systems and their Management and Optimization Klara Nahrstedt Fall 2011 Based on slides by YY Zhou and Andrew S. Tanenbaum Overview Administrative announcements

More information

Storing Data: Disks and Files

Storing Data: Disks and Files Storing Data: Disks and Files Chapter 7 (2 nd edition) Chapter 9 (3 rd edition) Yea, from the table of my memory I ll wipe away all trivial fond records. -- Shakespeare, Hamlet Database Management Systems,

More information

ChunkStash: Speeding Up Storage Deduplication using Flash Memory

ChunkStash: Speeding Up Storage Deduplication using Flash Memory ChunkStash: Speeding Up Storage Deduplication using Flash Memory Biplob Debnath +, Sudipta Sengupta *, Jin Li * * Microsoft Research, Redmond (USA) + Univ. of Minnesota, Twin Cities (USA) Deduplication

More information

COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. 5 th. Edition. Chapter 5. Large and Fast: Exploiting Memory Hierarchy

COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. 5 th. Edition. Chapter 5. Large and Fast: Exploiting Memory Hierarchy COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 5 Large and Fast: Exploiting Memory Hierarchy Principle of Locality Programs access a small proportion of their address

More information

Chapter 5. Large and Fast: Exploiting Memory Hierarchy

Chapter 5. Large and Fast: Exploiting Memory Hierarchy Chapter 5 Large and Fast: Exploiting Memory Hierarchy Principle of Locality Programs access a small proportion of their address space at any time Temporal locality Items accessed recently are likely to

More information

Disks, Memories & Buffer Management

Disks, Memories & Buffer Management Disks, Memories & Buffer Management The two offices of memory are collection and distribution. - Samuel Johnson CS3223 - Storage 1 What does a DBMS Store? Relations Actual data Indexes Data structures

More information

OPERATING SYSTEM. Chapter 12: File System Implementation

OPERATING SYSTEM. Chapter 12: File System Implementation OPERATING SYSTEM Chapter 12: File System Implementation Chapter 12: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods Free-Space Management

More information

Yahoo Traffic Server -a Powerful Cloud Gatekeeper

Yahoo Traffic Server -a Powerful Cloud Gatekeeper Yahoo Traffic Server -a Powerful Cloud Gatekeeper Shih-Yong Wang Yahoo! Taiwan 2010 COSCUP Aug 15, 2010 What is Proxy Caching? Proxy Caching explicit client configuration transparent emulate responses

More information

CSE 4/521 Introduction to Operating Systems. Lecture 23 File System Implementation II (Allocation Methods, Free-Space Management) Summer 2018

CSE 4/521 Introduction to Operating Systems. Lecture 23 File System Implementation II (Allocation Methods, Free-Space Management) Summer 2018 CSE 4/521 Introduction to Operating Systems Lecture 23 File System Implementation II (Allocation Methods, Free-Space Management) Summer 2018 Overview Objective: To discuss how the disk is managed for a

More information

Chapter Seven. Memories: Review. Exploiting Memory Hierarchy CACHE MEMORY AND VIRTUAL MEMORY

Chapter Seven. Memories: Review. Exploiting Memory Hierarchy CACHE MEMORY AND VIRTUAL MEMORY Chapter Seven CACHE MEMORY AND VIRTUAL MEMORY 1 Memories: Review SRAM: value is stored on a pair of inverting gates very fast but takes up more space than DRAM (4 to 6 transistors) DRAM: value is stored

More information

Introduction to I/O and Disk Management

Introduction to I/O and Disk Management 1 Secondary Storage Management Disks just like memory, only different Introduction to I/O and Disk Management Why have disks? Ø Memory is small. Disks are large. Short term storage for memory contents

More information

Multimedia Streaming. Mike Zink

Multimedia Streaming. Mike Zink Multimedia Streaming Mike Zink Technical Challenges Servers (and proxy caches) storage continuous media streams, e.g.: 4000 movies * 90 minutes * 10 Mbps (DVD) = 27.0 TB 15 Mbps = 40.5 TB 36 Mbps (BluRay)=

More information

L9: Storage Manager Physical Data Organization

L9: Storage Manager Physical Data Organization L9: Storage Manager Physical Data Organization Disks and files Record and file organization Indexing Tree-based index: B+-tree Hash-based index c.f. Fig 1.3 in [RG] and Fig 2.3 in [EN] Functional Components

More information

Introduction to I/O and Disk Management

Introduction to I/O and Disk Management Introduction to I/O and Disk Management 1 Secondary Storage Management Disks just like memory, only different Why have disks? Ø Memory is small. Disks are large. Short term storage for memory contents

More information

OPERATING SYSTEMS II DPL. ING. CIPRIAN PUNGILĂ, PHD.

OPERATING SYSTEMS II DPL. ING. CIPRIAN PUNGILĂ, PHD. OPERATING SYSTEMS II DPL. ING. CIPRIAN PUNGILĂ, PHD. File System Implementation FILES. DIRECTORIES (FOLDERS). FILE SYSTEM PROTECTION. B I B L I O G R A P H Y 1. S I L B E R S C H AT Z, G A L V I N, A N

More information

Memory Hierarchy. Slides contents from:

Memory Hierarchy. Slides contents from: Memory Hierarchy Slides contents from: Hennessy & Patterson, 5ed Appendix B and Chapter 2 David Wentzlaff, ELE 475 Computer Architecture MJT, High Performance Computing, NPTEL Memory Performance Gap Memory

More information

PS2 out today. Lab 2 out today. Lab 1 due today - how was it?

PS2 out today. Lab 2 out today. Lab 1 due today - how was it? 6.830 Lecture 7 9/25/2017 PS2 out today. Lab 2 out today. Lab 1 due today - how was it? Project Teams Due Wednesday Those of you who don't have groups -- send us email, or hand in a sheet with just your

More information

Cisco Videoscape Distribution Suite Service Broker

Cisco Videoscape Distribution Suite Service Broker Solution Overview Cisco Videoscape Distribution Suite Service Broker Product Overview Cisco Videoscape Distribution Suite Service Broker (VDS SB) is responsible for performing client request routing in

More information

(Storage System) Access Methods Buffer Manager

(Storage System) Access Methods Buffer Manager 6.830 Lecture 5 9/20/2017 Project partners due next Wednesday. Lab 1 due next Monday start now!!! Recap Anatomy of a database system Major Components: Admission Control Connection Management ---------------------------------------(Query

More information

VIRTUAL MEMORY II. Jo, Heeseung

VIRTUAL MEMORY II. Jo, Heeseung VIRTUAL MEMORY II Jo, Heeseung TODAY'S TOPICS How to reduce the size of page tables? How to reduce the time for address translation? 2 PAGE TABLES Space overhead of page tables The size of the page table

More information

Computer Architecture and System Software Lecture 09: Memory Hierarchy. Instructor: Rob Bergen Applied Computer Science University of Winnipeg

Computer Architecture and System Software Lecture 09: Memory Hierarchy. Instructor: Rob Bergen Applied Computer Science University of Winnipeg Computer Architecture and System Software Lecture 09: Memory Hierarchy Instructor: Rob Bergen Applied Computer Science University of Winnipeg Announcements Midterm returned + solutions in class today SSD

More information

UCFS A Novel User-Space, High Performance, Customized File System for Web Proxy Servers

UCFS A Novel User-Space, High Performance, Customized File System for Web Proxy Servers UCFS A Novel User-Space, High Performance, Customized File System for Web Proxy Servers Jun Wang, Rui Min, Yingwu Zhu and Yiming Hu Department of Electrical & Computer Engineering and Computer Science

More information

Segmentation with Paging. Review. Segmentation with Page (MULTICS) Segmentation with Page (MULTICS) Segmentation with Page (MULTICS)

Segmentation with Paging. Review. Segmentation with Page (MULTICS) Segmentation with Page (MULTICS) Segmentation with Page (MULTICS) Review Segmentation Segmentation Implementation Advantage of Segmentation Protection Sharing Segmentation with Paging Segmentation with Paging Segmentation with Paging Reason for the segmentation with

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 11: File System Implementation Prof. Alan Mislove (amislove@ccs.neu.edu) File-System Structure File structure Logical storage unit Collection

More information

I/O Buffering and Streaming

I/O Buffering and Streaming I/O Buffering and Streaming I/O Buffering and Caching I/O accesses are reads or writes (e.g., to files) Application access is arbitary (offset, len) Convert accesses to read/write of fixed-size blocks

More information

COS 318: Operating Systems. Storage Devices. Vivek Pai Computer Science Department Princeton University

COS 318: Operating Systems. Storage Devices. Vivek Pai Computer Science Department Princeton University COS 318: Operating Systems Storage Devices Vivek Pai Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall11/cos318/ Today s Topics Magnetic disks Magnetic disk

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 20 Main Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Pages Pages and frames Page

More information

CSCI-UA.0201 Computer Systems Organization Memory Hierarchy

CSCI-UA.0201 Computer Systems Organization Memory Hierarchy CSCI-UA.0201 Computer Systems Organization Memory Hierarchy Mohamed Zahran (aka Z) mzahran@cs.nyu.edu http://www.mzahran.com Programmer s Wish List Memory Private Infinitely large Infinitely fast Non-volatile

More information

The UNIX Time- Sharing System

The UNIX Time- Sharing System The UNIX Time- Sharing System Dennis M. Ritchie and Ken Thompson Bell Laboratories Communications of the ACM July 1974, Volume 17, Number 7 UNIX overview Unix is a general-purpose, multi-user, interactive

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 25 File Systems Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Q 2 Data and Metadata

More information

Chapter 12: File System Implementation

Chapter 12: File System Implementation Chapter 12: File System Implementation Chapter 12: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods Free-Space Management Efficiency

More information

Advanced Computer Architecture

Advanced Computer Architecture ECE 563 Advanced Computer Architecture Fall 2009 Lecture 3: Memory Hierarchy Review: Caches 563 L03.1 Fall 2010 Since 1980, CPU has outpaced DRAM... Four-issue 2GHz superscalar accessing 100ns DRAM could

More information

CS162 - Operating Systems and Systems Programming. Address Translation => Paging"

CS162 - Operating Systems and Systems Programming. Address Translation => Paging CS162 - Operating Systems and Systems Programming Address Translation => Paging" David E. Culler! http://cs162.eecs.berkeley.edu/! Lecture #15! Oct 3, 2014!! Reading: A&D 8.1-2, 8.3.1. 9.7 HW 3 out (due

More information

Chapter 12: File System Implementation

Chapter 12: File System Implementation Chapter 12: File System Implementation Silberschatz, Galvin and Gagne 2013 Chapter 12: File System Implementation File-System Structure File-System Implementation Allocation Methods Free-Space Management

More information

Information Retrieval II

Information Retrieval II Information Retrieval II David Hawking 30 Sep 2010 Machine Learning Summer School, ANU Session Outline Ranking documents in response to a query Measuring the quality of such rankings Case Study: Tuning

More information

FILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23

FILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23 FILE SYSTEMS CS124 Operating Systems Winter 2015-2016, Lecture 23 2 Persistent Storage All programs require some form of persistent storage that lasts beyond the lifetime of an individual process Most

More information

Main Memory and the CPU Cache

Main Memory and the CPU Cache Main Memory and the CPU Cache CPU cache Unrolled linked lists B Trees Our model of main memory and the cost of CPU operations has been intentionally simplistic The major focus has been on determining

More information

Data Storage and Query Answering. Data Storage and Disk Structure (2)

Data Storage and Query Answering. Data Storage and Disk Structure (2) Data Storage and Query Answering Data Storage and Disk Structure (2) Review: The Memory Hierarchy Swapping, Main-memory DBMS s Tertiary Storage: Tape, Network Backup 3,200 MB/s (DDR-SDRAM @200MHz) 6,400

More information

Virtual Memory. Reading. Sections 5.4, 5.5, 5.6, 5.8, 5.10 (2) Lecture notes from MKP and S. Yalamanchili

Virtual Memory. Reading. Sections 5.4, 5.5, 5.6, 5.8, 5.10 (2) Lecture notes from MKP and S. Yalamanchili Virtual Memory Lecture notes from MKP and S. Yalamanchili Sections 5.4, 5.5, 5.6, 5.8, 5.10 Reading (2) 1 The Memory Hierarchy ALU registers Cache Memory Memory Memory Managed by the compiler Memory Managed

More information

Operating Systems Design Exam 2 Review: Spring 2012

Operating Systems Design Exam 2 Review: Spring 2012 Operating Systems Design Exam 2 Review: Spring 2012 Paul Krzyzanowski pxk@cs.rutgers.edu 1 Question 1 Under what conditions will you reach a point of diminishing returns where adding more memory may improve

More information

Lecture S3: File system data layout, naming

Lecture S3: File system data layout, naming Lecture S3: File system data layout, naming Review -- 1 min Intro to I/O Performance model: Log Disk physical characteristics/desired abstractions Physical reality Desired abstraction disks are slow fast

More information

Chapter 12: File System Implementation. Operating System Concepts 9 th Edition

Chapter 12: File System Implementation. Operating System Concepts 9 th Edition Chapter 12: File System Implementation Silberschatz, Galvin and Gagne 2013 Chapter 12: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods

More information

LECTURE 10: Improving Memory Access: Direct and Spatial caches

LECTURE 10: Improving Memory Access: Direct and Spatial caches EECS 318 CAD Computer Aided Design LECTURE 10: Improving Memory Access: Direct and Spatial caches Instructor: Francis G. Wolff wolff@eecs.cwru.edu Case Western Reserve University This presentation uses

More information

Chapter 12: File System Implementation

Chapter 12: File System Implementation Chapter 12: File System Implementation Silberschatz, Galvin and Gagne 2013 Chapter 12: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation Methods

More information

UNIX File Systems. How UNIX Organizes and Accesses Files on Disk

UNIX File Systems. How UNIX Organizes and Accesses Files on Disk UNIX File Systems How UNIX Organizes and Accesses Files on Disk Why File Systems File system is a service which supports an abstract representation of the secondary storage to the OS A file system organizes

More information

EECS 482 Introduction to Operating Systems

EECS 482 Introduction to Operating Systems EECS 482 Introduction to Operating Systems Winter 2018 Baris Kasikci Slides by: Harsha V. Madhyastha OS Abstractions Applications Threads File system Virtual memory Operating System Next few lectures:

More information

Administrivia. Crawlers: Nutch. Course Overview. Issues. Crawling Issues. Groups Formed Architecture Documents under Review Group Meetings CSE 454

Administrivia. Crawlers: Nutch. Course Overview. Issues. Crawling Issues. Groups Formed Architecture Documents under Review Group Meetings CSE 454 Administrivia Crawlers: Nutch Groups Formed Architecture Documents under Review Group Meetings CSE 454 4/14/2005 12:54 PM 1 4/14/2005 12:54 PM 2 Info Extraction Course Overview Ecommerce Standard Web Search

More information

Parser. Select R.text from Report R, Weather W where W.image.rain() and W.city = R.city and W.date = R.date and R.text.

Parser. Select R.text from Report R, Weather W where W.image.rain() and W.city = R.city and W.date = R.date and R.text. Select R.text from Report R, Weather W where W.image.rain() and W.city = R.city and W.date = R.date and R.text. Lifecycle of an SQL Query CSE 190D base System Implementation Arun Kumar Query Query Result

More information

FAWN. A Fast Array of Wimpy Nodes. David Andersen, Jason Franklin, Michael Kaminsky*, Amar Phanishayee, Lawrence Tan, Vijay Vasudevan

FAWN. A Fast Array of Wimpy Nodes. David Andersen, Jason Franklin, Michael Kaminsky*, Amar Phanishayee, Lawrence Tan, Vijay Vasudevan FAWN A Fast Array of Wimpy Nodes David Andersen, Jason Franklin, Michael Kaminsky*, Amar Phanishayee, Lawrence Tan, Vijay Vasudevan Carnegie Mellon University *Intel Labs Pittsburgh Energy in computing

More information

Systems Programming and Computer Architecture ( ) Timothy Roscoe

Systems Programming and Computer Architecture ( ) Timothy Roscoe Systems Group Department of Computer Science ETH Zürich Systems Programming and Computer Architecture (252-0061-00) Timothy Roscoe Herbstsemester 2016 AS 2016 Caches 1 16: Caches Computer Architecture

More information

TSAR : A Two Tier Sensor Storage Architecture using Interval Skip Graphs

TSAR : A Two Tier Sensor Storage Architecture using Interval Skip Graphs TSAR : A Two Tier Sensor Storage Architecture using Interval Skip Graphs Authors: Peter Desnoyers, Deepak Ganesan, Prashant Shenoy ( University of Massachusetts, Amherst, MA) Presented by: Nikhil Raghavan

More information

Persistent Storage - Datastructures and Algorithms

Persistent Storage - Datastructures and Algorithms Persistent Storage - Datastructures and Algorithms 1 / 21 L 03: Virtual Memory and Caches 2 / 21 Questions How to access data, when sequential access is too slow? Direct access (random access) file, how

More information

File System: Interface and Implmentation

File System: Interface and Implmentation File System: Interface and Implmentation 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

More information

Storage. Hwansoo Han

Storage. Hwansoo Han Storage Hwansoo Han I/O Devices I/O devices can be characterized by Behavior: input, out, storage Partner: human or machine Data rate: bytes/sec, transfers/sec I/O bus connections 2 I/O System Characteristics

More information

Review 1-- Storing Data: Disks and Files

Review 1-- Storing Data: Disks and Files Review 1-- Storing Data: Disks and Files Chapter 9 [Sections 9.1-9.7: Ramakrishnan & Gehrke (Text)] AND (Chapter 11 [Sections 11.1, 11.3, 11.6, 11.7: Garcia-Molina et al. (R2)] OR Chapter 2 [Sections 2.1,

More information

Chapter 17. Disk Storage, Basic File Structures, and Hashing. Records. Blocking

Chapter 17. Disk Storage, Basic File Structures, and Hashing. Records. Blocking Chapter 17 Disk Storage, Basic File Structures, and Hashing Records Fixed and variable length records Records contain fields which have values of a particular type (e.g., amount, date, time, age) Fields

More information

Roadmap. Java: Assembly language: OS: Machine code: Computer system:

Roadmap. Java: Assembly language: OS: Machine code: Computer system: Roadmap C: car *c = malloc(sizeof(car)); c->miles = 100; c->gals = 17; float mpg = get_mpg(c); free(c); Assembly language: Machine code: get_mpg: pushq movq... popq ret %rbp %rsp, %rbp %rbp 0111010000011000

More information

CIT 668: System Architecture. Caching

CIT 668: System Architecture. Caching CIT 668: System Architecture Caching Topics 1. Cache Types 2. Web Caching 3. Replacement Algorithms 4. Distributed Caches 5. memcached A cache is a system component that stores data so that future requests

More information

Computer Architecture. Memory Hierarchy. Lynn Choi Korea University

Computer Architecture. Memory Hierarchy. Lynn Choi Korea University Computer Architecture Memory Hierarchy Lynn Choi Korea University Memory Hierarchy Motivated by Principles of Locality Speed vs. Size vs. Cost tradeoff Locality principle Temporal Locality: reference to

More information

Computer Systems Laboratory Sungkyunkwan University

Computer Systems Laboratory Sungkyunkwan University File System Internals Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics File system implementation File descriptor table, File table

More information

Week 12: File System Implementation

Week 12: File System Implementation Week 12: File System Implementation Sherif Khattab http://www.cs.pitt.edu/~skhattab/cs1550 (slides are from Silberschatz, Galvin and Gagne 2013) Outline File-System Structure File-System Implementation

More information

Chapter 11: Implementing File

Chapter 11: Implementing File Chapter 11: Implementing File Systems Chapter 11: Implementing File Systems File-System Structure File-System Implementation Directory Implementation Allocation Methods Free-Space Management Efficiency

More information

Virtual Memory 2. Today. Handling bigger address spaces Speeding translation

Virtual Memory 2. Today. Handling bigger address spaces Speeding translation Virtual Memory 2 Today Handling bigger address spaces Speeding translation Considerations with page tables Two key issues with page tables Mapping must be fast Done on every memory reference, at least

More information

Memory management. Last modified: Adaptation of Silberschatz, Galvin, Gagne slides for the textbook Applied Operating Systems Concepts

Memory 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 information

1. Creates the illusion of an address space much larger than the physical memory

1. Creates the illusion of an address space much larger than the physical memory Virtual memory Main Memory Disk I P D L1 L2 M Goals Physical address space Virtual address space 1. Creates the illusion of an address space much larger than the physical memory 2. Make provisions for

More information

EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture)

EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture) EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture) Dept. of Computer Science & Engineering Chentao Wu wuct@cs.sjtu.edu.cn Download lectures ftp://public.sjtu.edu.cn User:

More information

Memory Hierarchy Y. K. Malaiya

Memory Hierarchy Y. K. Malaiya Memory Hierarchy Y. K. Malaiya Acknowledgements Computer Architecture, Quantitative Approach - Hennessy, Patterson Vishwani D. Agrawal Review: Major Components of a Computer Processor Control Datapath

More information

ECE 650 Systems Programming & Engineering. Spring 2018

ECE 650 Systems Programming & Engineering. Spring 2018 ECE 650 Systems Programming & Engineering Spring 2018 File Systems Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) File Systems Disks can do two things: read_block and write_block

More information

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University Che-Wei Chang chewei@mail.cgu.edu.tw Department of Computer Science and Information Engineering, Chang Gung University Chapter 10: File System Chapter 11: Implementing File-Systems Chapter 12: Mass-Storage

More information

Virtual or Logical. Logical Addr. MMU (Memory Mgt. Unit) Physical. Addr. 1. (50 ns access)

Virtual or Logical. Logical Addr. MMU (Memory Mgt. Unit) Physical. Addr. 1. (50 ns access) Virtual Memory - programmer views memory as large address space without concerns about the amount of physical memory or memory management. (What do the terms 3-bit (or 6-bit) operating system or overlays

More information

Memory and multiprogramming

Memory and multiprogramming Memory and multiprogramming COMP342 27 Week 5 Dr Len Hamey Reading TW: Tanenbaum and Woodhull, Operating Systems, Third Edition, chapter 4. References (computer architecture): HP: Hennessy and Patterson

More information

Chapter 11: Implementing File Systems. Operating System Concepts 9 9h Edition

Chapter 11: Implementing File Systems. Operating System Concepts 9 9h Edition Chapter 11: Implementing File Systems Operating System Concepts 9 9h Edition Silberschatz, Galvin and Gagne 2013 Chapter 11: Implementing File Systems File-System Structure File-System Implementation Directory

More information

CS510 Operating System Foundations. Jonathan Walpole

CS510 Operating System Foundations. Jonathan Walpole CS510 Operating System Foundations Jonathan Walpole File System Performance File System Performance Memory mapped files - Avoid system call overhead Buffer cache - Avoid disk I/O overhead Careful data

More information

Storage Systems. Storage Systems

Storage Systems. Storage Systems Storage Systems Storage Systems We already know about four levels of storage: Registers Cache Memory Disk But we've been a little vague on how these devices are interconnected In this unit, we study Input/output

More information

Yioop Full Historical Indexing In Cache Navigation. Akshat Kukreti

Yioop Full Historical Indexing In Cache Navigation. Akshat Kukreti Yioop Full Historical Indexing In Cache Navigation Akshat Kukreti Agenda Introduction History Feature Cache Page Validation Feature Conclusion Demo Introduction Project goals History feature for enabling

More information

Premium Web Cache Server JAGUAR 5000

Premium Web Cache Server JAGUAR 5000 Web Appliance Products Premium Web Cache Server JAGUAR 5000 Headquarters 13 Fl., Eunsung Bldg., 53-8 Cheongdamdong Kangnamgu Seoul, Korea 135-763 Tel +8-3446-6070 Fax +8-3445-9099 R&D Center 34 Gajeongdong,

More information

ECE 598 Advanced Operating Systems Lecture 14

ECE 598 Advanced Operating Systems Lecture 14 ECE 598 Advanced Operating Systems Lecture 14 Vince Weaver http://www.eece.maine.edu/~vweaver vincent.weaver@maine.edu 19 March 2015 Announcements Homework #4 posted soon? 1 Filesystems Often a MBR (master

More information

Vnodes. Every open file has an associated vnode struct All file system types (FFS, NFS, etc.) have vnodes

Vnodes. Every open file has an associated vnode struct All file system types (FFS, NFS, etc.) have vnodes Vnodes Every open file has an associated vnode struct All file system types (FFS, NFS, etc.) have vnodes - v data points to FS-specific data - Function pointers for operations (open/read/write/... ) When

More information

Database Applications (15-415)

Database Applications (15-415) Database Applications (15-415) DBMS Internals: Part II Lecture 11, February 17, 2015 Mohammad Hammoud Last Session: DBMS Internals- Part I Today Today s Session: DBMS Internals- Part II A Brief Summary

More information

Chapter 8 Virtual Memory

Chapter 8 Virtual Memory Operating Systems: Internals and Design Principles Chapter 8 Virtual Memory Seventh Edition William Stallings Modified by Rana Forsati for CSE 410 Outline Principle of locality Paging - Effect of page

More information

Disk Scheduling COMPSCI 386

Disk Scheduling COMPSCI 386 Disk Scheduling COMPSCI 386 Topics Disk Structure (9.1 9.2) Disk Scheduling (9.4) Allocation Methods (11.4) Free Space Management (11.5) Hard Disk Platter diameter ranges from 1.8 to 3.5 inches. Both sides

More information

Page 1. Recap: File System Goals" Recap: Linked Allocation"

Page 1. Recap: File System Goals Recap: Linked Allocation Recap: File System Goals" CS162 Operating Systems and Systems Programming Lecture 14 File Systems (cont d), Key Value Storage Systems" Maximize sequential performance Efiicient random access to file Easy

More information

Memory hierarchy review. ECE 154B Dmitri Strukov

Memory hierarchy review. ECE 154B Dmitri Strukov Memory hierarchy review ECE 154B Dmitri Strukov Outline Cache motivation Cache basics Six basic optimizations Virtual memory Cache performance Opteron example Processor-DRAM gap in latency Q1. How to deal

More information