Jeff Bonwick
Encyclopedia
Jeff Bonwick was a Sun Fellow at Sun Microsystems
, later a Vice President at Sun and then a Senior Software Architect at Oracle
until his departure from the company on 30 September 2010.
He led the team which developed ZFS
for Solaris.
Notable among Bonwick's other work is the slab allocator, an object-caching kernel memory allocator, and the LZJB
compression algorithm.
Bonwick published a blog, which details the development of ZFS.
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...
, later a Vice President at Sun and then a Senior Software Architect at Oracle
Oracle Corporation
Oracle Corporation is an American multinational computer technology corporation that specializes in developing and marketing hardware systems and enterprise software products – particularly database management systems...
until his departure from the company on 30 September 2010.
He led the team which developed ZFS
ZFS
In computing, ZFS is a combined file system and logical volume manager designed by Sun Microsystems. The features of ZFS include data integrity verification against data corruption modes , support for high storage capacities, integration of the concepts of filesystem and volume management,...
for Solaris.
Notable among Bonwick's other work is the slab allocator, an object-caching kernel memory allocator, and the LZJB
LZJB
LZJB is a lossless data compression algorithm invented by Jeff Bonwick to compress crash dumps and data in ZFS. It includes a number of improvements to the LZRW1 algorithm, a member of the Lempel-Ziv family of compression algorithms.-External links:* * *...
compression algorithm.
Bonwick published a blog, which details the development of ZFS.
Publications
- The Slab allocator: an object-caching kernel memory allocator
- Magazines and Vmem: extending the Slab allocator to many CPUs and arbitrary resources
- Real-World Concurrency
Patents
- (Application) Method and system for storing a sparse file using fill counts
- (Application) Multiple replication levels with pooled devices
- (Application) Hierarchical file system naming
- (Application) Method and system for repairing partially damaged blocks
- (Application) Adaptive resilvering I/O scheduling
- (Application) Method and system for adaptive metadata replication
- (Application) Method and system for metadata-based resilvering
- (Application) Method and system for pruned resilvering using a dirty time log
- (Application) Automatic intent log testing
- (Application) Input/output priority inheritance
- (Application) Unlimited file system snapshots and clones
- Mechanism for performing polling in a system
- Method and system for allocation of file descriptors
- Automatic conversion of all-zero data storage blocks into file holes
- Method and apparatus for I/O scheduling
- Method and system for detecting and correcting data errors using data permutations
- Method and system for I/O scheduler activations
- I/O dependency graphs
- Pipelined I/O execution
- Method and apparatus for identifying tampering of data in a file system
- Method and system for data replication
- Dynamic intent log
- Method and system using checksums to repair data
- Ditto blocks