From: bdheeman Date: Mon, 22 Nov 2010 21:29:09 +0000 (-0800) Subject: replaced mechanic with mechanism X-Git-Url: https://gitweb.dragonflybsd.org/ikiwiki.git/commitdiff_plain/d930ff1be6732ff6601c30b175f0b60e1e6d4f8f replaced mechanic with mechanism --- diff --git a/features/index.mdwn b/features/index.mdwn index b7334df9..9d3d82ff 100644 --- a/features/index.mdwn +++ b/features/index.mdwn @@ -8,7 +8,7 @@ Please keep in mind that major modifications have been made to nearly the entire * The scheduler abstraction has been split up into two layers. The LWKT (Light Weight Kernel Thread) scheduler is used by the kernel to schedule all executable entities. The User Thread Scheduler is a separate scheduler which selects one user thread at a time for each cpu and schedules it using the LWKT scheduler. Both scheduler abstractions are per-cpu but the user thread scheduler selects from a common list of runnable processes. -* The User Thread Scheduler further abstracts out user threads. A user process contains one or more LWP (Light Weight Process) entities. Each entity represents a user thread under that process. The old rfork() mechanic still exists but is no longer used. The threading library uses LWP-specific calls. +* The User Thread Scheduler further abstracts out user threads. A user process contains one or more LWP (Light Weight Process) entities. Each entity represents a user thread under that process. The old rfork() mechanism still exists but is no longer used. The threading library uses LWP-specific calls. * The kernel memory allocator has two abstracted pieces. The basic kernel malloc is called kmalloc() and is based on an enhanced per-cpu slab allocator. This allocator is essentially lockless. There is also an object-oriented memory allocator in the kernel called objcache which is designed for high volume object allocations and deallocations and is also essentially lockless. @@ -16,13 +16,13 @@ Please keep in mind that major modifications have been made to nearly the entire * VKERNEL - DragonFly implements a virtual kernel feature for running DragonFly kernels in userland inside DragonFly kernels. This works similarly to Usermode Linux and allows DragonFly kernels to be debugged as a userland process. The primary use is to make kernel development easier. -* NFS V3 RPC Asynchronization - DragonFly sports a revamped NFSv3 implementation which gets rid of the nfsiod threads and implements a fully asynchronous RPC mechanic using only two kernel threads. The new abstraction fixes numerous stalls in the I/O path related to misordered read-ahead requests. +* NFS V3 RPC Asynchronization - DragonFly sports a revamped NFSv3 implementation which gets rid of the nfsiod threads and implements a fully asynchronous RPC mechanism using only two kernel threads. The new abstraction fixes numerous stalls in the I/O path related to misordered read-ahead requests. * Disk I/O scheduler framework (dsched) - DragonFly implements a disk scheduler framework controlled by a set of sysctls and a fair-queue disk scheduler module. The ioprio utility may then be used to control I/O priorities on a process-by-process basis. ## HAMMER - DragonFly Filesystem -HAMMER is the DragonFly filesystem, replacing UFS. HAMMER supports up to an Exabyte of storage, implements a fast UNDO/REDO FIFO for fsync(), recovers instantly on boot after a crash (no fsck), and implements a very sophisticated fine-grained historical access and snapshot mechanic. HAMMER also sports an extremely robust streaming, queueless master->multiple-slave mirroring capability which is also able to mirror snapshots and other historical data. +HAMMER is the DragonFly filesystem, replacing UFS. HAMMER supports up to an Exabyte of storage, implements a fast UNDO/REDO FIFO for fsync(), recovers instantly on boot after a crash (no fsck), and implements a very sophisticated fine-grained historical access and snapshot mechanism. HAMMER also sports an extremely robust streaming, queueless master->multiple-slave mirroring capability which is also able to mirror snapshots and other historical data. All non-temporary HAMMER filesystems in DragonFly automatically maintain 60 days worth of 1-day snapshots and 1-day worth of fine-grained (30-second) snapshots.