From 1e67a761cbfa94a69cec2f5709d23d7983cd0fc1 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 25 Nov 2010 11:55:21 +0100 Subject: Talk about advantages, challenges, how many developers, why so few developers. --- advantages.mdwn | 71 ++++++++++++++++++ challenges.mdwn | 21 ++++++ .../gsoc/project_ideas/language_bindings.mdwn | 2 +- faq/how_many_developers.mdwn | 25 +++++++ faq/why_so_few_developers.mdwn | 27 +++++++ hurd/advantages.mdwn | 67 ----------------- hurd/challenges.mdwn | 16 ---- index.mdwn | 8 +- open_issues/benefits.mdwn | 86 --------------------- .../benefits_of_a_native_hurd_implementation.mdwn | 87 ++++++++++++++++++++++ ...implementing_hurd_on_top_of_another_system.mdwn | 45 +++++------ open_issues/multiprocessing.mdwn | 18 ++--- tag.mdwn | 5 ++ 13 files changed, 276 insertions(+), 202 deletions(-) create mode 100644 advantages.mdwn create mode 100644 challenges.mdwn create mode 100644 faq/how_many_developers.mdwn create mode 100644 faq/why_so_few_developers.mdwn delete mode 100644 hurd/advantages.mdwn delete mode 100644 hurd/challenges.mdwn delete mode 100644 open_issues/benefits.mdwn create mode 100644 open_issues/benefits_of_a_native_hurd_implementation.mdwn diff --git a/advantages.mdwn b/advantages.mdwn new file mode 100644 index 00000000..18e6506b --- /dev/null +++ b/advantages.mdwn @@ -0,0 +1,71 @@ +[[!meta copyright="Copyright © 2001, 2002, 2008, 2010 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]]."]]"""]] + +The GNU Hurd has a number of enticing features: + +It's free software, so anybody can use, modify, and redistribute it under the +terms of the [[GNU General Public License (GPL)|GPL]]. + +It's compatible as it provides a familiar programming and user environment. +For all intents and purposes, the Hurd provides the same facilities as a modern +[[Unix]]-like kernel. The Hurd uses the [[GNU C Library|glibc]], whose +development closely tracks standards such as ANSI/ISO, BSD, POSIX, Single Unix, +SVID, and X/Open. + +Unlike other popular kernel software, the Hurd has an object-oriented structure +that allows it to evolve without compromising its design. This structure will +help the Hurd undergo major redesign and modifications without having to be +entirely rewritten. + +The Hurd is built in a very modular fashion. Other Unix-like kernels (Linux, +for example) are also modular in that they allow loading (and unloading) some +components as kernel modules, but the Hurd goes one step further in that most +of the components that constitute the whole kernel are running as separate +user-space processes and are thus using different address spaces that are +isolated from each other. This is a multi-server design based on a +[[microkernel]]. It is not possible that a faulty memory dereference inside +the [[TCP/IP stack|hurd/translator/pfinet]] can bring down the whole kernel, +and thus the whole system, which is a real problem in a monolothic Unix kernel +architecture. + +One advantage of the Hurd's separation of kernel-like functionality into +separate components ([[servers|hurd/translator]]) is that these can be +constructed using different programming lanugages -- a feature that is not +easily possible in a monolithic kernel. Essentially, only an interface from +the programming environment to the [[RPC]] mechanism is required. (We have a +[[project proposal|community/gsoc/project_ideas/language_bindings]] for this, +if you're interested.) + + + +The Hurd is an attractive platform for learning how to become a kernel hacker +or for implementing new ideas in kernel technology. Every part of the system +is designed to be easily modified and extended. + +It is possible to develop and test new Hurd kernel components without rebooting +the machine. Running your own kernel components doesn't interfere with other +users, and so no special system privileges are required. The mechanism for +kernel extensions is secure by design: it is impossible to impose your changes +upon other users unless they authorize them or you are the system +administrator. + +The Hurd is real software that works right now. It is not a research project +or a proposal. You don't have to wait at all before you can [[start +using|hurd/running]] and [[developing|contributing]] it. + + diff --git a/challenges.mdwn b/challenges.mdwn new file mode 100644 index 00000000..5368ae4e --- /dev/null +++ b/challenges.mdwn @@ -0,0 +1,21 @@ +[[!meta copyright="Copyright © 2010 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]]."]]"""]] + +The GNU Hurd has a lot of [[advantages]], but there are challenges, too. + +Even though they're quite popular in the simpler embedded space, there is no +successful true multi-server [[microkernel]] system for general-purpose desktop +use yet. This is still an ongoing research effort. (TODO: add references.) + +Likewise, resource scheduling in distributed operating system kernels is a +research topic. For example, read more about it on the relevant [[Open Issues +page|open_issues/multiprocessing]]. + +TODO: more to come. [[!tag open_issue_documentation]] diff --git a/community/gsoc/project_ideas/language_bindings.mdwn b/community/gsoc/project_ideas/language_bindings.mdwn index 460b380b..c8a02390 100644 --- a/community/gsoc/project_ideas/language_bindings.mdwn +++ b/community/gsoc/project_ideas/language_bindings.mdwn @@ -20,7 +20,7 @@ However, in practice this is not as easy as it should, because creating translators and other servers is quite involved -- the interfaces for doing that are not exactly simple, and available only for C programs. Being able to easily create simple translators in RAD languages is highly desirable, to -really be able to reap the advantages of the Hurd architecture. +really be able to reap the [[advantages]] of the Hurd architecture. Originally Lisp was meant to be the second system language besides C in the GNU system; but that doesn't mean we are bound to Lisp. Bindings for any popular diff --git a/faq/how_many_developers.mdwn b/faq/how_many_developers.mdwn new file mode 100644 index 00000000..a553df21 --- /dev/null +++ b/faq/how_many_developers.mdwn @@ -0,0 +1,25 @@ +[[!meta copyright="Copyright © 2010 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="How many developers are working on the GNU Hurd?"]] + +Not many. One handful work on it in their free time, and another two +handful do help with [[Debian GNU/Hurd|hurd/running/debian]] and +[[hurd/running/Arch_Hurd]] packaging. Also, an additional handful of +former developers are still availble for answering technical questions, +but are not really participating in the current development anymore. + +For reaching out to new developers, we're participating in [[Google's +Summer of Code program|community/gsoc]]. Likewise, any interested party +(*you*!) are very welcome to start [[contributing]]. Mentoring is +possible, too, to help you get started. + +Continue reading some speculation about [[why so few developers]] are working +on the GNU Hurd. diff --git a/faq/why_so_few_developers.mdwn b/faq/why_so_few_developers.mdwn new file mode 100644 index 00000000..a2740abc --- /dev/null +++ b/faq/why_so_few_developers.mdwn @@ -0,0 +1,27 @@ +[[!meta copyright="Copyright © 2010 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="Why are there so few developers working on the GNU +Hurd?"]] + +[[There aren't working a lot of people on the GNU +Hurd|how_many_developers]]. Why is this? + +We can only speculate. One major problem might be that the +[[architectural benefits|advantages]] are generally perceived as very +abstract, with little practical benefits. We don't have many tools to +present actually making use of the possibilities. + +Another reason is that it's been taking too long. Most people don't +believe it will ever be ready for production use, and thus would consider +involvement a waste of time. This latter point is invalid, of course, as +learning can never be a waste of time. The same holds for the +[[challenges]] raised by the GNU Hurd -- we can only learn and improve +upon working on them. diff --git a/hurd/advantages.mdwn b/hurd/advantages.mdwn deleted file mode 100644 index 254e33f6..00000000 --- a/hurd/advantages.mdwn +++ /dev/null @@ -1,67 +0,0 @@ -[[!meta copyright="Copyright © 2001, 2002, 2008, 2010 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]]."]]"""]] - -The GNU Hurd has a number of enticing features: - -It's free software, so anybody can use, modify, and redistribute it under the -terms of the [[GNU General Public License (GPL)|GPL]]. - -It's compatible as it provides a familiar programming and user environment. -For all intents and purposes, the Hurd provides the same facilities as a modern -Unix-like kernel. The Hurd uses the [[GNU C Library|glibc]], whose development -closely tracks standards such as ANSI/ISO, BSD, POSIX, Single Unix, SVID, and -X/Open. - -Unlike other popular kernel software, the Hurd has an object-oriented structure -that allows it to evolve without compromising its design. This structure will -help the Hurd undergo major redesign and modifications without having to be -entirely rewritten. - -The Hurd is built in a very modular fashion. Other Unix-like kernels (Linux, -for example) are also modular in that they allow loading (and unloading) some -components as kernel modules, but the Hurd goes one step further in that most -of the components that constitute the whole kernel are running as separate -user-space processes and are thus using different address spaces that are -isolated from each other. This is a multi-server design based on a -[[microkernel]]. It is not possible that a faulty memory dereference inside -the [[TCP/IP stack|translator/pfinet]] can bring down the whole kernel, and -thus the whole system, which is a real problem in a monolothic Unix kernel -architecture. - -One advantage of the Hurd's separation of kernel-like functionality into -separate components ([[servers|translator]]) is that these can be constructed -using different programming lanugages -- a feature that is not easily possible -in a monolithic kernel. Essentially, only an interface from the programming -environment to the [[RPC]] mechanism is required. - - - -The Hurd is an attractive platform for learning how to become a kernel hacker -or for implementing new ideas in kernel technology. Every part of the system -is designed to be easily modified and extended. - -It is possible to develop and test new Hurd kernel components without rebooting -the machine. Running your own kernel components doesn't interfere with other -users, and so no special system privileges are required. The mechanism for -kernel extensions is secure by design: it is impossible to impose your changes -upon other users unless they authorize them or you are the system -administrator. - -The Hurd is real software that works right now. It is not a research project -or a proposal. You don't have to wait at all before you can [[start -using|running]] and [[developing|contributing]] it. diff --git a/hurd/challenges.mdwn b/hurd/challenges.mdwn deleted file mode 100644 index 640b95c9..00000000 --- a/hurd/challenges.mdwn +++ /dev/null @@ -1,16 +0,0 @@ -[[!meta copyright="Copyright © 2010 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]]."]]"""]] - - - -The GNU Hurd has a lot of [[advantages]], but there are challenges, too. - -There is no successful true multi-server [[microkernel]] system for desktop use -yet. Though, they are quite popular in the simpler embedded space. diff --git a/index.mdwn b/index.mdwn index 249b2091..9520a438 100644 --- a/index.mdwn +++ b/index.mdwn @@ -31,7 +31,7 @@ computing environment as possible. --- -[[!toc]] +[[!toc levels=2]] ## News @@ -122,6 +122,12 @@ For more details, please read our writeup on the [[current_state_of_the_GNU_Hurd|hurd/status]]. +### Advantages and Challenges + +The GNU Hurd operating system design provides [[advantages]], but uncovers new +[[challenges]], too. + + ## How is this site arranged? The menu on the upper right corner provides a rough structuring about the diff --git a/open_issues/benefits.mdwn b/open_issues/benefits.mdwn deleted file mode 100644 index da1248c8..00000000 --- a/open_issues/benefits.mdwn +++ /dev/null @@ -1,86 +0,0 @@ -[[!meta copyright="Copyright © 2010 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]]."]]"""]] - -[[!tag open_issue_documentation]] - -What are the benefits of a native GNU/Hurd system, now that Linux et al. can do -so much (think [[hurd/translator]]s: FUSE, [[hurd/subhurd]]s: User-Mode-Linux, -etc.). - -It is possible to begin [[implementing_Hurd_on_top_of_another_system]], but... - -IRC, #hurd, August / September 2010 - - ArneBab: but Neal and I were not happy with that alone. We were - looking for deeper improvements to the system, for, I think, sound reasons. - That is what brought us to the L4/Coyotos technologies - ArneBab: as you are writing a kernel in user space, you can still do - kernel improvements there - ArneBab: if you take it very far, you end up with a kernel that runs - Linux in user space (just flip the two) for the drivers - ArneBab: that is what the L4 people did with the DDE - -([[DDE]]) - - ArneBab: so, with these different cuts, there are different - opportunities. on the one end, you can run Linux as normal and get some of - the Hurd features such as translators in some programs. At the other end, - you can do whatever you want and run some linux code for the drivers or none - at all. - ArneBab: one of the big questions then becomes: at which point can - the advantages offered by the Hurd be realized? - ArneBab: and that's not entirely clear to me - when I worked on this with Neal, we pushed further and further into - need-to-change-everything land - while the current efforts on the Hurd seem to be more equivalent to - the could-run-it-in-userspace-on-top-of-Linux camp - marcusb: for that I think we need a way to move towards them step by - step. Would it be possible to get the advantages of better resource - allocation with a Viengoos in userspace, too? - and when that is stable, just switch over? - ArneBab: I don't know. I suspect these people will know before us: - http://lxc.sourceforge.net/ - something like implementing flip points: flip Linux with Hurd to Hund - with Linux. Flip Mach with L4 to L4 with Mach. - lxc sounds interesting. - note that these efforts address security concerns more than other - concerns - so they will get isolation long before sharing is even considered - but some of the issues are the same - once you allow malware to do what it wants, it's a small step to also - allow the user to what he wants :) - it kinda looks like hacking it where it doesn’t really fit again… - there I ask myself when the point comes that doing a cleaner design - offsets the popularity - they are pushing more and more stuff into userspace - which is a good thing (to me) - it’s hard to clearly describe how, but even though I like having more - stuff in userspace, the way it is bolted onto Linux doesn’t feel good for me. - FUSE is cool, but if I use it, I am at a disadvantage compared to a - non-fuse user - while in the Hurd, these additional options are on eqal footing. - ArneBab: are they pushing more and more into user space? I don't - think so. I see more of the reverse, actually - or maybe both - FUSE, lxd and scheduling in userspace move to userspace - well, KMS moved to the kernel - to avoid flickering when switching between X and the console? - marcusb: Do you experience FUSE lxc and such being secondclass in - Linux, too, or is that just a strange feeling of me? - marcusb: and that splits the users into those who can get stuff into - the kernel and those who can only work in userspace – which I don’t really - like. - That’s one more advantage of the Hurd: eqal footing for all (except - the Mach hackers, but they have a very limited terrain) - ArneBab: but UML kernel module is minimal, and Linus didn't have a - principled objection to it (but just wanted a more general solution) - ArneBab: as a side note, although people keep complaining, the linux - kernel seems to be growing steadily, so getting stuff into the kernel doesn't - seem too hard. 8-O diff --git a/open_issues/benefits_of_a_native_hurd_implementation.mdwn b/open_issues/benefits_of_a_native_hurd_implementation.mdwn new file mode 100644 index 00000000..34e49e86 --- /dev/null +++ b/open_issues/benefits_of_a_native_hurd_implementation.mdwn @@ -0,0 +1,87 @@ +[[!meta copyright="Copyright © 2010 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]]."]]"""]] + +[[!tag open_issue_documentation]] + +What are the benefits of a native GNU/Hurd system, now that Linux et al. can do +so much? Think [[hurd/translator]]s: FUSE, [[hurd/subhurd]]s: User-Mode-Linux +and other virtualization techiques, and so on. + +It is possible to begin [[implementing_Hurd_on_top_of_another_system]], but... + +IRC, #hurd, August / September 2010 + + ArneBab: but Neal and I were not happy with that alone. We were + looking for deeper improvements to the system, for, I think, sound + reasons. That is what brought us to the L4/Coyotos technologies + ArneBab: as you are writing a kernel in user space, you can still + do kernel improvements there + ArneBab: if you take it very far, you end up with a kernel that + runs Linux in user space (just flip the two) for the drivers + ArneBab: that is what the L4 people did with the DDE + +([[DDE]]) + + ArneBab: so, with these different cuts, there are different + opportunities. on the one end, you can run Linux as normal and get some + of the Hurd features such as translators in some programs. At the other + end, you can do whatever you want and run some linux code for the drivers + or none at all. + ArneBab: one of the big questions then becomes: at which point + can the advantages offered by the Hurd be realized? + ArneBab: and that's not entirely clear to me + when I worked on this with Neal, we pushed further and further + into need-to-change-everything land + while the current efforts on the Hurd seem to be more equivalent + to the could-run-it-in-userspace-on-top-of-Linux camp + marcusb: for that I think we need a way to move towards them step + by step. Would it be possible to get the advantages of better resource + allocation with a Viengoos in userspace, too? + and when that is stable, just switch over? + ArneBab: I don't know. I suspect these people will know before + us: http://lxc.sourceforge.net/ + something like implementing flip points: flip Linux with Hurd to + Hund with Linux. Flip Mach with L4 to L4 with Mach. + lxc sounds interesting. + note that these efforts address security concerns more than other + concerns + so they will get isolation long before sharing is even considered + but some of the issues are the same + once you allow malware to do what it wants, it's a small step to + also allow the user to what he wants :) + it kinda looks like hacking it where it doesn’t really fit again… + there I ask myself when the point comes that doing a cleaner + design offsets the popularity + they are pushing more and more stuff into userspace + which is a good thing (to me) + it’s hard to clearly describe how, but even though I like having + more stuff in userspace, the way it is bolted onto Linux doesn’t feel + good for me. + FUSE is cool, but if I use it, I am at a disadvantage compared to + a non-fuse user + while in the Hurd, these additional options are on eqal footing. + ArneBab: are they pushing more and more into user space? I don't + think so. I see more of the reverse, actually + or maybe both + FUSE, lxd and scheduling in userspace move to userspace + well, KMS moved to the kernel + to avoid flickering when switching between X and the console? + marcusb: Do you experience FUSE lxc and such being secondclass in + Linux, too, or is that just a strange feeling of me? + marcusb: and that splits the users into those who can get stuff + into the kernel and those who can only work in userspace – which I don’t + really like. + That’s one more advantage of the Hurd: eqal footing for all + (except the Mach hackers, but they have a very limited terrain) + ArneBab: but UML kernel module is minimal, and Linus didn't have + a principled objection to it (but just wanted a more general solution) + ArneBab: as a side note, although people keep complaining, the + linux kernel seems to be growing steadily, so getting stuff into the + kernel doesn't seem too hard. 8-O diff --git a/open_issues/implementing_hurd_on_top_of_another_system.mdwn b/open_issues/implementing_hurd_on_top_of_another_system.mdwn index 1d7a1e50..7e88e322 100644 --- a/open_issues/implementing_hurd_on_top_of_another_system.mdwn +++ b/open_issues/implementing_hurd_on_top_of_another_system.mdwn @@ -21,8 +21,8 @@ IRC, #hurd, August / September 2010 silver_hook: the Hurd can also refer to the interfaces of the filesystems etc, and a lot of that is really just server/client APIs that - could be implemented on any system that has transferable rights to message - capabilities. + could be implemented on any system that has transferable rights to + message capabilities. silver_hook: it's surprising how few systems *have* transferable rights, though! silver_hook: usually it is added as an afterthought @@ -33,23 +33,24 @@ IRC, #hurd, August / September 2010 youpi: it's described in the Stevens series even [...] ArneBab: well, let me put it this way. the Linux kernel has no - interface to manipulate another tasks's virtual address space, ie you can't - map/unmap stuff in another process - ArneBab: you would have to use ptrace and load some stub code in that - process to make that happen. - ArneBab: so for complete transparent manipulation, you need a kernel - module + interface to manipulate another tasks's virtual address space, ie you + can't map/unmap stuff in another process + ArneBab: you would have to use ptrace and load some stub code in + that process to make that happen. + ArneBab: so for complete transparent manipulation, you need a + kernel module that is what the User Mode Linux kernel module does - ArneBab: so say you use the User Mode Linux kernel module for that - one feature. Then you can do everything that User Mode Linux can do, which, - I assure you, includes running subhurds :) + ArneBab: so say you use the User Mode Linux kernel module for + that one feature. Then you can do everything that User Mode Linux can + do, which, I assure you, includes running subhurds :) it can be a bit tricky to implement those features, but it is not harder than writing a kernel in the first place - So, if I got an admin to install User Mode Linux and Mach emulation, - I’d get the flexibility (and independence from admin decisions) I have in the - Hurd? - ArneBab: one problem is that you still use Linux. For those who want - to get rid of Linux for political reasons, that would mean complete failure + So, if I got an admin to install User Mode Linux and Mach + emulation, I’d get the flexibility (and independence from admin + decisions) I have in the Hurd? + ArneBab: one problem is that you still use Linux. For those who + want to get rid of Linux for political reasons, that would mean complete + failure ArneBab: if you have UML kernel module, you can implement Mach in user space ArneBab: in fact, John Tobey did this a couple of years ago, or @@ -57,10 +58,10 @@ IRC, #hurd, August / September 2010 ([[tschwinge]] has tarballs of John's work.) - ArneBab: or you can just implement parts of it and relay to Linux for - the rest - the point is, that if you don't care for kernel improvements, and are - sufficiently happy with the translator stuff, it's not hard to bring the Hurd - to Linux or BSD + ArneBab: or you can just implement parts of it and relay to Linux + for the rest + the point is, that if you don't care for kernel improvements, and + are sufficiently happy with the translator stuff, it's not hard to bring + the Hurd to Linux or BSD -(Continue: [[benefits]].) +Continue reading about the [[benefits of a native Hurd implementation]]. diff --git a/open_issues/multiprocessing.mdwn b/open_issues/multiprocessing.mdwn index 7b4f2611..224c0826 100644 --- a/open_issues/multiprocessing.mdwn +++ b/open_issues/multiprocessing.mdwn @@ -11,7 +11,7 @@ License|/fdl]]."]]"""]] [[!tag open_issue_hurd]] We would expect that fine-grained, compartmentalized systems, that is, -microkernel-based multi-server systems in particular, would be ideal condidates +microkernel-based multi-server systems in particular, would be ideal candidates for applying multiprocessing. That is, however, only true from a first and inexperienced point of view: there are many difficulties. @@ -19,14 +19,14 @@ inexperienced point of view: there are many difficulties. IRC, #hurd, August / September 2010 silver_hook: because multi-server systems depend on inter-process - communication, and inter-process communication is many times more expensive - across cpus - silver_hook: so you either force interrelated work on the same cpu, - or suffer heavy penalties. and in a typical fine-grained object system, all - objects are interconnected! - silver_hook: resources in today's systems, even in a single node with - one cpu, but more so in a network, are very non-uniform. scheduling these - resources efficiently is a huge problem. restricting the resource + communication, and inter-process communication is many times more + expensive across cpus + silver_hook: so you either force interrelated work on the same + cpu, or suffer heavy penalties. and in a typical fine-grained object + system, all objects are interconnected! + silver_hook: resources in today's systems, even in a single node + with one cpu, but more so in a network, are very non-uniform. scheduling + these resources efficiently is a huge problem. restricting the resource distribution policies in the way microkernel systems tend to do is posing serious research challenges diff --git a/tag.mdwn b/tag.mdwn index e96e88d5..6051de3b 100644 --- a/tag.mdwn +++ b/tag.mdwn @@ -23,6 +23,11 @@ Most of them should be self-explanatory. GNU/Hurd|hurd/running/debian]] distribution, but not yet in the upstream sources. + * *open_issue_documentation* + + Use for tagging pages / items that need to be handled / improved for + documentation purposes. + * *open_issue_porting* A list of open issues in porting software to run on GNU/Hurd systems. This -- cgit v1.2.3