Web Servers /Personal Workstations: Measuring Different Ways They Use the File System

Size: px
Start display at page:

Download "Web Servers /Personal Workstations: Measuring Different Ways They Use the File System"

Transcription

1 Web Servers /Personal Workstations: Measuring Different Ways They Use the File System Randy Appleton Northern Michigan University, Marquette MI, USA Abstract This research compares the different ways in which web servers and personal workstations use the file system. The differences between web server file usage and personal workstation file usage is described The dynamic distributions of file types opened while the systems run, dynamic distributions of file locations, and frequency of various system calls are all presented and compared between web servers and personal workstations. 1. Introduction In this research we analyze several Linux servers and workstations to determine their usage of various file system calls while running their normal daily workload. The file system calls used on actual servers were identified. The kernel was modified to measure parameters such as usage count, transfer size and error rate. Additional data was gathered about the files actually used on a dynamic basis such as file location, name and operation, yielding a file system trace. The results of this study are an analysis of actual file system call usage combined with a description of the types, names and locations of files used. The web servers in question process 20,000 hits per day, involving 5,000 unique hosts per week and 930 megabytes/day of data transfer. The personal workstations were the workstations of people who compile, edit papers, browse the web, and do other daily office work. This project was done in the hope that kernel designers can use the data within to better optimize file system design and algorithm selection. Further we hope that by showing web site designers and web application designers their actual file usage patterns they too can improve their code. Finally, we wanted to show system administrators the different loads they place on their machines. 2. Related Work Several studies have analyzed file system usage. File systems usage was captured and analyzed for Unix in 1984 in [Zou84], for BSD in 1985 in [Ous85], and Linux in 2004 in [Ara04]. The author has done previous research in this area in the context of file system prefetching in [Gri94]. The research in [Ara04] is particularly relevant. They developed a set of kernel modifications called TraceFS, which is a general framework for capturing and analyzing file system usage data. The modification we developed have less overhead, but are less general, than the work in [Ara04]. The work in [Ros00] describes file usage in great detail in HP UX and Windows NT environments with particular attention to the interaction between the file system and the file system cache. Our results confirm the general pattern of file system usage discovered in these previous works, though in a Linux using, web serving and GUI user interface environment. Three particular contributions of this work is to describe the directories and file types used on a dynamic basis, and to count the number of file system calls per process. We know of no other research into this area. 3. Methodology Applications can interact with the file system using a set of predefined system calls. For our research we

2 focused on (), (), open(), close(), dup(), dup2(), lseek(), (), (), (), stat(), stat64(), mmap(), and oldmmap(). We also found it necessary to record fork() and () calls in order to keep track of file descriptors and processes. Code for each of these system calls was located and modified in the Linux kernel. When each of the above system calls was invoked, our modified kernel logged data to a log file known as the file system trace. We converted each stat64() system call into a stat() system call for accounting purposes, since they are intrinsicaly the same operation. We also grouped mmap() and oldmmap(). significant web server load and is the main programming, compiling, and testing machine for our students. It has around two hundred user accounts. The trace files were processed with various Perl scripts. Program correctness was verified by two different coders. Additionally, output of the scripts was checked by hand for plausibility. 4. System Call Analysis The table below and graphs in the appendix summarize file system activity. Data was appended to this log file at the rate of about one gigabyte per week. The log file was filtered to remove any system calls related to logging. Total entries after filtering were over eighty million entries. Sample entries are shown below. FORK: PID 991 OTHERPID 1031 EXEC: PID 1031 Error 0 OPEN: fn /etc/ld.so.preload PID 1031 mode 8 flags 0 fd OPEN: fn /etc/ld.so.cache PID 1031 mode 0 flags 0 fd 3 READ: PID 1031 fd 3 count 1024 CLOSE: PID 1031 fd 3 Capturing our log data was computationally inexpensive and did not disturb the running of our servers. Typical CPU load generated by the logging was well under 1% of total CPU load. Logging our data had minimal impact on disk drive usage. Typically fifty to one hundred system calls were made by applications between each to the trace file. by our software Server slowdown was imperceptible to normal users. Because of our software design and our desire to minimize impact upon the machine, our logging software was at times overloaded with data. About 1% of total entries were lost for this reason. We have every reason to believe that the missing 1% is very similar to the 99% we captured. The modified kernel was run on three different computers. The first was a personal workstation and used to , browse the web, play music, and edit files. The second machine is the main departmental server for the computer science department. It handles a Server Workstation Call Count % Count % 6,713,519 42% 7,667,528 58% 3,323,973 21% 5,075,708 38% open 2,120,301 13% 55, % close 1,401,533 8% 55, % fork 18, % mmap 1,160, % 16, % dup 11, % 1, lseek 55, % 3, stat 967, % 323, % 8, % , % 1, , % For our departmental server four system calls dominated all activity. Read (43%), (21%), open (13%) and close (9%) constitute 86% of all system calls. Reads were twice as common as s. The average process generated 479 s and 237 s. The average opened file experienced 3.2 s and 1.6 s. We personally found it surprising that the average process generated so many file oriented system calls and that the average file was processed with so few s and s. For the personal workstation two system calls dominated all activity. Read (58%) and (38%) constitute 96% of all system calls. Open and close are not nearly as common as on the departmental server because the user of this workstation used it for tasks (long running editing session, playing music)

3 that did not generate many opens and closes. Neither compiling nor web serving was done on this personal workstation. Like the server s were almost twice as common as s. The average process generated 479 s and 237 s, similar numbers to the server. The average opened file experienced 3.2 s and 1.6 s. A file system on a personal workstation will therefore see as many s and s and s, but many fewer opens and closes than a server. Reads and s are very much larger than we expected. On the departmental server the average size of a call was 85,708 bytes. On the personal workstation it was 62,365 bytes. Writes averaged 71,584 (server) and 50,663 (workstation) bytes. Most strikiing was the difference in opens. On te web sserver 13% of all operations were opens, and on the personal workstation only 0.4% were opens. A file system optimized for web usage will emphasize open performance much more than a file system optimized for personal workstation use. 5. Most Used Directories We measured the most commonly used directories. For every file open, the directory containing that file is noted. We counted the final directory used by every file open, and not any upper level directories traversed to get to this final directory. For example, an open of /var/log/apache2/access_log was counted as an open in /var/log/apache2 but not in /var/log nor in /var nor in /. A summary is shown below. Note that for both the personal workstation and the departmental server the most common directories are /proc and /dev. Also note that the most common directories constitute a very small fraction of all file opens. The most frequently used twenty directories for our server represent only 0.3% of all file open. The most frequently used 1000 directories represent just over 3% of all file opens. For the personal workstation the equivalent fractions are only 7% and 12%. We are surprised by the conclusion there are no hot spot directories; we expected different results. A file system optimized for web server usage should expect worse performance from any directory caching, since directory operations are sp between more directories on a web server workload than on a personal workstation workload. Most directories actually used are close to the top of the directory tree. It is rare that a file is open ten levels deep, and much more common that a file is opened within two or four levels of the top of the directory tree. The many Python library directories used surprised us greatly (so much so we had to double check our work). On our computers we have a mail daemon written in Python that runs once per hour. Therefore it ran several hundred times during our logging activity. Each instance calls up several Python include files, which call up other include files, etc. We conclude that even small deamons run occasionally in scripting based languages can place a significant load on the file system, and believe that any daemon written in such a language must be written with extra care to avoid this problem. This illustrates the point that system administrators can be surprised by the results of auditing their machines. 6. Most Used File Types The chart in the appendix shows the most common file extensions for files named in open() calls. This data varies widely between server and personal workstation. Both machines used shared libraries very heavily; they were the most commonly used type of file on both systems. The Python files are discussed above. Evidence of our server s web duties is shown on this list. The *.htm and *.gif files are pages being offered to the Internet. The *.pid files are used by the Apache web server to coordinate its various processes. The workstation log data shows that the KDE desktop files (*.kde) and Python scripts used by the RedHat KDE installation (*.py, *.pyc) are heavily used. For the personal workstation the graphics files

4 (*.gif and *.JPG) are from the web browsers cache. 7. Conclusions Web servers use the file system in somewhat different ways that personal workstations. Web servers do many more file opens that personal workstations (13% of all file operations, vs 0.4%). They have a larger average size. They sp their accesses across more directories. An operating system that would optimize web performance would optimize for this different usage pattern. Understanding how applications access file systems is important in the design of both file systems and application. Using the data above we conclude that s and s are surprisingly large (around 60K). Files access is not localized to a few directories but instead is scattered throughout the file system in directories close to the root. Reads are twice as common as s and four times as common as opens. No one kind of file dominates file accesses, however shared libraries are the most commonly used kind of file. References [1] A. Aranya, C. P. Wright, and E. Zadok. Tracefs: A File System to Trace Them All. In Proceedings of the Third USENIX Conference on File and Storage Technologies (FAST 2004), San Francisco, CA, March/April [2] J. Ousterhout, H. Costa, D. Harrison, J. Kunze, M. Kupfer, and J. Thompson. A Trace Driven Analysis of the UNIX 4.2 BSD File System. In Proceedings of the 10th ACM SOSP, pages 15 24, Orcas Island, WA, December ACM. [3] J. Griffeon and R. Appleton, Reducing File System Latency Using a Predictive Approach, Conference Proceedings of the USENIX Summer 1994 Technical Conference, pages , June [4] Drew Roselli, Jacob R. Lorch, and Thomas E. Anderson, A Comparison of File System Workloads,2000 USENIX Annual Technical Conference, June 2000, San Diego CA. [5] S. Zhou, H. Da Costa, and A. J. Smith. A File System Tracing Package for Berkeley UNIX. In Proceedings of the USENIX Summer Conference, pages , June 1984.

5 System Call Distribution for Server lseek fork close 9% open 13% mmap 7% dup stat 6% 22% 43% open close fork mmap dup lseek stat System Call Distribution for Workstation 39% open close mmap lseek fork dupstat 2% 59% open close fork mmap dup lseek stat

6 Number of Opens File on Server Number of Opens File On Workstation Directory Accesses so 7,298.kde Par 3,386.so pyc 3,174 (other shared library files) py 1,581.py (other shared library files) 1,529.pyc htm 1,032.jpg gif 1,020.new o 813.slt h 805.pr loc 732.afm db 489.ali a 156.gz cla pre 145.dir all 143.gif Directory on Server Directory Access 28,670 /proc/ 27,587 /proc/ 16,176 /dev/ 15,496 /dev/ 2,093 /staff/user1/.kde/share/config/ Directory on Workstation 5,460 /staff/user1/. kde/share/config/ 1,831 /usr/share/config/ 2,351 /lib/i686/ 1,523 /etc/ 2,185 /etc/ 1,229 /usr/share/ rhn/up2date_client/ 1,741 / 1,092 /usr/sbin/ 1,699 /lib/ 1,051 /staff/user1/personal/pictures/work-backgrounds/ 801 /usr/lib/python1.5/ 976 /usr/lib/python1.5/ 715 /usr/share/rhn/ up2date_client/ Table 1: File and Directory Access Counts

VFS Interceptor: Dynamically Tracing File System Operations in real. environments

VFS Interceptor: Dynamically Tracing File System Operations in real. environments VFS Interceptor: Dynamically Tracing File System Operations in real environments Yang Wang, Jiwu Shu, Wei Xue, Mao Xue Department of Computer Science and Technology, Tsinghua University iodine01@mails.tsinghua.edu.cn,

More information

A trace-driven analysis of disk working set sizes

A trace-driven analysis of disk working set sizes A trace-driven analysis of disk working set sizes Chris Ruemmler and John Wilkes Operating Systems Research Department Hewlett-Packard Laboratories, Palo Alto, CA HPL OSR 93 23, 5 April 993 Keywords: UNIX,

More information

Disk Drive Workload Captured in Logs Collected During the Field Return Incoming Test

Disk Drive Workload Captured in Logs Collected During the Field Return Incoming Test Disk Drive Workload Captured in Logs Collected During the Field Return Incoming Test Alma Riska Seagate Research Pittsburgh, PA 5222 Alma.Riska@seagate.com Erik Riedel Seagate Research Pittsburgh, PA 5222

More information

A Comparison of File. D. Roselli, J. R. Lorch, T. E. Anderson Proc USENIX Annual Technical Conference

A Comparison of File. D. Roselli, J. R. Lorch, T. E. Anderson Proc USENIX Annual Technical Conference A Comparison of File System Workloads D. Roselli, J. R. Lorch, T. E. Anderson Proc. 2000 USENIX Annual Technical Conference File System Performance Integral component of overall system performance Optimised

More information

A Comparison of FFS Disk Allocation Policies

A Comparison of FFS Disk Allocation Policies A Comparison of FFS Disk Allocation Policies Keith A. Smith Computer Science 261r A new disk allocation algorithm, added to a recent version of the UNIX Fast File System, attempts to improve file layout

More information

Workload Characterization in a Large Distributed File System

Workload Characterization in a Large Distributed File System CITI Technical Report 94Ð3 Workload Characterization in a Large Distributed File System Sarr Blumson sarr@citi.umich.edu ABSTRACT Most prior studies of distributed file systems have focussed on relatively

More information

Disk Built-in Caches: Evaluation on System Performance

Disk Built-in Caches: Evaluation on System Performance Disk Built-in Caches: Evaluation on System Performance Yingwu Zhu Department of ECECS University of Cincinnati Cincinnati, OH 45221, USA zhuy@ececs.uc.edu Yiming Hu Department of ECECS University of Cincinnati

More information

File Size Distribution on UNIX Systems Then and Now

File Size Distribution on UNIX Systems Then and Now File Size Distribution on UNIX Systems Then and Now Andrew S. Tanenbaum, Jorrit N. Herder*, Herbert Bos Dept. of Computer Science Vrije Universiteit Amsterdam, The Netherlands {ast@cs.vu.nl, jnherder@cs.vu.nl,

More information

A Comparison of FFS Disk Allocation Policies

A Comparison of FFS Disk Allocation Policies A Comparison of Disk Allocation Policies Keith A. Smith and Margo Seltzer Harvard University Abstract The 4.4BSD file system includes a new algorithm for allocating disk blocks to files. The goal of this

More information

Skewed-Associative Caches: CS752 Final Project

Skewed-Associative Caches: CS752 Final Project Skewed-Associative Caches: CS752 Final Project Professor Sohi Corey Halpin Scot Kronenfeld Johannes Zeppenfeld 13 December 2002 Abstract As the gap between microprocessor performance and memory performance

More information

A Trace-Driven Analysis of the UNIX 4.2 BSD File System

A Trace-Driven Analysis of the UNIX 4.2 BSD File System A Trace-Driven Analysis of the UNIX 4.2 BSD File System John K. Ousterhout, Hervé Da Costa, David Harrison, John A. Kunze, Mike Kupfer, and James G. Thompson Computer Science Division Electrical Engineering

More information

Reducing Storage Management Costs via Informed User-Based Policies

Reducing Storage Management Costs via Informed User-Based Policies Reducing Storage Management Costs via Informed User-Based Policies Erez Zadok, Jeffrey Osborn, Ariye Shater, Charles Wright, and Kiran-Kumar Muniswamy-Reddy Stony Brook University {ezk, jrosborn, ashater,

More information

An Evaluation of Alternative Designs for a Grid Information Service

An Evaluation of Alternative Designs for a Grid Information Service An Evaluation of Alternative Designs for a Grid Information Service Warren Smith, Abdul Waheed *, David Meyers, Jerry Yan Computer Sciences Corporation * MRJ Technology Solutions Directory Research L.L.C.

More information

Reducing File System Latency using a Predictive Approach

Reducing File System Latency using a Predictive Approach Reducing File System Latency using a Predictive Approach Technical Report #CS247-94 June 1994 James Griffioen, Randy Appleton Department of Computer Science University of Kentucky Lexington, KY 40506 Abstract

More information

Processes and Threads

Processes and Threads COS 318: Operating Systems Processes and Threads Kai Li and Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall13/cos318 Today s Topics u Concurrency

More information

Design Overview of the FreeBSD Kernel CIS 657

Design Overview of the FreeBSD Kernel CIS 657 Design Overview of the FreeBSD Kernel CIS 657 Organization of the Kernel Machine-independent 86% of the kernel (80% in 4.4BSD) C code Machine-dependent 14% of kernel Only 0.6% of kernel in assembler (2%

More information

Identifying Stable File Access Patterns

Identifying Stable File Access Patterns Identifying Stable File Access Patterns Purvi Shah Jehan-François Pâris 1 Ahmed Amer 2 Darrell D. E. Long 3 University of Houston University of Houston University of Pittsburgh U. C. Santa Cruz purvi@cs.uh.edu

More information

Design Overview of the FreeBSD Kernel. Organization of the Kernel. What Code is Machine Independent?

Design Overview of the FreeBSD Kernel. Organization of the Kernel. What Code is Machine Independent? Design Overview of the FreeBSD Kernel CIS 657 Organization of the Kernel Machine-independent 86% of the kernel (80% in 4.4BSD) C C code Machine-dependent 14% of kernel Only 0.6% of kernel in assembler

More information

On the Relationship of Server Disk Workloads and Client File Requests

On the Relationship of Server Disk Workloads and Client File Requests On the Relationship of Server Workloads and Client File Requests John R. Heath Department of Computer Science University of Southern Maine Portland, Maine 43 Stephen A.R. Houser University Computing Technologies

More information

A Trace-Driven Analysis of the UNIX 4.2 BSD File System

A Trace-Driven Analysis of the UNIX 4.2 BSD File System A Trace-Driven Analysis of the UNIX 4.2 BSD File System John K. Ousterhout, Hervg Da Costa, David Harrison, John A. Kunze, Mike Kupfer, and James G. Thompson Computer Science Division Electrical Engineering

More information

An Introduction to Unix Power Tools

An Introduction to Unix Power Tools An to Unix Power Tools Randolph Langley Department of Computer Science Florida State University August 27, 2008 History of Unix Unix Today Command line versus graphical interfaces to COP 4342, Fall History

More information

ToolBlocks: An Infrastructure for the Construction of Memory Hierarchy Analysis Tools.

ToolBlocks: An Infrastructure for the Construction of Memory Hierarchy Analysis Tools. Published in the International European Conference on Parallel Computing (EURO-PAR), August 2000. ToolBlocks: An Infrastructure for the Construction of Memory Hierarchy Tools. Timothy Sherwood Brad Calder

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

Efficient String Concatenation in Python

Efficient String Concatenation in Python Efficient String Concatenation in Python An assessment of the performance of several methods Source : http://www.skymind.com/~ocrow/python_string/ Introduction Building long strings in the Python progamming

More information

A Two-Expert Approach to File Access Prediction

A Two-Expert Approach to File Access Prediction A Two-Expert Approach to File Access Prediction Wenjing Chen Christoph F. Eick Jehan-François Pâris 1 Department of Computer Science University of Houston Houston, TX 77204-3010 tigerchenwj@yahoo.com,

More information

Long-Term File Activity Patterns in a UNIX Workstation Environment

Long-Term File Activity Patterns in a UNIX Workstation Environment Long-Term File Activity Patterns in a UNIX Workstation Environment Timothy J. Gibson and Ethan L. Miller [1] Department of Computer Science and Electrical Engineering University of Maryland - Baltimore

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

I/O Buffer Cache Mechanism Based on the Frequency of File Usage

I/O Buffer Cache Mechanism Based on the Frequency of File Usage I/O Buffer Cache Mechanism Based on the Frequency of File Usage Tatsuya Katakami Toshihiro Tabata and Hideo Taniguchi Graduate School of Natural Science and Technology, Okayama University katakami@slab.cs.okayama-u.ac.jp,

More information

Client (meet lib) tac_firewall ch_firewall ag_vm. (3) Create ch_firewall. (5) Receive and examine (6) Locate agent (7) Create pipes (8) Activate agent

Client (meet lib) tac_firewall ch_firewall ag_vm. (3) Create ch_firewall. (5) Receive and examine (6) Locate agent (7) Create pipes (8) Activate agent Performance Issues in TACOMA Dag Johansen 1 Nils P. Sudmann 1 Robbert van Renesse 2 1 Department of Computer Science, University oftroms, NORWAY??? 2 Department of Computer Science, Cornell University,

More information

Flash Drive Emulation

Flash Drive Emulation Flash Drive Emulation Eric Aderhold & Blayne Field aderhold@cs.wisc.edu & bfield@cs.wisc.edu Computer Sciences Department University of Wisconsin, Madison Abstract Flash drives are becoming increasingly

More information

Virtual Memory COMPSCI 386

Virtual Memory COMPSCI 386 Virtual Memory COMPSCI 386 Motivation An instruction to be executed must be in physical memory, but there may not be enough space for all ready processes. Typically the entire program is not needed. Exception

More information

Operating Systems. File Systems. Thomas Ropars.

Operating Systems. File Systems. Thomas Ropars. 1 Operating Systems File Systems Thomas Ropars thomas.ropars@univ-grenoble-alpes.fr 2017 2 References The content of these lectures is inspired by: The lecture notes of Prof. David Mazières. Operating

More information

Filesystem Hierarchy and Permissions

Filesystem Hierarchy and Permissions and Linux Prepared by Steven Gordon on 19 April 2017 Common/Reports/linux-file-permissions.tex, r1417 1/15 Multiuser and Server Operating System Linux systems are commonly used as a multi-user system E.g.

More information

IBM Tivoli Storage Manager for HP-UX Version Installation Guide IBM

IBM Tivoli Storage Manager for HP-UX Version Installation Guide IBM IBM Tivoli Storage Manager for HP-UX Version 7.1.4 Installation Guide IBM IBM Tivoli Storage Manager for HP-UX Version 7.1.4 Installation Guide IBM Note: Before you use this information and the product

More information

Availability and Utility of Idle Memory in Workstation Clusters. Anurag Acharya, UC-Santa Barbara Sanjeev Setia, George Mason Univ

Availability and Utility of Idle Memory in Workstation Clusters. Anurag Acharya, UC-Santa Barbara Sanjeev Setia, George Mason Univ Availability and Utility of Idle Memory in Workstation Clusters Anurag Acharya, UC-Santa Barbara Sanjeev Setia, George Mason Univ Motivation Explosive growth in data intensive applications Large-scale

More information

Linux System Administration

Linux System Administration System Processes Objective At the conclusion of this module, the student will be able to: Describe and define a process Identify a process ID, the parent process and the child process Learn the PID for

More information

Manage Directories and Files in Linux. Objectives. Understand the Filesystem Hierarchy Standard (FHS)

Manage Directories and Files in Linux. Objectives. Understand the Filesystem Hierarchy Standard (FHS) Manage Directories and Files in Linux Objectives Understand the Filesystem Hierarchy Standard (FHS) Identify File Types in the Linux System Change Directories and List Directory Contents Create and View

More information

File System Internals. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

File System Internals. Jin-Soo Kim 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

A Comparison of Two Distributed Systems: Amoeba & Sprite. By: Fred Douglis, John K. Ousterhout, M. Frans Kaashock, Andrew Tanenbaum Dec.

A Comparison of Two Distributed Systems: Amoeba & Sprite. By: Fred Douglis, John K. Ousterhout, M. Frans Kaashock, Andrew Tanenbaum Dec. A Comparison of Two Distributed Systems: Amoeba & Sprite By: Fred Douglis, John K. Ousterhout, M. Frans Kaashock, Andrew Tanenbaum Dec. 1991 Introduction shift from time-sharing to multiple processors

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

Migration Based Page Caching Algorithm for a Hybrid Main Memory of DRAM and PRAM

Migration Based Page Caching Algorithm for a Hybrid Main Memory of DRAM and PRAM Migration Based Page Caching Algorithm for a Hybrid Main Memory of DRAM and PRAM Hyunchul Seok Daejeon, Korea hcseok@core.kaist.ac.kr Youngwoo Park Daejeon, Korea ywpark@core.kaist.ac.kr Kyu Ho Park Deajeon,

More information

Inventory File Data with Snap Enterprise Data Replicator (Snap EDR)

Inventory File Data with Snap Enterprise Data Replicator (Snap EDR) TECHNICAL OVERVIEW File Data with Snap Enterprise Data Replicator (Snap EDR) Contents 1. Abstract...1 2. Introduction to Snap EDR...1 2.1. Product Architecture...2 3. System Setup and Software Installation...3

More information

mywbut.com UNIX Operating System

mywbut.com UNIX Operating System UNIX Operating System 1 Lecture Notes Overview Unlike many operating systems, UNIX is not limited to specific computers using a particular microprocessor as a CPU. Instead, UNIX systems run on all sizes

More information

Sistemi in Tempo Reale

Sistemi in Tempo Reale Laurea Specialistica in Ingegneria dell'automazione Sistemi in Tempo Reale Giuseppe Lipari Introduzione alla concorrenza Fundamentals Algorithm: It is the logical procedure to solve a certain problem It

More information

Using Transparent Informed Prefetching (TIP) to Reduce File Read Latency

Using Transparent Informed Prefetching (TIP) to Reduce File Read Latency Goddard Conference on Mass Storage Systems and Technologies, Greenbelt, MD, September, 1992, pp. 329-342. Using Transparent Informed Prefetching (TIP) to Reduce File Read Latency R.H. Patterson, G.A. Gibson,

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

File System Implementations

File System Implementations CSE 451: Operating Systems Winter 2005 FFS and LFS Steve Gribble File System Implementations We ve looked at disks and file systems generically now it s time to bridge the gap by talking about specific

More information

Chapter 10: Case Studies. So what happens in a real operating system?

Chapter 10: Case Studies. So what happens in a real operating system? Chapter 10: Case Studies So what happens in a real operating system? Operating systems in the real world Studied mechanisms used by operating systems Processes & scheduling Memory management File systems

More information

Textual Description of webbioc

Textual Description of webbioc Textual Description of webbioc Colin A. Smith October 13, 2014 Introduction webbioc is a web interface for some of the Bioconductor microarray analysis packages. It is designed to be installed at local

More information

CS 550 Operating Systems Spring Process II

CS 550 Operating Systems Spring Process II CS 550 Operating Systems Spring 2018 Process II 1 Recap: Process Informal definition: A process is a program in execution. Process is not the same as a program. Program is a passive entity stored in the

More information

Operating System Performance and Large Servers 1

Operating System Performance and Large Servers 1 Operating System Performance and Large Servers 1 Hyuck Yoo and Keng-Tai Ko Sun Microsystems, Inc. Mountain View, CA 94043 Abstract Servers are an essential part of today's computing environments. High

More information

The General Parallel File System

The General Parallel File System The General Parallel File System We have decided at this point to introduce a product of our employer, IBM, for once. The General Parallel File System (GPFS) is a shared disk file system that has for many

More information

The OceanStore Write Path

The OceanStore Write Path The OceanStore Write Path Sean C. Rhea John Kubiatowicz University of California, Berkeley June 11, 2002 Introduction: the OceanStore Write Path Introduction: the OceanStore Write Path The Inner Ring Acts

More information

LinuxCon North America 2016 Investigating System Performance for DevOps Using Kernel Tracing

LinuxCon North America 2016 Investigating System Performance for DevOps Using Kernel Tracing Investigating System Performance for DevOps Using Kernel Tracing jeremie.galarneau@efficios.com @LeGalarneau Presenter Jérémie Galarneau EfficiOS Inc. Head of Support http://www.efficios.com Maintainer

More information

An efficient method to avoid path lookup in file access auditing in IO path to improve file system IO performance

An efficient method to avoid path lookup in file access auditing in IO path to improve file system IO performance Technical Disclosure Commons Defensive Publications Series March 21, 2017 An efficient method to avoid path lookup in file access auditing in IO path to improve file system IO performance Arun Vishnu P

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA Sanghoon Han(sanghoon.han@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Announcement (1) Please come

More information

Background: Operating Systems

Background: Operating Systems Background: Operating Systems Brad Karp UCL Computer Science CS GZ03 / M030 9 th October 2015 Outline Goals of an operating system Sketch of UNIX User processes, kernel Process-kernel communication Waiting

More information

Table of Contents. HP A7173A PCI-X Dual Channel Ultra320 SCSI Host Bus Adapter. Performance Paper for HP PA-RISC Servers

Table of Contents. HP A7173A PCI-X Dual Channel Ultra320 SCSI Host Bus Adapter. Performance Paper for HP PA-RISC Servers HP A7173A PCI-X Dual Channel Ultra32 SCSI Host Bus Adapter Performance Paper for HP PA-RISC Servers Table of Contents Introduction...2 Executive Summary...2 Test Results...3 I/Ops...3 Service Demand...4

More information

High Performance Computing Lecture 11. Matthew Jacob Indian Institute of Science

High Performance Computing Lecture 11. Matthew Jacob Indian Institute of Science High Performance Computing Lecture 11 Matthew Jacob Indian Institute of Science Agenda 1. Program execution: Compilation, Object files, Function call and return, Address space, Data & its representation

More information

UBC: An Efficient Unified I/O and Memory Caching Subsystem for NetBSD

UBC: An Efficient Unified I/O and Memory Caching Subsystem for NetBSD UBC: An Efficient Unified I/O and Memory Caching Subsystem for NetBSD Chuck Silvers The NetBSD Project chuq@chuq.com, http://www.netbsd.org/ Abstract This paper introduces UBC ( Unified Buffer Cache ),

More information

UNIT 9 Introduction to Linux and Ubuntu

UNIT 9 Introduction to Linux and Ubuntu AIR FORCE ASSOCIATION S CYBERPATRIOT NATIONAL YOUTH CYBER EDUCATION PROGRAM UNIT 9 Introduction to Linux and Ubuntu Learning Objectives Participants will understand the basics of Linux, including the nature,

More information

Reducing Disk Latency through Replication

Reducing Disk Latency through Replication Gordon B. Bell Morris Marden Abstract Today s disks are inexpensive and have a large amount of capacity. As a result, most disks have a significant amount of excess capacity. At the same time, the performance

More information

IO-Lite: A Unified I/O Buffering and Caching System

IO-Lite: A Unified I/O Buffering and Caching System IO-Lite: A Unified I/O Buffering and Caching System Vivek S. Pai, Peter Druschel and Willy Zwaenepoel Rice University (Presented by Chuanpeng Li) 2005-4-25 CS458 Presentation 1 IO-Lite Motivation Network

More information

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter Lecture Topics Today: Operating System Overview (Stallings, chapter 2.1-2.4, 2.8-2.10) Next: Processes (Stallings, chapter 3.1-3.6) 1 Announcements Consulting hours posted Self-Study Exercise #3 posted

More information

A metaobject protocol for accessing file systems

A metaobject protocol for accessing file systems A metaobject protocol for accessing file systems Chris Maeda Published in Proceedings of the Second JSSST International Symposium on Object Technologies for Advanced Software (ISOTAS), Kanazawa, Japan.

More information

Course and Unix Intro

Course and Unix Intro Course and Unix Intro Comp-206 : Introduction to Software Systems Lecture 1 Alexandre Denault Computer Science McGill University Fall 2006 Instructor Alexandre Denault Graduate student, working in the

More information

What is an Operating System? A Whirlwind Tour of Operating Systems. How did OS evolve? How did OS evolve?

What is an Operating System? A Whirlwind Tour of Operating Systems. How did OS evolve? How did OS evolve? What is an Operating System? A Whirlwind Tour of Operating Systems Trusted software interposed between the hardware and application/utilities to improve efficiency and usability Most computing systems

More information

Buffer Caching Algorithms for Storage Class RAMs

Buffer Caching Algorithms for Storage Class RAMs Issue 1, Volume 3, 29 Buffer Caching Algorithms for Storage Class RAMs Junseok Park, Hyunkyoung Choi, Hyokyung Bahn, and Kern Koh Abstract Due to recent advances in semiconductor technologies, storage

More information

IBM Tivoli Storage Manager for AIX Version Installation Guide IBM

IBM Tivoli Storage Manager for AIX Version Installation Guide IBM IBM Tivoli Storage Manager for AIX Version 7.1.3 Installation Guide IBM IBM Tivoli Storage Manager for AIX Version 7.1.3 Installation Guide IBM Note: Before you use this information and the product it

More information

Improving Data Cache Performance via Address Correlation: An Upper Bound Study

Improving Data Cache Performance via Address Correlation: An Upper Bound Study Improving Data Cache Performance via Address Correlation: An Upper Bound Study Peng-fei Chuang 1, Resit Sendag 2, and David J. Lilja 1 1 Department of Electrical and Computer Engineering Minnesota Supercomputing

More information

I/O CHARACTERIZATION AND ATTRIBUTE CACHE DATA FOR ELEVEN MEASURED WORKLOADS

I/O CHARACTERIZATION AND ATTRIBUTE CACHE DATA FOR ELEVEN MEASURED WORKLOADS I/O CHARACTERIZATION AND ATTRIBUTE CACHE DATA FOR ELEVEN MEASURED WORKLOADS Kathy J. Richardson Technical Report No. CSL-TR-94-66 Dec 1994 Supported by NASA under NAG2-248 and Digital Western Research

More information

CLIP: A Compact, Load-balancing Index Placement Function

CLIP: A Compact, Load-balancing Index Placement Function CLIP: A Compact, Load-balancing Index Placement Function Michael McThrow Storage Systems Research Center University of California, Santa Cruz Abstract Existing file searching tools do not have the performance

More information

Filesystem Hierarchy and Permissions

Filesystem Hierarchy and Permissions 2 and Prepared by Steven Gordon on 19 April 2017 Common/Reports/linux-file-permissions.tex, r1417 1 Multiuser and Server Operating System systems are commonly used as a multi-user system E.g. multiple

More information

White paper ETERNUS Extreme Cache Performance and Use

White paper ETERNUS Extreme Cache Performance and Use White paper ETERNUS Extreme Cache Performance and Use The Extreme Cache feature provides the ETERNUS DX500 S3 and DX600 S3 Storage Arrays with an effective flash based performance accelerator for regions

More information

The Case for Efficient File Access Pattern Modeling

The Case for Efficient File Access Pattern Modeling The Case for Efficient File Access Pattern Modeling Thomas M. Kroeger and Darrell D. E. Long yz Jack Baskin School of Engineering University of California, Santa Cruz Abstract Most modern I/O systems treat

More information

JULIA ENABLED COMPUTATION OF MOLECULAR LIBRARY COMPLEXITY IN DNA SEQUENCING

JULIA ENABLED COMPUTATION OF MOLECULAR LIBRARY COMPLEXITY IN DNA SEQUENCING JULIA ENABLED COMPUTATION OF MOLECULAR LIBRARY COMPLEXITY IN DNA SEQUENCING Larson Hogstrom, Mukarram Tahir, Andres Hasfura Massachusetts Institute of Technology, Cambridge, Massachusetts, USA 18.337/6.338

More information

For. Rupinder 240 Singh 251 Virk 202. Dheeraj Chahal. Title and Content. Light 1. Accent 1. Dark 2. Accent 2. Dark 1. Light 2. Hyperlink.

For. Rupinder 240 Singh 251 Virk 202. Dheeraj Chahal. Title and Content. Light 1. Accent 1. Dark 2. Accent 2. Dark 1. Light 2. Hyperlink. Title and Content 109 207 246 255 255 255 131 56 155 0 99 190 85 165 28 214 73 42 Dark 1 Light 1 Dark 2 Light 2 Accent 1 Accent 2 185 175 164 151 75 7 193 187 0 255 221 62 255 255 255 236 137 29 Trace

More information

Distributed DNS Name server Backed by Raft

Distributed DNS Name server Backed by Raft Distributed DNS Name server Backed by Raft Emre Orbay Gabbi Fisher December 13, 2017 Abstract We implement a asynchronous distributed DNS server backed by Raft. Our DNS server system supports large cluster

More information

Systems Programming. The Unix/Linux Operating System

Systems Programming. The Unix/Linux Operating System Systems Programming The Unix/Linux Operating System 1 What is UNIX? A modern computer operating system Operating system: a program that acts as an intermediary between a user of the computer and the computer

More information

named Fedora and includes a fully functional and complete operating system produced by the Fedora Project, sponsored by Red Hat.

named Fedora and includes a fully functional and complete operating system produced by the Fedora Project, sponsored by Red Hat. Introduction Welcome to Fedora Unleashed, 2008 Edition! This book covers the free Linux distribution named Fedora and includes a fully functional and complete operating system produced by the Fedora Project,

More information

The Operating System Machine Level

The Operating System Machine Level The Operating System Machine Level Wolfgang Schreiner Research Institute for Symbolic Computation (RISC-Linz) Johannes Kepler University Wolfgang.Schreiner@risc.uni-linz.ac.at http://www.risc.uni-linz.ac.at/people/schreine

More information

CSE 153 Design of Operating Systems

CSE 153 Design of Operating Systems CSE 153 Design of Operating Systems Winter 2018 Lecture 22: File system optimizations and advanced topics There s more to filesystems J Standard Performance improvement techniques Alternative important

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

Benchmarking Over The Grid Using SEE Virtual Organization.

Benchmarking Over The Grid Using SEE Virtual Organization. Benchmarking Over The Grid Using SEE Virtual Organization. January 2007 Technical Report Ioannis Kouvakis 1 and Fotis Georgatos 2 1 Student of Univerity of Aegean, Department of Mathematics, gkouvakis@hep.ntua.gr

More information

CS24: INTRODUCTION TO COMPUTING SYSTEMS. Spring 2018 Lecture 23

CS24: INTRODUCTION TO COMPUTING SYSTEMS. Spring 2018 Lecture 23 CS24: INTRODUCTION TO COMPUTING SYSTEMS Spring 208 Lecture 23 LAST TIME: VIRTUAL MEMORY Began to focus on how to virtualize memory Instead of directly addressing physical memory, introduce a level of indirection

More information

The Google File System

The Google File System The Google File System Sanjay Ghemawat, Howard Gobioff and Shun Tak Leung Google* Shivesh Kumar Sharma fl4164@wayne.edu Fall 2015 004395771 Overview Google file system is a scalable distributed file system

More information

Executing Legacy Applications on a Java Operating System

Executing Legacy Applications on a Java Operating System Executing Legacy Applications on a Java Operating System Andreas Gal, Michael Yang, Christian Probst, and Michael Franz University of California, Irvine {gal,mlyang,probst,franz}@uci.edu May 30, 2004 Abstract

More information

File System Internals. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

File System Internals. Jin-Soo Kim 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

Finding a needle in Haystack: Facebook's photo storage

Finding a needle in Haystack: Facebook's photo storage Finding a needle in Haystack: Facebook's photo storage The paper is written at facebook and describes a object storage system called Haystack. Since facebook processes a lot of photos (20 petabytes total,

More information

Optimizing a hybrid SSD/HDD HPC storage system based on file size distributions

Optimizing a hybrid SSD/HDD HPC storage system based on file size distributions Optimizing a hybrid SSD/HDD HPC storage system based on file size distributions Brent Welch, Geoffrey Noer Panasas, Inc. Sunnyvale, USA {welch,gnoer}@panasas.com Abstract - We studied file size distributions

More information

Dynamic Translator-Based Virtualization

Dynamic Translator-Based Virtualization Dynamic Translator-Based Virtualization Yuki Kinebuchi 1,HidenariKoshimae 1,ShuichiOikawa 2, and Tatsuo Nakajima 1 1 Department of Computer Science, Waseda University {yukikine, hide, tatsuo}@dcl.info.waseda.ac.jp

More information

Chapter 2: Operating-System Structures

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

Interaction of JVM with x86, Sparc and MIPS

Interaction of JVM with x86, Sparc and MIPS Interaction of JVM with x86, Sparc and MIPS Sasikanth Avancha, Dipanjan Chakraborty, Dhiral Gada, Tapan Kamdar {savanc1, dchakr1, dgada1, kamdar}@cs.umbc.edu Department of Computer Science and Electrical

More information

CNIT 127: Exploit Development. Ch 18: Source Code Auditing. Updated

CNIT 127: Exploit Development. Ch 18: Source Code Auditing. Updated CNIT 127: Exploit Development Ch 18: Source Code Auditing Updated 4-10-17 Why Audit Source Code? Best way to discover vulnerabilities Can be done with just source code and grep Specialized tools make it

More information

- In the application level, there is a stdio cache for the application - In the kernel, there is a buffer cache, which acts as a cache for the disk.

- In the application level, there is a stdio cache for the application - In the kernel, there is a buffer cache, which acts as a cache for the disk. Computer Science 61 Scribe Notes Tuesday, November 6, 2012. There is an anonymous feedback form which can be found at http://cs61.seas.harvard.edu/feedback/ Buffer Caching and Cache organization and Processor

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

INTRODUCTION TO LINUX

INTRODUCTION TO LINUX INTRODUCTION TO LINUX REALLY SHORT HISTORY Before GNU/Linux there were DOS, MAC and UNIX. All systems were proprietary. The GNU project started in the early 80s by Richard Stallman Goal to make a free

More information

Characterizing Home Pages 1

Characterizing Home Pages 1 Characterizing Home Pages 1 Xubin He and Qing Yang Dept. of Electrical and Computer Engineering University of Rhode Island Kingston, RI 881, USA Abstract Home pages are very important for any successful

More information

Chapter 14 Performance and Processor Design

Chapter 14 Performance and Processor Design Chapter 14 Performance and Processor Design Outline 14.1 Introduction 14.2 Important Trends Affecting Performance Issues 14.3 Why Performance Monitoring and Evaluation are Needed 14.4 Performance Measures

More information

Run Cron Job Every 5 Minutes Aix

Run Cron Job Every 5 Minutes Aix Run Cron Job Every 5 Minutes Aix During a chef-client run, the current state of each resource is tested, after which the chef-client will take any steps that are Use the cron resource to manage cron entries

More information