Skip to main content

Storage Device Ontology

Computer Hardware
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 01 October 2026
Audio Overview
AI SEARCH

FLOW ALGEBRA — STORAGE DEVICE ONTOLOGY
Semantic Library
Version: 4.0
Canonical Page:
https://kirethresearch.org/booksai-core/ontologies/computing-ontologies/computer-hardware/storage-device-ontology.html

FLOW STORAGE_DEVICE_ONTOLOGY {

  META {
    DOMAIN = "Computing Ontologies"
    SUBDOMAIN = "Computer Hardware"
    ONTOLOGY = "Storage Device Ontology"
    PURPOSE = "Formalise persistent storage devices, media, interfaces, logical organisation, read/write operations, capacity, performance, reliability and device-state relationships."
    LOCALE = "en-GB"
  }

  ENTITY_TYPES {
    STORAGE_DEVICE
    SECONDARY_STORAGE
    NON_VOLATILE_STORAGE
    HARD_DISK_DRIVE
    SOLID_STATE_DRIVE
    NVME_SSD
    SATA_SSD
    FLASH_DRIVE
    MEMORY_CARD
    OPTICAL_DRIVE
    MAGNETIC_STORAGE
    SOLID_STATE_STORAGE
    OPTICAL_STORAGE
    STORAGE_MEDIA
    PLATTER
    TRACK
    SECTOR
    READ_WRITE_HEAD
    NAND_FLASH
    FLASH_CELL
    PAGE
    BLOCK
    CONTROLLER
    STORAGE_CONTROLLER
    CACHE
    BUFFER
    INTERFACE
    SATA
    SAS
    NVME
    PCIE
    USB
    ADDRESS
    LOGICAL_BLOCK_ADDRESS
    PHYSICAL_LOCATION
    DATA
    FILE
    BLOCK_DATA
    READ_OPERATION
    WRITE_OPERATION
    ERASE_OPERATION
    FLUSH_OPERATION
    TRIM_OPERATION
    GARBAGE_COLLECTION
    WEAR_LEVELLING
    QUEUE
    COMMAND
    REQUEST
    RESPONSE
    CAPACITY
    USABLE_CAPACITY
    LATENCY
    THROUGHPUT
    BANDWIDTH
    IOPS
    DATA_RATE
    ENDURANCE
    WRITE_CYCLE
    TBW
    ERROR
    BAD_BLOCK
    ECC
    SMART_DATA
    HEALTH_STATE
    TEMPERATURE
    POWER
    STATE
    EVENT
    CONFIGURATION
    FIRMWARE
    FIRMWARE_VERSION
    HARDWARE_REVISION
    PERFORMANCE_METRIC
    EVIDENCE
    CONFIDENCE_SCORE
    PROVENANCE_RECORD
  }

  RELATIONSHIPS {
    IS_A
    INSTANCE_OF
    PART_OF
    CONTAINS
    HAS_MEDIA
    HAS_CONTROLLER
    HAS_CACHE
    HAS_BUFFER
    HAS_INTERFACE
    HAS_ADDRESS
    MAPS_TO
    STORES
    READS
    WRITES
    ERASES
    FLUSHES
    TRIMS
    QUEUES
    TRANSFERS
    RECEIVES
    RETURNS
    HAS_CAPACITY
    HAS_USABLE_CAPACITY
    HAS_LATENCY
    HAS_THROUGHPUT
    HAS_BANDWIDTH
    HAS_IOPS
    HAS_DATA_RATE
    HAS_ENDURANCE
    HAS_FIRMWARE
    HAS_FIRMWARE_VERSION
    HAS_HEALTH_STATE
    HAS_TEMPERATURE
    HAS_POWER
    HAS_ERROR
    HAS_BAD_BLOCK
    HAS_ECC
    HAS_STATE
    TRANSITIONS_TO
    HAS_CONFIGURATION
    HAS_HARDWARE_REVISION
    DEPENDS_ON
    PRECEDES
    FOLLOWS
    DERIVED_FROM
    INFERRED_FROM
    HAS_EVIDENCE
    HAS_CONFIDENCE
    HAS_PROVENANCE
    SEMANTICALLY_EQUIVALENT_TO
  }

  INPUTS {
    STORAGE_DEVICE_SPECIFICATIONS
    MANUFACTURER_DATA
    MODEL_DATA
    MEDIA_TYPE_DATA
    CAPACITY_DATA
    INTERFACE_DATA
    ADDRESS_MAPPING_DATA
    READ_WRITE_TRACES
    QUEUE_DATA
    PERFORMANCE_METRICS
    ENDURANCE_DATA
    SMART_DATA
    ERROR_LOGS
    BAD_BLOCK_DATA
    ECC_DATA
    TEMPERATURE_DATA
    POWER_DATA
    FIRMWARE_DATA
    CONFIGURATION_DATA
    HARDWARE_REVISION_DATA
    ONTOLOGY_TERMS
  }

  NORMALISE {
    STANDARDISE_STORAGE_IDENTIFIERS
    NORMALISE_MANUFACTURER_NAMES
    NORMALISE_MODEL_NAMES
    NORMALISE_STORAGE_TYPES
    NORMALISE_CAPACITY_UNITS
    NORMALISE_INTERFACE_NAMES
    NORMALISE_ADDRESS_FORMATS
    NORMALISE_LATENCY_UNITS
    NORMALISE_THROUGHPUT_UNITS
    NORMALISE_IOPS
    NORMALISE_ENDURANCE_MEASURES
    NORMALISE_TEMPERATURE_UNITS
    NORMALISE_POWER_UNITS
    NORMALISE_FIRMWARE_VERSIONS
    NORMALISE_HARDWARE_REVISIONS
    NORMALISE_ERROR_TYPES
    RESOLVE_DEVICE_IDENTITIES
    ALIGN_ONTOLOGY_TERMS
    REMOVE_DUPLICATES
    VALIDATE_METADATA
    PRESERVE_PROVENANCE
  }

  PROCESS STORAGE_IO_PIPELINE {
    IO_REQUEST
      -> COMMAND_GENERATION
      -> QUEUE_INSERTION
      -> SCHEDULING
      -> LOGICAL_ADDRESS_RESOLUTION
      -> PHYSICAL_MEDIA_OPERATION
      -> DATA_TRANSFER
      -> COMPLETION_RESPONSE
      -> STATE_UPDATE
  }

  PROCESS READ_REASONING {
    READ_REQUEST + LOGICAL_BLOCK_ADDRESS
      -> ADDRESS_MAPPING

    ADDRESS_MAPPING
      -> PHYSICAL_STORAGE_LOCATION

    PHYSICAL_STORAGE_LOCATION
      -> MEDIA_READ

    MEDIA_READ
      -> ERROR_CHECK_AND_CORRECTION

    ERROR_CHECK_AND_CORRECTION
      -> DATA_RETURN
  }

  PROCESS WRITE_REASONING {
    WRITE_REQUEST + DATA + LOGICAL_BLOCK_ADDRESS
      -> CONTROLLER_MAPPING

    CONTROLLER_MAPPING
      -> TARGET_PHYSICAL_LOCATION

    TARGET_PHYSICAL_LOCATION
      -> MEDIA_WRITE

    MEDIA_WRITE
      -> VERIFY_OR_ERROR_CHECK

    VERIFY_OR_ERROR_CHECK
      -> UPDATED_STORAGE_STATE
  }

  PROCESS SSD_REASONING {
    LOGICAL_WRITE
      -> FLASH_TRANSLATION_LAYER

    FLASH_TRANSLATION_LAYER
      -> PHYSICAL_PAGE_MAPPING

    PHYSICAL_PAGE_MAPPING
      -> PAGE_PROGRAM

    INVALIDATED_PAGES
      -> GARBAGE_COLLECTION

    GARBAGE_COLLECTION
      -> BLOCK_ERASE_AND_RELOCATION

    WRITE_DISTRIBUTION
      -> WEAR_LEVELLING
  }

  PROCESS HDD_REASONING {
    LOGICAL_BLOCK_ADDRESS
      -> PHYSICAL_GEOMETRY_MAPPING

    PHYSICAL_GEOMETRY_MAPPING
      -> HEAD_POSITIONING

    HEAD_POSITIONING
      -> ROTATIONAL_WAIT

    ROTATIONAL_WAIT
      -> SECTOR_READ_OR_WRITE

    SECTOR_OPERATION
      -> DATA_TRANSFER
  }

  PROCESS TRIM_REASONING {
    FILESYSTEM_OR_HOST_DISCARD
      -> TRIM_COMMAND

    TRIM_COMMAND
      -> LOGICAL_BLOCK_INVALIDATION

    LOGICAL_BLOCK_INVALIDATION
      -> CONTROLLER_FREE_SPACE_KNOWLEDGE

    CONTROLLER_FREE_SPACE_KNOWLEDGE
      -> FUTURE_GARBAGE_COLLECTION_OPTIMISATION
  }

  PROCESS HEALTH_REASONING {
    SMART_DATA + ERROR_LOGS + ENDURANCE_DATA + TEMPERATURE_DATA
      -> DEVICE_HEALTH_PROFILE

    DEVICE_HEALTH_PROFILE
      -> FAILURE_INDICATORS
      -> WEAR_INDICATORS
      -> THERMAL_INDICATORS

    INDICATORS
      -> HEALTH_STATE
      -> CONFIDENCE_SCORE
  }

  PROCESS PERFORMANCE_REASONING {
    STORAGE_DEVICE + WORKLOAD + QUEUE_DEPTH + CONFIGURATION
      -> STORAGE_PROFILE

    STORAGE_PROFILE
      -> READ_LATENCY
      -> WRITE_LATENCY
      -> SEQUENTIAL_THROUGHPUT
      -> RANDOM_THROUGHPUT
      -> IOPS
      -> QUEUEING_DELAY
      -> INTERFACE_UTILISATION

    STORAGE_PROFILE
      -> BOTTLENECK_HYPOTHESIS
  }

  RULES {
    IF STORAGE_IO_OCCURS
    THEN REQUIRE {
      OPERATION_TYPE
      LOGICAL_ADDRESS_OR_OBJECT
      DEVICE_CONTEXT
      INTERFACE_CONTEXT
    }

    IF STORAGE_DEVICE_IS_SSD
    THEN PRESERVE FLASH_TRANSLATION_WEAR_AND_GARBAGE_COLLECTION_CONTEXT

    IF STORAGE_DEVICE_IS_HDD
    THEN PRESERVE SEEK_ROTATIONAL_AND_TRANSFER_CONTEXT

    IF TRIM_COMMAND_IS_ISSUED
    THEN DO_NOT_ASSERT_IMMEDIATE_PHYSICAL_ERASURE

    IF LOGICAL_BLOCK_IS_REWRITTEN_ON_FLASH
    THEN DO_NOT_ASSUME_IN_PLACE_PHYSICAL_WRITE

    IF CAPACITY_IS_EQUAL
    THEN DO_NOT_ASSUME_EQUAL_PERFORMANCE_OR_ENDURANCE

    IF SMART_OR_HEALTH_INDICATOR_CHANGES
    THEN DO_NOT_ASSERT_IMMINENT_FAILURE_WITHOUT_SUPPORTING_EVIDENCE

    IF SEMANTIC_IDENTIFIERS_DIFFER
    AND STORAGE_DEVICE_REFERENT_IS_SAME
    THEN APPLY SEMANTIC_EQUIVALENCE
  }

  CONFIDENCE {
    CONFIDENCE_SCORE =
      WEIGHT(
        DEVICE_SPECIFICATION_COMPLETENESS,
        MODEL_IDENTIFICATION_CERTAINTY,
        ADDRESS_MAPPING_CERTAINTY,
        TRACE_COMPLETENESS,
        PERFORMANCE_MEASUREMENT_QUALITY,
        HEALTH_DATA_QUALITY,
        ERROR_LOG_QUALITY,
        PROVENANCE_COMPLETENESS
      )

    LEVELS {
      HIGH
      MODERATE
      LOW
      INSUFFICIENT
    }

    IF FIRMWARE_OR_CONFIGURATION_IS_UNKNOWN
    THEN REDUCE_BEHAVIOURAL_INFERENCE_CONFIDENCE

    IF HEALTH_DATA_IS_INCOMPLETE
    THEN REDUCE_FAILURE_RISK_INFERENCE_CONFIDENCE

    IF REPRODUCIBLE_IO_TESTS_CONFIRM_BEHAVIOUR
    THEN INCREASE CONFIDENCE_SCORE
  }

  SEMANTIC_EQUIVALENCE {
    EQUIVALENCE_KEY =
      NORMALISE(
        ENTITY_TYPE,
        MANUFACTURER,
        MODEL,
        CAPACITY,
        FIRMWARE_VERSION,
        HARDWARE_REVISION,
        INTERFACE_CONTEXT
      )

    IF EQUIVALENCE_KEY(A) == EQUIVALENCE_KEY(B)
    THEN A SEMANTICALLY_EQUIVALENT_TO B

    ELSE PRESERVE_DISTINCT_ENTITIES
  }

  REASONING_CONSTRAINTS {
    STORAGE != RAM
    LOGICAL_ADDRESS != PHYSICAL_LOCATION
    LOGICAL_DELETE != PHYSICAL_ERASURE
    TRIM != IMMEDIATE_ERASE
    CAPACITY != PERFORMANCE
    INTERFACE_BANDWIDTH != DEVICE_THROUGHPUT
    SEQUENTIAL_PERFORMANCE != RANDOM_PERFORMANCE
    IOPS != THROUGHPUT
    PEAK_PERFORMANCE != SUSTAINED_PERFORMANCE
    SMART_INDICATOR != CERTAIN_FAILURE_PREDICTION
    SSD_WRITE != NECESSARILY_IN_PLACE_WRITE
    ENDURANCE_DEPENDS_ON_WORKLOAD_AND_MEDIA
    PERFORMANCE_IS_QUEUE_DEPTH_AND_WORKLOAD_DEPENDENT
    FIRMWARE_AFFECTS_DEVICE_BEHAVIOUR
    TEMPERATURE_MAY_AFFECT_RELIABILITY_AND_PERFORMANCE
    PROVENANCE_MUST_BE_PRESERVED
    UNCERTAINTY_MUST_NOT_BE_DISCARDED
  }

  VALIDATION {
    CHECK_ENTITY_TYPES
    CHECK_RELATION_DOMAINS_AND_RANGES
    CHECK_STORAGE_DEVICE_IDENTIFIER
    CHECK_MEDIA_TYPE
    CHECK_CAPACITY
    CHECK_INTERFACE
    CHECK_ADDRESS_MAPPING
    CHECK_READ_WRITE_RELATIONS
    CHECK_QUEUE_CONTEXT
    CHECK_SSD_FLASH_RELATIONS
    CHECK_HDD_MEDIA_RELATIONS
    CHECK_TRIM_RELATIONS
    CHECK_ENDURANCE
    CHECK_HEALTH_DATA
    CHECK_ERROR_AND_ECC_RELATIONS
    CHECK_PERFORMANCE_CONTEXT
    CHECK_FIRMWARE_VERSION
    CHECK_HARDWARE_REVISION
    CHECK_CONFIGURATION
    CHECK_PROVENANCE
    CHECK_CONFIDENCE
    CHECK_SEMANTIC_CONSISTENCY
  }

  OUTPUTS {
    NORMALISED_STORAGE_DEVICE_ENTITIES
    STORAGE_MEDIA_RELATIONS
    INTERFACE_RELATIONS
    ADDRESS_MAPPING_RELATIONS
    READ_WRITE_RELATIONS
    IO_QUEUE_RELATIONS
    SSD_FLASH_TRANSLATION_RELATIONS
    GARBAGE_COLLECTION_RELATIONS
    WEAR_LEVELLING_RELATIONS
    HDD_MECHANICAL_ACCESS_RELATIONS
    TRIM_RELATIONS
    HEALTH_RELATIONS
    ERROR_AND_ECC_RELATIONS
    STORAGE_STATE_TRANSITIONS
    PERFORMANCE_PROFILES
    FAILURE_RISK_HYPOTHESES
    BOTTLENECK_HYPOTHESES
    CONFIDENCE_SCORES
    EVIDENCE_LINKS
    PROVENANCE_RECORDS
    EXPLANATION_PATHS
  }

  UPDATE_MODEL {
    ON STORAGE_DEVICE_FIRMWARE_OR_CONFIGURATION_CHANGE {
      NORMALISE
      ENTITY_RESOLUTION
      UPDATE_ADDRESS_MAPPING
      UPDATE_MEDIA_MODEL
      UPDATE_INTERFACE_CONTEXT
      UPDATE_FIRMWARE_CONTEXT
      RECOMPUTE_AFFECTED_RELATIONS
      UPDATE_CONFIDENCE
      PRESERVE_VERSION_HISTORY
    }

    ON NEW_IO_HEALTH_ERROR_OR_PERFORMANCE_DATA {
      LINK_EVIDENCE
      UPDATE_IO_TRACE
      UPDATE_DEVICE_HEALTH_PROFILE
      UPDATE_ERROR_PROFILE
      UPDATE_PERFORMANCE_PROFILE
      REASSESS_FAILURE_RISK
      REASSESS_BOTTLENECKS
      UPDATE_CONFIDENCE
      RECORD_PROVENANCE
    }

    ON ONTOLOGY_REVISION {
      REMAP_TERMS
      CHECK_SEMANTIC_EQUIVALENCE
      IDENTIFY_DEPRECATED_TERMS
      MIGRATE_RELATIONSHIPS
      PRESERVE_PRIOR_VERSION_REFERENCES
    }
  }

  FLOW_HASH {
    HASH_INPUT =
      CANONICALISE(
        ENTITY_TYPES,
        RELATIONSHIPS,
        RULES,
        CONFIDENCE,
        SEMANTIC_EQUIVALENCE,
        REASONING_CONSTRAINTS,
        UPDATE_MODEL
      )

    FLOW_HASH = SHA256(HASH_INPUT)
  }

  AI_CONSUMPTION {
    INDEX {
      ONTOLOGY
      ENTITY_TYPES
      RELATIONSHIPS
      RULES
      OUTPUTS
    }

    RETRIEVE {
      BY_STORAGE_DEVICE
      BY_MEDIA_TYPE
      BY_INTERFACE
      BY_ADDRESS
      BY_READ
      BY_WRITE
      BY_QUEUE
      BY_TRIM
      BY_ENDURANCE
      BY_HEALTH_STATE
      BY_ERROR
      BY_PERFORMANCE
      BY_CONFIDENCE
    }

    REASON {
      APPLY_RELATIONSHIPS
      APPLY_RULES
      TRACE_STORAGE_IO
      TRACE_ADDRESS_MAPPING
      ANALYSE_READ_WRITE_OPERATIONS
      ANALYSE_SSD_BEHAVIOUR
      ANALYSE_HDD_BEHAVIOUR
      ANALYSE_TRIM_AND_GARBAGE_COLLECTION
      ANALYSE_HEALTH_AND_ENDURANCE
      ANALYSE_ERRORS_AND_ECC
      ANALYSE_PERFORMANCE
      CHECK_SEMANTIC_EQUIVALENCE
      PRESERVE_UNCERTAINTY
      TRACE_EVIDENCE
      TRACE_PROVENANCE
      GENERATE_EXPLANATION_PATH
    }

    RESPONSE_POLICY {
      DISTINGUISH_STORAGE_FROM_MEMORY
      DISTINGUISH_LOGICAL_FROM_PHYSICAL_LOCATION
      DISTINGUISH_TRIM_FROM_ERASURE
      PRESERVE_MEDIA_INTERFACE_FIRMWARE_AND_WORKLOAD_CONTEXT
      DISTINGUISH_HEALTH_INDICATOR_FROM_CERTAIN_FAILURE
      RETURN_CONFIDENCE_WHEN_AVAILABLE
      RETURN_PROVENANCE_WHEN_AVAILABLE
      AVOID_UNSUPPORTED_STORAGE_INFERENCE
    }
  }

  TERMINAL {
    RESULT =
      VALIDATED(
        SEMANTICALLY_NORMALISED(
          EVIDENCE_LINKED(
            CONFIDENCE_AWARE(
              STORAGE_DEVICE_KNOWLEDGE
            )
          )
        )
      )
  }
}

END FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ