DETAILED ACTION
Case Status
This office action is in response to remarks and amendments of 8/25/2026. Claims 1-20 have been examined with claims 1, 7 and 8 having been amended.
Claim Objections
Claim 7 is objected to because of the extraneous “wherein” after the period. Appropriate correction is required. Also, “component” is understood to be “component.”
Response to Arguments
Applicant's response filed 8/25/2026 has been fully considered.
The response does not address the prior art rejection of the claims in view of Ozmen.
The response does not address any prior art rejection of claims 13-20.
The response to the notice of non-compliant amendment establishes that the status identifier of independent claims 13 and 20 is “(Previously Presented)” which contradicts Applicant’s statement on page 7 of the remarks of “Claims 1, 7, 8, 13, and 20 have been amended to further define the embodiments.” Only claims 1, 7 and 8 have been amended; Fisher and Swanson have been applied in response to the amendments.
Regarding the 35 USC 101 rejection, page 7 of the remarks includes:
PNG
media_image1.png
77
576
media_image1.png
Greyscale
Examiner respectfully disagrees. The claims as a whole merely describe how to generally “apply” the exception in a computer environment using generic computer functions or components.
Page 8 of the remarks include:
PNG
media_image2.png
108
560
media_image2.png
Greyscale
This is not persuasive because the claims do not recite a particular technical mechanism by which the configuration entries improve operation of the storage hardware itself.
The remarks include:
PNG
media_image3.png
106
575
media_image3.png
Greyscale
PNG
media_image4.png
103
576
media_image4.png
Greyscale
These are unpersuasive arguments because unlike the self-referential table in Enfish, the claims do not recite a new structure or organization of computer memory. In McRO, particularized rules produced a technological improvement; the instant claims do not recite such features.
On page 9, the remarks include:
PNG
media_image5.png
120
577
media_image5.png
Greyscale
This is not persuasive because the claims recite the desired result of software updates being non-disruptive, but do not recite a particular technical mechanism for achieving that result.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-12 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 1 includes “provide one or more updated software components to the first storage node, wherein the one or more updated software components are selected for the first storage node based on a matching one of the predefined configuration entries, the first storage node updating the one or more software components non-disruptively.” It is not clear what a matching one of the predefined configuration entries is being matched with. If the matching entry is being matched with another entry, it is not clear why. If the match is with respect to a component and/or the first storage node, it is not clear why or how, as an entry is not the same type of thing as a component or node. All respective dependent claims are likewise rejected.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. Claims 1-20 are directed to one of the eligible categories of subject matter.
With respect to independent claims 1, 13, 20, the determine, updating, identifying, selected cover performance of the limitations manually and/or in the mind (mental processes abstract idea). The provide limitations are recited at a high level of generality and do not add meaningful limitations to the abstract idea; these limitations are directed to insignificant extra solution activities. The claims as a whole merely describe how to generally “apply” the exception in a computer environment using generic computer functions or components. Even when viewed in combination, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claims are not patent eligible.
With respect to dependent claim 2, 9, 14, 19 the analyze, determine cover performance of the limitations manually and/or in the mind (mental processes abstract idea). The receive, transmit are recited at a high level of generality and do not add meaningful limitations to the abstract idea; these limitations are directed to insignificant extra solution activities. The claims as a whole merely describe how to generally “apply” the exception in a computer environment using generic computer functions or components. Even when viewed in combination, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claims are not patent eligible.
With respect to dependent claims 3, 4, 6, 7, 15, 16, 18 the determine, instruct, identify, maintain cover performance of the limitations manually and/or in the mind (mental processes abstract idea). No additional elements are recited and so the claims do not provide a practical application and are not considered to be significantly more. The claims are not eligible.
With respect to dependent claims 5, 8, 10, 11, 12, 17 receive, transmit, provide, software component, memory module are recited at a high level of generality and do not add meaningful limitations to the abstract idea. The claims as a whole merely describe how to generally “apply” the exception in a computer environment using generic computer functions or components. Even when viewed in combination, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claims are not patent eligible.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 13-20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Darji et al., Pub. No.: US 20220391124 A1, hereinafter Darji.
As per claim 13, Darji discloses A method, comprising:
determining that one or more software components of a first storage node of a set of storage nodes in a storage system, should be updated (pars. 334-336), wherein the set of storage nodes comprise sets of non-volatile memory modules (pars. 39-42, 88-89, 50-51, 324); and providing one or more updated software components to the first storage node, the first storage node updating the one or more software components non-disruptively (pars. 109, 332, 344, 346; note that par. 109, 332 discloses non-disruptive updates and containerized rolling deployments).
Analogous claim 20 is likewise rejected.
As per claim 14, Darji discloses The method of claim 13, wherein to determine that the one or more software components should be updated comprises: receiving the one or more updated software components; and analyzing one or more of hardware configurations and software configurations of the set of storage nodes based on the one or more updated software components (pars. 334-339).
As per claim 15, Darji discloses The method of claim 13, wherein to determining that the one or more software components should be updated comprises: determining that one or more of a hardware configuration of the first storage node and a software configuration of the first storage node has been modified (pars. 334-339).
As per claim 16, Darji discloses The method of claim 15, further comprising: identifying the one or more updated software components based on one or more of the hardware configuration of the first storage node and the software configuration of the first storage node (see rejection of claim 3, at least par. 334-339).
As per claim 17, Darji discloses The method of claim 13, wherein to determining that the one or more software components should be updated comprises: receiving request from the first storage node to check for updated software components (see at least par. 334-336).
As per claim 18, Darji discloses The method of claim 13, further comprising: maintaining a set of configuration information for the set of storage nodes, wherein the set of configuration information indicates hardware configurations and software configurations for the set of storage nodes (see at least par. 331-336).
As per claim 19, Darji discloses The method of claim 13, further comprising: determining that a second software component of first storage node should be removed; and transmit a message to the first storage node indicating that the second software component should be removed (see rejections above as well as pars. 335, 344).
Claims 13-20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Ozmen et al., Patent No.: US 10852946 B1, hereinafter Ozmen.
As per claims 13, Ozmen discloses a method, comprising: determining that one or more software components of a first storage node of a set of storage nodes in a storage system, should be updated, wherein the set of storage nodes comprise sets of non-volatile memory modules; and providing one or more updated software components to the first storage node, the first storage node updating the one or more software components non-disruptively (col. 3, lines 40-55, col. 6, first full par., col. 8, lines 8-10, 30-40 and col. 8, line 60 to col. 9, line 10).
Analogous claim 20 is likewise rejected.
As per claims 14, Ozmen discloses The method of claim 13, wherein to determine that the one or more software components should be updated comprises: receiving the one or more updated software components (col. 12, lines 59-60); and analyzing one or more of hardware configurations and software configurations of the set of storage nodes based on the one or more updated software components (col. 13, line 20 to col. 14, line 14, col. 15, lines 20-25).
As per claims 15, Ozmen discloses The method of claim 13, wherein to determining that the one or more software components should be updated comprises: determining that one or more of a hardware configuration of the first storage node and a software configuration of the first storage node has been modified (col. 9, lines 52-62, col. 12, lines 45-50).
As per claims 16, Ozmen discloses The method of claim 15, further comprising: identifying the one or more updated software components based on one or more of the hardware configuration of the first storage node and the software configuration of the first storage node (col. 12, lines 45 to col. 13, line 20).
As per claims 17, Ozmen discloses The method of claim 13, wherein to determining that the one or more software components should be updated comprises: receiving request from the first storage node to check for updated software components (col. 16, lines 34-43).
As per claims 18, Ozmen discloses The method of claim 13, further comprising: maintaining a set of configuration information for the set of storage nodes, wherein the set of configuration information indicates hardware configurations and software configurations for the set of storage nodes (col. 3, lines 40-55, col. 6, first full par., col. 8, lines 8-10, 30-40 and col. 8, line 60 to col. 9, line 10).
As per claims 19, Ozmen discloses The method of claim 13, further comprising: determining that a second software component of first storage node should be removed; and transmit a message to the first storage node indicating that the second software component should be removed (fig. 7; col. 12, lines 50-55).
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 1-12 are rejected under 35 U.S.C. 103 as being unpatentable over Darji in view of Fisher et al., Patent No.: US 6247128 B1, hereinafter Fisher.
As per claim 1, Darji discloses A storage system, comprising:
a set of storage nodes comprising sets of non-volatile memory modules (pars. 39-42, 88-89);
a storage system controller operatively coupled to the set of storage nodes, the storage system controller comprising a processing device (pars. 39-42, 50-51, 324); configured to:
determine that one or more software components of a first storage node of the set of storage nodes should be updated (pars. 334-336) Darji does not disclose, however Fisher discloses by identifying, from configuration data comprising a plurality of predefined configuration entries, one or more updated software components associated with the first storage node, each predefined configuration entry specifying a combination of hardware configurations and software configurations and corresponding required software components for that combination (Fisher, col. 37, lines 18-25, 30-55, 60-65, col. 38, lines 55-60 disclose rules that specify software that should be used for each possible configuration, and each rule entry includes at least a TAG type, condition, value, connector, and output TAG name. The TAG types include hardware and software components, and associated software is selected for download in response to a specified value matching the TAG type value); and
provide one or more updated software components to the first storage node, wherein the one or more updated software components are selected for the first storage node based on a matching one of the predefined configuration entries, the first storage node updating the one or more software components non-disruptively (Darji pars. 109, 332, 344, 346 disclose non-disruptive updates and containerized rolling deployments and Fisher as cited above discloses the wherein limitation because its predefined rules represent particular hardware/software configuration conditions, and the system evaluates the actual selected hardware and software against those conditions, and when the configuration information satisfies a rule such as by a specified value matching a corresponding TAG type, the software component associated with that rule is selected for installation).
Thus, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings of the cited references because Fisher would have allowed Darji to use predefined configuration rules to select updated software components corresponding to a matching hardware/software configuration, to automatically select compatible software for the particular configuration and avoid incompatible software installation (Fisher, col. 37, lines 18-25, 30-55, 60-65, col. 38, lines 55-60).
As per claim 2, Darji as modified discloses The storage system of claim 1, wherein to determine that the one or more software components should be updated the processing device is further configured to: receive the one or more updated software components; and analyze one or more of hardware configurations and software configurations of the set of storage nodes based on the one or more updated software components (pars. 334-339).
As per claim 3, Darji as modified discloses The storage system of claim 1, wherein to determine that the one or more software components should be updated the processing device is further configured to: determine that one or more of a hardware configuration of the first storage node and a software configuration of the first storage node has been modified (pars. 334-339).
As per claim 4, Darji as modified discloses The storage system of claim 3, wherein the processing device is further configured to: identify the one or more updated software components based on one or more of the hardware configuration of the first storage node and the software configuration of the first storage node (see rejection of claim 3, at least par. 334-339).
As per claim 5, Darji as modified discloses The storage system of claim 1, wherein to determine that the one or more software components should be updated the processing device is further configured to: receive request from the first storage node to check for updated software components (see at least par. 334-336).
As per claim 6, Darji as modified discloses The storage system of claim 1, wherein the processing device is further configured to: maintain a set of configuration information for the set of storage nodes, wherein the set of configuration information indicates hardware configurations and software configurations for the set of storage nodes (see at least par. 331-336).
As per claim 7, Darji as modified discloses The storage system of claim 1, wherein the processing device is further configured to determine that a software component is no longer required based on a change in the hardware configuration or software configuration, and to instruct the first storage node to remove the software component .wherein (Darji, pars. 332, 344, Fisher, col. 35, lines 10-35).
As per claim 8, Darji as modified discloses The storage system of claim 1, wherein the one or more updated software components are provided to a subset of storage nodes having a configuration matching the predefined configuration entry (Darji, pars. 334-336, 344-346, Fisher, col. 37, lines 18-25, 60-65, col. 38, lines 55-60).
As per claim 9, Darji as modified discloses The storage system of claim 1, wherein the processing device is further configured to: determine that a second software component of first storage node should be removed; and transmit a message to the first storage node indicating that the second software component should be removed (see rejection of above limitations as well as pars. 335, 344).
As per claim 10, Darji as modified discloses The storage system of claim 1, wherein the one or more software components comprise one or more of a library, a driver, an application, an operating system, and an operating system module (see rejection of above limitations as well as pars. 231, 331, 335).
As per claim 11, Darji as modified discloses The storage system of claim 1, wherein the sets of non-volatile memory modules comprises heterogenous storage drives (pars. 41-42, 57-59, 322).
As per claim 12, Darji as modified discloses the storage system of claim 1, wherein the sets of non-volatile memory modules comprises direct-mapped storage drives (pars. 51, 57).
Claims 1-12 are rejected under 35 U.S.C. 103 as being unpatentable over Ozmen in view of Swanson et al., Pub. No.: US 20030140134 A1, hereinafter Swanson.
As per claim 1, Ozmen discloses A storage system, comprising: a set of storage nodes comprising sets of non-volatile memory modules; a storage system controller operatively coupled to the set of storage nodes, the storage system controller comprising a processing device; configured to: determine that one or more software components of a first storage node of the set of storage nodes should be updated (Ozmen col. 3, lines 40-55, col. 6, first full par., col. 8, lines 8-10, 30-40 and col. 8, line 60 to col. 9, line 10) Ozmen does not disclose however Swanson discloses by identifying, from configuration data comprising a plurality of predefined configuration entries, one or more updated software components associated with the first storage node, each predefined configuration entry specifying a combination of hardware configurations and software configurations and corresponding required software components for that combination (Swanson, pars. 43-50, 58, 64-66, 77); and provide one or more updated software components to the first storage node, wherein the one or more updated software components are selected for the first storage node based on a matching one of the predefined configuration entries, the first storage node updating the one or more software components non-disruptively (Ozmen as cited above discloses the providing and non-disruptive updating, and see Swanson as cited above for the wherein limitation).
Thus, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings of the cited references because Swanson would have allowed Ozmen to select the update software components using predefined configuration entries to ensure that software provided to a storage node is compatible with the node’s particular hardware and software configuration.
As per claim 2, Ozmen as modified discloses The storage system of claim 1, wherein to determine that the one or more software components should be updated the processing device is further configured to: receive the one or more updated software components (col. 12, lines 59-60); and analyze one or more of hardware configurations and software configurations of the set of storage nodes based on the one or more updated software components (col. 13, line 20 to col. 14, line 14, col. 15, lines 20-25).
As per claim 3, Ozmen as modified discloses The storage system of claim 1, wherein to determine that the one or more software components should be updated the processing device is further configured to: determine that one or more of a hardware configuration of the first storage node and a software configuration of the first storage node has been modified (col. 9, lines 52-62, col. 12, lines 45-50).
As per claim 4, Ozmen as modified discloses The storage system of claim 3, wherein the processing device is further configured to: identify the one or more updated software components based on one or more of the hardware configuration of the first storage node and the software configuration of the first storage node (col. 12, lines 45 to col. 13, line 20).
As per claim 5, Ozmen as modified discloses The storage system of claim 1, wherein to determine that the one or more software components should be updated the processing device is further configured to: receive request from the first storage node to check for updated software components (col. 16, lines 34-43).
As per claim 6, Ozmen as modified discloses The storage system of claim 1, wherein the processing device is further configured to: maintain a set of configuration information for the set of storage nodes, wherein the set of configuration information indicates hardware configurations and software configurations for the set of storage nodes (col. 3, lines 40-55, col. 6, first full par., col. 8, lines 8-10, 30-40 and col. 8, line 60 to col. 9, line 10).
As per claim 7, Ozmen as modified discloses The storage system of claim 1, wherein the processing device is further configured to determine that a software component is no longer required based on a change in the hardware configuration or software configuration, and to instruct the first storage node to remove the software component .wherein (Swanson, pars. 47-50, 52-53, 57, 73).
As per claim 8, Ozmen as modified discloses The storage system of claim 1, wherein the one or more updated software components are provided to a subset of storage nodes having a configuration matching the predefined configuration entry (Swanson, pars. 61-67, 77-79).
As per claim 9, Ozmen as modified discloses The storage system of claim 1, wherein the processing device is further configured to: determine that a second software component of first storage node should be removed; and transmit a message to the first storage node indicating that the second software component should be removed (fig. 7; col. 12, lines 50-55).
As per claim 10, Ozmen as modified discloses The storage system of claim 1, wherein the one or more software components comprise one or more of a library, a driver, an application, an operating system, and an operating system module (col. 8, lines 59-65, col. 10, lines 5-10, col. 11, line 6).
As per claim 11, Ozmen as modified discloses The storage system of claim 1, wherein the sets of non-volatile memory modules comprises heterogenous storage drives (col. 5, line 5 to col. 6, line 50, col. 7, line 55-67).
As per claim 12, Ozmen as modified discloses the storage system of claim 1, wherein the sets of non-volatile memory modules comprises direct-mapped storage drives (col. 5, line 5 to col. 6, line 50, col. 7, line 55-67).
Pertinent Prior Art
Prior art that is considered pertinent to applicant's disclosure but not currently relied upon:
US 20170201415
Pars. 49-51, 80
Selecting compatible software updates by matching or filtering predefined hardware / software configurations to a deployed system configuration
CN 115129327
Abstract
Centrally deploying and maintaining software components across system nodes through a service platform that manages software installation and updates
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to SYED HASAN whose telephone number is (571)270-5008. The examiner can normally be reached M-F 8am - 5 pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Boris Gorney can be reached at (571)270-5626. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/SYED H HASAN/Primary Examiner, Art Unit 2154