summaryrefslogtreecommitdiff
path: root/hurd
diff options
context:
space:
mode:
Diffstat (limited to 'hurd')
-rw-r--r--hurd/faq/which_microkernel.mdwn81
-rw-r--r--hurd/ng.mdwn2
-rw-r--r--hurd/running/live_cd.mdwn4
-rw-r--r--hurd/running/qemu.mdwn6
-rw-r--r--hurd/subhurd.mdwn48
5 files changed, 57 insertions, 84 deletions
diff --git a/hurd/faq/which_microkernel.mdwn b/hurd/faq/which_microkernel.mdwn
deleted file mode 100644
index c5026afa..00000000
--- a/hurd/faq/which_microkernel.mdwn
+++ /dev/null
@@ -1,81 +0,0 @@
-[[!meta copyright="Copyright © 2009, 2011 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="What happened to the L4 / Coyotos / Viengoos microkernels?"]]
-
-L4 was promising but happened to not be suitable for implementing a general-purpose operating system on top of it. See [[history/port_to_l4]] for the historical details.
-
-Coyotos is abandoned upstream
-
-Neal Walfield started working on a newly designed kernel called [[viengoos|microkernel/viengoos]]. Unfortunately, he currently lacks time and the projects it paused.
-
-In the meanwhile, people are thus continuing with [[microkernel/mach]].
-
----
-
-IRC, #hurd, 2011-01-12.
-
-[[!taglink open_issue_documentation]]
-
- <Pete-J> Hello i am just curious of the development of Hurd - what's the
- current mission on the microkernel i see projects like l4 and viengoos,
- will one of these projects replace Mach? or will you stick with Mach
- <Pete-J> as i understand is that Mach is a first generation microkernel
- that's very old in design and causes alot of issues
- <Pete-J> that's where l4 and viengoos comes in - they are trying to be the
- next generation Mach - am i correct?
- <neal> l4 is not a drop in replacement for Mach
- <neal> it doesn't actually do much resource management
- <neal> for instance, you still have to implement a memory manager
- <neal> this is where several issues are with Mach
- <neal> l4 doesn't address those issues; it punts to the operating system
- <Pete-J> and what about viengoos?
- <neal> it's unfinished
- <neal> and it implemented some untested ideas
- <neal> i.e., parts of viengoos were research
- <neal> there has not been a sufficient evaluation of those ideas to
- determine whether they are a good approach
- <Pete-J> meaning that viengoos is a research kernel that could aid Mach?
- <neal> I'm not sure I understand your question
- <Pete-J> Well is viengoos trying to be a replacement for Mach, or will
- viengoos be an experiment of new ideas that could be implemented in Mach?
- <Pete-J> i am sorry for my limited english
- <neal> viengoos was designed with a Hurd-like user-land in mind
- <neal> in that sense it was a Mach replacement
- <neal> (unlike L4)
- <neal> viengoos consisted of a few experiments
- <neal> one could implement them in mach
- <neal> but it would require exposing new interfaces
- <neal> in which case, I'm not sure you could call the result Mach
- <Pete-J> Well as i understand you develop two microkernels side by side,
- wouldnt it be more effective to investigate viengoos more and maybe move
- the focus to viengoos?
- <antrik> no
- <antrik> having something working all the time is crucial
- <antrik> it's very hard to motivate people to work on a project that might
- be useful, in a couple of years, perhaps...
- <Pete-J> Well Mach is meant to be replaced one day - i see no reason to
- keep on developing it just because it works at this moment
- <Pete-J> *if Mach is meant to be replaced
- <antrik> it's not at all clear that it will be replaced by something
- completely different. I for my part believe that modifying the existing
- Mach is a more promising approach
- <Pete-J> as i understand man power is something you need - and by spreading
- out the developers just makes the progress more slow
- <antrik> but even if it *were* to be replaced one day, it doesn't change
- the fact that we need it *now*
- <antrik> all software will be obsolete one day. doesn't mean it's not worth
- working on
- <antrik> the vast majority of work is not on the microkernel anyways, but
- on the system running on top of it
- <Pete-J> ahh i see
- <antrik> manpower is not something that comes from nowhere. again, having
- something working is crucial in a volunteer project like this
- <antrik> there are no fixed plans
diff --git a/hurd/ng.mdwn b/hurd/ng.mdwn
index de33949d..481386a4 100644
--- a/hurd/ng.mdwn
+++ b/hurd/ng.mdwn
@@ -13,7 +13,7 @@ This section explains the motivations behind the new design:
* [[Issues_with_L4_Pistachio]]
* [[Limitations_of_the_original_Hurd_design]]
- * History of the [[history/port_to_L4]]
+ * History of the [[history/port_to_another_microkernel]]
# Work already done
diff --git a/hurd/running/live_cd.mdwn b/hurd/running/live_cd.mdwn
index 42d85c5b..c9360594 100644
--- a/hurd/running/live_cd.mdwn
+++ b/hurd/running/live_cd.mdwn
@@ -1,4 +1,6 @@
-You can download a gzipped iso of a Hurd Live CD at
+[[Arch Hurd|hurd/running/arch_hurd/]] offers Hurd LiveCDs at <http://www.archhurd.org/gethurd.php>.
+
+Also you can download a gzipped iso of a Hurd Live CD at
<http://www.superunprivileged.org/hurd/live-cd/>.
The Superunpriveleged crew also offers a tiny Hurd Live CD that is under 10
diff --git a/hurd/running/qemu.mdwn b/hurd/running/qemu.mdwn
index c5b2cf1c..141ab2b1 100644
--- a/hurd/running/qemu.mdwn
+++ b/hurd/running/qemu.mdwn
@@ -27,6 +27,12 @@ Also you can use qemu to easily try one of our [[Hurd_LiveCDs|hurd/running/live_
# What is Needed to create a QEMU image
+## Debian Installer
+
+Instructions for creating a qemu image from the install CDs from debian installer can be found in the README alongside the d-i Hurd images: <http://people.debian.org/~sthibault/hurd-i386/installer/cdimage/>
+
+## Old method
+
1. First thing is to install [[/QEMU]].
2. A [[grub]] boot disk for the floppy disk image needed for booting. The [0\.97 version](ftp://alpha.gnu.org/gnu/grub/grub-0.97-i386-pc.ext2fs) works fine. I downloaded it and renamed to `floppy.img`. Alternatively, the Debian grub-disk package (up till version 0.97-28) is fine as well.
3. You will need a [Debian/Hurd installation CD](http://www.debian.org/ports/hurd/hurd-cd). K16 works fine.
diff --git a/hurd/subhurd.mdwn b/hurd/subhurd.mdwn
index cb4a40a8..b8e595d3 100644
--- a/hurd/subhurd.mdwn
+++ b/hurd/subhurd.mdwn
@@ -1,4 +1,4 @@
-[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation,
+[[!meta copyright="Copyright © 2007, 2008, 2010, 2011 Free Software Foundation,
Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
@@ -21,6 +21,8 @@ possible to use [[debugging/gdb/noninvasive_debugging]], but this is less
flexible.) Vice versa, it is also possible to use a subhurd to debug the
*main* Hurd system, for example, the latter's root file system.
+[[!toc levels=2]]
+
# Howto
@@ -139,3 +141,47 @@ translator|translator/ext2fs]]'s [[PID]], but this is no problem, as currently
[[PID]]s are visible across subhurd boundaries. (It is a [[!taglink
open_issue_hurd]] whether this is the right thing to do in
[[open_issues/virtualization]] contexts, but that's how it currently is.)
+
+
+<a name="unit_testing"></a>
+## Unit Testing
+
+freenode, #hurd channel, 2011-03-06:
+
+From [[open_issues/unit_testing]].
+
+ <youpi> it could be interesting to have scripts that automatically start a
+ sub-hurd to do the tests
+ <youpi> though that'd catch sub-hurd issues :)
+ <foocraft> so a sub-hurd is a hurd that I can run on something that I know
+ works(like linux)?
+ <foocraft> Virtual machine I would think
+ <foocraft> and over a network connection it would submit results back to
+ the host :p
+ * foocraft brain damage
+ <youpi> sub-hurd is a bit like chroot
+ <youpi> except that it's more complete
+ <foocraft> oh okay
+ <youpi> i.e. almost everything gets replaced with what you want, except the
+ micro-kernel
+ <youpi> that way you can even test the exec server for instance, without
+ risks of damaging the host OS
+ <foocraft> and we know the micro-kernel works correctly, right youpi?
+ <youpi> well, at least it's small enough that most bugs are not there
+ <foocraft> 1) all tests run in subhurd 2) output results in a place in the
+ subhurd 3) tester in the host checks the result and pretty-prints it 4)
+ rinse & repeat
+ <youpi> the output can actually be redirected iirc
+ <youpi> since you give the sub-hurd a "console"
+ <foocraft> youpi, yup yeah, so now it's more like chroot if that's the case
+ <youpi> it really looks like chroot, yes
+ <foocraft> but again, there's this subset of tests that we need to have
+ that ensures that even the tester running on the subhurd is valid, and it
+ didn't break because of a bug in the subhurd
+ <tschwinge> As long as you do in-system testing, you'll always (have to)
+ rely on some functionality provided by the host system.
+ <foocraft> the worst thing that could happen with unit testing is false
+ results that lead someone to try to fix something that isn't broken :p
+ <tschwinge> Yes.
+ <youpi> usually one tries to repeat the test by hand in a normal
+ environment