|
|
1.1 root 1: .\" Copyright (c) 1980, 1988 Regents of the University of California.
2: .\" All rights reserved. The Berkeley software License Agreement
3: .\" specifies the terms and conditions for redistribution.
4: .\"
5: .\" @(#)bad144.8 6.6 (Berkeley) 6/24/90
6: .\"
7: .TH BAD144 8 "June 24, 1990"
8: .UC 4
9: .SH NAME
10: bad144 \- read/write dec standard 144 bad sector information
11: .SH SYNOPSIS
12: .B bad144
13: [
14: .B \-f
15: ] [
16: .B \-c
17: ] [
18: .B \-v
19: ]
20: disk
21: [ sno [
22: bad ...
23: ] ]
24: .br
25: .B bad144
26: .B \-a
27: [
28: .B \-f
29: ] [
30: .B \-c
31: ] [
32: .B \-v
33: ]
34: disk
35: [
36: bad ...
37: ]
38: .SH DESCRIPTION
39: .I Bad144
40: can be used to inspect the information stored on a disk that is used by
41: the disk drivers to implement bad sector forwarding. The format of
42: the information is specified by DEC standard 144, as follows.
43: .PP
44: The bad sector information is located in the first 5 even numbered sectors
45: of the last track of the disk pack. There are five identical copies of
46: the information, described by the
47: .I dkbad
48: structure.
49: .PP
50: Replacement sectors are allocated starting with the first sector before
51: the bad sector information and working backwards towards the beginning
52: of the disk. A maximum of 126 bad sectors are supported. The position
53: of the bad sector in the bad sector table determines the replacement
54: sector to which it corresponds.
55: The bad sectors must be listed in ascending order.
56: .PP
57: The bad sector information and replacement sectors are conventionally
58: only accessible through the ``c'' file system partition of the disk. If
59: that partition is used for a file system, the user is responsible for
60: making sure that it does not overlap the bad sector information or any
61: replacement sectors.
62: Thus, one track plus 126 sectors must be reserved to allow use
63: of all of the possible bad sector replacements.
64: .PP
65: The bad sector structure is as follows:
66: .PP
67: .ta .75i 1.5i 3.5i
68: .nf
69: struct dkbad {
70: long bt_csn; /* cartridge serial number */
71: u_short bt_mbz; /* unused; should be 0 */
72: u_short bt_flag; /* -1 => alignment cartridge */
73: struct bt_bad {
74: u_short bt_cyl; /* cylinder number of bad sector */
75: u_short bt_trksec; /* track and sector number */
76: } bt_bad[126];
77: };
78: .fi
79: .PP
80: Unused slots in the
81: .I bt_bad
82: array are filled with all bits set, a putatively
83: illegal value.
84: .PP
85: .I Bad144
86: is invoked by giving a device name (e.g. hk0, hp1, etc.).
87: With no optional arguments
88: it reads the first sector of the last track
89: of the corresponding disk and prints out the bad sector information.
90: It issues a warning if the bad sectors are out of order.
91: .I Bad144
92: may also be invoked with a serial number for the pack and a list
93: of bad sectors.
94: It will write the supplied information into all copies
95: of the bad-sector file, replacing any previous information.
96: Note, however, that
97: .I bad144
98: does not arrange for the specified sectors to be marked bad in this case.
99: This procedure should only be used to restore known bad sector information which
100: was destroyed.
101: .PP
102: With the
103: .B \-a
104: option,
105: the argument list consists of new bad sectors to be added to an existing
106: list.
107: The new sectors are sorted into the list,
108: which must have been in order.
109: Replacement sectors are moved to accommodate the additions;
110: the new replacement sectors are cleared.
111: The entire process is described as it happens in gory detail if
112: .B \-v
113: (verbose) is given.
114: The
115: .B \-c
116: option forces an attempt to copy the old sector to the replacement,
117: and may be useful when replacing an unreliable sector.
118: .PP
119: If the disk is an RP06, RM03, RM05, Fujitsu Eagle,
120: or SMD disk on a Massbus, the
121: .B \-f
122: option may be used to mark the new bad sectors as ``bad''
123: by reformatting them as unusable sectors.
124: This option is required unless the sectors have already been marked bad,
125: or the system will not be notified that it should use the replacement sector.
126: This option may be used while running multiuser; it is no longer necessary
127: to perform format operations while running single-user.
128: .PP
129: It is no longer necessary to reboot to allow the kernel
130: to reread the bad-sector table from the drive.
131: .SH SEE ALSO
132: badsect(8),
133: format(8V)
134: .SH BUGS
135: It should be possible to format disks on-line under UNIX.
136: .PP
137: It should be possible to mark bad sectors on drives of all type.
138: .PP
139: On an 11/750,
140: the standard bootstrap drivers used to boot the system do
141: not understand bad sectors,
142: handle ECC errors, or the special SSE (skip sector) errors of RM80-type disks.
143: This means that none of these errors can occur when reading the file
144: /vmunix to boot. Sectors 0-15 of the disk drive
145: must also not have any of these errors.
146: .PP
147: The drivers which write a system core image on disk after a crash do not
148: handle errors; thus the crash dump area must be free of errors and bad
149: sectors.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.