Lines Matching +full:hardware +full:- +full:wise
1 .\" ----------------------------------------------------------------------------
2 .\" "THE BEER-WARE LICENSE" (Revision 42):
5 .\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
6 .\" ----------------------------------------------------------------------------
13 - or -
17 Poul-Henning Kamp <phk@FreeBSD.org>
22 they they left the file-system layer were logical sub disk implementation
27 able to co-exist with other operating systems on the same disk.
31 were implemented in separate hardware they increasingly migrate into
37 This paper contains the road-map for a stackable "BIO" system in
44 of struct buf, it is a most enlightening case of not exactly bit-rot
45 but more appropriately design-rot.
93 If we step forward to the BSD 4.4-Lite-2 release, struct buf has grown
140 aspect, link buffers to the VM system, provide hacks for file-systems
210 of code have emerged which need to do non-trivial translations of
217 routine (p. 16-2) writes \fIThe code in this procedure incorporates
234 of hardware, they allocate new struct buf data structures populates
321 opposed to "hi-jacked" fields).
322 One field was found to have "dual-use": the b_flags field.
411 which means that certain pieces of code can be left un-converted with the
413 The ccd and vinum modules have been left un-converted like this for now.
415 This is basically where FreeBSD-current stands today.
439 Retaining the aliasing for the b_* and bio_* name-spaces this way
443 into the drivers to full-fill the I/O request and this provides us
444 with a single isolated location for performing non-trivial translations.
448 on-disk location of the data. b_blkno is a 32bit offset of B_DEVSIZE
450 of data. Using b_offset as a 64 bit byte-address would not only allow
452 possible to accommodate disks which use non-power-of-two sector-size,
453 Audio CD-ROMs for instance.
467 Another possible transition could be to not have a "built-in" struct bio
470 un-alias the fields and have DEV_STRATEGY() allocate a struct bio and populate
484 In traditional UNIX semantics a "disk" is a one-dimensional array of
486 …lemented with a sort of "don't ask-don't tell" policy where system administrator would specify a l…
492 \(bu What is the sector size. Sector-size these days may not be a power
500 devices where a wear-distribution software or hardware function uses
504 \(bu Is opening this device in a specific mode, (read-only or read-write)
505 allowed. The VM system and the file-systems generally assume that nobody
510 This is useful for staying compatible with badly designed on-disk formats
515 at any time. While some devices like CD-ROMs can lock the media in
521 Mirroring, RAID, striping, interleaving, disk-labels and sub-disks, all of
527 all hard to emulate so implementation-wise this is a non-issue.
546 DML: box dashed width 4i height .9i with .sw at SL0.sw + (-.2,-.2)
547 "Disk-mini-layer" with .n at DML.s + (0, .1)
628 The first thing we notice is that the disk mini-layer is gone, instead
643 A number of the geometry modules have registered as "auto-discovering"
681 on, but this is probably better implemented in a general "device-daemon"
682 in user-land.
685 accessed from user-land or kernel. The VM and file-systems generally
717 Now, the user ejects the ZIP disk. If the hardware can give a notification
718 of intent to eject, a call-up from the driver can try to get devices synchronised
719 and closed, this is pretty trivial. If the hardware just disappears like
720 a unplugged parallel zip drive, a floppy disk or a PC-card, we have no
724 the two mounted file-systems which in turn unmounts forcefully, invalidates
766 file-systems mounted are not affected.
788 \(bu The disk-mini-layer has
790 majority of the disk-drivers, saving on average 100 lines of code per
812 The next step is to re-implement the monolithic disk-mini-layer so
815 the current and the new disk-mini-layer. The new implementation
824 BIO system: CCD can be re-implemented as a mirror module and a stripe
825 module. Vinum can be integrated either as one "macro-module" or
827 purposes can be added, sub-disk handling for Solaris, MacOS, etc