WO2003107221B1 - Layered computing systems and methods - Google Patents

Layered computing systems and methods

Info

Publication number
WO2003107221B1
WO2003107221B1 PCT/US2003/018633 US0318633W WO03107221B1 WO 2003107221 B1 WO2003107221 B1 WO 2003107221B1 US 0318633 W US0318633 W US 0318633W WO 03107221 B1 WO03107221 B1 WO 03107221B1
Authority
WO
WIPO (PCT)
Prior art keywords
layer
registry
write
request
read
Prior art date
Application number
PCT/US2003/018633
Other languages
French (fr)
Other versions
WO2003107221A1 (en
Inventor
Jared R Blaser
Randall R Cook
Original Assignee
Fslogic Inc
Jared R Blaser
Randall R Cook
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fslogic Inc, Jared R Blaser, Randall R Cook filed Critical Fslogic Inc
Priority to AU2003243543A priority Critical patent/AU2003243543A1/en
Publication of WO2003107221A1 publication Critical patent/WO2003107221A1/en
Publication of WO2003107221B1 publication Critical patent/WO2003107221B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Abstract

The inventions relate generally to computer systems having facilities for providing virtual portions of file systems and configuration settings to applications. More particularly, the inventions relate to computer systems that provide a layer organization for files and configuration settings that can be overlaid on top of an operating system. An exemplary system includes a base operating system (110), operating system file system and registry libraries (108), layering system libraries and/or software (106), applications (104), a management applications programmer interface (102), and a layer manager application (100). Detailed information on various example embodiments of the inventions are provided in the Detailed Description below, and the inventions are defined by the appended claims.

Claims

AMENDED CLAIMS
[received by the International Bureau on 9 January 2004 (09.01.04); original claims 1-20 replaced by amended claims 1-20 (8 pages)]
1. A set of computer readable media containing computer instructions for operating a layered computing environment, the set of computer readable media comprising at least one medium upon which is stored the computer instructions executable by a computing system to achieve the functions of:
(i) receiving from applications read requests for read operations to a file system, each read request containing a file reference appropriate to a file system organization,
(ii) for file references of the received read requests, attempting to identify an owner layer from a set of enabled layers;
(iii) if, for a particular read request, an owner layer is identified for a file reference, identifying a virtual read reference corresponding to the read reference of the particular read request utilizing information contained in the identified owner layer,
(iv) following the identifying a virtual read reference, causing a read operation to execute using that virtual read reference,
(v) if, for a particular read request, an owner layer is not identified for a file reference, causing the read operation to execute using the file reference of the particular read request.
2. A set of computer readable media according to claim 1 , wherein the computer instructions are further executable to achieve the function of decrypting encrypted information referenced by the virtual read reference.
46 3 A set of computer readable media according to claim 1 , wherein the computer instructions are further executable to achieve the functions of
(vi) receiving from applications write requests for write operations to a file system, the write requests each containing a file reference,
(VII) for file references of particular received write requests, attempting to identify an owner layer from a set of currently enabled layers,
(VIM) if, for a particular write request, an owner layer is identified for the file reference of that write request, identifying a virtual write reference utilizing information contained in the identified owner layer, the virtual write reference corresponding to the file reference of the particular write request,
(ix) following the identifying a virtual write reference, causing a write operation to execute using that virtual write reference,
(x) if, for a particular write reference, an owner layer is not identified for the file reference of that write request, causing a write operation to execute using the file reference of the particular write request
4 A set of computer readable media according to claim 3, wherein the computer instructions are further executable to achieve the function of copying an existing file to the capture layer prior to causing the write operation to execute if the write operation is a modify operation
5 A set of computer readable media according to claim 3, wherein the computer instructions are further executable to achieve the function of encrypting the information to be written prior to the execution of the write operation
47 6 A set of computer readable media according to claim 3, wherein the computer instructions are further executable to achieve the functions of
(xi) receiving from applications requests to create, delete, and set the value of a registry setting,
(xii) following receipt of a request to create, delete or set the value of a registry setting, a determining whether or not the registry operation of the request is to be captured to an enabled layer,
(xiu) acting on a request to create a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting operation to execute in the base system registry location,
(xiv) acting on a request to create a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry creation destination layer,
(xv) following said identifying a registry creation destination layer, causing the registry setting to be created virtually in the registry creation destination layer,
(xvi) acting on a request to delete a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting deletion operation to execute in the base system registry location,
(XVII) acting on a request to delete a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry deletion destination layer,
(XVIII) following said identifying a registry deletion destination layer, causing the registry setting to be deleted virtually in the registry deletion destination layer,
(xix) acting on a request to set a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting operation to execute in the base system registry location,
(xx) acting on a request to set a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry setting destination layer, and
(xxi) following said identifying a registry setting destination layer, causing the registry setting to be created virtually in the registry setting destination layer
7 A set of computer readable media according to claim 6, wherein the computer instructions are further executable to achieve the function of
(XXII) receiving management commands through an applications programmer interface
48
8. A set of computer readable media according to claim 7, wherein the computer instructions are further executable to achieve the functions of:
(xxiii) receiving a management command through an applications programmer interface to import a specified layer archive; and
(xxiv) import the specified layer archive.
9. A set of computer readable media according to claim 7, wherein the computer instructions are further executable to achieve the functions of:
(xxiii) receiving a management command through an applications programmer interface to enable a layer group; and
(xxiv) enable each layer of the specified layer group.
10. A set of computer readable media according to claim 7, wherein the computer instructions are further executable to achieve the functions of:
(xxiii) receiving a management command through an applications programmer interface to disable a layer group; and
(xxiv) disable each layer of the specified layer group.
11. A set of computer readable media according to claim 7, wherein the computer instructions include a layer manager application.
12. A set of computer readable media according to claim 6, wherein the computer instructions are further executable to achieve the functions of:
(xii) examining the installed layers for a configuration element, that element specifying for each layer whether or not the layer is to be enabled on system initialization; and
(xiii) enabling those layers having configuration elements specifying layer enablement on system initialization.
13. A computing system supporting a layered computing environment, comprising: a processor; a storage device group accessible by said processor, said storage device group containing at least one storage device operable to contain operating system files, applications and layers; one or more layers stored to said storage device group; instructions stored to said storage device group, said instructions being further executable by said processor to achieve the functions of:
(i) receiving from applications read requests for read operations to a file system, the read requests each containing a file reference,
(ii) for file references of particular received read requests, attempting to identify an owner layer from a set of currently enabled layers,
(iii) if, for a particular read request, an owner layer is identified for the file reference of that read request, identifying a virtual read reference utilizing information contained in the identified owner layer, the virtual read reference referencing a corresponding file structure to the file reference of the particular read request,
(iv) following an identification of a virtual read reference, causing a read operation to execute using that virtual read reference,
(v) if, for a particular read request, an owner layer is not identified for the file reference of that read request, causing a read operation to execute using the file reference of the particular read request,
(vi) receiving from applications write requests for write operations to a file system, the write requests each containing a file reference,
(vii) for file references of particular received write requests, attempting to identify an owner layer from a set of currently enabled layers,
(viii) if, for a particular write request, an owner layer is identified for the file reference of that write request, identifying a virtual write reference utilizing information contained in the identified owner layer, the virtual write reference corresponding to the file reference of the particular write request,
(ix) following the identifying a virtual write reference, causing a write operation to execute using that virtual write reference,
(x) if, for a particular write reference, an owner layer is not identified for the file reference of that write request, causing a write operation to execute using the file reference of the particular write request.
14. A computing system according to claim 13, wherein the computer instructions are further executable to achieve the functions of:
(xi) receiving from applications requests to create, delete, and set the value of a registry setting;
(xii) following receipt of a request to create, delete or set the value of a registry setting, a determining whether or not the registry operation of the request is to be captured to an enabled layer;
(xiii) acting on a request to create a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting operation to execute in the base system registry location;
(xiv) acting on a request to create a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry creation destination layer;
(xv) following said identifying a registry creation destination layer, causing the registry setting to be created virtually in the registry creation destination layer;
(xvi) acting on a request to delete a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting deletion operation to execute in the base system registry location;
(xvii) acting on a request to delete a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry deletion destination layer;
(xviii) following said identifying a registry deletion destination layer, causing the registry setting to be deleted virtually in the registry deletion destination layer;
(xix) acting on a request to set a registry setting, and on a determination that a registry setting is not to be captured to an enabled layer, causing the registry setting operation to execute in the base system registry location;
(xx) acting on a request to set a registry setting, and on a determination that a registry setting is to be captured to an enabled layer, identifying a registry setting destination layer; and
(xxi) following said identifying a registry setting destination layer, causing the registry setting to be created virtually in the registry setting destination layer.
15. A computing system according to claim 13, wherein the computer instructions are further executable to achieve the function of maintaining a delete list.
16. A computing system according to claim 13, wherein the computer instructions are further executable to achieve the function of executing a lazy thread.
51
17. A computing system according to claim 13, wherein the computer instructions are further executable to achieve the function of decrypting encrypted information referenced by a virtual read reference.
18. A computing system according to claim 13, wherein: the computer instructions are further executable to achieve the function of (xi) receiving management commands through an applications programmer interface; and the computer instructions include a layer manager application.
19. A set of computer readable media according to claim 18, wherein the computer instructions are further executable to achieve the functions of:
(xii) receiving a management command through an applications programmer interface to enable or disable a layer group; and
(xiii) enable or disable each layer of the specified layer group.
52
20. A method of handling requests to read and write files in a layered computing system, the method comprising the steps of:
(i) receiving from applications read requests for read operations to a file system, the read requests each containing a file reference,
(ii) for file references of particular received read requests, attempting to identify an owner layer from a set of currently enabled layers,
(iii) if, for a particular read request, an owner layer is identified for the file reference of that read request, identifying a virtual read reference utilizing information contained in the identified owner layer, the virtual read reference referencing a corresponding file structure to the file reference of the particular read request,
(iv) following an identification of a virtual read reference, causing a read operation to execute using that virtual read reference,
(v) if, for a particular read request, an owner layer is not identified for the file reference of that read request, causing a read operation to execute using the file reference of the particular read request,
(vi) receiving from applications write requests for write operations to a file system, the write requests each containing a file reference,
(vii) for file references of particular received write requests, attempting to identify an owner layer from a set of currently enabled layers,
(viii) if, for a particular write request, an owner layer is identified for the file reference of that write request, identifying a virtual write reference utilizing information contained in the identified owner layer, the virtual write reference corresponding to the file reference of the particular write request,
(ix) following the identifying a virtual write reference, causing a write operation to execute using that virtual write reference,
(x) if, for a particular write reference, an owner layer is not identified for the file reference of that write request, causing a write operation to execute using the file reference of the particular write request.
53
PCT/US2003/018633 2002-06-12 2003-06-11 Layered computing systems and methods WO2003107221A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003243543A AU2003243543A1 (en) 2002-06-12 2003-06-11 Layered computing systems and methods

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US38796902P 2002-06-12 2002-06-12
US60/387,969 2002-06-12

Publications (2)

Publication Number Publication Date
WO2003107221A1 WO2003107221A1 (en) 2003-12-24
WO2003107221B1 true WO2003107221B1 (en) 2004-03-18

Family

ID=29736393

Family Applications (3)

Application Number Title Priority Date Filing Date
PCT/US2003/018588 WO2003107183A1 (en) 2002-06-12 2003-06-11 Systems and methods for the creation of software packages using layered systems
PCT/US2003/018589 WO2003107220A1 (en) 2002-06-12 2003-06-11 Layered computing systems and methods for insecure environments
PCT/US2003/018633 WO2003107221A1 (en) 2002-06-12 2003-06-11 Layered computing systems and methods

Family Applications Before (2)

Application Number Title Priority Date Filing Date
PCT/US2003/018588 WO2003107183A1 (en) 2002-06-12 2003-06-11 Systems and methods for the creation of software packages using layered systems
PCT/US2003/018589 WO2003107220A1 (en) 2002-06-12 2003-06-11 Layered computing systems and methods for insecure environments

Country Status (3)

Country Link
US (2) US7117495B2 (en)
AU (3) AU2003243543A1 (en)
WO (3) WO2003107183A1 (en)

Families Citing this family (123)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775830B1 (en) * 1999-09-24 2004-08-10 Hitachi, Ltd. Computer system and a program install method thereof
EP1225513A1 (en) * 2001-01-19 2002-07-24 Eyal Dotan Method for protecting computer programs and data from hostile code
US7613930B2 (en) 2001-01-19 2009-11-03 Trustware International Limited Method for protecting computer programs and data from hostile code
US7440980B2 (en) * 2001-04-03 2008-10-21 Qnx Software Systems Gmbh & Co. Kg Computer file management system
US7433900B2 (en) * 2001-04-03 2008-10-07 Qnx Software Systems Gmbh & Co. Kg Custom filesystem having file mappings to files of a real filesystem
US8271530B2 (en) * 2002-04-08 2012-09-18 Oracale International Corporation Method and mechanism for managing and accessing static and dynamic data
US8843903B1 (en) 2003-06-11 2014-09-23 Symantec Corporation Process tracking application layered system
US8302108B1 (en) 2002-06-12 2012-10-30 Symantec Corporation Feature based software virtualization
US7970789B1 (en) 2003-06-11 2011-06-28 Symantec Corporation Sublayered application layered system
US7542988B1 (en) 2006-01-03 2009-06-02 Symantec Corporation File type associative application layered system
US8341648B1 (en) 2002-06-12 2012-12-25 Symantec Corporation Automatic virtualization based on user-defined criteria
US7461086B1 (en) 2006-01-03 2008-12-02 Symantec Corporation Run-time application installation application layered system
US7886291B1 (en) 2003-06-11 2011-02-08 Symantec Corporation Layer typed prioritizing application layered systems
US7877413B1 (en) 2002-06-12 2011-01-25 Symantec Corporation Path variablizing layered system
US7945897B1 (en) 2002-06-12 2011-05-17 Symantec Corporation Method and system for running an application in a clean operating environment using a layered computing system
US7461096B1 (en) 2003-06-11 2008-12-02 Symantec Corporation Weighted prioritizing layered computing system
US8291407B2 (en) * 2002-06-12 2012-10-16 Symantec Corporation Systems and methods for patching computer programs
US8010961B1 (en) 2003-06-11 2011-08-30 Symantec Corporation Data layer prioritization in an application layered system
US7210143B2 (en) * 2002-07-17 2007-04-24 International Business Machines Corporation Deployment of applications in a multitier compute infrastructure
TWI324309B (en) * 2002-08-26 2010-05-01 Interdigital Tech Corp Communication circuit
US20080313282A1 (en) 2002-09-10 2008-12-18 Warila Bruce W User interface, operating system and architecture
DE10246097A1 (en) * 2002-10-02 2004-04-15 Siemens Ag Method for testing a software system for technical systems
US7603533B1 (en) * 2003-07-22 2009-10-13 Acronis Inc. System and method for data protection on a storage medium
US7203696B2 (en) * 2003-08-29 2007-04-10 Microsoft Corporation Dynamic registry partitioning
US7313792B2 (en) * 2003-09-08 2007-12-25 Microsoft Corporation Method and system for servicing software
US7287251B1 (en) * 2003-10-16 2007-10-23 Microsoft Corporation Source engine for transferring a resource to local secure cache
WO2005050437A2 (en) * 2003-11-21 2005-06-02 Peter Neswal Method for the installation and configuration of software components
US20050114870A1 (en) * 2003-11-21 2005-05-26 Song Dong H. System and method for executing an application on a secured run-time environment
US7921419B2 (en) * 2004-05-12 2011-04-05 Oracle International Corporation Method and mechanism for managing incompatible changes in a distributed system
US20050283779A1 (en) * 2004-05-19 2005-12-22 Pronk Van Hoogeveen Joost W D Method and apparatus for deploying software applications using a zone architecture
US20050278544A1 (en) * 2004-06-14 2005-12-15 Arthur Baxter Removable data storage medium and associated marketing interface
US7685596B1 (en) * 2004-09-01 2010-03-23 The Mathworks, Inc. Deploying and distributing of applications and software components
US7752600B2 (en) * 2004-09-30 2010-07-06 Citrix Systems, Inc. Method and apparatus for providing file-type associations to multiple applications
US7680758B2 (en) 2004-09-30 2010-03-16 Citrix Systems, Inc. Method and apparatus for isolating execution of software applications
US20060069662A1 (en) * 2004-09-30 2006-03-30 Citrix Systems, Inc. Method and apparatus for remapping accesses to virtual system resources
US7853947B2 (en) 2004-09-30 2010-12-14 Citrix Systems, Inc. System for virtualizing access to named system objects using rule action associated with request
US8095940B2 (en) * 2005-09-19 2012-01-10 Citrix Systems, Inc. Method and system for locating and accessing resources
US8117559B2 (en) 2004-09-30 2012-02-14 Citrix Systems, Inc. Method and apparatus for virtualizing window information
US8171479B2 (en) 2004-09-30 2012-05-01 Citrix Systems, Inc. Method and apparatus for providing an aggregate view of enumerated system resources from various isolation layers
US7506115B2 (en) * 2004-10-28 2009-03-17 Intel Corporation Incremental provisioning of software
CN101057288B (en) * 2004-11-09 2010-12-22 汤姆森许可贸易公司 Bonding contents on separate storage media
US7849512B2 (en) * 2005-03-21 2010-12-07 Fortressware, Inc. Method and system to create secure virtual project room
US20060265756A1 (en) * 2005-05-11 2006-11-23 Microsoft Corporation Disk protection using enhanced write filter
JP2006331160A (en) * 2005-05-27 2006-12-07 Ricoh Co Ltd Software introduction environment configuration apparatus, software introduction environment configuration method, software introduction environment configuration program and recording medium
US7792289B2 (en) * 2005-06-28 2010-09-07 Mark Ellery Ogram Encrypted communications
US8554791B1 (en) * 2005-07-26 2013-10-08 Advanced Micro Devices, Inc. Persistent folder associations for personal internet communicator
US8918530B2 (en) * 2005-09-09 2014-12-23 Microsoft Corporation Plug and play device redirection for remote systems
US20070083620A1 (en) * 2005-10-07 2007-04-12 Pedersen Bradley J Methods for selecting between a predetermined number of execution methods for an application program
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely
US20070083610A1 (en) * 2005-10-07 2007-04-12 Treder Terry N Method and a system for accessing a plurality of files comprising an application program
US7779034B2 (en) 2005-10-07 2010-08-17 Citrix Systems, Inc. Method and system for accessing a remote file in a directory structure associated with an application program executing locally
JP2009512939A (en) * 2005-10-21 2009-03-26 ヴァー2アス インコーポレイテッド Computer security method having operating system virtualization that allows multiple operating system instances to securely share a single machine resource
US8490082B2 (en) 2005-11-03 2013-07-16 International Business Machines Corporation System and method for representing user processes as software packages in a software package management system
US20070201270A1 (en) * 2005-12-30 2007-08-30 Stmicroelectronics Pvt. Ltd. Read only memory device with bitline leakage reduction
US7865441B2 (en) * 2006-03-01 2011-01-04 International Business Machines Corporation Switching between multiple versions of a software program
US8738786B2 (en) * 2006-05-18 2014-05-27 Sanggyu Lee Method for protecting client and server
US20070271552A1 (en) * 2006-05-19 2007-11-22 Pulley Robert A System and method for packaging software
US9405521B2 (en) * 2006-06-29 2016-08-02 Microsoft Technology Licensing, Llc Mapping of virtualized setup-free applications for a computing system
US8620817B2 (en) * 2006-09-14 2013-12-31 Flexera Software, Inc. Method and system for creating license management in software applications
US7827549B2 (en) * 2006-09-15 2010-11-02 Symantec Corporation Method and system for creating and executing generic software packages
GB0623916D0 (en) * 2006-11-30 2007-01-10 Ibm Methods, apparatus and computer programs for change management in a data processing environment
JP4806338B2 (en) * 2006-12-05 2011-11-02 富士通株式会社 CAD apparatus and CAD program
US8185889B2 (en) * 2007-06-19 2012-05-22 Red Hat, Inc. Methods and systems for porting software packages from one format to another
US8285758B1 (en) 2007-06-30 2012-10-09 Emc Corporation Tiering storage between multiple classes of storage on the same container file system
US20090055748A1 (en) * 2007-08-23 2009-02-26 International Business Machines Corporation System and method for flexibly selecting and visualizing configuration changes over time
US8171483B2 (en) 2007-10-20 2012-05-01 Citrix Systems, Inc. Method and system for communicating between isolation environments
US8572033B2 (en) 2008-03-20 2013-10-29 Microsoft Corporation Computing environment configuration
US9298747B2 (en) 2008-03-20 2016-03-29 Microsoft Technology Licensing, Llc Deployable, consistent, and extensible computing environment platform
US9753712B2 (en) 2008-03-20 2017-09-05 Microsoft Technology Licensing, Llc Application management within deployable object hierarchy
US8176482B1 (en) 2008-03-28 2012-05-08 Symantec Corporation Methods and systems for inserting software applications into images
US7971049B2 (en) * 2008-03-31 2011-06-28 Symantec Corporation Systems and methods for managing user configuration settings
US8312547B1 (en) * 2008-03-31 2012-11-13 Symantec Corporation Anti-malware scanning in a portable application virtualized environment
US8024556B1 (en) * 2008-03-31 2011-09-20 Symantec Corporation Layered execution pre-boot configuration systems, apparatus, and methods
US8438196B1 (en) 2008-03-31 2013-05-07 Symantec Operating Corporation Finer grained data organization using data sublayers
US8639734B1 (en) 2008-03-31 2014-01-28 Symantec Operating Corporation Use of external information about a file to determine virtualization
US8688641B1 (en) 2008-03-31 2014-04-01 Symantec Operating Corporation Per user and per process layer visibility
US8261254B2 (en) 2008-03-31 2012-09-04 Symantec Corporation Dynamic insertion and removal of virtual software sub-layers
JP5121542B2 (en) * 2008-04-09 2013-01-16 キヤノン株式会社 Application packaging device, its control method, and program
US8488500B2 (en) 2008-05-02 2013-07-16 Dhaani Systems Power management of networked devices
US9100246B1 (en) 2008-06-19 2015-08-04 Symantec Corporation Distributed application virtualization
US8353044B1 (en) 2008-06-27 2013-01-08 Symantec Corporation Methods and systems for computing device remediation
US8434093B2 (en) * 2008-08-07 2013-04-30 Code Systems Corporation Method and system for virtualization of software applications
US8776038B2 (en) * 2008-08-07 2014-07-08 Code Systems Corporation Method and system for configuration of virtualized software applications
US8819657B1 (en) * 2008-09-18 2014-08-26 Symantec Corporation Method and apparatus for maintaining data consistency in a virtualized application during software update installation
US8332842B2 (en) * 2008-11-14 2012-12-11 International Business Machines Corporation Application restore points
US7764563B2 (en) * 2008-11-26 2010-07-27 Micron Technology, Inc. Adjustable voltage regulator for providing a regulated output voltage
US8112392B1 (en) 2009-02-13 2012-02-07 Symantec Corporation Methods and systems for creating snapshots of virtualized applications
US8407700B2 (en) 2009-03-03 2013-03-26 Symantec Corporation Methods and systems for merging virtualization sublayers
US8224789B1 (en) * 2009-03-12 2012-07-17 Symantec Corporation Methods and systems for safely restoring files in a computing system
US8402458B1 (en) 2009-03-18 2013-03-19 Symantec Corporation Methods and systems for converting non-layered-software-application installations into layered installations
US8738764B1 (en) 2009-03-26 2014-05-27 Symantec Corporation Methods and systems for controlling communications
US8612994B1 (en) * 2009-03-30 2013-12-17 Symantec Corporation Methods and systems for activating and deactivating virtualization layers
CN102460393B (en) 2009-05-01 2014-05-07 思杰系统有限公司 Systems and methods for establishing a cloud bridge between virtual storage resources
US8090797B2 (en) 2009-05-02 2012-01-03 Citrix Systems, Inc. Methods and systems for launching applications into existing isolation environments
US9141412B2 (en) * 2009-06-16 2015-09-22 Microsoft Technology Licensing, Llc Terminal services application virtualization for compatibility
EP2467778A4 (en) * 2009-08-17 2013-01-16 Virtual Computer Inc Layered virtual file system
US10089092B2 (en) 2010-01-27 2018-10-02 Embarcadero Technologies, Inc. Creating a software product from a software application
US8090744B1 (en) * 2009-08-26 2012-01-03 Symantec Operating Corporation Method and apparatus for determining compatibility between a virtualized application and a base environment
US8881140B1 (en) 2009-09-04 2014-11-04 Symantec Corporation Systems and methods for virtualizing software associated with external computer hardware devices
US8850428B2 (en) 2009-11-12 2014-09-30 Trustware International Limited User transparent virtualization method for protecting computer programs and data from hostile code
US8954958B2 (en) 2010-01-11 2015-02-10 Code Systems Corporation Method of configuring a virtual application
US8959183B2 (en) 2010-01-27 2015-02-17 Code Systems Corporation System for downloading and executing a virtual application
US9104517B2 (en) 2010-01-27 2015-08-11 Code Systems Corporation System for downloading and executing a virtual application
US9229748B2 (en) 2010-01-29 2016-01-05 Code Systems Corporation Method and system for improving startup performance and interoperability of a virtual application
US8938808B1 (en) 2010-03-01 2015-01-20 Symantec Corporation Systems and methods for using virtualization to implement information rights management
US8763009B2 (en) 2010-04-17 2014-06-24 Code Systems Corporation Method of hosting a first application in a second application
US9218359B2 (en) 2010-07-02 2015-12-22 Code Systems Corporation Method and system for profiling virtual application resource utilization patterns by executing virtualized application
US9733929B1 (en) * 2010-07-20 2017-08-15 Symantec Corporation Systems and methods for restoring applications
US9075635B1 (en) 2010-07-26 2015-07-07 Symantec Corporation Systems and methods for merging virtual layers
US9021015B2 (en) 2010-10-18 2015-04-28 Code Systems Corporation Method and system for publishing virtual applications to a web server
US9209976B2 (en) 2010-10-29 2015-12-08 Code Systems Corporation Method and system for restricting execution of virtual applications to a managed process environment
US9858126B2 (en) 2010-12-16 2018-01-02 Microsoft Technology Licensing, Llc Device redirection for remote systems
US9116725B1 (en) 2011-03-15 2015-08-25 Symantec Corporation Systems and methods for using virtualization of operating-system-level components to facilitate software testing
US8677346B1 (en) * 2011-09-27 2014-03-18 Symantec Corporation Providing installer package information to a user
US9060004B1 (en) 2011-11-16 2015-06-16 Symantec Corporation Systems and methods for maintaining location-aware virtualization layers
US9223966B1 (en) 2014-05-04 2015-12-29 Symantec Corporation Systems and methods for replicating computing system environments
US10073678B2 (en) 2016-10-06 2018-09-11 International Business Machines Corporation Locating features in a layered software application
US10803153B2 (en) * 2016-10-21 2020-10-13 Citrix Systems, Inc. Session based elastic layering
CN107766057B (en) * 2017-10-26 2021-04-02 珠海市魅族科技有限公司 Unloading control method, device, terminal and readable storage medium
US10990432B1 (en) 2017-11-30 2021-04-27 Ila Corporation Method and system for interactive cyber simulation exercises
US11144530B2 (en) 2017-12-21 2021-10-12 International Business Machines Corporation Regulating migration and recall actions for high latency media (HLM) on objects or group of objects through metadata locking attributes
US10698666B2 (en) * 2017-12-29 2020-06-30 Microsoft Technology Licensing, Llc Automatically building software projects
US11954069B2 (en) * 2021-07-20 2024-04-09 Sap Se Find operation for union-mounted systems

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1323448C (en) 1989-02-24 1993-10-19 Terrence C. Miller Method and apparatus for translucent file system
US5991753A (en) 1993-06-16 1999-11-23 Lachman Technology, Inc. Method and system for computer file management, including file migration, special handling, and associating extended attributes with files
EP0629960B1 (en) * 1993-06-17 2000-05-24 Sun Microsystems, Inc. Extendible file system
JP3197403B2 (en) 1993-09-07 2001-08-13 富士通株式会社 Control method of computer system when application program failure occurs
US5586304A (en) 1994-09-08 1996-12-17 Compaq Computer Corporation Automatic computer upgrading
US6161218A (en) 1996-01-16 2000-12-12 Sun Microsystems Inc. Software patch architecture
US5930513A (en) * 1996-06-06 1999-07-27 Sun Microsystems, Inc. Reference based software installation
US6185574B1 (en) 1996-11-27 2001-02-06 1Vision, Inc. Multiple display file directory and file navigation system for a personal computer
US5933647A (en) 1997-01-24 1999-08-03 Cognet Corporation System and method for software distribution and desktop management in a computer network environment
US5905990A (en) * 1997-06-23 1999-05-18 International Business Machines Corporation File system viewpath mechanism
US5991402A (en) * 1997-09-23 1999-11-23 Aegisoft Corporation Method and system of dynamic transformation of encrypted material
US7143421B2 (en) 1998-09-09 2006-11-28 Microsoft Corporation Highly componentized system architecture with a demand-loading namespace and programming model
US6381735B1 (en) 1998-10-02 2002-04-30 Microsoft Corporation Dynamic classification of sections of software
US6374402B1 (en) 1998-11-16 2002-04-16 Into Networks, Inc. Method and apparatus for installation abstraction in a secure content delivery system
US6356915B1 (en) 1999-02-22 2002-03-12 Starbase Corp. Installable file system having virtual file system drive, virtual device driver, and virtual disks
US6453468B1 (en) 1999-06-30 2002-09-17 B-Hub, Inc. Methods for improving reliability while upgrading software programs in a clustered computer system
US6366900B1 (en) 1999-07-23 2002-04-02 Unisys Corporation Method for analyzing the conditional status of specialized files
US6918113B2 (en) 2000-11-06 2005-07-12 Endeavors Technology, Inc. Client installation and execution system for streamed applications
US7028305B2 (en) * 2001-05-16 2006-04-11 Softricity, Inc. Operating system abstraction and protection layer

Also Published As

Publication number Publication date
US7117495B2 (en) 2006-10-03
US20030233490A1 (en) 2003-12-18
WO2003107221A1 (en) 2003-12-24
WO2003107183A1 (en) 2003-12-24
AU2003251505A1 (en) 2003-12-31
US7162724B2 (en) 2007-01-09
AU2003251504A1 (en) 2003-12-31
WO2003107220A1 (en) 2003-12-24
AU2003243543A1 (en) 2003-12-31
WO2003107220B1 (en) 2004-05-27
US20030233647A1 (en) 2003-12-18

Similar Documents

Publication Publication Date Title
WO2003107221B1 (en) Layered computing systems and methods
US7234077B2 (en) Rapid restoration of file system usage in very large file systems
US7290115B2 (en) System and method for filtering write operations to a storage medium containing an operating system image
US9785370B2 (en) Method and system for automatically preserving persistent storage
Snyder tmpfs: A virtual memory file system
US7680996B2 (en) Method and system for shrinking a set of data using a differential snapshot, a watch-list structure along with identifying and retaining updated blocks
US6055527A (en) System, method and computer program product for superimposing attributes on hierarchically organized file systems
US7254682B1 (en) Selective file and folder snapshot image creation
CA2207735C (en) Storage of computer data
US8296264B1 (en) Method and system for file-level continuous data protection
US6356915B1 (en) Installable file system having virtual file system drive, virtual device driver, and virtual disks
CN102012852B (en) Method for implementing incremental snapshots-on-write
US7032107B2 (en) Virtual partition for recording and restoring computer data files
US8621165B1 (en) Method and apparatus for providing a volume image backup of selected objects
JP3641183B2 (en) Method and system for providing instantaneous backup in a RAID data storage system
JP2005115948A (en) Method, system and program for archiving file
US20070300034A1 (en) Virtual storage control apparatus
US20060242381A1 (en) Systems, methods, and computer readable media for computer data protection
CN1297907C (en) Realization method of computer hard disk data restoring and back-up
US20210224161A1 (en) Efficient io processing in a storage system with instant snapshot, xcopy, and unmap capabilities
JP2007128448A (en) File system and file information processing method
CN100424652C (en) Had disk self-recovery protecting method based on embedded operation system
CA2007691C (en) Method and apparatus for pre-process mounting of file systems in a hierarchical file system environment
US20040093335A1 (en) Virtual process file systems and methods therefor
US20040141246A1 (en) Hard disk drive host protected area duplication

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
B Later publication of amended claims

Effective date: 20040109

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP