|
A computer program or routine is described as reentrant if it is designed in such a way that a single copy of the program's instructions in memory can be shared by multiple users or separate processes. The key to designing a reentrant program is to ensure that no portion of the program code is modified by the different users/processes, and that process-unique information (such as local variables) is kept in a separate area of memory that is distinct for each user or process.
FreeBSD, a derivative of the 4.4BSD-Lite, utilizes a massively reentrant VFS. One of the goals of DragonFlyBSD, a new BSD derivative branched off of FreeBSD, is to replace FreeBSD's reentrant VFS API with a threaded messaging API. See DragonFlyBSD's goals page (http://www.dragonflybsd.org/goals/vfsmodel.cgi) for more details.
Reentrant programming is key to many systems of multitasking. See thread-safe.
External links
|