diff options
Diffstat (limited to 'community/weblogs/antrik/plan9-and-the-hurd-major-differences.mdwn')
-rw-r--r-- | community/weblogs/antrik/plan9-and-the-hurd-major-differences.mdwn | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/community/weblogs/antrik/plan9-and-the-hurd-major-differences.mdwn b/community/weblogs/antrik/plan9-and-the-hurd-major-differences.mdwn new file mode 100644 index 00000000..9e6143bf --- /dev/null +++ b/community/weblogs/antrik/plan9-and-the-hurd-major-differences.mdwn @@ -0,0 +1,50 @@ +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!meta title="Major differences between Plan9 and the Hurd"]] + +There are some similarities between the Hurd and Plan 9 regarding the file +system handling -- but there are also very fundamental differences which go +far beyond monolithic vs. microkernel design: + +- The Hurd is UNIX (POSIX) compatible + +- While (almost) all services are attached to the file system tree, not + all services actually export a file system interface! + + Personally, I advocate using FS-based interfaces as much as possible. + Yet, there are some cases where they get very awkward and/or + inefficient, and domain-specific interfaces simply make a lot more + sense. + + Also, some Hurd services are indeed used to implement the file systems + in the first place -- they work below the FS level, and obviously + can't use an FS interface! + +- File systems are completely decentralized -- clients always talk to + the FS servers directly, without any central VFS layer. (I don't think + that's the case in Plan 9?) + + This offers much more flexibility -- the way the FS interfaces + themselves work can be modified. Many things can be implemented as + normal translators, that would require special VFS support on other + systems. (Extended attributes, VFS-based union mounts, local + namespaces, firmlink, magic file name suffixes etc.) + +- The system design allows users and applications to change almost all + aspects of the system functionality in the local environment easily + and without affecting other parts of the system. + + (This is possible with Plan 9 to some extent; but the Hurd allows it + at a much lower level -- including stuff like the filesystem + interfaces, access control mechanisms, program execution and process + management, and so on.) + +I hope I didn't forget any major differences... |