Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Other Refs: Hahn (US 20190294350) - 0087 - memory controller 122 may request the host controller 180 to release some of the host memory 160 that was for the exclusive use of the memory controller 122.
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-20 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.
In claims 1, 8, and 15, the recited “initialization process” (Claims 1 and 8) and “setup process” (Claim 15), would have been indefinite to one of ordinary skill in the art at the time of the invention. One of ordinary skill would not have known the metes and bounds of initialization/set up process. Specifically, one of ordinary skill would not have known what does the initialization/set up process relates to. For example, the recited initialization/set up process refers to initialization of the memory device, but under alternate scenario, the recited initialization/set up process relates to initialization of the memory or the components (for example, boot, pre-boot, etc…). Correction is required to clarify the scope of initialization/set up process.
Claims 2-7, 9-14 and 16-20 are rejected based on dependency from claim 1, 8 and 15, respectively.
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.
Claims 1-4,7,8-11,14,15,17,19,20 are rejected under 35 U.S.C. 103 as being unpatentable over Muchheria (US 10915400) and in view of Poosapalli (US 20250028671) and further in view of Ghercioiu (US 20050289274)
Claim 1. Muchherla discloses A memory device (eg., Fig. 1A col 6:61-65 - memory components 112A to 112N ), comprising:
memory; and one or more components (eg., col 6:61-65 - a media controller (e.g., media controller 130A and media controller 130N) to manage the memory cells of the memory component 112) configured to:
allocate, during an initialization process, memory blocks in a memory for a set of features to be supported by the memory device, wherein an allocation is (eg., col 9:28-47 - dynamically allocating one or more blocks from a pool of storage area blocks for use as purposed blocks. In some embodiments, one or more blocks from a pool of storage area blocks of the memory component are allocated as an initial set of purposed blocks); and
Muchherla does not disclose, but Poosapalli discloses
reallocate, during the initialization process, remaining memory blocks that are pre-allocated in the memory for non-selected features to a pool of memory blocks (eg.,. 0015 - OEM-defined agnostic memory allocation firmware includes delivering signed memory headers that securely redefine the virtual interface for the allocated reserved portions of the memory device for each of the plural stages of the boot module execution through pre-boot; 0020 - the original equipment manufacturer of the information handling system may predefine the OEM-defined agnostic memory allocation module such that the customization of the memory allocation as described in the memory map maintained at the SPI chip described herein can be accomplished during stages of pre-boot, boot, and runtime.).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, providing the benefit of hardware processor executing plural stages of boot modules during a boot process of the information handling system to allocate reserved portions of the memory device for each stage of boot module executed in pre-boot, boot, and runtime (see Poosapalli, 0013).
Muchherla in view of Poosapalli does not disclose, but Ghercioiu discloses
based on a user selection of the set of features (eg., [0037] In a preferred embodiment, a user first selects a target, then creates programs or VIs in an appropriate development environment. For example, functions that are not supported by the target device may be omitted from the functions available to the programmer, i.e., the development environment may be specific to the target device. ).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, with Ghercioiu, providing the benefit of embedded device is typically designed to perform a defined task very well. In particular, an embedded device is typically not a device with general capabilities, such as a PC or PXI controller, for example, loaded with one or several plug-in board (see Ghercioiu, 0087).
Claim 2. Muchherla does not disclose, but Poosapalli discloses
wherein the remaining memory blocks for the non-selected features are pre-allocated in the memory during a manufacturing phase of the memory device (eg., 0020 - the original equipment manufacturer of the information handling system may predefine the OEM-defined agnostic memory allocation module such that the customization of the memory allocation as described in the memory map maintained at the SPI chip described herein can be accomplished during stages of pre-boot, boot, and runtime. The inclusion of the OEM-defined agnostic memory allocation module execution by the CPU to set allocations at the SPI chip allows for a scalable memory layout that allows the pre-boot, boot, and runtime allocation portions of the memory device to meet dynamic requirements during the pre-boot, boot time, and runtime processes with memory scaling services and dynamic reallocation)
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, providing the benefit of hardware processor executing plural stages of boot modules during a boot process of the information handling system to allocate reserved portions of the memory device for each stage of boot module executed in pre-boot, boot, and runtime (see Poosapalli, 0013).
Claim 3. Muchherla does not disclose, but Poosapalli discloses
wherein the pool of memory blocks is available for general purpose usage (eg., 0019 - pre-boot, boot, and runtime memory trialing may be used to search for given allocated memory within the memory device for those memory locations that do not include successful given address locations. These unaddressed memory locations may be freed for use by other processes during the pre-boot, boot time, and runtime processes).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, providing the benefit of hardware processor executing plural stages of boot modules during a boot process of the information handling system to allocate reserved portions of the memory device for each stage of boot module executed in pre-boot, boot, and runtime (see Poosapalli, 0013).
Claim 4. Muchherla discloses
wherein the allocation is based on a command that is selected from a list of predefined commands, wherein each command on the list of predefined commands is associated with a predefined combination of features that are able to be supported by the memory device (eg., col 3:1-10 - A “purposed block” can refer to a block that is used for a specific purpose. Examples of purposed blocks can include parity blocks, blocks that store temporary data for an application, such as a scratch pad application, or temporary system data. In some embodiments, the number of purposed blocks that are allocated for a specific purpose are not dictated by instantaneous use (e.g., at any given time) but are dictated by the number of blocks used to accommodate X amount of data written to the purposed blocks during the lifetime of the memory sub-system.).
Claim 7. Muchherla discloses wherein the memory device is associated with a vehicle (eg., col 5:10-11 - embedded computer (e.g., one included in a vehicle,).
Claim 8. Muchherla discloses A method (eg., Fig. 1A col 6:61-65 - memory components 112A to 112N ), comprising:
allocating, during an initialization process, memory blocks in a memory for a set of features to be supported by a memory device, wherein an allocation is (eg., col 9:28-47 - dynamically allocating one or more blocks from a pool of storage area blocks for use as purposed blocks. In some embodiments, one or more blocks from a pool of storage area blocks of the memory component are allocated as an initial set of purposed blocks); and
Muchherla does not disclose, but Poosapalli discloses
reallocating, during the initialization process, remaining memory blocks that are pre-allocated in the memory for non-selected features to a pool of memory blocks (eg.,. 0015 - OEM-defined agnostic memory allocation firmware includes delivering signed memory headers that securely redefine the virtual interface for the allocated reserved portions of the memory device for each of the plural stages of the boot module execution through pre-boot; 0020 - the original equipment manufacturer of the information handling system may predefine the OEM-defined agnostic memory allocation module such that the customization of the memory allocation as described in the memory map maintained at the SPI chip described herein can be accomplished during stages of pre-boot, boot, and runtime.).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, providing the benefit of hardware processor executing plural stages of boot modules during a boot process of the information handling system to allocate reserved portions of the memory device for each stage of boot module executed in pre-boot, boot, and runtime (see Poosapalli, 0013).
Muchherla in view of Poosapalli does not disclose, but Ghercioiu discloses
based on a user selection of the set of features (eg., [0037] In a preferred embodiment, a user first selects a target, then creates programs or VIs in an appropriate development environment. For example, functions that are not supported by the target device may be omitted from the functions available to the programmer, i.e., the development environment may be specific to the target device. ).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, with Ghercioiu, providing the benefit of embedded device is typically designed to perform a defined task very well. In particular, an embedded device is typically not a device with general capabilities, such as a PC or PXI controller, for example, loaded with one or several plug-in board (see Ghercioiu, 0087).
Claim 9 is rejected for reasons similar to Claim 2 above.
Claim 10 is rejected for reasons similar to Claim 3 above.
Claim 11 is rejected for reasons similar to Claim 4 above.
Claim 14 is rejected for reasons similar to Claim 7 above.
Claim 15. Muchherla discloses A system (eg., Fig. 1A col 6:61-65 - memory components 112A to 112N ), comprising:
memory; and one or more components (eg., col 6:61-65 - a media controller (e.g., media controller 130A and media controller 130N) to manage the memory cells of the memory component 112) configured to:
allocate, during a setup process of the memory device and based on the command, memory blocks in the memory device for the set of features; (eg., col 9:28-47 - dynamically allocating one or more blocks from a pool of storage area blocks for use as purposed blocks. In some embodiments, one or more blocks from a pool of storage area blocks of the memory component are allocated as an initial set of purposed blocks); and
Muchherla does not disclose, but Poosapalli discloses
reallocate, during the setup process, remaining memory blocks that are pre-allocated in the memory for non-selected features to a pool of memory blocks (eg.,. 0015 - OEM-defined agnostic memory allocation firmware includes delivering signed memory headers that securely redefine the virtual interface for the allocated reserved portions of the memory device for each of the plural stages of the boot module execution through pre-boot; 0020 - the original equipment manufacturer of the information handling system may predefine the OEM-defined agnostic memory allocation module such that the customization of the memory allocation as described in the memory map maintained at the SPI chip described herein can be accomplished during stages of pre-boot, boot, and runtime.).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, providing the benefit of hardware processor executing plural stages of boot modules during a boot process of the information handling system to allocate reserved portions of the memory device for each stage of boot module executed in pre-boot, boot, and runtime (see Poosapalli, 0013).
Muchherla in view of Poosapalli does not disclose, but Ghercioiu discloses
a host processor configured to: send a command associated with a user selection of a set of features; and a memory device configured to: receive, from the host processor, the command (eg., [0037] In a preferred embodiment, a user first selects a target, then creates programs or VIs in an appropriate development environment. For example, functions that are not supported by the target device may be omitted from the functions available to the programmer, i.e., the development environment may be specific to the target device. ).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, with Ghercioiu, providing the benefit of embedded device is typically designed to perform a defined task very well. In particular, an embedded device is typically not a device with general capabilities, such as a PC or PXI controller, for example, loaded with one or several plug-in board (see Ghercioiu, 0087).
Claim 17 is rejected for reasons similar to Claim 4 above.
Claim 19 is rejected for reasons similar to Claim 2 above.
Claim 20 is rejected for reasons similar to Claim 3 above.
Claims 5, 12, 18 are rejected under 35 U.S.C. 103 as being unpatentable over Muchheria (US 10915400) and in view of Poosapalli (US 20250028671) and further in view of Ghercioiu (US 20050289274) and McKelvie (US 10216949)
Claim 5. Muchherla in view of Poosapalli and Ghercioiu does not disclose, but McKelvie discloses
wherein the set of features includes one or more features, and the one or more features are associated with one or more of: encryption, boot partitions, performance logs, or health logs (eg., col 22:48-55 - SSD storage space 600 stores an SSD header and other fixed metadata in the portion of the space labeled 610. It stores log pages in the portion of the space labeled 620, and includes a space labeled 630 that is initialized and reserved for additional log pages. One portion of SSD storage space 600 (shown as 640) is initialized, but unassigned, and another portion of the space (shown as 650) is uninitialized and unassigned).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, and Ghercioiu, with McKelvie, providing the benefit of Dynamic protection group changes may provide various examples of changes to the state of a quorum-based model across a distributed system. In some of these examples, a distributed storage system may implement multiple storage nodes storing a replica or version of data that are available for access to a storage system client (see McKelvie, col 3:20-27).
Claim 12 is rejected for reasons similar to Claim 5 above.
Claim 18 is rejected for reasons similar to Claim 5 above.
Claims 6 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over Muchheria (US 10915400) and in view of Poosapalli (US 20250028671) and further in view of Ghercioiu (US 20050289274) and McLachan (US 20140095812)
Claim 6. Muchherla in view of Poosapalli and Ghercioiu does not disclose, but McLachan discloses
wherein the one or more components are configured to: restrict modifications to a memory block allocation associated with the set of features after a completion of the initialization process (eg., 0036 Fig. 5 - a dedicated Static Stack Pool 522, which is pre-allocated in the system address space 520. The dedicated Static Stack Pool 522 can be pre-allocated at system boot time, or can be allocated for the process at load time, or at some time in between system startup and application load.).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, and Ghercioiu, with McLachan, providing the benefit of One manner of protecting a program's local variables against reverse engineers is to use data obfuscation to make the reverse engineering of program data structures more difficult (see McLachan, 0003).
Claim 13 is rejected for reasons similar to Claim 6 above.
Claims 16 is rejected under 35 U.S.C. 103 as being unpatentable over Muchheria (US 10915400) and in view of Poosapalli (US 20250028671) and further in view of Ghercioiu (US 20050289274) and Jain (US 20240411469)
Claim 16. Muchherla in view of Poosapalli and Ghercioiu does not disclose, but Jain discloses
wherein the host processor is configured to: provide, via a user interface, a listing of possible settings, wherein each setting is associated with a predefined set of features and a corresponding endurance factor, wherein the endurance factor is associated with a total bytes written metric (eg., [0040] FIG. 2 illustrates a user interface screen 200 for creating partitions with different performance levels that can be displayed by a partitioning tool that can be displayed by a partitioning tool ; [0058] If the host system determines that the data storage device 100 supports performance-based partitioning (YES path), the process proceeds to block 414. At block 414, the host system provides performance-based partitioning options to the user. Such options may include setting a size for the partition, setting a desired performance level (e.g., read/write and/or endurance) for the partition, or otherwise creating multiple partitions with different performance levels.).
It would have been obvious to one of ordinary skill in the art prior to the filing date of the claimed invention to modify the memory components that dynamic allocation during initialization as disclosed by Muchherla, with Poosapalli, with Ghercioiu, with Jain, providing the benefit of configuring partitions on a storage device (see Jain, 0002).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to GAUTAM SAIN whose telephone number is (571)270-3555. The examiner can normally be reached M-F 9-5.
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, Jared Rutz can be reached at 571-272-5535. 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.
/GAUTAM SAIN/Primary Examiner, Art Unit 2135