An extensible system is one that enables extensibility. Enabling extensibility means providing non-privileged mechanisms to extend existing objects and to introduce new objects. UNIX is generally not an extensible system as it does not generally facilitate the hooking of system calls. For instance, there is no way to hook into the virtual file system. This has motivated the introduction of separate, parallel interfaces by both the GNOME and KDE projects to provide users a more integrated view of their objects.
The Hurd introduces the concept of translators to let users hook into the virtual filesystem. We have translators that let ordinary users create their own ext2 filesystem, ftp filesystem, iso filesystem, http filesystem, etc. You can get started using the existing translators by reading the how to page.
The Hurd's extensibility is not just limited to the VFS. It is possible for users to have their own TCP/IP stack using the remap translator. Users can create their own personal firewall, run a personal auth server, or isolate untrusted applications inside a subhurd. The possibilities are endless!
External
- The Wikipedia article on extensibility