US 11,861,238 B2
Storage device for supporting multiple hosts and operation method thereof
Myung Hyun Jo, Hwaseong-si (KR); Youngwook Kim, Hwaseong-si (KR); Jinwoo Kim, Seoul (KR); and Jaeyong Jeong, Hwaseong-si (KR)
Assigned to SAMSUNG ELECTRONICS CO., LTD., Suwon-si (KR)
Filed by Samsung Electronics Co., Ltd., Suwon-si (KR)
Filed on Jun. 29, 2022, as Appl. No. 17/852,652.
Application 17/852,652 is a continuation of application No. 17/129,185, filed on Dec. 21, 2020, granted, now 11,409,469.
Claims priority of application No. 10-2020-0012955 (KR), filed on Feb. 4, 2020.
Prior Publication US 2022/0326890 A1, Oct. 13, 2022
Int. Cl. G06F 3/06 (2006.01); G06F 13/24 (2006.01)
CPC G06F 3/0659 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0652 (2013.01); G06F 3/0688 (2013.01); G06F 13/24 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A storage device comprising:
a nonvolatile memory; and
a storage controller configured to control the nonvolatile memory, and including a first controller and a second controller,
wherein the first controller is configured to process a first command from a first external device, the second controller is configured to process a second command from a second external device, the storage controller is configured to select one among the first command and the second command based on a first value and a second value, the first value corresponds to both a first weight and a first workload of the first controller during a first time period, the second value corresponds to both a second weight and a second workload of the second controller during the first time period, the first weight corresponds to a first minimum performance of the first external device, and the second weight corresponds to a second minimum performance of the second external device,
wherein, when the storage controller selects the first command among the first command and the second command based on the first value and the second value, the first controller processes the first command before the second controller processes the second command, and
wherein, when the storage controller selects the second command among the first command and the second command based on the first value and the second value, the second controller processes the second command before the first controller processes the first command.