Consumer Distributed File Systems

Total Page:16

File Type:pdf, Size:1020Kb

Consumer Distributed File Systems Consumer Distributed File Systems by Daniel N. Peek A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy (Computer Science and Engineering) in The University of Michigan 2009 Doctoral Committee: Associate Professor Jason N. Flinn, Chair Professor Farnam Jahanian Associate Professor Brian D. Noble Assistant Professor Mark W. Newman c Daniel N. Peek 2009 All Rights Reserved For family and friends. ii ACKNOWLEDGEMENTS This work is the result of the efforts of a group of people. The foremost of these is my advisor, Professor Jason Flinn. I have had the privilege of being Jason’s fourth graduate student and the last who started at the University of Michigan when he did. I have been the beneficiary of his enormous patience, experience, insights, and indulgence. I couldn’t have asked for a better mentor. I would like to thank my committee members: Professors Brian Noble, Farnam Jahanian, and Mark Newman. Their advice and insight improved this work. I am also grateful to the members of my research group: Manish Anand, Ed Nightingale, Ya-Yunn Su, Kaushik Veeraraghavan, Mona Attariyan, Brett Higgins, Puspesh Kumar, and Michelle Noronha. They always provided advice, support, prob- lems, and ideas. I would also like to thank my officemates and housemates: Benjamin Wester, Arnab Nandi, David Watson, Evan Cooke, Jon Oberheide, Sushant Sinha, Kaushtubh Nyalkalkar, Amy Kao, Darshan Karwat, and Ali Besharatian, who made sure there was always something interesting going on. Thanks also to my internship mentor and collaborators: Doug Terry, Tom Rode- heffer, Ted Wobber, Rama Ramasubramanian, and Meg Walraed-Sullivan. I would like to acknowledge the dozens of program committee members and anony- mous reviewers who have endured my papers over the years. Their efforts make the software systems community possible. Finally, I would like to thank my family. They have been very supportive of this academic pursuit over the years it took to complete. iii TABLE OF CONTENTS DEDICATION .................................. ii ACKNOWLEDGEMENTS .......................... iii LIST OF FIGURES ............................... vii CHAPTERS 1 Introduction ............................... 1 1.1 Principles............................. 2 1.2 Distributed file systems for consumers . 3 1.3 Adding type-awareness . 4 1.4 Connecting CE devices . 5 1.5 Theroadahead ......................... 6 2 BackgroundandMotivation. 7 2.1 Integrating consumer electronics devices . 7 2.2 Ensembles ............................ 10 2.3 Persistentqueries ........................ 10 2.4 Sprockets............................. 11 2.5 TrapperKeeper.......................... 12 3 PersistentQueries ............................ 16 3.1 Designconsiderations . 16 3.2 Implementation ......................... 19 3.3 Evaluation ............................ 20 3.4 Examples............................. 22 3.5 Conclusion ............................ 24 4 Sprockets................................. 25 4.1 Designgoals ........................... 26 4.1.1 Safety........................... 26 4.1.2 Easeofimplementation . 27 4.1.3 Performance ....................... 28 4.2 Alternativedesigns .. .. 28 iv 4.2.1 Directprocedurecall . 29 4.2.2 Address space sandboxing . 29 4.2.3 Checkpointandrollback . 30 4.3 Sprocket design and implementation . 33 4.3.1 Adding instrumentation . 33 4.3.2 Sprocketinterface . 35 4.3.3 Handling buggy sprockets . 35 4.3.4 Support for multithreaded applications . 38 4.4 Sprocketuses........................... 39 4.4.1 Transducers ....................... 39 4.4.2 Application-specific resolution . 41 4.5 Evaluation ............................ 43 4.5.1 Methodology....................... 43 4.5.2 Radioheadtransducer . 44 4.5.3 Application-specific conflict resolution . 45 4.5.4 Optimizations ...................... 47 4.5.5 Whengoodsprocketsgobad . 49 4.6 Conclusion ............................ 50 5 TrapperKeeper.............................. 52 5.1 Designgoals ........................... 53 5.1.1 Minimize work per file type . 53 5.1.2 Nocodeperfiletype .................. 54 5.1.3 Isolation ......................... 55 5.2 Implementation ......................... 56 5.2.1 Trapper: Capturing application behavior . 56 5.2.2 Keeper: Running application parsers . 58 5.2.3 Grabber: Capturingtheinterface . 59 5.2.4 Discussion ........................ 62 5.3 Features ............................. 63 5.3.1 Metadataextraction. 64 5.3.2 Documentpreview. 65 5.4 Evaluation ............................ 66 5.4.1 Methodology....................... 66 5.4.2 Trapperperformance . 67 5.4.3 Executingfeatures. 68 5.4.4 DetectingstableGUIstates. 71 5.4.5 Experiences with TrapperKeeper . 71 5.4.6 Thelongtail....................... 73 5.5 Conclusion ............................ 75 6 Consumer Electronics Device Integration . 76 6.1 Making CE devices self-describing . 77 6.2 Supporting namespace diversity . 77 6.3 Reintegrating changes from CE devices . 78 v 6.4 PropagatingupdatestoCEdevices . 80 6.5 Evaluation ............................ 81 6.5.1 Case study: Integrating a digital camera . 81 6.5.2 Case study: Integrating an MP3 player . 82 7 Ensembles ................................ 84 7.1 Designconsiderations . 84 7.2 Implementation ......................... 86 7.2.1 Trackingmodifications . 87 7.2.2 Joininganensemble . 88 7.2.3 Ensembleoperation . 89 7.2.4 Leaving an ensemble . 90 7.3 Evaluation ............................ 91 7.3.1 Ensembleformation . 91 7.4 Conclusion ............................ 93 8 RelatedWork............................... 94 8.1 Persistent queries related work . 94 8.2 Sprocketsrelatedwork . 95 8.3 TrapperKeeperrelatedwork . 97 8.4 CEdeviceintegrationrelatedwork. 99 8.5 Ensemblesrelatedwork . 99 9 Conclusion ................................ 101 BIBLIOGRAPHY ................................ 103 vi LIST OF FIGURES Figure 3.1 Persistentqueryinterface. 18 3.2 Overheadofpersistentqueries . 21 3.3 Timetocreateapersistentquery . 22 4.1 Exampleofsprocketinterface . 36 4.2 Performance of the Radiohead transducer . ... 44 4.3 Application-specific conflict resolution . ...... 46 4.4 Optimizationperformance . 48 4.5 Resultsofbuggysprockets . 49 5.1 Tiers of increasing specificity . .. 53 5.2 TrapperKeeperoverview . 57 5.3 Accessibility API view of a window . 61 5.4 Trapperperformance ........................... 67 5.5 Keeperperformance............................ 68 5.6 Difference in GUI states for different files . ... 70 5.7 Fractionoffilesleftuncovered . 73 5.8 Coverage of most popular file name extensions . ... 74 7.1 Ensembleformationtime. 91 7.2 Time to reconcile updates in an ensemble . .. 92 vii CHAPTER 1 Introduction Consumers have long stored their data on local file systems on personal computers. However, these file systems are no longer sufficient to manage consumer data due to the emergence of consumer electronics (CE) devices such as cell phones and digital cameras and the rapid increase of multimedia data. CE devices are a problem for local file systems because they store user data outside the purview of the local file system on heterogeneous devices. As a result, intervention is required to synchronize the state of the CE devices and a local file system. For instance, pictures can be downloaded from a digital camera or iPod contents can be synchronized by using iTunes. However, these management tasks burden the user. They require the user to remember which data needs to be transferred and to learn to operate new application interfaces. Our insight into simplifying this situation is that although each instance of the stored data is physically distinct, conceptually, all instances of a stored data item are a single logical entity. Distributed file systems embody a similar realization for general- purpose computers, presenting an interface in which all computers can access all data as if they were all connected to a single large shared disk and maintaining this illusion by automatically propagating data. This eases data management issues by allowing users to operate on a single conceptual data item instead of the dispersed physical instances of that data. By creating a distributed file system capable of including both 1 general-purpose computers and CE devices as clients, we can eliminate the chore of manual synchronization. We have also experienced an immense expansion of multimedia data [2, 16]. Stud- ies [61] have shown that higher level management techniques are needed to help man- age the burgeoning data. An example of this new management is the ability to list files based not on their position within a hierarchy of file system directories, but based on other properties of files such as the quality of a JPEG image file. These properties, called metadata, are typically encoded into file data in a manner governed by their file type. This arrangement is opaque to current file systems, preventing them from ac- cessing and this metadata and consequently, from providing type-aware functionality such as metadata indexing, automatic conflict resolution, and generating document previews. Our response is to build a new mechanism that allows the file system to be ex- tended with code that provides type-aware features. We have also developed a tech- nique that can provide many type-aware functions and does not require the creation of code for each file type. These two problems, the lack of CE device support and type-awareness, are an obstacle to consumer storage use. This work demonstrates techniques to address these difficulties. Thus, our thesis is that the inclusion of CE devices
Recommended publications
  • The GNOME Census: Who Writes GNOME?
    The GNOME Census: Who writes GNOME? Dave Neary & Vanessa David, Neary Consulting © Neary Consulting 2010: Some rights reserved Table of Contents Introduction.........................................................................................3 What is GNOME?.............................................................................3 Project governance...........................................................................3 Why survey GNOME?.......................................................................4 Scope and methodology...................................................................5 Tools and Observations on Data Quality..........................................7 Results and analysis...........................................................................10 GNOME Project size.......................................................................10 The Long Tail..................................................................................11 Effects of commercialisation..........................................................14 Who does the work?.......................................................................15 Who maintains GNOME?................................................................17 Conclusions........................................................................................22 References.........................................................................................24 Appendix 1: Modules included in survey...........................................25 2 Introduction What
    [Show full text]
  • 50 Are Gnome and KDE Equal? KNOW-HOW 50
    KNOW-HOW Ask Klaus! ASK KLAUS! and even with its very reduced features, linking of KDE or Gnome programs is it has always been sufficient for me. more likely fail because of this modular There were quarrels between develop- structure than for any other reason.) ers and users about KDE being “non- This can get you into some problems. Klaus Knopper is the creator of free” in the old days, because of the qt li- If you use KDE regularly, and you want Knoppix and co-founder of the cense (for the library KDE is based on); to install a single Gnome program such that it was more memory-consuming as Gnopernicus, you end up installing LinuxTag expo. He currently than Gnome; or that its graphics were the entire Gnome software suite because poorer. None of these are genuine prob- you won’t be able to to get the program works as a teacher, program- lems today, and I don’t know if the ru- to run otherwise. In very bad cases, mer, and consultant. If you have mors about graphics and memory con- Gnome dependencies try to deinstall sumption ever were true, or whether parts of KDE (or vice versa) because of a configuration problem, or if they were just part of the creative com- conflicting services that are present in petition between different groups and both (a very rare case, though). you just want to learn more philosophies. OK, I cheated a little in this example. about how Linux works, send Nowadays, Gnome consumes the Gnopernicus is more like a suite of pl- same amount of system resources as ugins and addons for Gnome than like a your questions to: KDE (if not more), performance bench- standalone application.
    [Show full text]
  • SUSE® Linux Enterprise Desktop 12 and the Workstation Extension: What's New ?
    SUSE® Linux Enterprise Desktop 12 and the Workstation Extension: What's New ? Frédéric Crozat <[email protected]> Enterprise Desktop Release Manager Scott Reeves <[email protected]> Enterprise Desktop Development Manager Agenda • Design Criteria • Desktop Environment in SUSE Linux Enterprise 12 • GNOME Shell • Desktop Features and Applications 2 Design Criteria SUSE Linux Enterprise Desktop Interoperability Ease of Use Security Ease of Management Lower Costs 4 SUSE Linux Enterprise Desktop 12 • Focus on technical workstation ‒ Developers and System administrators • One tool for the job • Main desktop applications will be shipped: ‒ Mail client, Office Suite, Graphical Editors, ... • SUSE Linux Enterprise Workstation Extension ‒ Extend SUSE Linux Enterprise Server with packages only available on SUSE Linux Enterprise Desktop. (x86-64 only) 5 Desktop in SUSE Linux Enterprise 12 As Part of the Common Code Base SUSE Linux Enterprise 12 Desktop Environment • SUSE Linux Enterprise 12 contains one primary desktop environment • Additional light-weight environment for special use-cases: ‒ Integrated Systems • Desktop environment is shared between the server and desktop products 7 SUSE Linux Enterprise 12 Desktop Environment • GNOME 3 is the main desktop environment ‒ SLE Classic mode by default ‒ GNOME 3 Classic Mode and GNOME 3 Shell Mode also available • SUSE Linux Enterprise 12 ships also lightweight IceWM ‒ Targeted at Integrated Systems • QT fully supported: ‒ QT5 supported for entire SLE12 lifecycle ‒ QT4 supported, will be removed in future
    [Show full text]
  • Post Increment Evaluation Report Increment 11 International Space
    SSP 54311 Baseline WWW.NASAWATCH.COM Post Increment Evaluation Report Increment 11 International Space Station Program Baseline June 2006 National Aeronautics and Space Administration International Space Station Program Johnson Space Center Houston, Texas Contract Number: NNJ04AA02C WWW.NASAWATCH.COM SSP 54311 Baseline - WWW.NASAWATCH.COM REVISION AND HISTORY PAGE REV. DESCRIPTION PUB. DATE - Initial Release (Reference per SSCD XXXXXX, EFF. XX-XX-XX) XX-XX-XX WWW.NASAWATCH.COM SSP 54311 Baseline - WWW.NASAWATCH.COM INTERNATIONAL SPACE STATION PROGRAM POST INCREMENT EVALUATION REPORT INCREMENT 11 CHANGE SHEET Month XX, XXXX Baseline Space Station Control Board Directive XXXXXX/(X-X), dated XX-XX-XX. (X) CHANGE INSTRUCTIONS SSP 54311, Post Increment Evaluation Report Increment 11, has been baselined by the authority of SSCD XXXXXX. All future updates to this document will be identified on this change sheet. WWW.NASAWATCH.COM SSP 54311 Baseline - WWW.NASAWATCH.COM INTERNATIONAL SPACE STATION PROGRAM POST INCREMENT EVALUATION REPORT INCREMENT 11 Baseline (Reference SSCD XXXXXX, dated XX-XX-XX) LIST OF EFFECTIVE PAGES Month XX, XXXX The current status of all pages in this document is as shown below: Page Change No. SSCD No. Date i - ix Baseline XXXXXX Month XX, XXXX 1-1 Baseline XXXXXX Month XX, XXXX 2-1 - 2-2 Baseline XXXXXX Month XX, XXXX 3-1 - 3-3 Baseline XXXXXX Month XX, XXXX 4-1 - 4-15 Baseline XXXXXX Month XX, XXXX 5-1 - 5-10 Baseline XXXXXX Month XX, XXXX 6-1 - 6-4 Baseline XXXXXX Month XX, XXXX 7-1 - 7-61 Baseline XXXXXX Month XX, XXXX A-1 - A-9 Baseline XXXXXX Month XX, XXXX B-1 - B-3 Baseline XXXXXX Month XX, XXXX C-1 - C-2 Baseline XXXXXX Month XX, XXXX D-1 - D-92 Baseline XXXXXX Month XX, XXXX WWW.NASAWATCH.COM SSP 54311 Baseline - WWW.NASAWATCH.COM INTERNATIONAL SPACE STATION PROGRAM POST INCREMENT EVALUATION REPORT INCREMENT 11 JUNE 2006 i SSP 54311 Baseline - WWW.NASAWATCH.COM SSCB APPROVAL NOTICE INTERNATIONAL SPACE STATION PROGRAM POST INCREMENT EVALUATION REPORT INCREMENT 11 JUNE 2006 Michael T.
    [Show full text]
  • Collabkit – a Multi-User Multicast Collaboration System Based on VNC
    Humboldt-Universität zu Berlin Institut für Informatik Lehrstuhl für Rechnerorganisation und Kommunikation Diplomarbeit CollabKit – A Multi-User Multicast Collaboration System based on VNC Christian Beier 19. April 2011 Gutachter Prof. Dr. Miroslaw Malek Prof. Dr. Jens-Peter Redlich Betreuer Peter Ibach <[email protected]> Abstract Computer-supported real-time collaboration systems offer functionality to let two or more users work together at the same time, allowing them to jointly create, modify and exchange electronic documents, use applications, and share information location-independently and in real-time. For these reasons, such collaboration systems are often used in professional and academic contexts by teams of knowledge workers located in different places. But also when used as computer-supported learning environments – electronic classrooms – these systems prove useful by offering interactive multi-media teaching possibilities and allowing for location-independent collaborative learning. Commonly, computer-supported real-time collaboration systems are realised using remote desktop technology or are implemented as web applications. However, none of the examined existing commercial and academic solutions were found to support concurrent multi-user interaction in an application-independent manner. When used in low-throughput shared-medium computer networks such as WLANs or cellular networks, most of the investigated systems furthermore do not scale well with an increasing number of users, making them unsuitable for multi-user collaboration of a high number of participants in such environments. For these reasons this work focuses on the design of a collaboration system that supports concurrent multi-user interaction with standard desktop applications and is able to serve a high number of users on low-throughput shared-medium computer networks by making use of multicast data transmission.
    [Show full text]
  • Linux Networking Cookbook.Pdf
    Linux Networking Cookbook ™ Carla Schroder Beijing • Cambridge • Farnham • Köln • Paris • Sebastopol • Taipei • Tokyo Linux Networking Cookbook™ by Carla Schroder Copyright © 2008 O’Reilly Media, Inc. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (safari.oreilly.com). For more information, contact our corporate/institutional sales department: (800) 998-9938 or [email protected]. Editor: Mike Loukides Indexer: John Bickelhaupt Production Editor: Sumita Mukherji Cover Designer: Karen Montgomery Copyeditor: Derek Di Matteo Interior Designer: David Futato Proofreader: Sumita Mukherji Illustrator: Jessamyn Read Printing History: November 2007: First Edition. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. The Cookbook series designations, Linux Networking Cookbook, the image of a female blacksmith, and related trade dress are trademarks of O’Reilly Media, Inc. Java™ is a trademark of Sun Microsystems, Inc. .NET is a registered trademark of Microsoft Corporation. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O’Reilly Media, Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps. While every precaution has been taken in the preparation of this book, the publisher and author assume no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein.
    [Show full text]
  • Foot Prints Feel the Freedom of Fedora!
    The Fedora Project: Foot Prints Feel The Freedom of Fedora! RRaahhuull SSuunnddaarraamm SSuunnddaarraamm@@ffeeddoorraapprroojjeecctt..oorrgg FFrreeee ((aass iinn ssppeeeecchh aanndd bbeeeerr)) AAddvviiccee 101011:: KKeeeepp iitt iinntteerraaccttiivvee!! Credit: Based on previous Fedora presentations from Red Hat and various community members. Using the age old wisdom and Indian, Free software tradition of standing on the shoulders of giants. Who the heck is Rahul? ( my favorite part of this presentation) ✔ Self elected Fedora project monkey and noisemaker ✔ Fedora Project Board Member ✔ Fedora Ambassadors steering committee member. ✔ Fedora Ambassador for India.. ✔ Editor for Fedora weekly reports. ✔ Fedora Websites, Documentation and Bug Triaging projects volunteer and miscellaneous few grunt work. Agenda ● Red Hat Linux to Fedora & RHEL - Why? ● What is Fedora ? ● What is the Fedora Project ? ● Who is behind the Fedora Project ? ● Primary Principles. ● What are the Fedora projects? ● Features, Future – Fedora Core 5 ... The beginning: Red Hat Linux 1994-2003 ● Released about every 6 months ● More stable “ .2” releases about every 18 months ● Rapid innovation ● Problems with retail channel sales model ● Impossible to support long-term ● Community Participation: ● Upstream Projects ● Beta Team / Bug Reporting The big split: Fedora and RHEL Red Hat had two separate, irreconcilable goals: ● To innovate rapidly. To provide stability for the long-term ● Red Hat Enterprise Linux (RHEL) ● Stable and supported for 7 years plus. A platform for 3rd party standardization ● Free as in speech ● Fedora Project / Fedora Core ● Rapid releases of Fedora Core, every 6 months ● Space to innovate. Fedora Core in the tradition of Red Hat Linux (“ FC1 == RHL10” ) Free as in speech, free as in beer, free as in community support ● Built and sponsored by Red Hat ● ...with increased community contributions.
    [Show full text]
  • Remote Desktop Server: XDMCP
    SUSE® Linux Enterprise Setup and Optimization for Remote Graphical Access Frédéric Crozat <[email protected] Enterprise Desktop Release Manager Scott Reeves <[email protected] Enterprise Desktop Development Manager Agenda • Remote Desktop Methods • Demo • Other Remote Access Methods • Session monitoring and Management • Additional settings 2 Remote Desktop Server: XDMCP • Highly discouraged by SUSE ‒ Not secure: traffic is not encrypted ‒ Not adapted to modern desktops, causing huge latency • But still available 3 Remote Desktop server: VNC • Recommended protocol (security, caching) • Available through several means: ‒ Independent session with XVNC (configured through YaST Remote Administration module) ‒ Sharing existing GNOME session, through vino (GNOME Control Center / Sharing) 4 Remote Desktop Server: RDP • Microsoft protocol, always available on Windows products (both as client and server) • xrdp is providing independent graphical sessions support 5 Remote Desktop Clients • Vinagre ‒ Connect to VNC / SSH / Spice / RDP sessions • Vncviewer • Browser ‒ Java ‒ HTML5 • Security ‒ TLS support • Situations for alternative display and window managers 6 Demo Other Remote Access Methods • Connection via ssh ‒ Only for applications ‒ not full desktop ‒ Can't attach to running applications • Graphical apps in containers ‒ Can be done but not supported • Beware, X11 socket is NOT secure ‒ In the future, xdg-app and wayland will help 8 Accessing SUSE Linux Enterprise systems from Windows • For RDP: built-in • For X11: ‒ Micro Focus Reflection X 2014: ‒ Standalone X server or Domain mode (distributes workload and connectivity across multiple tiers) ‒ Xming (Free X server for Windows) ‒ Exceed ‒ Cygwin X server • For VNC: ‒ Vncviewer ‒ Libvirt Virt-viewer (TLS support) 9 Session monitoring and management • Systemd-loginctl 10 Session monitoring and management • systemd-loginctl is replacing ConsoleKit • loginctl [list-sessions]: output all sessions • loginctl session-status <session-number>: 2 - fcrozat (1000) Since: lun.
    [Show full text]
  • New Gnome 2.16 Desktop? NEW GNOME
    REVIEWS Gnome 2.16 What’s new in the new Gnome 2.16 desktop? NEW GNOME The changes in Gnome 2.16 are more than cosmetic: the current release sees a leaner and faster version of the desktop. BY CHRISTIAN MEYER ust six months ago, when Gtk#. The libraries makes it easier for Although Metacity, the original Gnome Gnome 2.14 reached the mirror developers who prefer not to use C to window manager, does not support all Jservers, the Gnome developers enter the world of Gnome. Gnome bind- the effects I just referred to, it will still proved they can set milestones without ings are available for C++, C#, and perform well with the new 3D X servers. sacrificing usability. Programs such as Python. The features are not enabled by default, the Deskbar applet demonstrate the but enabling them will give you a first power of Gnome’s underpinnings, pro- 3D Desktop impression of the capabilities you can viding an attractive GUI that is both effi- In last couple of years, much time and expect with the new X server extensions. cient and remarkably uncluttered. money has gone into investigating new You don’t even need to terminate the The latest 2.16 version adds a variety GUI concepts. One of the results is the current session (that is, log off and back of new features, and there have been Looking Glass project [1] by Sun Micro- on) to disable the effects. major improvements with respect to per- systems, which gives users the ability to formance and memory consumption.
    [Show full text]
  • Download File
    Eastern European Modernism: Works on Paper at the Columbia University Libraries and The Cornell University Library Compiled by Robert H. Davis Columbia University Libraries and Cornell University Library With a Foreword by Steven Mansbach University of Maryland, College Park With an Introduction by Irina Denischenko Georgetown University New York 2021 Cover Illustration: No. 266. Dvacáté století co dalo lidstvu. Výsledky práce lidstva XX. Věku. (Praha, 1931-1934). Part 5: Prokroky průmyslu. Photomontage wrappers by Vojtěch Tittelbach. To John and Katya, for their love and ever-patient indulgence of their quirky old Dad. Foreword ©Steven A. Mansbach Compiler’s Introduction ©Robert H. Davis Introduction ©Irina Denischenko Checklist ©Robert H. Davis Published in Academic Commons, January 2021 Photography credits: Avery Classics Library: p. vi (no. 900), p. xxxvi (no. 1031). Columbia University Libraries, Preservation Reformatting: Cover (No. 266), p.xiii (no. 430), p. xiv (no. 299, 711), p. xvi (no. 1020), p. xxvi (no. 1047), p. xxvii (no. 1060), p. xxix (no. 679), p. xxxiv (no. 605), p. xxxvi (no. 118), p. xxxix (nos. 600, 616). Cornell Division of Rare Books & Manuscripts: p. xv (no. 1069), p. xxvii (no. 718), p. xxxii (no. 619), p. xxxvii (nos. 803, 721), p. xl (nos. 210, 221), p. xli (no. 203). Compiler: p. vi (nos. 1009, 975), p. x, p. xiii (nos. 573, 773, 829, 985), p. xiv (nos. 103, 392, 470, 911), p. xv (nos. 1021, 1087), p. xvi (nos. 960, 964), p. xix (no. 615), p. xx (no. 733), p. xxviii (no. 108, 1060). F.A. Bernett Rare Books: p. xii (nos. 5, 28, 82), p.
    [Show full text]
  • Copyrighted Material
    41_038993 bindex.qxp 11/22/06 9:39 AM Page 871 AbiWord, 43 SYMBOLS AND NUMBERS About GNOME menu entry, 116 * (asterisk), wildcard, 173–174 About Ubuntu menu entry, 116 @ (at symbol), link indicator, 153 ABR (Average Bit Rate), 366 ^ (caret) access control, CUPS print server, 832. See also command, 186 file sharing with ACLs. Ctrl key shortcut, 198 access.conf file, 632 - (dash), command-line options, 153 accessibility, 8. See also assistive technologies. -- (dashes), command-line options, 153 Accessories menu entry, 114 $ (dollar sign), command prompt, 150, 186 ACLs (Access Control Lists). See file sharing with ACLs. “ (double quotes), comment indicator, 192 ad hoc wireless networks, 736 ! (exclamation point), in command history, 172 Add to Panel dialog, 129–132 # (hash mark), comment indicator adding (mathematics). See summing. Bash shell, 177 Add/Remove Applications menu entry, 114, 118–119 PAMs (Pluggable Authentication Modules), 628 adept tool, 569 repositories, 572 Administration menu entry, 115 sudo command, 634 Advanced button, 118 % (percent symbol), job control, 176 Advanced Shell Scripting Guide, 177 ? (question mark) afps utility, 95 search backward command, 188 AIFF (Audio Interchange File Format), 366 wildcard, 173–174 AisleRiot solitaire, 410–411 ‘ (single quote), function names, 204 Aitchison, Ron, 806 / (slash) ALAC (Apple Lossless Audio Codec), 366 in file and directory names, 90 Albitz, Paul, 806 search forward command, 188 aliases, Bash shell commands, 179 top level directory, 91 aliasing, 344 { } (curly brackets), wildcards, 173–174 Allman, Eric, 770 [ ] (square brackets), wildcards, 173–174 Almquist shell, 157 { (left curly bracket) command, 186 Alt (Alternate) key, 197–198 ( (left paren) command, 186 Alternate Install CD, 13, 82–83, 85.
    [Show full text]
  • Multi-Lingual Screen Reader and Processing of Font-Data in Indian Languages Submitted by A
    MULTI-LINGUAL SCREEN READER AND PROCESSING OF FONT-DATA IN INDIAN LANGUAGES A THESIS submitted by A. ANAND AROKIA RAJ for the award of the degree of Master of Science (by Research) in Computer Science & Engineering LANGUAGE TECHNOLOGIES RESEARCH CENTER INTERNATIONAL INSTITUTE OF INFORMATION TECHNOLOGY HYDERABAD - 500 032, INDIA February 2008 Dedication I dedicate this work to my loving parents ANTONI MUTHU RAYAR and MUTHU MARY who are always behind my growth. i THESIS CERTIFICATE This is to certify that the thesis entitled Multi-Lingual Screen Reader and Processing of Font-Data in Indian Languages submitted by A. Anand Arokia Raj to the International Institute of Information Technology, Hyderabad for the award of the degree of Master of Science (by Research) in Computer Science & Engineering is a bonafide record of research work carried out by him under our supervision. The contents of this thesis, in full or in parts, have not been submitted to any other Institute or University for the award of any degree or diploma. Hyderabad - 500 032 (Mr. S. Kishore Prahallad) Date: ACKNOWLEDGMENTS I thank my adviser Mr.Kishore Prahallad for his guidance during my thesis work. Because of him now I am turned into not only a researcher but also a developer. I thank Prof.Rajeev Sangal and Dr.Vasudeva Varma for their valuable advices and inputs for improving the screen reading software. I am also thankful to my speech lab friends and other IIIT friends who helped me in many ways. They were with me when I needed a help and when I needed a relaxation.
    [Show full text]