Abstract:
A storage device includes a flash memory and a memory controller. The flash memory includes a plurality of memory blocks. The memory controller is configured to determine a fast cycle weight corresponding to a reuse period of a selected memory block among the plurality of memory blocks, and to manage wear leveling of the selected memory block using the fast cycle weight.
Abstract:
A method of manufacturing a semiconductor device includes forming a substrate; forming a plurality of first patterns on the substrate, the plurality of first patterns spaced apart from each other in the first direction and extending in a second direction, each first pattern having two opposite end portions in the second direction, and each first pattern having at least one different end portion location in the second direction from a corresponding end portion location of at least one adjacent first pattern; and using the plurality first patterns to form a plurality of respective conductive lines in a plurality of gaps formed in the substrate, the gaps corresponding to and formed to have the same shapes as the plurality of first patterns when viewed from a plan view.
Abstract:
A file management device for a storage system includes a virtual file system (VFS) having a read-ahead (RA) management unit that stores RA management information and generates a first read request, and a file system that receives first read data in response to the first read request and second read data in response to a previously received read request, compares the first and second read data to generate varying information related to the RA management information, and provides the varying information to the VFS, wherein the VFS updates the RA management information in response to the varying information.
Abstract:
A computing system a storage device and a file system. The storage device includes a storage area having flash memory. The file system is configured to divide the storage area into multiple zones, multiple sections and multiple blocks, and to write a log in each block. The file system includes a block allocation module. The block allocation module is configured to allocate a target block, in which a log is to be written, by a continuous block allocation method according to which a block having a continuous address with a most recently selected block is set as the target block. The block allocation module is further configured to find a free section from the multiple sections when it is not possible to allocate the target block by the continuous block allocation method, and to set a block in the found free section as the target block.
Abstract:
A computing system includes a virtual file system and a file system. The virtual file system is configured to provide a first data request to read first file data. The file system is configured to receive the first data request, to read first metadata and second metadata from a storage device in response to the first data request, and then to read first file data corresponding to the first metadata and second file data corresponding to the second metadata from the storage device.
Abstract:
A computing system includes a storage device, and a host device configured to flush a plurality of pages to the storage device. The host device includes a write-back (WB) cache configured to store the pages, and a file system module configured to flush pages having first characteristics to the storage device from among the pages stored in the WB cache, and then flush pages having second characteristics which are different from the first characteristics to the storage device from among the pages stored in the WB cache.
Abstract:
A storage device, a directory entry lookup method for the storage device, and a host running the method can provide a quick directory entry lookup. The host includes an interface for exchanging data with the storage device which stores a multi-level hash table comprising directory entries of each directory, and a file system module receiving a file lookup command designating a target directory and a target filename, calculating a hash value which reflects the target filename and a lookup level, and searching for a directory entry which comprises the target filename in a bucket corresponding to the hash value from among buckets at the lookup level which are included in a multi-level hash table of the target directory. If the search for the directory entry fails, the file system module increases the lookup level and again calculates the hash value and searches for the directory entry for the target filename.
Abstract:
A semiconductor device includes a substrate including a peripheral active pattern defined by a device isolation layer, a gate structure on the peripheral active pattern, and a gate spacer covering at least a portion of a side surface of the gate structure. The gate structure includes an insulating pattern structure and a metal pattern structure on the insulating pattern structure. The insulating pattern structure includes a recess having a maximum depth in a first direction parallel to a top surface of the substrate at a first height. The insulating pattern structure includes a first gate insulating pattern and a high-k dielectric layer, which are sequentially stacked on the top surface of the substrate. The gate spacer includes a protrusion inserted in the recess.
Abstract:
A host configured to interact with a storage device comprises a write-back (WB) cache configured to write data to the storage device, a cache managing module configured to manage the WB cache, and a file system module configured to determine whether live blocks in victim segments among a plurality of segments stored in the storage device are stored in the WB cache, to read the live blocks from the storage device as a consequence of determining that the live blocks are not stored in the WB cache, to load the read live blocks to the WB cache, and to request the cache managing module to set dirty flags for the stored live blocks.
Abstract:
A data management method of a computing system includes dividing a storage device into a first area and a second area, storing data and nodes related to the data in the second area, and storing a node address table in the first area. The node address table includes node identifiers corresponding to the nodes and physical addresses corresponding to the node identifiers.