Patents by Inventor Bo Hong
Bo Hong has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8732426Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The characteristics of corresponding storage devices are used to schedule I/O requests to the storage devices in order to maintain relatively consistent response times at predicted times. Should a device exhibit an unscheduled behavior which may be indicative of the device being in an unknown state, the scheduler may schedule one or more reactive operations on the device configured to cause the device to enter a known state.Type: GrantFiled: September 15, 2010Date of Patent: May 20, 2014Assignee: Pure Storage, Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Publication number: 20140136808Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The data storage controller is configured to receive requests targeted to the data storage medium, said requests including a first type of operation and a second type of operation. The controller is further configured to schedule requests of the first type for immediate processing by said plurality of storage devices, and queue requests of the second type for later processing by the plurality of storage devices. Operations of the first type may correspond to operations with an expected relatively low latency, and operations of the second type may correspond to operations with an expected relatively high latency.Type: ApplicationFiled: January 21, 2014Publication date: May 15, 2014Applicant: PURE Storage, Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Publication number: 20140123096Abstract: In a method for viewing relevant circuits of a signal on a circuit design diagram of a printed circuit board (PCB), a circuit design diagram and a circuit testing program of the PCB are read from a storage system. A state of each signal of the PCB on the circuit design diagram is determined. Accordingly, sub circuit design diagrams of the signal are obtained from the circuit design diagram and stored into the storage device. When a testing instruction is selected from the circuit testing program, a signal of the PCB is determined. Sub circuit design diagrams of the determined signal are retrieved from the storage device and displayed on a display device.Type: ApplicationFiled: October 10, 2013Publication date: May 1, 2014Applicant: HON HAI PRECISION INDUSTRY CO., LTD.Inventors: Sheng-Wei SU, Po-Wei WANG, Bo-Hong LIN
-
Publication number: 20140075115Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The storage controller is configured to receive a read request targeted to the data storage medium, and identify at least a first storage device of the plurality of storage devices which contains data targeted by the read request. In response to either detecting or predicting the first storage device will exhibit variable performance, the controller is configured to generate a reconstruct read request configured to obtain the data from one or more devices of the plurality of storage devices other than the first storage device.Type: ApplicationFiled: November 18, 2013Publication date: March 13, 2014Applicant: PURE Storage, Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Publication number: 20140075105Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The characteristics of corresponding storage devices are used to schedule I/O requests to the storage devices in order to maintain relatively consistent response times at predicted times. In order to reduce a likelihood of unscheduled behaviors of the storage devices, the storage controller is configured to schedule proactive operations on the storage devices that will reduce a number of occurrences of unscheduled behaviors.Type: ApplicationFiled: November 18, 2013Publication date: March 13, 2014Applicant: PURE Storage, Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Patent number: 8645657Abstract: A system and method for scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The data storage controller is configured to receive requests targeted to the data storage medium, said requests including a first type of operation and a second type of operation. The controller is further configured to schedule requests of the first type for immediate processing by said plurality of storage devices, and queue requests of the second type for later processing by the plurality of storage devices. Operations of the first type may correspond to operations with an expected relatively low latency, and operations of the second type may correspond to operations with an expected relatively high latency.Type: GrantFiled: June 17, 2013Date of Patent: February 4, 2014Assignee: Pure Storage, Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Publication number: 20130346690Abstract: A system and method for intra-device data protection in a RAID array. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array is configured to identify a unit of data stored in the data storage subsystem, wherein said unit of data is stored across at least a first storage device and a second storage device of the plurality of storage devices, each of the first storage device and the second storage device storing intra-device redundancy data corresponding to the unit of data; and change an amount of intra-device redundancy data corresponding to the unit of data on only the first storage device.Type: ApplicationFiled: June 10, 2013Publication date: December 26, 2013Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller
-
Patent number: 8589625Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The storage controller is configured to receive a read request targeted to the data storage medium, and identify at least a first storage device of the plurality of storage devices which contains data targeted by the read request. In response to either detecting or predicting the first storage device will exhibit variable performance, the controller is configured to generate a reconstruct read request configured to obtain the data from one or more devices of the plurality of storage devices other than the first storage device.Type: GrantFiled: September 15, 2010Date of Patent: November 19, 2013Assignee: Pure Storage, Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Patent number: 8585336Abstract: A fastener includes a bolt, a ring engaged around the bolt, and a coil spring. The bolt includes a head, a threaded engaging portion, a shaft portion between the head and the threaded engaging portion, and a bottom flange extending radially and outwards from an end of the shaft portion connecting the threaded engaging portion. The shaft portion includes a main part connecting the head, a tail part connecting the bottom flange, and a guiding part connecting the main part and the tail part. A diameter of tail part is smaller than a diameter of the main part. A diameter of the guiding part increases from the tail part to the main part along an axial direction of the bolt. The coil spring coils the shaft portion and is sandwiched between the head of the bolt and the ring.Type: GrantFiled: December 1, 2011Date of Patent: November 19, 2013Assignees: Furui Precise Component (Kunshan) Co., Ltd., Foxconn Technology Co., Ltd.Inventors: Tao Tao, Bo Hong
-
Patent number: 8589655Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The characteristics of corresponding storage devices are used to schedule I/O requests to the storage devices in order to maintain relatively consistent response times at predicted times. In order to reduce a likelihood of unscheduled behaviors of the storage devices, the storage controller is configured to schedule proactive operations on the storage devices that will reduce a number of occurrences of unscheduled behaviors.Type: GrantFiled: September 15, 2010Date of Patent: November 19, 2013Assignee: Pure Storage, Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Publication number: 20130275710Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The data storage controller is configured to receive requests targeted to the data storage medium, said requests including a first type of operation and a second type of operation. The controller is further configured to schedule requests of the first type for immediate processing by said plurality of storage devices, and queue requests of the second type for later processing by the plurality of storage devices. Operations of the first type may correspond to operations with an expected relatively low latency, and operations of the second type may correspond to operations with an expected relatively high latency.Type: ApplicationFiled: June 17, 2013Publication date: October 17, 2013Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Patent number: 8495111Abstract: A system and method for storing data. In one embodiment, a storage system includes a resource manager and a hierarchical entry tree describing storage entities of the storage system. At each given level of the tree higher than the bottom level, metadata entries summarize storage availability at a level below the given level. The resource manager receives a request to store data of a target size at a target location corresponding to a first portion of the entry tree and scans the entry tree to determine if contiguous, free storage entities of the target size are available at the target location. In response to determining that contiguous, free storage entities of the target size are not available at the target location, the resource manager scans portions of the entry tree outside the first portion to identify contiguous, free storage entities of the target size, where it stores the data.Type: GrantFiled: September 23, 2008Date of Patent: July 23, 2013Assignee: Symantec CorporationInventors: Feng Wang, John A. Colgrove, Bo Hong, Oleg Kiselev
-
Patent number: 8468318Abstract: A system and method for scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The data storage controller is configured to receive requests targeted to the data storage medium, said requests including a first type of operation and a second type of operation. The controller is further configured to schedule requests of the first type for immediate processing by said plurality of storage devices, and queue requests of the second type for later processing by the plurality of storage devices. Operations of the first type may correspond to operations with an expected relatively low latency, and operations of the second type may correspond to operations with an expected relatively high latency.Type: GrantFiled: September 15, 2010Date of Patent: June 18, 2013Assignee: Pure Storage Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Feng Wang, Ethan Miller, Craig Harmer
-
Patent number: 8463991Abstract: A system and method for intra-device data protection in a RAID array. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array is configured to identify a unit of data stored in the data storage subsystem, wherein said unit of data is stored across at least a first storage device and a second storage device of the plurality of storage devices, each of the first storage device and the second storage device storing intra-device redundancy data corresponding to the unit of data; and change an amount of intra-device redundancy data corresponding to the unit of data on only the first storage device.Type: GrantFiled: September 28, 2010Date of Patent: June 11, 2013Assignee: Pure Storage Inc.Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller
-
Patent number: 8391279Abstract: A modem to process calling packets includes receiving a calling request packet from a software phone of a communication terminal, and determining if the calling request packet includes a special tag. If the IP phone is idle, the modem records a source IP address of the calling request packet, and modifies the source IP of the calling request packet to be an IP address of the IP phone, then the modem transmits the modified calling request packet to a server, and receives a calling reply packet from the server, then modifies a destination IP address of the calling reply packet to be the IP address of the communication terminal. The modem transmits the modified calling reply packet to the software phone to establish the call.Type: GrantFiled: February 26, 2010Date of Patent: March 5, 2013Assignees: Ambit Microsystems (Shanghai) Ltd., Hon Hai Precision Industry Co., Ltd.Inventors: Pu-Cun Du, Bo Hong, Yao-Shun Chuang
-
Publication number: 20130045062Abstract: A fastener includes a bolt, a ring engaged around the bolt, and a coil spring. The bolt includes a head, a threaded engaging portion, a shaft portion between the head and the threaded engaging portion, and a bottom flange extending radially and outwards from an end of the shaft portion connecting the threaded engaging portion. The shaft portion includes a main part connecting the head, a tail part connecting the bottom flange, and a guiding part connecting the main part and the tail part. A diameter of tail part is smaller than a diameter of the main part. A diameter of the guiding part increases from the tail part to the main part along an axial direction of the bolt. The coil spring coils the shaft portion and is sandwiched between the head of the bolt and the ring.Type: ApplicationFiled: December 1, 2011Publication date: February 21, 2013Applicants: FOXCONN TECHNOLOGY CO., LTD., FURUI PRECISE COMPONENT (KUNSHAN) CO., LTD.Inventors: TAO TAO, BO HONG
-
Publication number: 20120084505Abstract: A system and method for dynamic RAID geometries. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array is configured to configure a first subset of the storage devices for use in a first RAID layout, the first RAID layout including a first set of redundant data. The controller further configures a second subset of the storage devices for use in a second RAID layout, the second RAID layout including a second set of redundant data. Additionally, the controller configure an additional device not included in either the first subset or the second subset to store redundant data for both the first RAID layout and the second RAID layout.Type: ApplicationFiled: October 1, 2010Publication date: April 5, 2012Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller
-
Publication number: 20120084504Abstract: A system and method for dynamic RAID geometries. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array is configured to configure a first subset of the storage devices for use in a first RAID layout, the first RAID layout including a first set of redundant data. The controller further configures a second subset of the storage devices for use in a second RAID layout, the second RAID layout including a second set of redundant data. Additionally, the controller configure an additional device not included in either the first subset or the second subset to store redundant data for both the first RAID layout and the second RAID layout.Type: ApplicationFiled: October 1, 2010Publication date: April 5, 2012Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller
-
Publication number: 20120084506Abstract: A system and method for dynamic RAID geometries. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array is configured to configure a first subset of the storage devices for use in a first RAID layout, the first RAID layout including a first set of redundant data. The controller further configures a second subset of the storage devices for use in a second RAID layout, the second RAID layout including a second set of redundant data. Additionally, when writing a stripe, the controller may select from any of the plurality of storage devices for one or more of the first RAID layout, the second RAID layout, and storage of redundant data by the additional logical device.Type: ApplicationFiled: October 1, 2010Publication date: April 5, 2012Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller
-
Publication number: 20120084507Abstract: A system and method for dynamic RAID geometries. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array is configured to configure a first subset of the storage devices for use in a first RAID layout, the first RAID layout including a first set of redundant data. The controller further configures a second subset of the storage devices for use in a second RAID layout, the second RAID layout including a second set of redundant data. Additionally, the controller configure an additional device not included in either the first subset or the second subset to store redundant data for both the first RAID layout and the second RAID layout.Type: ApplicationFiled: October 1, 2010Publication date: April 5, 2012Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller