node package manager

chs

Cylinder-Head-Sector Address (CHS)

CHS (Cylinder-Head-Sector) Address

CHS addressing is an early method for giving addresses to each physical block of data on a hard disk drive, identifying individual sectors on a disk by their position in a track, where the track is determined by the head and cylinder numbers.

Install via npm

$ npm install --save chs

Usage

// Load module 
var CHS = require( 'chs' )
// Create a CHS address 
var addr = new CHS( 5, 20, 8 )
// Properties: 
var c = addr.cylinder
var h = addr.head
var s = addr.sector
// Convert to an LBA (Logical Block Address) 
var lba = addr.toLBA( headsPerTrack, sectorsPerTrack )
var lba = addr.toLBA( 12, 32 )
// Set it to an LBA 
addr.setLBA( lba, headsPerTrack, sectorsPerTrack )
addr.setLBA( 3150, 16, 63 )
// Get it as a buffer 
var buf = addr.buffer
var buf = addr.toBuffer()
// Set from buffer 
addr.buffer = new Buffer([ 0xFE, 0xFF, 0xFF ])
addr.parse( new Buffer([ 0xFE, 0xFF, 0xFF ]) )

API Reference

Kind: global class

Cylinder-Head-Sector Address

Params

  • [cylinder] Number | Buffer = 1023
  • [head] Number = 254
  • [sector] Number = 63

Cylinder

Kind: instance property of CHS

Head

Kind: instance property of CHS

Sector

Kind: instance property of CHS

Get/set values from/to a Buffer

Kind: instance property of CHS

chS.setLBA(lba, hpt, spt) ⇒ CHS

Set CHS to a Logical Block Address (LBA)

Kind: instance method of CHS Params

  • lba Number - Logical Block Address
  • hpt Number - Heads per Track
  • spt Number - Sectors per Track

Get the Logical Block Address (LBA) corresponding to the given disk geometry

Kind: instance method of CHS Returns: Number - lba Params

  • hpt Number - Heads per Track
  • spt Number - Sectors per Track

Kind: instance method of CHS Returns: Number - lba See: #getLBA() Params

  • hpt Number - Heads per Track
  • spt Number - Sectors per Track

chS.clone() ⇒ CHS

Clone the CHS Address

Kind: instance method of CHS

chS.copy(target) ⇒ CHS

Copy this address to a target address

Kind: instance method of CHS Params

chS.parse(buffer) ⇒ CHS

Parse a given Buffer

Kind: instance method of CHS Params

  • buffer Buffer

Create a Buffer representation of the CHS Address

Kind: instance method of CHS

CHS.fromBuffer(buffer) ⇒ CHS

Create a CHS Address from a given buffer

Kind: static method of CHS Params

  • buffer Buffer

CHS.fromLBA(lba, hpt, spt) ⇒ CHS

Create a CHS Address from a Logical Block Address (LBA)

Kind: static method of CHS Params

  • lba Number - Logical Block Address
  • hpt Number - Heads per Track
  • spt Number - Sectors per Track