Search

KR-102962677-B1 - COMPUTING SYSTEM INCLUDING HOST AND STORAGE SYSTEM AND METHOD OF OPERATING THEREOF

KR102962677B1KR 102962677 B1KR102962677 B1KR 102962677B1KR-102962677-B1

Abstract

A storage system according to the technical concept of the present disclosure includes a storage device that stores data in a storage area corresponding to a physical address, a buffer memory that temporarily stores data read from the storage device, and a storage controller configured to store first data having a first priority and second data having a second priority received from the outside in the storage device, and to load the first data into the buffer memory.

Inventors

  • 이천용

Assignees

  • 삼성전자주식회사

Dates

Publication Date
20260507
Application Date
20201029

Claims (10)

  1. A storage device that stores data in a storage area corresponding to a physical address; A buffer memory for temporarily storing data read from the storage device; and A storage system comprising a storage controller configured to store first data having a first priority and second data having a second priority received from the outside in the storage device, and to load the first data into the buffer memory.
  2. In paragraph 1, The above storage controller is, A storage system that outputs the first data loaded in the buffer memory to the outside in response to a read request for the first data received from the outside.
  3. In paragraph 1, The above storage controller is, A storage system characterized by controlling the storage device so that when an identifier indicating that the first and second data are file data of the first type is received from the outside, the first and second data are each stored in a storage area corresponding to a consecutive physical address.
  4. In paragraph 3, The above identifier is, A storage system characterized by indicating that the first data and the second data are used to create a virtual container and correspond to data in an image file including a plurality of image layers.
  5. In paragraph 4, The above storage device is, It includes a plurality of storage regions each connected to the above storage controller through a plurality of channels, and The above storage controller is, A storage system characterized by controlling the storage device so that the plurality of image layers are stored in parallel in each of the plurality of storage areas based on layer identifiers distinguishing the plurality of image layers.
  6. In paragraph 5, The above storage controller is, A storage system characterized by receiving hierarchical information between the plurality of image layers from the above external source, and when a read request for a first image layer among the plurality of image layers is received from the above external source, preloading a second image layer located in a lower layer of the first image layer from the storage device into the buffer memory.
  7. In a method of operation of a computing system including a host and a storage system, The above host obtains a first image file from an external registry; The step of the above host creating a container by executing the above first image file; The step of providing the first image file and metadata including an identifier indicating that the host is an image file to the storage system; and A method of operation of a computing system comprising the step of the storage system storing the first image file in a storage area corresponding to a continuous physical address in response to the identifier.
  8. In Paragraph 7, The above metadata includes the priority of the first image file, and The step of storing in the above storage area is, A method of operation of a computing system characterized by including the step of loading the first image file from the storage area into the buffer memory depending on whether the above priority is higher than a preset value.
  9. In Paragraph 7, The above metadata includes the priority of a plurality of layer images included in the image file, and The step of storing in the above storage area is, A method of operation of a computing system characterized by including the step of loading a first layer image having a higher priority than a preset value among the plurality of layer images into a buffer memory from the storage area.
  10. In Paragraph 9, The above metadata includes hierarchical information between the plurality of layer images, and The step of the host requesting the storage system to read the first layer image; The step of the storage system providing the first layer image loaded in the buffer memory to the host; and A method of operation of a computing system further comprising the step of loading a second layer image located in a lower layer of the first layer image among the plurality of layer images into the buffer memory based on the layer information of the storage system.

Description

Computing system including host and storage system and method of operating the computing system The technical concept of the present disclosure relates to a computing system, and more specifically, to a computing system comprising a host and a storage system for processing image files. Recently, container-based virtualization, in addition to virtual machine-based virtualization, is becoming widespread as a method for virtualizing server resources. Containers are virtualization spaces that share the host operating system kernel and do not require a guest operating system, allowing for faster virtualization of server resources compared to virtual machine-based virtualization. Meanwhile, if an error occurs in a container, virtualization resources may become insufficient depending on the application's usage. In this case, the host can handle the error by creating a new container. When creating a new container, the time required to read the image file from the server's local storage can significantly impact the performance of handling container errors. FIG. 1 is a drawing for illustrating a computing system according to an exemplary embodiment of the present disclosure. FIG. 2 is a drawing illustrating a host according to an exemplary embodiment of the present disclosure. FIG. 3 is a drawing illustrating an image file and meta information according to an exemplary embodiment of the present disclosure. FIG. 4 is a drawing illustrating a method of operation of a computing system according to an exemplary embodiment of the present disclosure. FIG. 5 is a block diagram illustrating a storage controller according to an exemplary embodiment of the present disclosure. FIG. 6 is a drawing illustrating an example of address mapping of an image file according to an exemplary embodiment of the present disclosure. FIG. 7 is a drawing illustrating a method for storing an image file according to an exemplary embodiment of the present disclosure. FIG. 8a is a drawing illustrating an example of a method for reading an image file according to an exemplary embodiment of the present disclosure. FIG. 8b is a drawing illustrating a method for reading an image layer according to an exemplary embodiment of the present disclosure. FIG. 9 is a drawing illustrating a computing system according to an exemplary embodiment of the present invention. FIG. 10 is a drawing illustrating a system according to an exemplary embodiment of the present disclosure. FIG. 11 is a block diagram illustrating an example of a system according to an exemplary embodiment of the present disclosure. Hereinafter, various embodiments of the present invention are described with reference to the accompanying drawings. FIG. 1 is a drawing for illustrating a computing system according to an exemplary embodiment of the present disclosure. Referring to FIG. 1, the computing system (10) may include a storage system (100), a host (200), a network (300), and a data center (400). The storage system (100) may be a solid state drive (SSD), but the present invention is not limited thereto, and the storage system (100) may be implemented as a flash memory device, an embedded multimedia card (eMMC), universal flash storage (UFS), or a redundant array of independent disks (RAID). The storage system (100) may include a storage controller (110), a storage device (120), and a buffer memory (130). The storage device (120) may include a plurality of non-volatile memories (123, 124, 125). For example, the non-volatile memory may be a Magnetic RAM (MRAM), Spin-Transfer Torque MRAM, Conductive Bridging RAM (CBRAM), Ferroelectric RAM (FeRAM), Phase RAM (PRAM), Resistive RAM, Nanotube RAM, Polymer RAM (PoRAM), Nano Floating Gate Memory (NFGM), Holographic Memory, Molecular Electronics Memory, or Insulator Resistance Change Memory. The storage controller (110) can control the storage device (120) to read data stored in the storage device (120) or to write data to the storage device (120) in response to a read/write command received from the host (200). Specifically, the storage controller (110) can control write, read, and erase operations for the storage device (120) by providing an address, command, and control signal to the storage device (120). Additionally, data for a write operation and read data can be transmitted and received between the storage controller (110) and the storage device (120). The storage controller (110) can be connected to the storage device (120) through a plurality of channels (CH1, CH2, CH3). Specifically, it can be connected to the first to third non-volatile memories (123 to 125), respectively, through the first to third channels (CH1 to CH3). The storage controller (110) provides address, command, data, and control signals to non-volatile memories (123, 124, 125) through multiple channels (CH1, CH2, CH3) and can receive data from non-volatile memories (123, 124, 125). The buffer memory (130) may be volatile memory. For example, the volatile memory may be Dynam