Managed file system filter model and architecture
    1.
    发明授权
    Managed file system filter model and architecture 有权
    管理文件系统过滤器模型和架构

    公开(公告)号:US06993603B2

    公开(公告)日:2006-01-31

    申请号:US10315384

    申请日:2002-12-09

    IPC分类号: G06F3/00

    摘要: A model in which filter drivers are managed to receive callbacks for I/O requests in which the filter drivers have registered an interest. Per-volume instances of filter drivers register with a filter manager for pre-callbacks (for I/O to the file system) and post-callbacks (for I/O from the file system), and identify which I/O requests (e.g., create, read, write) they are registering to receive callbacks. The filter manager orders the instances for callbacks. When an I/O request is received, the filter manager converts the I/O request to callback data and calls the interested filters in the callback order, whereby the filter instances can process the I/O data. As the request returns from the file system, filters desiring post callbacks are called in the reverse order. Efficient context management for the filters and other functions, such as non-reentrant file I/O, are also provided by the model.

    摘要翻译: 管理过滤器驱动程序以接收过滤器驱动程序注册感兴趣的I / O请求的回调的模型。 过滤器驱动程序的每卷实例向过滤器管理器注册预回调(对于文件系统的I / O)和后回调(对于文件系统中的I / O),并识别哪些I / O请求(例如 ,创建,读取,写入)他们正在注册以接收回调。 过滤器管理器命令实例进行回调。 当接收到I / O请求时,过滤器管理器将I / O请求转换为回调数据,并在回调顺序中调用感兴趣的过滤器,从而过滤器实例可以处理I / O数据。 当请求从文件系统返回时,按照相反的顺序调用期望发回回调的过滤器。 该模型还提供了过滤器和其他功能的高效上下文管理,如非可重入文件I / O。

    Managed file system filter model and architecture
    2.
    发明授权
    Managed file system filter model and architecture 有权
    管理文件系统过滤器模型和架构

    公开(公告)号:US07779425B2

    公开(公告)日:2010-08-17

    申请号:US11344258

    申请日:2006-01-30

    IPC分类号: G06F3/00 G06F9/44

    摘要: A model in which filter drivers are managed to receive callbacks for I/O requests in which the filter drivers have registered an interest. Per-volume instances of filter drivers register with a filter manager for pre-callbacks (for I/O to the file system) and post-callbacks (for I/O from the file system), and identify which I/O requests (e.g., create, read, write) they are registering to receive callbacks. The filter manager orders the instances for callbacks. When an I/O request is received, the filter manager converts the I/O request to callback data and calls the interested filters in the callback order, whereby the filter instances can process the I/O data. As the request returns from the file system, filters desiring post callbacks are called in the reverse order. Efficient context management for the filters and other functions, such as non-reentrant file I/O, are also provided by the model.

    摘要翻译: 管理过滤器驱动程序以接收过滤器驱动程序注册感兴趣的I / O请求的回调的模型。 过滤器驱动程序的每卷实例向过滤器管理器注册预回调(对于文件系统的I / O)和后回调(对于文件系统中的I / O),并识别哪些I / O请求(例如 ,创建,读取,写入)他们正在注册以接收回调。 过滤器管理器命令实例进行回调。 当接收到I / O请求时,过滤器管理器将I / O请求转换为回调数据,并在回调顺序中调用感兴趣的过滤器,从而过滤器实例可以处理I / O数据。 当请求从文件系统返回时,按照相反的顺序调用期望发回回调的过滤器。 该模型还提供了过滤器和其他功能的高效上下文管理,如非可重入文件I / O。

    File system filters and transactions
    3.
    发明申请
    File system filters and transactions 审中-公开
    文件系统过滤器和事务

    公开(公告)号:US20070118559A1

    公开(公告)日:2007-05-24

    申请号:US11282879

    申请日:2005-11-18

    IPC分类号: G06F17/00

    CPC分类号: G06F16/1865

    摘要: Aspects of the subject matter described herein relate to file system filters and transactions. In aspects, a filter may enlist to receive notification of events associated with a transaction. Afterwards, the filter may receive notification of a transaction event for which it has enlisted. In response to receiving notification of the transaction the filter may perform an action as appropriate. Aspects of the subject matter described herein may be applied to stacked and managed filters.

    摘要翻译: 本文描述的主题的方面涉及文件系统过滤器和事务。 在方面中,过滤器可以招募以接收与事务相关联的事件的通知。 之后,过滤器可以接收它已经登记的交易事件的通知。 响应于接收到交易的通知,过滤器可以适当地执行动作。 本文描述的主题的方面可以应用于堆叠和管理的滤波器。

    Dirty shutdown recovery of file system filters
    4.
    发明申请
    Dirty shutdown recovery of file system filters 有权
    关闭文件系统过滤器的关闭恢复

    公开(公告)号:US20070061279A1

    公开(公告)日:2007-03-15

    申请号:US11217986

    申请日:2005-09-01

    IPC分类号: G06F17/30

    摘要: File system metadata regarding states of a file system affected by transactions is tracked consistently even in the face of dirty shutdowns which might cause rollbacks in transactions which have already been reflected in the metadata. In order to only request time- and resource-heavy rebuilding of metadata for metadata which may have been affected by rollbacks, reliability information is tracked regarding metadata items. When a metadata item is affected by a transaction which may not complete properly in the case of a problematic shutdown or other event, that metadata item's reliability information indicates that it may not be reliable in case of such a problematic (“dirty” or“abnormal”) event. In addition to flag information indicating unreliability, timestamp information tracking a time of the command which has made a metadata item unreliable is also maintained. This timestamp information can then be used, along with information regarding a period after which the transaction will no longer cause a problem in the case of a problematic event, in order to reset the reliability information to indicate that the metadata item is now reliable even in the face of a problematic event.

    摘要翻译: 即使遇到已经在元数据中反映的事务中可能导致回滚的脏关机,文档系统元数据也会一直被跟踪。 为了仅对请求可能受到回滚影响的元数据的元数据进行时间和资源重型重建,可以跟踪关于元数据项的可靠性信息。 当元数据项目受到可能无法在有问题的关闭或其他事件的情况下可能无法正常完成的事务的影响时,该元数据项的可靠性信息表明在出现这种问题(“肮脏”或“异常”)情况下可能不可靠 “)事件。 除了指示不可靠性的标志信息之外,还保持跟踪使得使元数据项不可靠的命令的时间的时间戳信息。 然后可以使用该时间戳信息以及关于事务不再在有问题的事件的情况下不再导致问题的时间段的信息,以便重置可靠性信息以指示元数据项目现在是可靠的,即使在 面对一个有问题的事件。

    Method and system for deterministic ordering of software modules
    6.
    发明授权
    Method and system for deterministic ordering of software modules 有权
    软件模块确定性排序的方法和系统

    公开(公告)号:US07150018B2

    公开(公告)日:2006-12-12

    申请号:US09768098

    申请日:2001-01-23

    IPC分类号: G06F9/40 G06F9/44 G06F9/46

    CPC分类号: G06F9/445 G06F17/30067

    摘要: A method and system for ordering software modules in a guaranteed order for execution. Unique values are statically assigned to software modules (e.g., filter drivers) when fully developed. Each module's assigned value determines its relative position to other modules in a stack or other arrangement, fixing the execution order for any set of filter drivers. Static values may comprise floating-point numbers, whereby each new software module may be assigned a number that enables positioning it between any two existing software modules. For example, filter drivers may be generally classified and assigned values in a range according to type. Drivers of the same type may be ordered within their general range to guarantee one possible ordering. A filter manager architecture is described, in which filter drivers register with a manager for relevant file system I/O operations. The manager calls appropriately registered filter drivers in an order based on their assigned numbers.

    摘要翻译: 用于以有保证的顺序对软件模块进行排序以执行的方法和系统。 当完全开发时,将唯一值静态分配给软件模块(例如,过滤器驱动程序)。 每个模块的分配值确定其与堆叠或其他布置中的其他模块的相对位置,固定任何一组过滤器驱动程序的执行顺序。 静态值可以包括浮点数,由此可以为每个新的软件模块分配一个数字,使得能够将其定位在任何两个现有的软件模块之间。 例如,过滤器驱动器通常可以根据类型在范围内分类和分配值。 相同类型的驱动器可以在其一般范围内订购,以保证一个可能的订购。 描述了一种过滤器管理器架构,其中过滤器驱动程序向管理器注册相关的文件系统I / O操作。 管理人员根据其分配的号码按顺序调用相应注册的过滤器驱动程序。

    Method and apparatus for dynamically unloading file system filters
    7.
    发明申请
    Method and apparatus for dynamically unloading file system filters 有权
    动态卸载文件系统过滤器的方法和装置

    公开(公告)号:US20050044353A1

    公开(公告)日:2005-02-24

    申请号:US10461078

    申请日:2003-06-13

    IPC分类号: G06F17/30 H04L9/00

    CPC分类号: G06F17/30067 G06F9/44594

    摘要: The invention provides a system and method for dynamically unloading file system filters in a stacked-call-back model where filters are stacked one on top of the other to form a filter stack. A filter manager keeps track of the progress of each I/O operation and calls each filter in turn with the filter returning after it has completed processing the given operation. The filter manager dynamically unloads a filter (or an instance of a filter) that is positioned at any position in the filter stack in a reasonable amount of time while I/O operations are actively being processed. The filter/filter instance can be unloaded with outstanding I/O operations on the filter either hosted by the filter or pended by other filters. I/O operations are canceled, completed or drained in order to unload the filter or filter instance. A filter may veto the unloading of the filter.

    摘要翻译: 本发明提供一种用于动态卸载堆叠回调模型中的文件系统过滤器的系统和方法,其中过滤器一个在另一个堆叠上以形成过滤器堆栈。 过滤器管理器跟踪每个I / O操作的进度,并在过滤器完成处理给定操作之后依次调用每个过滤器。 过滤器管理器在主动处理I / O操作时,在合理的时间量内动态地卸载位于过滤器堆栈中任何位置的过滤器(或过滤器的实例)。 过滤器/过滤器实例可以在过滤器上托管或由其他过滤器挂起的过滤器上卸载未完成的I / O操作。 为了卸载过滤器或过滤器实例,I / O操作被取消,完成或排出。 过滤器可以否决过滤器的卸载。

    Scalable rundown protection for object lifetime management

    公开(公告)号:US20060253655A1

    公开(公告)日:2006-11-09

    申请号:US11480799

    申请日:2006-07-03

    IPC分类号: G06F12/00 G06F13/00

    CPC分类号: G06F12/0261

    摘要: Object rundown protection that scales with the number of processors in a shared-memory computer system is disclosed. Prior to object rundown, a cache-aware reference count data structure is used to prevent cache-pinging that would otherwise result from data sharing across processors in a multiprocessor computer system. In this data structure, a counter of positive references and negative dereferences, aligned on a particular cache line, is maintained for each processor. When an object is to be destroyed, a rundown wait process is begun, during which new references on the object are prohibited, and the total number of outstanding references is added to an on-stack global counter. Destruction is delayed until the global reference count is reduced to zero. In an implementation on non-uniform memory access multiprocessor machines, each processor's reference count is additionally allocated in a region of main memory that is physically close to that processor.

    Scalable rundown protection for object lifetime management
    9.
    发明申请
    Scalable rundown protection for object lifetime management 审中-公开
    可扩展的防范对象生命周期管理

    公开(公告)号:US20060200635A1

    公开(公告)日:2006-09-07

    申请号:US11402493

    申请日:2006-04-11

    IPC分类号: G06F12/00

    CPC分类号: G06F12/0261

    摘要: A system and method for object rundown protection that scales with the number of processors in a shared-memory computer system is disclosed. In an embodiment of the present invention, prior to object rundown, a cache-aware reference count data structure is used to prevent cache-pinging that would otherwise result from data sharing across processors in a multiprocessor computer system. In this data structure, a counter of positive references and negative dereferences, aligned on a particular cache line, is maintained for each processor. When an object is to be destroyed, a rundown wait process is begun, during which new references on the object are prohibited, and the total number of outstanding references is added to an on-stack global counter. Destruction is delayed until the global reference count is reduced to zero. In an embodiment of the invention suited to implementation on non-uniform memory access multiprocessor machines, each processor's reference count is additionally allocated in a region of main memory that is physically close to that processor.

    摘要翻译: 公开了一种与共享存储器计算机系统中的处理器数量相比较的对象破坏保护的系统和方法。 在本发明的一个实施例中,在对象清除之前,使用高速缓存感知引用计数数据结构来防止否则将在多处理器计算机系统中的处理器之间的数据共享导致的高速缓存ping。 在这种数据结构中,为每个处理器维护在特定高速缓存线上对齐的正引用和负解除引用的计数器。 当一个对象被破坏时,开始一个等待时间的过程,在该过程中,禁止对对象的新引用,并将未完成引用的总数添加到堆栈中的全局计数器。 破坏延迟,直到全局引用计数减少为零。 在适于在非均匀存储器访问多处理器机器上实现的本发明的实施例中,每个处理器的引用计数额外分配在物理上靠近该处理器的主存储器的区域中。

    Method and system for caching remote files locally
    10.
    发明申请
    Method and system for caching remote files locally 审中-公开
    在本地缓存远程文件的方法和系统

    公开(公告)号:US20060117018A1

    公开(公告)日:2006-06-01

    申请号:US10999380

    申请日:2004-11-30

    IPC分类号: G06F17/30

    CPC分类号: G06F12/0866 G06F16/172

    摘要: A method and system for caching remote objects locally. A request to access an object is received. A determination is made as to whether the object is cached. If the object is cached and the request is not to create a new object, modify an existing object, or open a directory, the request is directed to a local file system. Otherwise, the request is directed to a remote file system. Information about which objects are requested may be used to copy objects stored remotely to a local server as specified by a caching policy.

    摘要翻译: 本地缓存远程对象的方法和系统。 接收到访问对象的请求。 确定对象是否被缓存。 如果对象被缓存并且请求不是创建一个新的对象,修改一个现有的对象或打开一个目录,该请求被定向到一个本地文件系统。 否则,该请求被定向到远程文件系统。 有关哪些对象被请求的信息可用于将远程存储的对象复制到缓存策略指定的本地服务器。