Aaron Nathan CS6464 Final Project vapor_disk. Idea Provide a “real time” backup that is widely and easily available Simple to use Works in Windows.

Slides:



Advertisements
Similar presentations
PCT303 – Content Publishing in SharePoint Eugene Rosenfeld Black Blade Associates
Advertisements

An Overview Of Windows NT System Student: Yifan Yang Student ID:
Operating Systems Manage system resources –CPU scheduling –Process management –Memory management –Input/Output device management –Storage device management.
Web Canary -- client honey pot UTSA. Architecture of Web canary. 2.
INTRODUCTION OS/2 was initially designed to extend the capabilities of DOS by IBM and Microsoft Corporations. To create a single industry-standard operating.
Case Study: Windows 2000 Part I Will Richards CPSC 550 Spring 2001.
I/O Hardware n Incredible variety of I/O devices n Common concepts: – Port – connection point to the computer – Bus (daisy chain or shared direct access)
Computer Forensics Principles and Practices by Volonino, Anzaldua, and Godwin Chapter 6: Operating Systems and Data Transmission Basics for Digital Investigations.
1 I/O Management in Representative Operating Systems.
I/O Systems CSCI 444/544 Operating Systems Fall 2008.
Source Code Management Or Configuration Management: How I learned to Stop Worrying and Hate My Co-workers Less.
Operating Systems.
Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access memory.
Lecture The Client/Server Database Environment
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 7 Configuring File Services in Windows Server 2008.
计算机系 信息处理实验室 Lecture 12 I/O System
 A cookie is a piece of text that a Web server can store on a user's hard disk.  Cookie data is simply name-value pairs stored on your hard disk by.
Client/Server Architectures
© 2011 IBM Corporation 11 April 2011 IDS Architecture.
Chapter 3 Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access.
1 Input/Output. 2 Principles of I/O Hardware Some typical device, network, and data base rates.
Chapter 3.1:Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access.
CSE451 Introduction to Operating Systems Spring 2008 Tour of the Windows NT File Systems Gary Kimura & Mark Zbikowski.
-Term Project Final Presentation Sang-Ho Lee Dae-Jin Jung.
Rensselaer Polytechnic Institute CSCI-4210 – Operating Systems David Goldschmidt, Ph.D.
Ceng Operating Systems
A+ Guide to Managing and Maintaining Your PC Fifth Edition Chapter 15 Installing and Using Windows XP Professional.
ASP.NET The.NET Framework. The.NET Framework is Microsoft’s distributed run-time environment for creating, deploying, and using applications over the.
Chapter 3.  Help you understand different types of servers commonly found on a network including: ◦ File Server ◦ Application Server ◦ Mail Server ◦
Midori Life after windows Microsoft Research’s. Singularity  Midori is a stem off of this operating system  A research project started in 2003 to build.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 2, 2005 Chapter 13: I/O Systems I/O Hardware.
Input and output (IO) systems Last week we considered the memory management layer of the operating system. This week we will look at another layer of the.
Recall: Three I/O Methods Synchronous: Wait for I/O operation to complete. Asynchronous: Post I/O request and switch to other work. DMA (Direct Memory.
Virus Detection Mechanisms Final Year Project by Chaitanya kumar CH K.S. Karthik.
A+ Guide to Managing and Maintaining Your PC Fifth Edition Chapter 13 Understanding and Installing Windows 2000 and Windows NT.
IOS110 Introduction to Operating Systems using Windows Session 5 1.
Interprocess Communication: ( ) CPE Operating Systems.
1 Windows 2000 Product family (Week 3, Monday 1/23/2006) © Abdou Illia, Spring 2006.
MIDORI The Post Windows Operating System Microsoft Research’s.
Copyright © cs-tutorial.com. Overview Introduction Architecture Implementation Evaluation.
A Critical Analysis of the Windows mLAN Driver
Permissions and User Rights
TCP/IP (Transmission Control Protocol / Internet Protocol)
Introduction to the Media Kit Matt Wronkiewicz Be Users Group at UIUC.
Implementing ISA Server Caching
Chapter 5 Input/Output 5.1 Principles of I/O hardware
Overview of Windows Driver Development Reference: us/gstart/hh/gstart/gs_intro_031j.asp.
Microsoft Window 9X Operating System Richard Goldman © February 28, 2001.
1 Introduction to Shared Folders Shared folders provide network users access to files. Users connect to the shared folder over the network. Users must.
Operating System (Reference : OS[Silberschatz] + Norton 6e book slides)
OPERATING SYSTEMS DO YOU REQUIRE AN OPERATING SYSTEM IN YOUR SYSTEM?
A Fragmented Approach by Tim Micheletto. It is a way of having multiple cache servers handling data to perform a sort of load balancing It is also referred.
Functions of Operating Systems V1.0 (22/10/2005).
1.3 Operating system services An operating system provide services to programs and to the users of the program. It provides an environment for the execution.
Network architecture model What is an “architecture model”? An architecture model offers a general frame of reference for the problems connected to the.
Introduction to Operating Systems Concepts
File-System Management
Virtualization.
Chapter Objectives In this chapter, you will learn:
Open Source distributed document DB for an enterprise
The Client/Server Database Environment
Chapter 3: Windows7 Part 4.
2018 Huawei H Real Questions Killtest
Windows Development Dynadata Copyright, 2014 © DynaData S.A. 1/10.
An Introduction to Computer Networking
Quiz
Chapter 2: The Linux System Part 5
Windows Server Administration Fundamentals
Operating Systems Structure
Presentation transcript:

Aaron Nathan CS6464 Final Project vapor_disk

Idea Provide a “real time” backup that is widely and easily available Simple to use Works in Windows

Execution Filesystems in Windows work differently – Windows IFS (installable file system) in WinDDK – Three modes- File System- designed for creating actual file systems on real volumes, like NTFS or FAT MiniFilter – designed for virus scanner and indexing type applications FS FilterDriver – designed for customizing existing file systems. Present themselves as a filter to intercept requests to the underlying volume. – Uses IRP (IO Req Packets) for communication FUSE-like libraries exsist – Terrible implementations (buggy, missing features) – Requires a Kernel Mode “Filter” Driver

Kernel Mode Driver Based off WinDDK Sample and DOKAN project – Originally planned to just use DOKAN as is No 64Bit support Failed to support common applications – Fixed these problems! 64 Bit Driver needs digital signature :(

VaporDisk Presents itself as a drive in My Computer Has approximately same access time as local disk – Files cached locally on a real volume – Currently no disconnected support Files asynchronously stored at S3 Has web interface for retrieving files Designed for a single user on one computer (only basic conflict resolution)

Architecture Client Application Kernel Mode FS Library Host Filesystem Asynchornous Operation Queue VaporDisk Core S3 Synchronizer S3 Library Amazon S3 Pluggable Synchronization Layer

Optimizations Files are cached locally for fast access Computes MD5 Hash of files locally and stored on write Hashes compared against server on initialization, ignores files with same hash, in conflict, the local cache always wins Windows often “segments” writes for better performance – “post process” these by joining together the pieces to avoid reuploading the file many times since S3 doesn’t support partial writes – Accomplished with a delay queue

Features Uses the SSL support built into S3 to provide encrypted file transmission Supports multiple instances running simultaneously (theoretically) Requires no change in programs nor how “novice” users already use computers Designed to be extensible for multicomputer/single user application

Demo