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 .
DETAILED ACTION
This Office Action corresponds to application 19/179,571 which was filed on 4/15/2025 and is a CON of 63/653,736 filed 5/30/2024. Claims 1-20 are currently pending.
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 2-10, 14-17, and 19-20 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.
Claims 2 and 19 recite “estimating a time period … wherein the selecting is based at least in part on the estimates being indicative…”. However, there are two different estimates introduced in this claim and the parent claim and it is not clear which estimate “the estimates” is referencing, therefore making it indefinite
Claims 5-6, 14-15, and 20 recite “the estimate”. However, there are multiple estimates introduced in them and their parent claims which makes it not clear which estimate “the estimate” is referencing, therefore making it indefinite.
Claim Rejections - 35 USC § 103
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.
Claim(s) 1, 11, and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Fischer et al. (US2018/0307598), hereinafter Fischer, in view of Helmick et al. (US2024/0012580), Hereinafter Helmick.
Regarding Claim 1:
Fischer teaches:
A method, comprising: writing, to a memory sub-system, data of a plurality of storage space tenants to a reclaim unit in the memory sub-system (Fischer, figure 1, [0028-0030, 0045, 0047-0051, 0170-0172], note writing data to a plurality reclaim units, note this may be for a plurality of applications, e.g., space tenants; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data) ;
communicating with the first storage space tenants to identify estimates of expiration time of the second portion (Fischer, [0028-0030, 0047-0051, 0189-0190], note determining data lifetimes to group together in the same erased block; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page); and
selecting, based on the estimates, the reclaim unit for acceleration of invalidation of the second portion of the data (Fischer, [0028-0030, 0045-0051, 0189-0190], note determining data lifetimes to group together in the same erased block; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data).
While Fischer teaches determining data expiration time and garbage collection, Fischer doesn’t specifically teach a protocol of flexible direct placement (FDP) and identifying, after a first portion of the data stored in the reclaim unit is invalidated, first storage space tenants having a second portion of the data remaining valid in the reclaim unit. However, Helmick is in the same field of endeavor, data management, and Helmick teaches:
writing, to a memory sub-system according to a protocol of flexible direct placement (FDP), data of a plurality of storage space tenants to a reclaim unit in the memory sub-system (Helmick, figures 1A and 10-11, [0035, 0057, 0148], note using an FDP protocol to arrange data into one or more reclaim units; note the host may divide data into namespaces to provide isolation between sources of data; note determining the placement of data in reclaim units; note this is for multiple tenants);
identifying, after a first portion of the data stored in the reclaim unit is invalidated, first storage space tenants having a second portion of the data remaining valid in the reclaim unit (Helmick, figures 1A and 10-11, [0035, 0057-0058, 0144, 0148], note using an FDP protocol to arrange data into one or more reclaim units; note the host may divide data into namespaces to provide isolation between sources of data; note identifying some data stored in the reclaim units may be deallocated; note determining the placement of data in reclaim units);
communicating with the first storage space tenants to identify estimates of expiration time of the second portion (Helmick, figures 1A and 10-11, [0035, 0040, 0058, 0119, 0144-0145], note placing data that is likely to be deallocated at the same time in the same reclaim unit, which means estimates of its expected lifetime were determined and communicated); and
selecting, based on the estimates, the reclaim unit for acceleration of invalidation of the second portion of the data (Helmick, figures 1A and 10-11, [0035, 0040, 0144-0145, 0148], note placing data that is likely to be deallocated at the same time in the same reclaim unit, e.g., based on lifetime estimates; note placing data in reclaim units based on its expected lifetime).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
Claim 11 discloses substantially the same limitations as claim 1 respectively, except claim 11 is directed to a computing device with memory and a processor (Fischer, figures 1-2, note processor and memory) while claim 1 is directed to a method. Therefore claim 11 is rejected under the same rationale set forth for claim 1.
Claim 18 discloses substantially the same limitations as claim 1 respectively, except claim 18 is directed to a non-transitory computer storage medium while claim 1 is directed to a method. Therefore claim 18 is rejected under the same rationale set forth for claim 1.
Claim Rejections - 35 USC § 103
Claim(s) 2-10, 12-17, and 19-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Fischer in view of Helmick and Hashimoto et al. (US2016/0299715), hereinafter Hashimoto.
Regarding Claim 2:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
estimating a time period to onset of garbage collection in the memory sub- system (Fischer, figure 1, [0071], note identifying erase blocks that should be subjected to garbage collection) (Helmick, figures 1A and 10-11, [0057, 0119], note dividing data into namespaces; note reading a portion of the set of data from the storage device, for example, as part of a file system compaction operation (e.g., a garbage collection operation to remove one or more gaps between remaining valid portions of the set of data), and write the portion of the set of data to the storage device using a second set of LBAs);
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
While Fischer as modified teaches garbage collection, Fischer as modified doesn’t specifically teach estimating a time period to onset of garbage collection and the selecting is based at least in part on the estimates being indicative that the invalidation is completed before an end of the time period. However, Hashimoto is in the same field of endeavor, data management, and Hashimoto teaches:
estimating a time period to onset of garbage collection in the memory sub- system (Hashimoto, figure 17, [0081, 0088, 0107], note expired valid data, which have the expiration time ET smaller than a current time CT at the time of garbage collection, are excluded from data transferred to the input block. In other words, the controller determines the data as no longer valid, when the expiration time passes. The expired valid data are erased from the storage device, similarly to invalid data)
wherein the selecting is based at least in part on the estimates being indicative that the first storage space tenants are able to complete the invalidation before an end of the time period (Hashimoto, [0081, 0088, 0107], note expired valid data, which have the expiration time ET smaller than a current time CT at the time of garbage collection, are excluded from data transferred to the input block. In other words, the controller determines the data as no longer valid, when the expiration time passes. The expired valid data are erased from the storage device, similarly to invalid data).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Hashimoto because all references are directed towards data management and because Hashimoto would expand upon the teachings of the previously cited references in data management such as garbage collection which would reduce the latency of garbage collection by improving its efficiency by not processing unnecessary data (Hashimoto, [0005]).
Regarding Claim 3:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
sending a request to a second storage space tenant, among the first storage space tenants, a request to accelerate invalidation of a third portion of the data, the third portion written by the second storage space tenant to the memory sub-system (Fischer, figure 1, [0028-0030, 0045-0051, 0189-0190], note determining data lifetimes to group together in the same erased block; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data; note this is for multiple tenants) (Helmick, figures 1A and 10-11, [0035, 0040, 0057-0058, 0119, 0144-0145], note dividing data into namespaces; note reading a portion of the set of data from the storage device, for example, as part of a file system compaction operation (e.g., a garbage collection operation to remove one or more gaps between remaining valid portions of the set of data), and write the portion of the set of data to the storage device using a second set of LBAs; note this is for multiple tenants; note placing data that is likely to be deallocated at the same time in the same reclaim unit, e.g., based on lifetime estimates);
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
Regarding Claim 4:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
scheduling the sending of the request based on an estimate, among the estimates, from the second storage space tenant (Fischer, figure 1, [0028-0030, 0045-0051, 0189-0190], note determining data lifetimes to group together in the same erased block, which are interpreted as the estimates to base when the request is sent on; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data; note this is for multiple tenants) (Helmick, figures 1A and 10-11, [0035, 0040, 0057-0058, 0119, 0144-0145], note dividing data into namespaces; note reading a portion of the set of data from the storage device, for example, as part of a file system compaction operation (e.g., a garbage collection operation to remove one or more gaps between remaining valid portions of the set of data), and write the portion of the set of data to the storage device using a second set of LBAs; note this is for multiple tenants; note placing data that is likely to be deallocated at the same time in the same reclaim unit, e.g., based on lifetime estimates, which are interpreted as the estimates to base when the request is sent on);
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
Regarding Claim 5:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
wherein the scheduling is based on a difference between the estimate and the time period to the onset of garbage collection (Fischer, figure 1, [0028-0030, 0045-0051, 0189-0190], note determining data lifetimes to group together in the same erased block, which are interpreted as the estimates to base when the request is sent on; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data; note this is for multiple tenants) (Helmick, figures 1A and 10-11, [0035, 0040, 0057-0058, 0119, 0144-0145], note dividing data into namespaces; note reading a portion of the set of data from the storage device, for example, as part of a file system compaction operation (e.g., a garbage collection operation to remove one or more gaps between remaining valid portions of the set of data), and write the portion of the set of data to the storage device using a second set of LBAs; note this is for multiple tenants; note placing data that is likely to be deallocated at the same time in the same reclaim unit, e.g., based on lifetime estimates, which are interpreted as the estimates to base when the request is sent on) (Hashimoto, [0081, 0088, 0107], note expired valid data, which have the expiration time ET smaller than a current time CT at the time of garbage collection, are excluded from data transferred to the input block. In other words, the controller determines the data as no longer valid, when the expiration time passes. The expired valid data are erased from the storage device, similarly to invalid data. When combined with the other references this would mean the scheduling is based on the estimates and the garbage collection).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Hashimoto because all references are directed towards data management and because Hashimoto would expand upon the teachings of the previously cited references in data management such as garbage collection which would reduce the latency of garbage collection by improving its efficiency by not processing unnecessary data (Hashimoto, [0005]).
Regarding Claim 6:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
wherein the estimate is configured to identify a time duration between reception of the request and completion of invalidation the third portion of the data (Fischer, figure 1, [0028-0030, 0045-0051, 0189-0190], note determining data lifetimes to group together in the same erased block, which are interpreted as the estimates to base when the request is sent on; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data; note this is for multiple tenants) (Helmick, figures 1A and 10-11, [0035, 0040, 0057-0058, 0119, 0144-0145], note dividing data into namespaces; note reading a portion of the set of data from the storage device, for example, as part of a file system compaction operation (e.g., a garbage collection operation to remove one or more gaps between remaining valid portions of the set of data), and write the portion of the set of data to the storage device using a second set of LBAs; note this is for multiple tenants; note placing data that is likely to be deallocated at the same time in the same reclaim unit, e.g., based on lifetime estimates, which are interpreted as the estimates to base when the request is sent on) (Hashimoto, [0081, 0088, 0107], note expired valid data, which have the expiration time ET smaller than a current time CT at the time of garbage collection, are excluded from data transferred to the input block. In other words, the controller determines the data as no longer valid, when the expiration time passes. The expired valid data are erased from the storage device, similarly to invalid data. When combined with the other references this would mean the time duration between the request and the completion of the invalidation would be identified).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Hashimoto because all references are directed towards data management and because Hashimoto would expand upon the teachings of the previously cited references in data management such as garbage collection which would reduce the latency of garbage collection by improving its efficiency by not processing unnecessary data (Hashimoto, [0005]).
Regarding Claim 7:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
wherein the third portion of the data is identified based on a logical address used to write the third portion of the data to the memory sub-system (Helmick, figures 1A and 10-11, 0036, 0052, 0057-0058, 0144-0145], note a reclaim unit may appear as a logical representation of storage media; note dividing data into namespaces to provide isolation between sources of data such as applications, processes, logical block address (LBA) ranges, and/or the like).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
Regarding Claim 8:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
wherein the completion of invalidation of the third portion is based on a command to reallocate the logical address (Fischer, [0028-0030, 0045-0051, 0189-0190], note determining data lifetimes to group together in the same erased block; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data) (Helmick, figures 1A and 10-11, 0036, 0057-0058, 0144-0145, 0148], note a reclaim unit may appear as a logical representation of storage media; note dividing data into namespaces to provide isolation between sources of data such as applications, processes, logical block address (LBA) ranges, and/or the like; note some or all of the data stored in the reclaim units may be deallocated and reallocated).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
Regarding Claim 9:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
wherein the completion of invalidation of the third portion is based on a command to write data to the logical address (Fischer, [0028-0030, 0045-0051, 0189-0190], note determining data lifetimes to group together in the same erased block; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data) (Helmick, figures 1A and 10-11, 0036, 0057-0058, 0144-0145, 0148], note a reclaim unit may appear as a logical representation of storage media; note dividing data into namespaces to provide isolation between sources of data such as applications, processes, logical block address (LBA) ranges, and/or the like; note some or all of the data stored in the reclaim units may be deallocated and reused, e.g., written to).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
Regarding Claim 10:
Fischer as modified shows the method as disclosed above;
Fischer as modified further teaches:
wherein the completion of invalidation of the third portion is based on a command to delete data from the logical address (Fischer, [0028-0030, 0045-0051, 0076, 0189-0190], note determining data lifetimes to group together in the same erased block; note identifying a valid page in an erase block containing valid data and determining stream characteristics of the valid page, which include expected lifetime; note assigning the valid page to a new block responsive to the stream characteristics of the valid data; note erasing data) (Helmick, figures 1A and 10-11, 0036, 0057-0058, 0144-0145, 0148], note a reclaim unit may appear as a logical representation of storage media; note dividing data into namespaces to provide isolation between sources of data such as applications, processes, logical block address (LBA) ranges, and/or the like; note some or all of the data stored in the reclaim units may be deallocated/erased, e.g., deleted).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Helmick because all references are directed towards data management and because Helmick would expand upon the teachings of the previously cited references in data management such as garbage collection which would improve or optimize usage of reclaim units, erase blocks, and the like, in storage devices by utilizing a flexible data placement protocol (Helmick, [0037]).
Claim 12 discloses substantially the same limitations as claim 2 respectively, except claim 12 is directed to a computing device with memory and a processor (Fischer, figures 1-2, note processor and memory) while claim 2 is directed to a method. Therefore claim 12 is rejected under the same rationale set forth for claim 2.
Claim 13 discloses substantially the same limitations as claims 3 and 4 respectively, except claim 13 is directed to a computing device with memory and a processor (Fischer, figures 1-2, note processor and memory) while claims 3 and 4 are directed to a method. Therefore claim 13 is rejected under the same rationale set forth for claims 3 and 4.
Claim 14 discloses substantially the same limitations as claim 5 respectively, except claim 14 is directed to a computing device with memory and a processor (Fischer, figures 1-2, note processor and memory) while claim 5 is directed to a method. Therefore claim 14 is rejected under the same rationale set forth for claim 5.
Claim 15 discloses substantially the same limitations as claim 6 respectively, except claim 15 is directed to a computing device with memory and a processor (Fischer, figures 1-2, note processor and memory) while claim 6 is directed to a method. Therefore claim 15 is rejected under the same rationale set forth for claim 6.
Claim 16 discloses substantially the same limitations as claim 7 respectively, except claim 16 is directed to a computing device with memory and a processor (Fischer, figures 1-2, note processor and memory) while claim 7 is directed to a method. Therefore claim 16 is rejected under the same rationale set forth for claim 7.
Claim 17 discloses substantially the same limitations as claims 8-10 respectively, except claim 17 is directed to a computing device with memory and a processor (Fischer, figures 1-2, note processor and memory) while claims 8-10 are directed to a method. Therefore claim 17 is rejected under the same rationale set forth for claims 8-10.
Claim 19 discloses substantially the same limitations as claims 2-4 respectively, except claim 19 is directed to a non-transitory computer storage medium while claims 2-4 are directed to a method. Therefore claim 19 is rejected under the same rationale set forth for claims 2-4.
Claim 20 discloses substantially the same limitations as claims 6-10 respectively, except claim 20 is directed to a non-transitory computer storage medium while claims 6-10 are directed to a method. Therefore claim 20 is rejected under the same rationale set forth for claims 6-10.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JOHN J MORRIS whose telephone number is (571)272-3314. The examiner can normally be reached M-F 6:00-2:00 PM EST.
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, Neveen Abel-Jalil can be reached at 571-270-0474. 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.
/JOHN J MORRIS/Examiner, Art Unit 2152 1/5/2026
/NEVEEN ABEL JALIL/Supervisory Patent Examiner, Art Unit 2152