*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> i386/bad144 (8)              



NAME    [Toc]    [Back]

     bad144 - read/write DEC standard 144 bad sector information

SYNOPSIS    [Toc]    [Back]

     bad144 [-c] [-n] [-v] disk [snum [bad ...]]
     bad144 -a [-c] [-n] [-v] disk [bad ...]

DESCRIPTION    [Toc]    [Back]

     bad144 can be used to inspect the information  stored  on  a
disk that is
     used by the disk drivers to implement bad sector forwarding.

     The options are as follows:

     -a      The argument list consists of new bad sectors to  be
added to an
             existing  list.  The new sectors are sorted into the
list, which
             must be in order.  Replacement sectors are moved  to
             the  additions;  the  new  replacement  sectors  are

     -c      Forces an attempt to copy the old sector to the  replacement, and
             may be useful when replacing an unreliable sector.

     -n       Make  no  permanent changes.  Useful for debugging.
Implies -v.

     -v      The entire process is described  as  it  happens  in
gory detail if
             -v (verbose) is given.

     The  format  of the information is specified by DEC standard
144, as follows.
  The bad sector information is located in the first  5
even numbered
     sectors  of the last track of the disk pack.  There are five
     copies of the information, described by the dkbad structure.

     Replacement  sectors  are  allocated starting with the first
sector before
     the bad sector information and working backwards towards the
beginning of
     the  disk.  A maximum of 126 bad sectors are supported.  The
position of
     the bad sector in the bad sector table  determines  the  replacement sector
     to  which it corresponds.  The bad sectors must be listed in
ascending order.

     The bad sector information and replacement sectors are  conventionally only
  accessible  through  the  ``c'' file system partition of
disk.o.  If that
     partition is used for a file system, the user is responsible
for making
     sure  that it does not overlap the bad sector information or
any replacement
 sectors.  Thus, one track plus 126 sectors must be  reserved to allow
     use of all of the possible bad sector replacements.

     The bad sector structure is as follows:

     struct dkbad {
             long     bt_csn;          /* cartridge serial number
             u_short bt_mbz;          /* unused; should be 0 */
             u_short bt_flag;         /*  -1  =>  alignment  cartridge */
             struct bt_bad {
                   u_short bt_cyl;    /* bad sector cylinder number */
                   u_short bt_trksec; /* track and sector  number
             } bt_bad[126];

     Unused  slots  in  the bt_bad array are filled with all bits
set, a putatively
 illegal value.

     bad144 is invoked by giving a device  name  (e.g.,  ``hk0'',
``hp1'').  With
     no  optional arguments it reads the first sector of the last
track of the
     corresponding disk and prints out the  bad  sector  information.  It issues
     a  warning  if the bad sectors are out of order.  bad144 may
also be invoked
 with a serial number for the pack and a  list  of  bad
sectors.  It
     will  write  the supplied information into all copies of the
     file, replacing any previous  information.   Note,  however,
that bad144
     does  not arrange for the specified sectors to be marked bad
in this case.
     This procedure should only be used to restore known bad sector information
 which was destroyed.

     It  is  no longer necessary to reboot to allow the kernel to
reread the
     bad-sector table from the drive.

SEE ALSO    [Toc]    [Back]


HISTORY    [Toc]    [Back]

     The bad144 command appeared in 4.1BSD.

BUGS    [Toc]    [Back]

     It should be possible to format disks on-line under UNIX.

     It should be possible to mark bad sectors on drives  of  all

     On  an  11/750,  the standard bootstrap drivers used to boot
the system do
     not understand bad sectors, handle ECC errors, or  the  special SSE (skip
     sector)  errors of RM80-type disks.  This means that none of
these errors
     can occur when reading the file /bsd to boot.  Sectors  0-15
of the disk
     drive must also not have any of these errors.

     The  drivers which write a system core image on disk after a
crash do not
     handle errors; thus the crash dump area must be free of  errors and bad

OpenBSD      3.6                           June      6,      1993
[ Back ]
 Similar pages
Name OS Title
tee Linux read from standard input and write to standard output and files
AFreadmisc IRIX read from / write to / move logical read/write pointer for data in a miscellaneous chunk in an audio file
tis_write_unlock Tru64 Unlocks the specified read-write lock that was acquired for write access
tis_read_unlock Tru64 Unlocks a read-write lock that was acquired for read access
tis_write_lock Tru64 Acquires the specified read-write lock for write access
pthread_rwlock_wrlock Tru64 Acquires a read-write lock for write access
tis_read_lock Tru64 Acquires a read-write lock for read access
pthread_rwlock_rdlock Tru64 Acquires a read-write lock for read access
tis_read_trylock Tru64 Attempts to acquire a read-write lock for read access and does not wait if the lock cannot be immedi...
echo OpenBSD write arguments to the standard output
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service