Skip to content

Terminology, Definitions, and Acryonmns

Tyler Erickson edited this page Sep 10, 2024 · 3 revisions

Terminology, Definitions, and Acronyms

As you are reading the openSeaChest Wiki, you will likely come across various terms and acronyms that need to be defined. This page will provide these definitions for you to reference as needed.

General Storage Acronyms

  • AHCI - Advanced Host Controller Interface
  • ATA - Advanced Technology Attachment
  • ATAPI - ATA Packet Interface
  • BIOS - Basic Input/Output System
  • CAM - Common Access Method
    • Originally a committee that specified a common method to communicate with HDDs which lead to ATA standardization and modern standards committees of today.
  • CDB - Command Descriptor Block. A structure used to communicate a command from an application client to a device server having a fixed length of 6 bytes, 10 bytes, 12 bytes, or 16 bytes, or a variable length of between 12 and 260 bytes
  • CHS - Cylinder-Head-Sector addressing
  • CMR - Conventional Magnetic Recording
    • CMR encapsulates other recording technologies such as PMR, Zoned Bit Recording, HAMR, MAMR, and more. Conventional in this case means not using shingled magnetic recording to store data.
  • CPU - Central Processing Unit
  • DMA - Direct Memory Access
  • DRAM - Dynamic RAM
  • ECC - Error Correction Code
  • EFI - Extensible Firmware Interface
  • ESDI - Enhanced Small Disk Interface
  • FC - Fibre Channel Interface
    • Fibre Channel does not necessarily mean Fiber-optic connections. This is why it is spelled Fibre to differentiate what is described by these standards from Fiber. Electrical or optical cabling can be described by the term Fibre.
  • FDD - Floppy Disk Drive
  • FDE - Full Disk Encryption
  • FeRAM - Ferroelectric RAM
  • FS - File System
  • HAMR - Heat Assisted Magnetic Recording
  • HBA - Host Bus Adapter
  • HDD - Hard Disk Drive
  • HM-SMR - Host-Managed SMR
  • HSMR - Sometimes used to describe Host-Managed SMR, but sometimes used to describe Hybrid SMR devices capable of being run as host managed SMR or host managed CMR.
  • ID - Identifier
  • IDE - Integrated Device Electronics or Intelligent Device Electronics
    • This primarily relates to when HDDs started incorporating the controller onto the drive itself rather than using two ribbon cabled between the drive and a controller.
  • I/O or IO - Input/Output
  • IOCTL - I/O Control
    • A function provided by the operating system to perform a specific I/O operation to a specific device. ioctl() in POSIX systems and DeviceIOControl() in Windows.
  • IOPS - I/O's Per Second
  • IP - Intellectual Property (Related to Vendor Specific behaviors and data reporting)
  • ISA - Industry Standard Architecture (bus from IBM PC/AT and PC/XT)
  • ISE - Instant Secure Erase
    • This is used to describe a cryptographic erase by instructing the storage device to change the cryptographic key. This may use a variety of different drive features or capabilities and is a very generic acronym.
  • JBOD - Just a Bunch Of Drives
  • JBOF - Just a Bunch Of Flash
  • LBA - Logical Block Address
  • LSB - Least Significant Byte
  • LUN - Logical Unit Number
  • MAMR - Microwave Assisted Magnetic Recording
  • MFM - Modified Frequency Modulation
  • MRAM - Magnetoresistive RAM
  • MSB - Most Significant Byte
  • NVMe - Non-Volatile Memory Express
    • NVMe is a standard for how to connect a storage controller to the PCIe bus.
    • NVMe also defines command sets for the controllers to have a uniform definition of how to read, write, and more.
  • NVMHCI - Non-Volatile Memory Host Controller Interface. This was the name used while NVMe was under development.
  • OS - Operating System
  • PATA - Parallel ATA (Often referred to as IDE)
    • This bus was a direct attachment to the 16-bit ISA bus introduced by IBM with the PC/AT
  • PC - Personal Computer
  • PCI - Peripheral Component Interconnect
  • PCIe - PCI Express
  • PIO - Programmed I/O
  • POSIX - The Portable Operating System Interface
  • PMR - Perpendicular Magnetic Recording
  • RAID - Redundant Array of Independent Disks
  • RAM - Random Access Memory
  • RLL - Run Length Limited
  • RMW - Read-Modify-Write
  • RTFR - Return Task File Register(s)
  • SAM - SCSI Architecture Model
  • SATA - Serial ATA
  • SCSI - Small Computer System Interface
  • SAS - Serial Attached SCSI
  • SASI - Shuggart Associates System Interface (Pre-SCSI)
  • SAT - SCSI to ATA Translation
    • This is a standard defined by T10 and is widely used by modern HBAs and USB devices for SATA Disks
  • SED - Self Encrypting Drive
  • SID - Security Identifier
  • SPT - Sectors Per Track
  • SMART - Self Monitoring And Reporting Technology
  • SMR - Shingled Magnetic Recording
    • Adjacent magnetic tracks must be written in order, slightly overlapping the writes to increase storage density, similar to how roofing shingles slightly overlap on a house/building.
    • SMR may reference Device Managed, Host Managed, or Host Aware SMR devices.
  • SNT - SCSI to NVMe Translation
    • This standard is under development by T10. Prior to this standard the nvmexpress committee provided a whitepaper on this behavior.
  • SRAM - Static RAM
  • SSD - Solid State Drive
  • TFR - Task File Register(s)
  • UEFI - Unified Extensible Firmware Interface
  • USB - Universal Serial Bus
    • In the context of openSeaChest, the focus of USB will be on Mass Storage devices, which follow the BOT (Bulk Only Transport) and UAS (USB Attached SCSI protocol) which use the SCSI command sets from T10.
  • VPD - Vital Product Data
  • ZBD - Zoned Block Device.
    • ZBD is a more generic term to describe how a device must be issued read and write commands for optimal performance. A ZBD may be an SSD or an HDD or some other kind of storage technology.

ATA Specific Acronyms

  • AMAC - Accessible Max Address Configuration
  • BEER - Boot Engineering Extension Record (A withdrawn standard)
  • DCO - Device Configuration Overlay
  • HPA - Host Protected Area
  • PARTIES - Protected Area Run Time Interface Extension Services (A withdrawn standard)
  • PUIS - Power up in standby

SCSI Specific Acronyms

NVMe Specific Acronyms

Terminology

In addition to Acronyms, there are plenty of terms that require definitions.

  • Actuator - The component of an HDD that positions the read/write head(s) radially across the spinning medium
  • Bad Block - This is a location on the storage medium that is unable to store data without errors when reading it back. All modern storage devices automatically reallocate these blocks as they are found on writes. Some may reallocate on reads if the device is able to correct the data back to it's original values using its ECC algorithm.
  • Byte - Sequence of eight contiguous bits considered as a unit
  • Erase - a common term used to describe data sanitization
  • Format - In the context of openSeaChest and the openSeaChest wiki, this term still follows it's original definition: Instructing the drive controller to layout where the sectors are and how to read them. This term has nothing to do with sanitizing/erasing data or what file system to put on the drive. This term originated on FDDs to layout the tracks so the filesystem and operating system could figure out how to access the data and a side-effect of running format has been erasing the sectors to zeroes, but this is not a guaranteed behavior from Format, just a common side-effect.
    • Examples of Formatting the device medium on modern drives that may not perform sanitization of data: Storage Element Depopulation (disabling the use of a head), Fast-Format (changing the sector size)
    • While some may describe this as "Low level formatting", even that definition varies depending on the source and context in which it is being used. Sometimes this term is used as defined above, and sometimes it is used to describe data sanitization. This is why this term will not be used in this way within this Wiki.
  • Freezelock - This concept is often found on various ATA device features. Once the drive has been issued the freezelock for that feature, no further modifications can be made to it while it is powered on. The device must be power cycled to clear a freezelock, no other commands or software can clear it. ATA Features with Freezelocks: Security, Sanitize, DCO, HPA, AMAC, possibly others.
  • G-List - this is the grown defect list. This list grows over time as bad blocks are identified and reallocated by the device's firmware. This may also be called the reallocated sectors list.
  • Head - The component of a HDD that reads or writes data to a magnetic medium
  • Host - controller/operating system
  • Interleave - This is an obsolete process that was used when formatting a floppy disk and old hard disks in order to best match the performance of the disk to the CPU and file system.
  • Logical Unit - class whose objects implement, or an object that implements, a device model that manages and processes commands sent by an application client
  • Medium - The physical location and material where data is stored. Examples are magnetic disks, optical disks, magnetic tape, NAND memory.
  • Namespace - A namespace is a quantity of non-volatile memory that may be formatted into logical blocks. Similar to the SCSI concept of a Logical Unit
  • Nexus - The relationship between two SCSI devices, and the SCSI initiator port and SCSI target port objects within those devices.
  • Non-Volatile - This term describes data or features that are saved across a power loss or power-cycle
    • Non-Volatile cache is an example of a location within a storage device where user-data may reside temporarily, but is recoverable on power loss or a power-cycle
    • Non-Volatile features are settings on a device that are changeable and persist across power loss and power cycles
    • Non-Volatile medium is an example use to describe the permanent location where data is stored (ex: HDD platter or NAND flash) and persists across a power cycle.
  • Obsolete - (From ACS-6) keyword indicating that the designated bits, bytes, words, fields, and code values that may have been defined in previous standards are not defined in this standard and shall not be reclaimed for other uses in future standards
    • Note 1 to entry: Some degree of functionality may be required for items designated as “obsolete” to provide for backward compatibility.
    • Note 2 to entry: Obsolete commands should not be used by the host.
    • Note 3 to entry: Commands defined as obsolete may return command aborted by devices conforming to this standard. However, if a device does not return command aborted for an obsolete command, the device shall return command completion for the command
  • P-List - this may mean either Primary Defect List if it is a SCSI device, or it may mean Pending Defect List. Most often this is used to describe pending defects, however the context may matter. If the context is the SCSI commands to report a defect list or perform a format unit, this term will only mean "Primary defect list".
  • Passthrough - the process of software sending a raw command to the storage device.
    • Operating systems often define a Passthrough IOCTL that can be used to issue a raw ATA, SCSI, or NVMe command.
    • RAID controllers or Drivers may define their own Passthrough to communicate with the physical drives in an array. This is vendor unique and does not have a standard defining how to do this.
    • SAT defines multiple CDBs for passing an ATA command through a translator to an ATA device
    • Sometimes also spelled Passthru
  • Pending Defect List - This is a list of sectors that have been identified as bad during a read, but have not yet been reallocated by the firmware (Pending reallocation). Many devices will not reallocate a sector upon a read unless the data is able to be corrected. When unable to correct the data, it is left in place until the host rewrites this sector at which time the device firmware will perform a reallocation of this bad block and move it from the pending list to the grown defect list.
  • Power Cycle - Removing all power from the device then powering it back on. A system reboot is not a power cycle as power is left applied to the device during a normal reboot cycle so a system must fully power down and back up.
  • Primary Defect List - This is the list of sectors identified at the time of device manufacturing that are unable to be used to store data and the device will format around these defects to other usable blocks. This list may also be described as the factory defect list.
  • Retired - (from ACS-6) keyword indicating that the designated bits, bytes, words, fields, and code values that had been defined in previous standards are not defined in this standard and may be reclaimed for other uses in future standards
    • Note 1 to entry: If retired bits, bytes, words, fields, or code values are used before they are reclaimed, they shall have the meaning or functionality as described in previous standards
  • Retry - A data storage device that detects an error on the first attempt will make another attempt to read or write a block. This is called a retry and it is managed by the device's firmware. Some devices support limiting the number of retries through configurable settings.
  • Sanitize or Sanitization - The removal of user data from the storage medium
    • Clear - Logical techniques are applied to all addressable storage location, protecting against simple, non-invasive data recovery techniques.
    • Purge - Logical techniques that target user data, overprovisioning, unused space, and bad blocks rendering data recovery infeasible even with state-of-the-art laboratory techniques.
  • Servo - The control system for the positioning of the read/write head(s) radially across the spinning medium of a HDD
  • Spindle - The component of a HDD that spins the magnetic medium
  • Translator - This is a device that translated one command standard to another device. It may be a hardware device, firmware, driver, or software. Most common: SAT to translate a SCSI CDB to an ATA TFR.
  • Vendor Unique or Vendor Specific or Vendor Defined - Behavior that is defined outside of standards and by the vendor that makes the device. This may be an HBA, SSD, HDD, OS, etc. This may also describe data that is reported by the device that is defined outside the scope of any standard and can only be interpreted correctly using a Vendor's own documentation or software.
  • Volatile - This term describes data or features that are not saved across a power loss or power-cycle
    • Volatile cache is an example of a location within a storage device where user-data may reside temporarily, but is removed when the device loses power or is power-cycled.
    • Volatile features are settings on a device that are changeable, but reset back to default values when the device loses power or is power-cycled