Patent 7721282

Obviousness

Combinations of prior art that suggest the claimed invention would have been obvious under 35 U.S.C. § 103.

Active provider: Google · gemini-2.5-flash

Obviousness

Combinations of prior art that suggest the claimed invention would have been obvious under 35 U.S.C. § 103.

✓ Generated

To assess the obviousness of US patent 7721282 under 35 U.S.C. § 103, we will consider the independent claims (Claim 1 for the system and Claim 15 for the method) and combine relevant prior art references. The patent's own background section provides significant motivation for such a combination.

Motivation for Combination

The background of US7721282 explicitly states that its parent application, "BRANCING STORE FILE SYSTEM" (U.S. patent application Ser. No. 11/026,622), presented a solution for creating boot images on the fly without diminishing bring-up time and for streamlining updates. However, it suffered from a significant drawback: "a separate version of the system must be created for each unique operating system." The present invention, US7721282, aims to overcome this limitation by providing an "operating system-independent system and method for distributing an application environment to a compute node" by operating at the "block level."

Therefore, a person having ordinary skill in the art (POSA) would have been highly motivated to modify or enhance the branching store file system described in U.S. patent application Ser. No. 11/026,622 to achieve operating system independence. A known way to achieve such independence in storage management is to operate at the block level, below the file system layer.

Obviousness Analysis of Independent Claims

We will consider the following combination of prior art references:

  1. U.S. patent application Ser. No. 11/026,622 ("BRANCING STORE FILE SYSTEM"): This is the foundational reference, as it describes the core concept of the "branching store file system" with a read-only "root" image and unique "leaf" images for changes, and a "filter" that merges them.
  2. US6502238B1 (Honeywell International Inc.): Entitled "System for constructing and distributing block-based fragments," this patent teaches the concept of operating at the "block level" and distributing such blocks.
  3. US7200715B2 (Network Appliance, Inc.): Entitled "Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes," this patent teaches mechanisms for handling write operations at the block level, including the concept of "mapped block writes."

Claim 1 (System)

Elements of Claim 1 and how they would be rendered obvious by the combination:

  • A compute node comprising a computer system; a first storage unit for storing blocks of a root image...; a second storage unit for storing a leaf image comprising new data blocks and changes to the blocks of the root image:

    • U.S. patent application Ser. No. 11/026,622 clearly teaches a system with compute nodes, a "read-only base image (or 'root' image)" accessible by all compute nodes, and "changes made by a compute node to the root image are stored in a 'leaf' image unique to that compute node."
    • While Ser. No. 11/026,622 discusses these in the context of a "file system," a POSA, motivated to achieve OS-independence, would readily understand that these images (root and leaf) can be composed of "blocks" as taught by US6502238B1, which focuses on "constructing and distributing block-based fragments." The storage units being "non-volatile memory" is generic to computer storage.
  • A union block device for interfacing between the compute node and the first and second storage units to distribute the application environment..., wherein the union block device comprises a driver, wherein the union block device creates the application environment by merging the blocks of the root image stored on the first storage unit with the blocks of the leaf image stored on the second storage unit:

    • U.S. patent application Ser. No. 11/026,622 describes a "filter" that "operates between the compute nodes and the file system(s), which merges the changes recorded on the leaf images with the root image and delivers the result to the appropriate compute node."
    • The explicit problem in Ser. No. 11/026,622 is its OS-dependency due to this file-system-level "filter." A POSA, motivated to achieve OS-independence, would replace this file-system filter with a mechanism operating at a lower, block level. US6502238B1 teaches operating with and distributing "block-based fragments", which directly points to implementing such a merging function at the block level via a device driver. The term "union block device" would be a straightforward naming for a driver performing this union/merging function on blocks.
  • The union block device comprises a low-level driver for interfacing between the first and second storage units and the file system of the compute node; and the union block device, upon receiving a write request from the compute node for a sector X, creates an appropriate persistent mapping for sector X:

    • Implementing a "low-level driver" that operates "below the file system" is the known and obvious way for a POSA to achieve the desired OS-independence from the problem identified in Ser. No. 11/026,622, leveraging the block-level operations taught by US6502238B1.
    • Regarding handling write requests, Ser. No. 11/026,622 states that "changes made by a compute node to the root image are stored in a 'leaf' image," implying write operations. US7200715B2 teaches "mapped block writes" in a storage system context, where "sectors" are written after creating "mappings" for their locations. A POSA would naturally apply these known block-level write techniques, including creating "persistent mappings" to manage the locations of blocks, when implementing the leaf image writes in the block-level system.

Claim 15 (Method)

Elements of Claim 15 and how they would be rendered obvious by the combination:

  • Storing blocks of a root image... on a first storage unit...; storing a leaf image comprising new data blocks and changes to the blocks of the root image on a second storage unit...:

    • The method of storing a root image and leaf images, with the leaf images containing changes, is clearly taught by U.S. patent application Ser. No. 11/026,622. The conversion from "file system" images to "blocks" for these images is motivated by the desire for OS-independence and taught by US6502238B1's concept of "block-based fragments."
  • Merging the blocks of the root image... with the blocks of the leaf image... to create the application environment; and delivering the application environment to the compute node:

    • U.S. patent application Ser. No. 11/026,622 teaches the process where a "filter... merges the changes recorded on the leaf images with the root image and delivers the result to the appropriate compute node." A POSA would implement this merging process at the block level using a low-level driver to achieve OS-independence, as motivated by the shortcomings of Ser. No. 11/026,622 and the block-level teachings of US6502238B1.
  • Delivering the application environment to the compute node; wherein the modifying comprises: upon receiving a write request from the compute node for a sector X, creating an appropriate persistent mapping for sector X; and writing sector X on the second storage unit:

    • The delivery of the application environment is integral to Ser. No. 11/026,622's system.
    • The modification step of handling write requests to the leaf image by creating a persistent mapping for a sector X and writing it to the second storage unit is directly supported by the block-level write operations taught in US7200715B2, particularly "mapped block writes." A POSA would recognize that to enable modification of the application environment (i.e., writing to the leaf image) in a block-level system, such block-level mapping and writing techniques would be necessary.
  • Merging occurs at an operational level between the first and second storage units and file system of the compute node:

    • This reflects the implementation of the merging logic in a low-level block device driver, which is precisely the motivated change to achieve OS-independence over the file-system-level "filter" of Ser. No. 11/026,622, utilizing the block-level concepts of US6502238B1.

In conclusion, the combination of U.S. patent application Ser. No. 11/026,622, US6502238B1, and US7200715B2 would have rendered the independent claims of US7721282 obvious to a person of ordinary skill in the art at the time of the invention. The explicit problem statement in US7721282's background provides a strong motivation for a POSA to combine these references to achieve an OS-independent, block-level branching store system with appropriate block-level write handling.

Generated 5/25/2026, 12:47:45 PM