summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contributing/web_pages/news/moth_next.mdwn7
-rw-r--r--user/Maksym_Planeta.mdwn26
2 files changed, 28 insertions, 5 deletions
diff --git a/contributing/web_pages/news/moth_next.mdwn b/contributing/web_pages/news/moth_next.mdwn
index c0467afa..cd03a366 100644
--- a/contributing/web_pages/news/moth_next.mdwn
+++ b/contributing/web_pages/news/moth_next.mdwn
@@ -90,7 +90,7 @@ And …
* Maksym Planeta replaced GNUmach’s old zalloc memory allocator with
the new balloc from Richard Braun
- ([cleanup commit](http://git.savannah.gnu.org/cgit/hurd/gnumach.git/commit/?id=8e78f3c0674cedc55953bf36d88c664ea80380a2)),
+ ([integration commit](http://git.savannah.gnu.org/cgit/hurd/gnumach.git/commit/?id=50d073c5ef0feb1676606d0068abf626e8297cd7)),
which handles slabs and should waste less memory than zalloc. Also
balloc has a cpu cache level, so it should work faster on SMP
systems, once we get up do date SMP CPU drivers for GNUmach.
@@ -103,6 +103,9 @@ And …
[port your favorite missing package](http://www.debian.org/ports/hurd/hurd-devel-debian)
to the Hurd.
- * buildd, porterbox and public boxes at sceen.net, provided by Richard Braun.
+ * And Richard Braun contributed a new
+ [[buildd,_porterbox_and_public_box|public_hurd_boxen]] via
+ sceen.net, making it easier to test the Hurd without much setup as
+ well as improving debian packaging.
"""]]
diff --git a/user/Maksym_Planeta.mdwn b/user/Maksym_Planeta.mdwn
index 64dc6e19..477f11ed 100644
--- a/user/Maksym_Planeta.mdwn
+++ b/user/Maksym_Planeta.mdwn
@@ -9,11 +9,31 @@ is included in the section entitled [[GNU Free Documentation
License|/fdl]]."]]"""]]
[[!toc]]
-Notes on tmpfs
-==============
+#Notes on tmpfs
+
+## mach-defpager
+
+ <tschwinge>: 1. On every system there is a ``default pager'' (mach-defpager). That one is responsible
+ for all ``anonymous memory''. For example, when you do malloc(10 MiB), and then there is memory pressure,
+ this 10 MiB memory region is backed by the default pager, whose job then is it to provide the backing store for this.
+ <tschwinge>: This is what commonly would be known as a swap partition.
+ <tschwinge>: And this is also the way tmpfs works (as I understand it).
+ <tschwinge>: malloc(10 MiB) can also be mmap(MAP_ANONYMOUS, 10 MIB); that's the same, essentially.
+ <tschwinge>: Now, for ext2fs or any other disk-based file system, this is different:
+ <tschwinge>: The ext2fs translator implements its own backing store, namely it accesses the disk for storing
+ changed file content, or to read in data from disk if a new file is opened.
+
+## Steps
+
+1. Find out what causes crashes in tmpfs with defpager
+
+2. Write own pager
+
+ 6.11.11 Reading/writing for files that fit in vm_page_size works
#Debugging
To debug tmpfs, using libraries from "$PWD"/lib and trace rpc:
-settrans -ca foo /usr/bin/env LD_LIBRARY_PATH="$PWD"/lib utils/rpctrace -I /usr/share/msgids/ tmpfs/tmpfs 1M
+ settrans -ca foo /usr/bin/env LD_LIBRARY_PATH="$PWD"/lib utils/rpctrace -I /usr/share/msgids/ tmpfs/tmpfs 1M
+ LD_LIBRARY_PATH="$PWD"/lib gdb tmpfs/tmpfs 698