用于 SCSI、SATA、SAS、iSCSI 硬盘驱动器、磁带驱动器和库外围设备的专业工程、筛选和测试软件,通过现成的 HBA 提供
要获得 STB Suite 的许可证以使用提供的脚本请在此处购买许可证。
磁盘制造模块 (DMM)序列文件 – 在磁盘制造模块中打开这些文件 |
||
分类 | 文件名 | 简介 |
NVMe 增量传输测试 新 |
NVMePerfTest.zip |
增量传输测试。 这每次传输使用 256 个块,并强制队列深度从 1、8、16、32 开始用于读取和写入。
预测试配置: ======================= <none> 测试总结。 8 个测试定义: ================================= 测试 1(共 8 个): Write Test; Sequential; for 8,000,000 Blocks Fixed-Length Transfers of 256 (0x0100) Blocks Start Block: 0 (0x0) Data Pattern: Decrementing Queue Depth = 1 FUA = OFF Number of Workers = 1 Timeout Value = 30 Action on Error: Stop Current Test 测试 2(共 8 个): Read Test; Sequential; for 8,000,000 Blocks Fixed-Length Transfers of 256 (0x0100) Blocks Start Block: 0 (0x0) Data Pattern: Decrementing Queue Depth = 1 FUA = OFF Number of Workers = 1 Timeout Value = 30 Action on Error: Stop Current Test 测试 3(共 8 个): Write Test; Sequential; for 8,000,000 Blocks Fixed-Length Transfers of 256 (0x0100) Blocks Start Block: 0 (0x0) Data Pattern: Decrementing Queue Depth = 8 FUA = OFF Number of Workers = 1 Timeout Value = 30 Action on Error: Stop Current Test 测试 4(共 8 个): Read Test; Sequential; for 8,000,000 Blocks Fixed-Length Transfers of 256 (0x0100) Blocks Start Block: 0 (0x0) Data Pattern: Decrementing Queue Depth = 8 FUA = OFF Number of Workers = 1 Timeout Value = 30 Action on Error: Stop Current Test 测试 5(共 8 个): Write Test; Sequential; for 8,000,000 Blocks Fixed-Length Transfers of 256 (0x0100) Blocks Start Block: 0 (0x0) Data Pattern: Decrementing Queue Depth = 16 FUA = OFF Number of Workers = 1 Timeout Value = 30 Action on Error: Stop Current Test 测试 6(共 8 个): Read Test; Sequential; for 8,000,000 Blocks Fixed-Length Transfers of 256 (0x0100) Blocks Start Block: 0 (0x0) Data Pattern: Decrementing Queue Depth = 16 FUA = OFF Number of Workers = 1 Timeout Value = 30 Action on Error: Stop Current Test 测试 7(共 8 个): Write Test; Sequential; for 8,000,000 Blocks Fixed-Length Transfers of 256 (0x0100) Blocks Start Block: 0 (0x0) Data Pattern: Decrementing Queue Depth = 32 FUA = OFF Number of Workers = 1 Timeout Value = 30 Action on Error: Stop Current Test 测试 8(共 8 个): Read Test; Sequential; for 8,000,000 Blocks Fixed-Length Transfers of 256 (0x0100) Blocks Start Block: 0 (0x0) Data Pattern: Decrementing Queue Depth = 32 FUA = OFF Number of Workers = 1 Timeout Value = 30 Action on Error: Stop Current Test 测试后配置: ======================== <none> |
外部 SATA 自检 | DMMSataSelfTest-90410.zip | 通过使用 Developers Toolbox (DTB) API,您可以向任何类型的设备发送任何命令。此示例将说明如何将 SATA SMART 自检作为 DMM 测试步骤运行,并将结果记录到 DMM 设备日志文件中。使用 Microsoft Visual Studio C++ 和 STB Suite Developers Toolbox api 我们可以将我们需要的任何命令发送到任何类型的设备。 由于 DMM 通过实现 SAT(SCSI->ATA 转换)的 SAS 控制器与 SATA 设备进行通信,例如 LSI 3800 或 3801,我们必须根据 SAT 标准编写程序来发出嵌入到 SCSI 命令中的 SATA 命令 .我们的示例项目从 DMM 传递的命令行参数中检索驱动器的地址。 此外,DMM 允许您将其他用户定义的命令行参数传递给您的程序。 例如,您可以修改此项目以允许您指定任何不同的 SATA 自检。 |
磁盘清除文件 | DiskPurge-DMMfiles.zip |
磁盘制造模块 (DMM) 使用这些文件来清理/清理磁盘。
|
数据洗涤器测试 | DiskScrub.zip |
此测试序列执行以下操作:
如果任何 WRITE 或 READ 命令失败,或者任何数据比较失败,则测试将失败。 这与国防部认证测试的过程相同。 |
Disk Zap Block Zero | DiskZapBlockZero.zip | 擦除磁盘的第一个块。 有助于清除主引导记录或其他操作系统残余 |
磁盘写入所有块 | DiskWriteAllBlocks.zip | 使用块号作为数据模式写入驱动器的所有块 |
磁盘读取所有块 | DiskReadAllBlocks.zip | 读取驱动器的所有块——确保驱动器是可读的。 |
磁盘快速质检 | DiskQuickQC.zip |
|
磁盘快速数据擦除 | DiskQuickDataErase.zip | 使用带有 LBA 覆盖的随机数据写入所有磁盘块 |
磁盘 DOD(国防部)擦除 | DiskDODErase.zip | 符合 DOD 标准的磁盘清除。 使用数据比较写入和读取三个数据模式。 测试将在整个驱动器上执行总共 6 次通过(3 次写入,3 次读取),并且可能需要很长时间才能完成。 |
磁盘物理压力 | DiskPhysicalStress.zip |
|
磁盘无损 15 分钟压力测试 | DiskNonDestructive15MinStressTest.zip |
|
磁盘无缓存介质完整性 | DiskNoCacheMediaIntegrity.zip | 写入和读取驱动器的所有块,带有 LBA 覆盖的随机数据模式,FUA 设置为 ON,数据比较 |
Disk Confidence 1 | DiskConfidenceNum1.zip |
|
磁盘验收 | DiskAcceptance.zip |
|
磁盘块因子性能 | DiskQuickQC.zip | 顺序写入和读取 8、32、64 和 128 个块 pr 传输 - 查看日志文件以查看每个块因子的 I/O 性能 |
15 分钟无损蝴蝶阅读 | 15MinuteNonDestButterflyRead.zip | 只读测试 - 15 分钟的蝶式访问读取 |
15分钟破坏蝴蝶 | 15MinuteDestructiveButterfly.zip |
|
15 分钟数据库 | 15MinuteDatabaseTest.zip |
|
磁带制造模块 (TMM)序列文件 – 在磁带制造模块中打开这些文件 |
||
分类 | 文件名称 | 简介 |
TapeQuickQC | TapeQuickQC.zip | 验证数据写入/读取和定位的快速测试 |
TapePositioning | TapePositioningTest.zip | 写入文件集和文件标记,然后使用各种空间命令在文件集之间移动的测试。 |
TapeMotionDataStress | TapeMotionDataStress.zip | 各种数据模式与压缩打开和关闭,加上定位。 |
TapeLTOMediaGoodness | TapeLTOMediaGoodness.zip | 使用 LOG Pages 和 Cartridge MAM 数据来确定媒体健康状况 |
TapeCompressionPerformance | TapeCompressionPerformance.zip | 使用 2:1 可压缩数据模式进行测试,在打开和关闭压缩的情况下进行写入和读取。 日志驱动 LOG 页面用于压缩计算 |
TapeAcceptance | TapeAcceptance.zip | 一个简短的测试,检查驱动器是否在总线上响应并可以完成基本命令 |
Tape2G-2to1CompressOnOff | Tape2G-2to1CompressOnOff.zip | 在打开和关闭压缩设置的情况下写入和读取 2G 的 2:1 可压缩数据。 每次测试前清除 LOG 页面,每次测试后记录 LOG 页面 |
Tape 2GB – 2to1 Comp-badtape | Tape2G-2to1Comp-badtape.zip |
|
磁带 2 对 1 压缩 | 2to1Compression.zip | 使用 2:1 可压缩数据模式的简单写入/读取测试。 检查日志以查看写入和读取速度的传输性能。 |
ScriptWriter Pro (SWP) |
||
分类 | 文件名称 | 简介 |
磁盘测试 | diskread.zip | 此示例说明使用 SCSIDiskRead 函数从磁盘驱动器读取连续块。 如果读取命令失败,则使用 SCSIViewSense 函数检索和显示描述失败的感知数据。 |
disktest.zip | 这是一个使用 “dlgdsn.exe” 生成的图形界面的复杂示例。 程序。GUI 允许用户输入主机总线适配器编号和 SCSI 目标编号。 当‘扫描目标’ 如果设备在该地址做出响应,则按下按钮会发出 INQUIRY 并显示查询数据。一旦选择了设备,就可以在驱动器上执行各种测试。 | |
DiskGetECCSpan.zip | 从磁盘驱动器检索 ECC 长度 | |
DiskStartStop.zip | 向上或向下旋转磁盘 | |
DiskUnload.zip | 从可移动类型的磁盘或 CD 中弹出媒体 | |
DiskWriteRead.zip | 写入& 阅读& 显示数据 | |
GetDeviceType.zip | 检索& 解释设备类型 | |
GetReadLongSize.zip | ||
DiskReadFUA.zip | 设置了强制单元访问位的磁盘读取 | |
Sony AIT | aitlog.zip | 此示例说明使用 SCSILogSense 函数从磁带驱动器检索、解析和显示日志页数据。以下是输出文件 ‘aitlogs.txt’:12/22/2003 12:59:18 的内容 PMVendor = SONY Product = SDZ-100 Version = 0100Host adapter = 5 Target = 0 LUN = 0Tape Log Page (30h) = 当前写入组数 = 000 当前 RAW 重试次数 = 405 当前读取组数 = 003 当前组数 ECC-3 重试 = 00 之前写入的组数 = 500 之前的 RAW 重试次数 = 540 之前读取的组数 = 000 之前的 ECC-3 重试次数 = 00 写入的组总数 = 40500 RAW 重试总数 = 8405 读取的组总数 = 00940 ECC-3 重试总数 = 41450 加载计数 = 00 |
确认缓冲区大小 | BufferSize.zip | 确认 DTB 缓冲区的大小 |
比较缓冲区 | CompareBuffers.zip | 比较两个 DTB 缓冲区之间的数据 |
十进制转换为十六进制 | DEC2HEX.zip | 将十进制整数转换为四字节数组以供 LBA 使用 |
READLONG命令 | GetLongReadSize.zip | 检索 READLONG CDB 的正确大小 |
获取磁带容量 | GetTapeCapacity.zip | 检索并显示磁带容量 |
读取容量 | ReadCapacity.zip | 检索并显示 Highblock 编号和 Blocksize |
传输率 | TransferRate.zip | 计算并显示磁盘读取传输率 |
读取元素状态 | ReadElStatus.zip | 读取元素状态 |
用户定义的命令 | userdefined.zip | 此示例说明使用 SCSIUserCdb 函数发出用户定义的 SCSI CDB。定义 cdb 数组并填充 SCSI INQUIRY 命令的值。 发出此命令并显示数据。 |
询问 | loggerinq.zip | 此示例说明如何使用 SCSIInquiry、SCSIVendor、SCSIProduct 和 SCSIVersion 命令。它还显示了如何使用 ‘looger.exe’ 对象以在非模态文本框中显示数据。 |
Inquiry.zip | 此示例向 ha、target 和 & 指定的设备发出 INQUIRY 命令。 伦 来自 INQUIRY 命令的数据存储在数组 ‘inqdata’ 中。函数 SCSIGetVendor、SCSIGetProduct 和 SCSIGetVersion 也用于用各自的数据填充字符串。 | |
NewINQUIRY.zip | 显示 INQUIRY 数据的另一个示例 |
Developer Toolbox (DTB) | ||
Visual C++ | ||
分类 | 文件名 | 简介 |
重新审视 SCSI 合规性(新) | SCSICompliance-120625.zip | SCSI 命令合规实用程序的目的是向目标设备发出 CDB,并记录发送 CDB 的结果。 (阅读全文) |
使用块数和队列深度 | BC_QD_Testing.zip | 调用我们的 VCSCSISetQueueDepth 和 VCSCSISetTransferMode API 函数的 VCPSSL 项目。 在项目名称中,BC 代表“Block Count”,QD 代表“Queue Depth” |
发现 | discover.zip | 此示例项目创建一个命令行程序,该程序使用 VCSCSIHostAdapterCount() 函数返回系统中存在多少主机适配器。使用 VCSCSITargetCount() 函数执行循环以遍历每个 HBA 上所有支持的地址,发出 INQUIRY 命令与 VCSCSIInquiry() 函数。如果设备响应 INQUIRY 命令,则函数 VCSCSIGetVendor() 和 VCSCSIGetProduct() 函数用于检索此数据。要运行程序,请打开命令提示符窗口并运行可执行文件。 |
CDB的时间 | TimingOfCDB.zip | Visual Studio 6 项目,展示如何对 I/O 进行计时。 每个 I/O 都是 1 块读取(块 0)。 在主屏幕上输入 HBA:Target:Lun 和要发布的 I/O 数量。 测试完成后,它会显示每个 I/O 的平均时间(以毫秒为单位)。 |
.NET C# | ||
分类 | 文件名称 | 简介 |
示例 | UsingDTBFromCSharp.zip | 这是一个示例项目,它只调用 VB.PSSL 中的一个 API 并显示 DLL 的版本。 |
Visual Basic | ||
分类 | 文件名称 | 简介 |
将缓冲区写入文件 | Buffer2File.zip | 将数据从 DTB 缓冲区写入文件 |
检查随机块 | CheckRandomBlock.zip | 检查随机块 |
比较缓冲区 | CompareBuffers.zip | 比较两个 DTB 缓冲区之间的数据 |
倒带 | Rewind.zip | 倒带、写入数据、写入文件标记、倒带、读取磁带测试 |
供应商信息 | Vendor.zip | 检索& 显示 INQUIRY VENDOR 数据 |
版本信息 | Version.zip | 检索& 显示查询版本数据 |
AND | AND.zip | 使用 DTB 逻辑与功能 |
磁盘获取 ECC 跨度 | DiskGetECCSpan.zip | 从磁盘驱动器检索 ECC 长度 |
磁盘启动或停止 | DiskStartStop.zip | 向上或向下旋转磁盘 |
磁盘卸载 | DiskUnload.zip | 从可移动类型的磁盘或 CD 中弹出媒体 |
磁盘写入、读取、显示 | DiskWriteRead.zip | 写入& 阅读& 显示数据 |
获取设备类型 | GetDeviceType.zip | 检索& 解释设备类型 |
读取长尺寸 | GetReadLongSize.zip | 检索 READLONG CDB 的正确大小 |
磁盘读取 FUA | DiskReadFUA.zip | 设置了强制单元访问位的磁盘读取 |
获取磁带容量 | GetTapeCapacity.zip | 检索并显示磁带容量 |