diff options
Diffstat (limited to 'user')
-rw-r--r-- | user/El_Dream_Machine.mdwn | 20 | ||||
-rw-r--r-- | user/Erkan-Yilmaz.mdwn | 1 | ||||
-rw-r--r-- | user/Etenil.mdwn | 40 | ||||
-rw-r--r-- | user/jkoenig.mdwn | 12 |
4 files changed, 62 insertions, 11 deletions
diff --git a/user/El_Dream_Machine.mdwn b/user/El_Dream_Machine.mdwn index f86d4bfd..ac3a0cfc 100644 --- a/user/El_Dream_Machine.mdwn +++ b/user/El_Dream_Machine.mdwn @@ -8,19 +8,29 @@ 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]]."]]"""]] +**January 13, 2011** - My story comics on the Hurd continues. I think I can introduce you to page 2 in a month. -I just try to become an end user of The Hurd. In 2004, I was able to install K9 on an old computer. +**January 11, 2011** - The goal was to install the Hurd in VirtualBox... +It happened on january,7 2011, a very nice day... Thanks to [http://www.paranoiaque.fr](http://www.paranoiaque.fr) for [the *Hurd.vdi* machine.](http://www.paranoiaque.fr/Hurd.vdi.tar.lzma) + +[A testimony](http://www.sites.google.com/site/hurdexperiences/en-hurd-vdi-tar-lzma) of this install and a video capture [Hurd operating.](http://www.dailymotion.com/video/xgl3nr_hurd-screenscat-ffmpeg-01_webcam) + +**October 14, 2010** - Here's the [french version.](http://art9libre.tuxfamily.org/gaetan/TheCallOfTheHurd-01-fr-png.jpg) + +**October 13, 2010** - Page 1 out ! The beginning of the [the comics is here :](http://eldreammachine.free.fr/gaetan/TheCallOfTheHurd-01.jpg) +Hope it will pleased for you. + +**October 3, 2010** - I just try to become an end user of The Hurd. In 2004, I was able to install K9 on an old computer. These times, my goal is to install it on my laptop (maybe with crosshurd or with a lzma image for virtualbox, or any other way...) Also, I'm currently working on a comics'The Call Of The Hurd'. It's free licensed cc-by-sa/Copyleft Art Libre. 1st page will be done before the end of the year I think (I look for good quality). -And it's nice to be here :) -Page 1 out ! The beginning of the [the comics is here :](http://eldreammachine.free.fr/gaetan/TheCallOfTheHurd-01.jpg) -Hope it will pleased for you. -Here's the [french version.](http://art9libre.tuxfamily.org/gaetan/TheCallOfTheHurd-01-fr-png.jpg) + + + diff --git a/user/Erkan-Yilmaz.mdwn b/user/Erkan-Yilmaz.mdwn new file mode 100644 index 00000000..aea4e7ff --- /dev/null +++ b/user/Erkan-Yilmaz.mdwn @@ -0,0 +1 @@ +see <http://wiki.archhurd.org/wiki/User:Erkan_Yilmaz> diff --git a/user/Etenil.mdwn b/user/Etenil.mdwn new file mode 100644 index 00000000..a1a3373b --- /dev/null +++ b/user/Etenil.mdwn @@ -0,0 +1,40 @@ +[[!meta copyright="Copyright © 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]]."]]"""]] + +[[!toc]] + +## Current task + +Implement clustered paging in GNU Mach + +- - - + +## What the problem is +In Mach, memory access is ensured by the VM, an abstraction in the kernel. The VM is mapped by pages, which size is arbitrary and defined based on hardware specs. A single block of memory can then span over many pages, i.e. a file on a file system can represent a lot of pages. + +When a process attempts to access pages that don't reside in the physical memory (RAM), the MMU detects this and triggers a page fault. Page faults are then handled and the kernel calls down the process associated with the memory pages on a *one by one basis*. + +This is where the problem lies. Hard disks are inherently efficient at sequentially writing large chunks of data whereas they cope badly with random access, plus the kernel wastes time writing/reading a page and handling the next page. All of these make for slow I/O in Mach. + +## Solutions +There are a couple of ways I could think of to solve this problem. Pages could be enlarged, but that would cause a lot more problems. Or pages must be handled by groups instead of one by one. This means the changes will also need to be applied in the way user-space processes talk to Mach. + +## What's already been done +[[user/KAM]] has already made a patch that provides basic page clustering. I have yet to understand it completely, but there are troubling changes in the patch, most notably the removal of continuations in *vm_fault* and *vm_fault_page*. + +So far, what I can tell is that KAM seems to have modified the memory objects in Mach so that they handle clusters of pages. + +## What I intend to do +Starting from KAM's work, I'll try and at least proxy the current behaviour in the kernel so as to keep backwards compatibility, at least until all user-space processes are converted (maybe some sort of deprecation warning would help porting). I'll also need to modify ext2fs to make it use the clustered paging feature, hopefully it'll improve performance quite a bit. + +## Problems +As *braunr* and *antrik* pointed out on IRC, I seriously lack knowledge about kernel programming, and this is quite a big task. I also don't fully understand the inner workings of the kernel yet, even though *braunr* helped me a lot to understand the VM and page handling. + +I'll do what I can and keep maintaining this page so others may pickup where I left if I were to give up. diff --git a/user/jkoenig.mdwn b/user/jkoenig.mdwn index 247d61cb..0b9f9f7d 100644 --- a/user/jkoenig.mdwn +++ b/user/jkoenig.mdwn @@ -123,8 +123,8 @@ installer kindof works, with documented manual intervention required** (2010-06-25) * (./) sent as patches as requested (2010-07-08) - * backport any additional changes onto the debian branch - * hijack [[!debbug 323670]] and submit my patches + * (./) backport any additional changes onto the debian branch + * (./) hijack [[!debbug 323670]] and submit my patches * **aptitude**: * Currently broken on hurd-i386: @@ -220,7 +220,7 @@ installer works but it's still somewhat ugly and broken** * Fix the hurd console for fonts with 16 pixels wide glyphs (ie. handle the 8-wide glyph in there correclty) * Support double-width glyphs (2010-07-24) - * {X} However the reduced font can't be loaded yet, + * (./) However the reduced font can't be loaded yet, so make installer/build/Makefile ship the whole `/usr/src/unifont.bgf` as `/usr/share/hurd/vga-system.bgf`. @@ -259,7 +259,7 @@ installer works but it's still somewhat ugly and broken** * debian/rules: set `partman/mount_style` to `traditional` on Hurd. * finish.d/create\_fstab\_header: add a Hurd case. -* **rootskel**: FTBFS on Hurd and other quirks +* (./) **rootskel**: FTBFS on Hurd and other quirks (to be fixed very soon) * **d-i/installer/build**: (expected soon) @@ -275,7 +275,7 @@ installer works but it's still somewhat ugly and broken** * Maybe settrans could be made to accept -o/--owner and -p/--perm, to set the permissions for the underlying node? -* Silence the "no kernel" warning somehow. +* (./) Silence the "no kernel" warning somehow. * Investigate the wget/libc/pfinet/whatever bug which corrupts Packages.gz, see the IRC log for 2010-07-23, around 1am UTC+0200 @@ -312,7 +312,7 @@ installer works but it's still somewhat ugly and broken** test library reduction, make it copy the ld.so -> ld.so.1 symlink. -* hurd console fonts +* (./) hurd console fonts **Milestone (expected 2010-07-19): it works great and it's beautiful** |