IP Library › Granted Patent US 12,430,080
Granted Patent B2
US 12,430,080 · App. 18/510,390 · Granted Sep 30, 2025

Method for dynamic management of command queues in synchronous write operations

Inventors: Heng Zhang (Shaanxi, CN); Wenwen Chen (Shaanxi, CN)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06F3/0659G06F3/0604G06F3/0679
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,430,080
App. No.
18/510,390
Granted
Sep 30, 2025
Kind
B2
Abstract

A synchronous write method includes: receiving a synchronous write command of a process; if a process state table indicates that another synchronous write command of the process has not been added to a command queue, adding the synchronous write command to the command queue; if the process state table indicates that the other synchronous write command has been added to the command queue, adding an order preserving command to the command queue, and then adding the synchronous write command to the command queue; and sending commands in the command queue to a storage device according to the order of the commands in the command queue. The order preserving command is used to indicate that a synchronous write commands located before the order preserving command in the command queue is to be executed prior to the synchronous write command by the storage device.

Claims (38)

1. A synchronous write method, comprising:

receiving a first synchronous write command of a first process;

determining whether a command queue includes at least one other synchronous write command of the first process, wherein a process state table indicates whether the command queue includes the at least one other synchronous write command of the first process;

adding a control command to the command queue based on the command queue including the at least one other synchronous write command;

adding the first synchronous write command to the command queue based on adding the control command; and

adding the first synchronous write command to the command queue based on the process state table not indicating that the command queue includes the at least one other synchronous write command of the first process,

wherein the control command indicates to execute the at least one other synchronous write command located before the control command in the command queue prior to the first synchronous write command.

2. The synchronous write method of claim 1 , wherein determining whether the command queue includes the at least one other synchronous write command further comprises:

determining whether the process state table includes a process identification number of the first process; and

determining that the command queue includes the at least one other synchronous write command based on the process identification number of the first process being included in the process state table.

3. The synchronous write method of claim 1 , wherein the process state table includes a set of process state information, the method further comprising:

changing the set of process state information to indicate that the command queue includes no synchronous write command of at least one other process, based on adding the control command to the command queue.

4. The synchronous write method of claim 1 , the method further comprising:

removing a process identification number of at least one other process from the process state table based on adding the control command to the command queue.

5. The synchronous write method of claim 1 , wherein the process state table further includes a type of a last synchronous write command added to the command queue, the type including a first type of the last synchronous write command pointing to a data page and a second type of the last synchronous write command pointing to a node page, and the method further comprising:

in response to a type of the first synchronous write command of the first process being different from the type of the last synchronous write command added to the command queue, adding the control command to the command queue, and adding the first synchronous write command to the command queue based on adding the control command.

6. The synchronous write method of claim 5 , the method further comprising:

determining whether data has been written to a logical address carried by the first synchronous write command based on a logical address state table, in response to the type of the first synchronous write command carrying a logical address and the type of the last synchronous write command added to the command queue being the first type; and

in response to determining that the data has been written to the logical address carried by the first synchronous write command, adding the control command to the command queue, and adding the first synchronous write command to the command queue based on adding the control command.

7. The synchronous write method of claim 6 , the method further comprising:

changing states of other logical addresses in the logical address state table to indicate that data has not been written to the other logical addresses based on adding the control command to the command queue.

8. The synchronous write method of claim 1 , wherein the process state table includes a set of process state information, the method further comprising:

changing the set of process state information to indicate that the command queue includes at least one other synchronous write command of the first process based on adding the first synchronous write command to the command queue, in response to the process state table not indicating that the command queue includes the at least one other synchronous write command of the first process.

9. The synchronous write method of claim 8 , the method further comprising:

saving a process identification number of the first process to the process state table based on adding the first synchronous write command to the command queue, in response to the process state table not indicating that the command queue includes the least one other synchronous write command of the first process.

10. The synchronous write method of claim 1 , the method further comprising:

sending, to a storage device, a plurality of commands including the first synchronous write command in the command queue according to an order of commands in the command queue.

11. A synchronous write method, comprising:

receiving a first synchronous write command of a first process;

determining whether a command queue includes at least one other synchronous write command of the first process based on a process state table; and

adding a control command to the command queue and adding the first synchronous write command to the command queue after the control command, upon a result of the determining indicating the command queue includes the at least one other synchronous write command,

wherein the control command indicates to execute the at least one other synchronous write command located before the control command in the command queue prior to the first synchronous write command.

12. The synchronous write method of claim 11 , wherein the process state table includes a set of process state information, the method further comprising:

changing the set of process state information to indicate that the command queue includes at least one other synchronous write command of the first process based on adding the first synchronous write command to the command queue, in response to the process state table not indicating that the command queue includes the at least one other synchronous write command of the first process.

13. The synchronous write method of claim 12 , the method further comprising:

saving a process identification number of the first process to the process state table based on adding the first synchronous write command to the command queue, in response to the process state table not indicating that the command queue includes the least one other synchronous write command of the first process.

14. The synchronous write method of claim 11 , the method further comprising:

sending, to a storage device, a plurality of commands including the first synchronous write command in the command queue according to an order of commands in the command queue.

Priority Claims (1)
CN 202111422771.6 · Nov 26, 2021 · national
Continuity (2)
Continuation 17743204 · May 12, 2022
Related Publication 20240086113A1 · Mar 14, 2024
References Cited (15)
US 8006047B2 · DeSouza et al. · 2011 [cited by applicant]
US 9645752B1 · Obr · 2017 [cited by examiner]
US 10248349B2 · Daloze et al. · 2019 [cited by applicant]
US 10817183B2 · Katayama · 2020 [cited by applicant]
US 11853614B2 · Zhang · 2023 [cited by examiner]
US 20040205312A1 · Zlotnick · 2004 [cited by examiner]
US 20110078393A1 · Lin · 2011 [cited by examiner]
US 20170242798A1 · Saha · 2017 [cited by examiner]
US 20190220404A1 · Hwang · 2019 [cited by applicant]
US 20200201570A1 · Kim et al. · 2020 [cited by applicant]
US 20230168841A1 · Zhang et al. · 2023 [cited by applicant]
CN 108268219 · 2018 [cited by applicant]
CN 109471596 · 2019 [cited by applicant]
CN 110515861 · 2019 [cited by applicant]
KR 1020200044646 · 2020 [cited by applicant]