The Wayback Machine - https://web.archive.org/web/20201208171721/https://github.com/jhermsmeier/node-blockdevice
Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Block Device

npm npm license npm downloads build status

Install via npm

$ npm install --save blockdevice

Usage Examples

API

new BlockDevice( options )

  • options: Object
    • fs: require( 'fs' ), optional; custom 'fs' instance
    • fd: Number, optional; file descriptor
    • path: String, optional if fd is given
    • mode: String, optional if fd is given
    • blockSize: Number, optional
    • size: Number, optional
    • headsPerTrack: Number, optional
    • sectorsPerTrack: Number, optional

BlockDevice.getPath( id )

  • id: Number

device.open( callback )

  • callback: function( err, fd )

device.close( callback )

  • callback: function( err )

device.detectBlockSize( size, step, limit, callback )

  • size: Number, initial block size to be checked
  • step: Number, block size increment
  • limit: Number, maximum block size to be checked
  • callback: function( err, blockSize )

device.detectSize( step, callback )

  • step: Number, size increment
  • callback: function( err, size )

device.partition( options )

  • options: Object
    • firstLBA: Number, first logical block of partition
    • lastLBA: Number, last logical block of partition

device.getLBA( cylinder, head, sector )

  • cylinder: Number
  • head: Number
  • sector: Number

device._read( offset, length, buffer, callback )

  • offset: Number
  • length: Number
  • buffer: Buffer, optional
  • callback: function( err, buffer, bytesRead )

INTERNAL. Used by .readBlocks().

device.readBlocks( fromLBA, toLBA, buffer, callback )

  • fromLBA: Number
  • toLBA: Number
  • buffer: Buffer, optional
  • callback: function( err, buffer, bytesRead )

device._write( offset, buffer, callback )

  • offset: Number
  • buffer: Buffer
  • callback: function( err, bytesWritten )

INTERNAL. Used by .writeBlocks().

device.writeBlocks( fromLBA, buffer, callback )

  • fromLBA: Number
  • buffer: Buffer
  • callback: function( err, bytesWritten )

new BlockDevice.Partition( device, options )

  • options: Object
    • firstLBA: Number, first logical block of partition
    • lastLBA: Number, last logical block of partition

get partition.blockSize -> Number

get partition.sectors -> Number, number of blocks in partition

get partition.size -> Number, size in bytes

partition.__OOB( lba )

  • lba: Number, logical block address

INTERNAL. Determines if a given LBA is out of bounds of the partition.

partition.readBlocks( from, to, buffer, callback )

  • from: Number
  • to: Number
  • buffer: Buffer
  • callback: function( err, buffer, bytesRead )

partition.writeBlocks( from, data, callback )

  • from: Number
  • data: Buffer
  • callback: function( err, bytesWritten )
You can’t perform that action at this time.