Practical File System Design:The Be File System, Dominic Giampaolo Half Title Page Page I

Total Page:16

File Type:pdf, Size:1020Kb

Practical File System Design:The Be File System, Dominic Giampaolo Half Title Page Page I Practical File System Design:The Be File System, Dominic Giampaolo half title page page i Practical File System Design with the Be File System Practical File System Design:The Be File System, Dominic Giampaolo BLANK page ii Practical File System Design:The Be File System, Dominic Giampaolo title page page iii Practical File System Design with the Be File System Dominic Giampaolo Be, Inc. ® MORGAN KAUFMANN PUBLISHERS, INC. San Francisco, California Practical File System Design:The Be File System, Dominic Giampaolo copyright page page iv Editor Tim Cox Director of Production and Manufacturing Yonie Overton Assistant Production Manager Julie Pabst Editorial Assistant Sarah Luger Cover Design Ross Carron Design Cover Image William Thompson/Photonica Copyeditor Ken DellaPenta Proofreader Jennifer McClain Text Design Side by Side Studios Illustration Cherie Plumlee Composition Ed Sznyter, Babel Press Indexer Ty Koontz Printer Edwards Brothers Designations used by companies to distinguish their products are often claimed as trademarks or registered trademarks. In all instances where Morgan Kaufmann Publishers, Inc. is aware of a claim, the product names appear in initial capital or all capital letters. Readers, however, should contact the appropriate companies for more complete information regarding trademarks and registration. Morgan Kaufmann Publishers, Inc. Editorial and Sales Office 340 Pine Street, Sixth Floor San Francisco, CA 94104-3205 USA Telephone 415/392-2665 Facsimile 415/982-2665 Email [email protected] WWW http://www.mkp.com Order toll free 800/745-7323 c 1999 Morgan Kaufmann Publishers, Inc. All rights reserved Printed in the United States of America 03 02 01 00 99 5 4 3 2 1 No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means—electronic, mechanical, photocopying, recording, or otherwise—without the prior written permission of the publisher. Library of Congress Cataloging-in-Publication Data is available for this book. ISBN 1-55860-497-9 Practical File System Design:The Be File System, Dominic Giampaolo page v Contents Preface ix Chapter 1 Introduction to the BeOS and BFS 1 1.1 History Leading Up to BFS 1 1.2 Design Goals 4 1.3 Design Constraints 5 1.4 Summary 5 Chapter 2 What Is a File System? 7 2.1 The Fundamentals 7 2.2 The Terminology 8 2.3 The Abstractions 9 2.4 Basic File System Operations 20 2.5 Extended File System Operations 28 2.6 Summary 31 Chapter 3 Other File Systems 33 3.1 BSD FFS 33 3.2 Linux ext2 36 3.3 Macintosh HFS 37 3.4 Irix XFS 38 3.5 Windows NT’s NTFS 40 3.6 Summary 44 Chapter 4 The Data Structures of BFS 45 4.1 What Is a Disk? 45 4.2 How to Manage Disk Blocks 46 4.3 Allocation Groups 46 4.4 Block Runs 47 v Practical File System Design:The Be File System, Dominic Giampaolo page vi vi CONTENTS 4.5 The Superblock 48 4.6 The I-Node Structure 51 4.7 The Core of an I-Node: The Data Stream 55 4.8 Attributes 59 4.9 Directories 61 4.10 Indexing 62 4.11 Summary 63 Chapter 5 Attributes, Indexing, and Queries 65 5.1 Attributes 65 5.2 Indexing 74 5.3 Queries 90 5.4 Summary 97 Chapter 6 Allocation Policies 99 6.1 Where Do You Put Things on Disk? 99 6.2 What Are Allocation Policies? 99 6.3 Physical Disks 100 6.4 What Can You Lay Out? 102 6.5 Types of Access 103 6.6 Allocation Policies in BFS 104 6.7 Summary 109 Chapter 7 Journaling 111 7.1 The Basics 112 7.2 How Does Journaling Work? 113 7.3 Types of Journaling 115 7.4 What Is Journaled? 115 7.5 Beyond Journaling 116 7.6 What’s the Cost? 117 7.7 The BFS Journaling Implementation 118 7.8 What Are Transactions?—A Deeper Look 124 7.9 Summary 125 Chapter 8 The Disk Block Cache 127 8.1 Background 127 8.2 Organization of a Buffer Cache 128 8.3 Cache Optimizations 132 8.4 I/O and the Cache 133 8.5 Summary 137 Chapter 9 File System Performance 139 9.1 What Is Performance? 139 9.2 What Are the Benchmarks? 140 9.3 Performance Numbers 144 9.4 Performance in BFS 150 9.5 Summary 153 Practical File System Design:The Be File System, Dominic Giampaolo page vii vii CONTENTS Chapter 10 The Vnode Layer 155 10.1 Background 156 10.2 Vnode Layer Concepts 159 10.3 Vnode Layer Support Routines 161 10.4 How It Really Works 162 10.5 The Node Monitor 181 10.6 Live Queries 183 10.7 Summary 184 Chapter 11 User-Level API 185 11.1 The POSIX API and C Extensions 185 11.2 The C++ API 190 11.3 Using the API 198 11.4 Summary 202 Chapter 12 Testing 203 12.1 The Supporting Cast 203 12.2 Examples of Data Structure Verification 204 12.3 Debugging Tools 205 12.4 Data Structure Design for Debugging 206 12.5 Types of Tests 207 12.6 Testing Methodology 211 12.7 Summary 213 Appendix A File System Construction Kit 215 A.1 Introduction 215 A.2 Overview 215 A.3 The Data Structures 216 A.4 The API 217 Bibliography 221 Index 225 Practical File System Design:The Be File System, Dominic Giampaolo BLANK page viii Practical File System Design:The Be File System, Dominic Giampaolo page ix Preface lthough many operating system textbooks offer high- level descriptions of file systems, few go into sufficient Adetail for an implementor, and none go into details about advanced topics such as journaling. I wrote this book to address that lack of information. This book covers the details of file systems, from low-level to high-level, as well as related topics such as the disk cache, the file system interface to the kernel, and the user-level APIs that use the features of the file system. Reading this book should give you a thorough understanding of how a file system works in general, how the Be File System (BFS) works in particular, and the issues involved in designing and implementing a file system. The Be operating system (BeOS) uses BFS as its native file system. BFS is a modern 64-bit journaled file system. BFS also supports extended file attri- butes (name/value pairs) and can index the extended attributes, which allows it to offer a query interface for locating files in addition to the normal name- based hierarchical interface. The attribute, indexing, and query features of BFS set it apart from other file systems and make it an interesting example to discuss. Throughout this book there are discussions of different approaches to solv- ing file system design problems and the benefits and drawbacks of different techniques. These discussions are all based on the problems that arose when implementing BFS. I hope that understanding the problems BFS faced and the changes it underwent will help others avoid mistakes I made, or perhaps spur them on to solve the problems in different or more innovative ways. Now that I have discussed what this book is about, I will also mention what it is not about. Although there is considerable information about the details of BFS, this book does not contain exhaustive bit-level information about every BFS data structure. I know this will disappoint some people, but ix Practical File System Design:The Be File System, Dominic Giampaolo page x x PREFACE it is the difference between a reference manual and a work that is intended to educate and inform. My only regret about this book is that I would have liked for there to be more information about other file systems and much more extensive perfor- mance analyses of a wider variety of file systems. However, just like software, a book has to ship, and it can’t stay in development forever. You do not need to be a file system engineer, a kernel architect, or have a PhD to understand this book. A basic knowledge of the C programming language is assumed but little else. Wherever possible I try to start from first principles to explain the topics involved and build on that knowledge throughout the chapters. You also do not need to be a BeOS developer or even use the BeOS to understand this book. Although familiarity with the BeOS may help, it is not a requirement. It is my hope that if you would like to improve your knowledge of file sys- tems, learn about how the Be File System works, or implement a file system, you will find this book useful. Acknowledgments I’d like to thank everyone that lent a hand during the development of BFS and during the writing of this book. Above all, the BeOS QA team (led by Baron Arnold) is responsible for BFS being where it is today. Thanks, guys! The rest of the folks who helped me out are almost too numerous to mention: my fiancee,´ Maria, for helping me through many long weekends of writing; Mani Varadarajan, for taking the first crack at making BFS write data to double- indirect blocks; Cyril Meurillon, for being stoic throughout the whole project, as well as for keeping the fsil layer remarkably bug-free; Hiroshi Lockheimer, for keeping me entertained; Mike Mackovitch, for letting me run tests on SGI’s machines; the whole BeOS team, for putting up with all those buggy versions of the file system before the first release; Mark Stone, for approach- ing me about writing this book; the people who make the cool music that gets me through the 24-, 48-, and 72-hour programming sessions; and of course Be, Inc., for taking the chance on such a risky project.
Recommended publications
  • 24 Bit 96 Khz Digital Audio Workstation Using High Performance Be Operating System on a Multiprocessor Intel Machine
    24 bit 96 kHz Digital Audio Workstation using high performance Be Operating System on a multiprocessor Intel machine by: Michal Jurewicz - Mytek, Inc., New York, NY, USA Timothy Self - Be, Inc., Menlo Park, CA, USA ABSTRACT Digital Audio Workstation (DAW) has quickly established itself as the most important digital audio production tool. With the advent of high-resolution multi-channel audio formats and Internet audio exchange, the high performance and flawless operations of the desktop DAW have become a necessity. The authors explaining why current popular computer architectures are not suited to these new tasks, explore the possibilities of the new Be Operating System (BeOS)- specifically designed and optimized to handle digital audio and video. New features, unattainable with current operating systems, are discussed. 1. Introduction Ever increasing performance of computers has caused a gradual migration of the key audio production tools from hardware embodiments to the virtual world of computers. This trend will continue, propelled by bottom line economics and the appearance of new features such as network audio exchange. Although current computer hardware is up to the task, existing general purpose operating systems are the actual performance bottleneck . Designed over 10 years ago for general purpose computing, they fail to meet increasing demands for speed and file size. The new BeOS has been designed from ground up to handle high bandwidth digital audio and video in a modern multiprocessing and multitasking environment. The paper focuses solely on the use of commodity personal computers (IBM Compatibles and Apple) and their operating systems (Windows, MacOS, BeOS and Linux). Although number of specialized platforms such as SGI provides superior performance, they were omitted, as their presence in the current professional audio environment is minimal.
    [Show full text]
  • Copy on Write Based File Systems Performance Analysis and Implementation
    Copy On Write Based File Systems Performance Analysis And Implementation Sakis Kasampalis Kongens Lyngby 2010 IMM-MSC-2010-63 Technical University of Denmark Department Of Informatics Building 321, DK-2800 Kongens Lyngby, Denmark Phone +45 45253351, Fax +45 45882673 [email protected] www.imm.dtu.dk Abstract In this work I am focusing on Copy On Write based file systems. Copy On Write is used on modern file systems for providing (1) metadata and data consistency using transactional semantics, (2) cheap and instant backups using snapshots and clones. This thesis is divided into two main parts. The first part focuses on the design and performance of Copy On Write based file systems. Recent efforts aiming at creating a Copy On Write based file system are ZFS, Btrfs, ext3cow, Hammer, and LLFS. My work focuses only on ZFS and Btrfs, since they support the most advanced features. The main goals of ZFS and Btrfs are to offer a scalable, fault tolerant, and easy to administrate file system. I evaluate the performance and scalability of ZFS and Btrfs. The evaluation includes studying their design and testing their performance and scalability against a set of recommended file system benchmarks. Most computers are already based on multi-core and multiple processor architec- tures. Because of that, the need for using concurrent programming models has increased. Transactions can be very helpful for supporting concurrent program- ming models, which ensure that system updates are consistent. Unfortunately, the majority of operating systems and file systems either do not support trans- actions at all, or they simply do not expose them to the users.
    [Show full text]
  • NTFS • Windows Reinstallation – Bypass ACL • Administrators Privilege – Bypass Ownership
    Windows Encrypting File System Motivation • Laptops are very integrated in enterprises… • Stolen/lost computers loaded with confidential/business data • Data Privacy Issues • Offline Access – Bypass NTFS • Windows reinstallation – Bypass ACL • Administrators privilege – Bypass Ownership www.winitor.com 01 March 2010 Windows Encrypting File System Mechanism • Principle • A random - unique - symmetric key encrypts the data • An asymmetric key encrypts the symmetric key used to encrypt the data • Combination of two algorithms • Use their strengths • Minimize their weaknesses • Results • Increased performance • Increased security Asymetric Symetric Data www.winitor.com 01 March 2010 Windows Encrypting File System Characteristics • Confortable • Applying encryption is just a matter of assigning a file attribute www.winitor.com 01 March 2010 Windows Encrypting File System Characteristics • Transparent • Integrated into the operating system • Transparent to (valid) users/applications Application Win32 Crypto Engine NTFS EFS &.[ßl}d.,*.c§4 $5%2=h#<.. www.winitor.com 01 March 2010 Windows Encrypting File System Characteristics • Flexible • Supported at different scopes • File, Directory, Drive (Vista?) • Files can be shared between any number of users • Files can be stored anywhere • local, remote, WebDav • Files can be offline • Secure • Encryption and Decryption occur in kernel mode • Keys are never paged • Usage of standardized cryptography services www.winitor.com 01 March 2010 Windows Encrypting File System Availibility • At the GUI, the availibility
    [Show full text]
  • Active @ UNDELETE Users Guide | TOC | 2
    Active @ UNDELETE Users Guide | TOC | 2 Contents Legal Statement..................................................................................................4 Active@ UNDELETE Overview............................................................................. 5 Getting Started with Active@ UNDELETE........................................................... 6 Active@ UNDELETE Views And Windows......................................................................................6 Recovery Explorer View.................................................................................................... 7 Logical Drive Scan Result View.......................................................................................... 7 Physical Device Scan View................................................................................................ 8 Search Results View........................................................................................................10 Application Log...............................................................................................................11 Welcome View................................................................................................................11 Using Active@ UNDELETE Overview................................................................. 13 Recover deleted Files and Folders.............................................................................................. 14 Scan a Volume (Logical Drive) for deleted files..................................................................15
    [Show full text]
  • Ebook - Informations About Operating Systems Version: August 15, 2006 | Download
    eBook - Informations about Operating Systems Version: August 15, 2006 | Download: www.operating-system.org AIX Internet: AIX AmigaOS Internet: AmigaOS AtheOS Internet: AtheOS BeIA Internet: BeIA BeOS Internet: BeOS BSDi Internet: BSDi CP/M Internet: CP/M Darwin Internet: Darwin EPOC Internet: EPOC FreeBSD Internet: FreeBSD HP-UX Internet: HP-UX Hurd Internet: Hurd Inferno Internet: Inferno IRIX Internet: IRIX JavaOS Internet: JavaOS LFS Internet: LFS Linspire Internet: Linspire Linux Internet: Linux MacOS Internet: MacOS Minix Internet: Minix MorphOS Internet: MorphOS MS-DOS Internet: MS-DOS MVS Internet: MVS NetBSD Internet: NetBSD NetWare Internet: NetWare Newdeal Internet: Newdeal NEXTSTEP Internet: NEXTSTEP OpenBSD Internet: OpenBSD OS/2 Internet: OS/2 Further operating systems Internet: Further operating systems PalmOS Internet: PalmOS Plan9 Internet: Plan9 QNX Internet: QNX RiscOS Internet: RiscOS Solaris Internet: Solaris SuSE Linux Internet: SuSE Linux Unicos Internet: Unicos Unix Internet: Unix Unixware Internet: Unixware Windows 2000 Internet: Windows 2000 Windows 3.11 Internet: Windows 3.11 Windows 95 Internet: Windows 95 Windows 98 Internet: Windows 98 Windows CE Internet: Windows CE Windows Family Internet: Windows Family Windows ME Internet: Windows ME Seite 1 von 138 eBook - Informations about Operating Systems Version: August 15, 2006 | Download: www.operating-system.org Windows NT 3.1 Internet: Windows NT 3.1 Windows NT 4.0 Internet: Windows NT 4.0 Windows Server 2003 Internet: Windows Server 2003 Windows Vista Internet: Windows Vista Windows XP Internet: Windows XP Apple - Company Internet: Apple - Company AT&T - Company Internet: AT&T - Company Be Inc. - Company Internet: Be Inc. - Company BSD Family Internet: BSD Family Cray Inc.
    [Show full text]
  • CS 5600 Computer Systems
    CS 5600 Computer Systems Lecture 10: File Systems What are We Doing Today? • Last week we talked extensively about hard drives and SSDs – How they work – Performance characterisEcs • This week is all about managing storage – Disks/SSDs offer a blank slate of empty blocks – How do we store files on these devices, and keep track of them? – How do we maintain high performance? – How do we maintain consistency in the face of random crashes? 2 • ParEEons and MounEng • Basics (FAT) • inodes and Blocks (ext) • Block Groups (ext2) • Journaling (ext3) • Extents and B-Trees (ext4) • Log-based File Systems 3 Building the Root File System • One of the first tasks of an OS during bootup is to build the root file system 1. Locate all bootable media – Internal and external hard disks – SSDs – Floppy disks, CDs, DVDs, USB scks 2. Locate all the parEEons on each media – Read MBR(s), extended parEEon tables, etc. 3. Mount one or more parEEons – Makes the file system(s) available for access 4 The Master Boot Record Address Size Descripon Hex Dec. (Bytes) Includes the starEng 0x000 0 Bootstrap code area 446 LBA and length of 0x1BE 446 ParEEon Entry #1 16 the parEEon 0x1CE 462 ParEEon Entry #2 16 0x1DE 478 ParEEon Entry #3 16 0x1EE 494 ParEEon Entry #4 16 0x1FE 510 Magic Number 2 Total: 512 ParEEon 1 ParEEon 2 ParEEon 3 ParEEon 4 MBR (ext3) (swap) (NTFS) (FAT32) Disk 1 ParEEon 1 MBR (NTFS) 5 Disk 2 Extended ParEEons • In some cases, you may want >4 parEEons • Modern OSes support extended parEEons Logical Logical ParEEon 1 ParEEon 2 Ext.
    [Show full text]
  • 11.7 the Windows 2000 File System
    830 CASE STUDY 2: WINDOWS 2000 CHAP. 11 11.7 THE WINDOWS 2000 FILE SYSTEM Windows 2000 supports several file systems, the most important of which are FAT-16, FAT-32, and NTFS (NT File System). FAT-16 is the old MS-DOS file system. It uses 16-bit disk addresses, which limits it to disk partitions no larger than 2 GB. FAT-32 uses 32-bit disk addresses and supports disk partitions up to 2 TB. NTFS is a new file system developed specifically for Windows NT and car- ried over to Windows 2000. It uses 64-bit disk addresses and can (theoretically) support disk partitions up to 264 bytes, although other considerations limit it to smaller sizes. Windows 2000 also supports read-only file systems for CD-ROMs and DVDs. It is possible (even common) to have the same running system have access to multiple file system types available at the same time. In this chapter we will treat the NTFS file system because it is a modern file system unencumbered by the need to be fully compatible with the MS-DOS file system, which was based on the CP/M file system designed for 8-inch floppy disks more than 20 years ago. Times have changed and 8-inch floppy disks are not quite state of the art any more. Neither are their file systems. Also, NTFS differs both in user interface and implementation in a number of ways from the UNIX file system, which makes it a good second example to study. NTFS is a large and complex system and space limitations prevent us from covering all of its features, but the material presented below should give a reasonable impression of it.
    [Show full text]
  • Onetouch 4 Lite USB Mac User Guide
    Contents Getting Started . .1 Using the Formatting Tool . .1 Preparing the Software Manually . .4 Installing the Software . .9 Managing Your Drives . .15 Customizing the OneTouch Button . .15 Running Diagnostics . .18 Updating Your Software . .19 Backing Up & Restoring Folders . .22 Creating Backup Plans . .22 Using Simple Backup . .22 Creating a Custom Backup Plan . .26 Managing Backup Plans . .33 Editing Backup Settings . .33 Deleting Backup Plans . .36 Backing Up Manually . .37 Restoring Files . .39 OneTouch II and III Users . .42 Managing Security . .42 Using DrivePass . .42 Enabling DrivePass . 42 Unlocking Your OneTouch Drive . 45 Removing DrivePass . 50 Changing Your DrivePass Password . 52 If You Forget Your Password... .55 Synchronizing Folders . .60 Using Pre-configured Sync . .61 Using Custom Sync . .61 Completing the Sync . .64 Maxtor OneTouch IV i Removing Folders from Sync . .65 Checking Sync Status . .65 Synchronizing Manually . .66 Using the Maxtor Synchronization Window . .66 Using Automatic Overwrite . 68 Using RAID . .68 Frequently Asked Questions . .76 Index . i 072407 Maxtor OneTouch IV ii Getting Started The Maxtor OneTouch 4 drive offers these features: • Backup & Restore to protect your data • A customized OneTouch button to quickly open a frequently-used program If you are a OneTouch II or III user, you also have access to features available on that drive: • Sync to synchronize one or more folders between two or more computers • Security settings to password-protect your drive The Maxtor OneTouch software is loaded on your OneTouch drive. Because the software is configured for a Windows operating system, the software must be prepared for installation on your Macintosh. Using the Formatting Tool The Mac OneTouch 4 Formatting tool automatically prepares the Maxtor Manager software for installation on your Macintosh, To use the Mac OneTouch 4 Formatting Tool, Step 1: Connect your OneTouch 4 drive to your computer.
    [Show full text]
  • Partitioner Och Filsystem 2
    Partitioner och filsystem 2 File systems FAT Unix-like NTFS Vad är ett filsystem? • Datorer behöver en metod för att lagra och hämta data… • Referensmodell för filsystem (Carrier) – Filsystem kategori • Layout och storleksinformation – Innehålls kategori • Kluster och block – data enheter – Metadata kategori • Tidsinformation, storlek, access kontroll • Adresser till allokerade data enheter – Filnamn kategori • Oftast ihop-kopplad med metadata – Applikations kategori • Quota • Journaler • De modernaste påminner mycket om relations databaser Windows • NTFS (New Technology File System) – 6 versioner finns, de nyaste är v3.0 (Windows 2000) och v3.1 (XP, 2003, Vista, 2008, 7), kallas även 5.0, 5.1, 5.2, 6.0 och 6.1 (efter OS version) – Stöd för unicode, säkerhet, mm. - är mycket mer komplext än FAT! – http://en.wikipedia.org/wiki/Ntfs • FAT 12/16/32, VFAT (långa filnamn i Win95) – Används fortfarande men är inte effektivt för större lagringskapaciteter (klusterstorleken) – Långsammare access än NTFS • Windows Future Storage (WinFS) inställt projekt, enligt rykten var det en SQL-databas som ligger ovanpå ett NTFS filsystem – Läs mer på: http://www.ntfs.com/ – Och: http://en.wikipedia.org/wiki/WinFS FAT12, 16 och 32 • FAT12, finns på floppy diskar – Begränsad lagringskapacitet – Designat för MS-DOS 1.0 • FAT16, var designat för större diskar – Äldre OS använde detta • MS-DOS 3.0, Win95 OSR1, NT 3.5 och NT 4.0 – Max diskstorlek 2 GB • FAT32 kom när diskar större än 2GB kom – Vissa äldre och alla nya OS kan använda FAT32 • Windows 98/Me/2000/XP/2003/Vista/7 och 2008 • Begränsningar med FAT32 – Största formaterabara volymen är 32GB (större volymer kan dock användas, < 16 TiB) – Begränsade features vad gäller komprimering, kryptering, säkerhet och hastighet jämfört mot NTFS • http://en.wikipedia.org/wiki/FAT_file_system exFAT • exFAT (Extended File Allocation Table, a.k.a.
    [Show full text]
  • Beos and RADAR 24 - Topic
    BeOS and RADAR 24 - Topic http://recordingtheworld.infopop.cc/eve/forums/a/tpc/f/831603982/m... Home Products Purchase Support Forum News About Contact iZ Technology Corporation www.izcorp.com www.izcorp.com iZ Product Forums RADAR 24, V, 6 - iZ Multitrack Recorder BeOS and RADAR 24 Moderators: President Go New Find Notify Tools Reply BeOS and RADAR 24 Login/Join <President> posted May 30, 2002 06:09 I saw a query on rec.audio.pro regarding RADAR 24 and BeOS. I answered him directly via email but I thought everyone would be interested in my answer here: Hi Tony, Regarding your post on BeOS: tony espinoza ([email protected]) "...i'm considering a Radar 24 system for my studio... only one question is nagging at me. living in the bay area, i know folks that have worked long and hard on the BeOS. but since Palm recently acquired the company, everyone I know associated with BeOS has either been let go or has split. i can see palm keeping a couple DTS guys around doing support on the OS, but knowing their financial situation (and management situation), i can't see them committing resources to it for very long without significant returns. i certainly can't see key features that iZ might be interested in continue to be the focus of the OS..." None of our development so far depends on any support from Be Inc or Palm. Those companies probably don't even know we exist. If we got updates on the OS we'd be nervous about sending it out since we now have over 2 years of stable track record with it.
    [Show full text]
  • “Application - File System” Divide with Promises
    Bridging the “Application - File System” divide with promises Raja Bala Computer Sciences Department University of Wisconsin, Madison, WI [email protected] Abstract that hook into the file system and the belief that the underlying file system is the best judge File systems today implement a limited set of when it comes to operations with files. Unfor- abstractions and semantics wherein applications tunately, the latter isn’t true, since applications don’t really have much of a say. The generality know more about their behavior and what they of these abstractions tends to curb the application need or do not need from the file system. Cur- performance. In the global world we live in, it seems rently, there is no real mechanism that allows reasonable that applications are treated as first-class the applications to communicate this informa- citizens by the file system layer. tion to the file system and thus have some degree In this project, we take a first step towards that goal of control over the file system functionality. by leveraging promises that applications make to the file system. The promises are then utilized to deliver For example, an application that never ap- a better-tuned and more application-oriented file pends to any of the files it creates has no means system. A very simple promise, called unique-create of conveying this information to the file sys- was implemented, wherein the application vows tem. Most file systems inherently assume that never to create a file with an existing name (in a it is good to preallocate extra blocks to a file, directory) which is then used by the file system so that when it expands, the preallocated blocks to speedup creation time.
    [Show full text]
  • Filesystems HOWTO Filesystems HOWTO Table of Contents Filesystems HOWTO
    Filesystems HOWTO Filesystems HOWTO Table of Contents Filesystems HOWTO..........................................................................................................................................1 Martin Hinner < [email protected]>, http://martin.hinner.info............................................................1 1. Introduction..........................................................................................................................................1 2. Volumes...............................................................................................................................................1 3. DOS FAT 12/16/32, VFAT.................................................................................................................2 4. High Performance FileSystem (HPFS)................................................................................................2 5. New Technology FileSystem (NTFS).................................................................................................2 6. Extended filesystems (Ext, Ext2, Ext3)...............................................................................................2 7. Macintosh Hierarchical Filesystem − HFS..........................................................................................3 8. ISO 9660 − CD−ROM filesystem.......................................................................................................3 9. Other filesystems.................................................................................................................................3
    [Show full text]