summaryrefslogtreecommitdiffstats
path: root/share/doc/papers/malloc/kernel.ms
diff options
context:
space:
mode:
Diffstat (limited to 'share/doc/papers/malloc/kernel.ms')
-rw-r--r--share/doc/papers/malloc/kernel.ms12
1 files changed, 6 insertions, 6 deletions
diff --git a/share/doc/papers/malloc/kernel.ms b/share/doc/papers/malloc/kernel.ms
index 220e502..787a581 100644
--- a/share/doc/papers/malloc/kernel.ms
+++ b/share/doc/papers/malloc/kernel.ms
@@ -6,7 +6,7 @@
.\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
.\" ----------------------------------------------------------------------------
.\"
-.\" $Id: kernel.ms,v 1.2 1996/10/05 18:37:06 wosch Exp $
+.\" $Id: kernel.ms,v 1.3 1996/11/14 08:10:31 phk Exp $
.\"
.ds RH The kernel and memory
.NH
@@ -30,7 +30,7 @@ for the data and bss section combined and one for the stack.
On some systems the text shared a segment with the data and bss, and was
consequently just as writable as them.
.PP
-In this setup all the brk(2) system call have to do is to find the
+In this setup all the brk(2) system call has to do is to find the
right amount of free storage, possibly moving things around in physical
memory, maybe even swapping out a segment or two to make space,
and change the upper limit on the data segment according to the address given.
@@ -38,17 +38,17 @@ and change the upper limit on the data segment according to the address given.
In a more modern page based virtual memory implementation this is still
pretty much the situation, except that the granularity is now pages:
The kernel finds the right number of free pages, possibly paging some
-pages out to free them up, and then plug them into the page-table of
+pages out to free them up, and then plugs them into the page-table of
the process.
.PP
As such the difference is very small, the real difference is that in
the old world of swapping, either the entire process was in primary
-storage (or it wouldn't be selected to be run) in a modern VM kernel,
+storage or it wouldn't be selected to be run. In a modern VM kernel,
a process might only have a subset of its pages in primary memory,
the rest will be paged in, if and when the process tries to access them.
.PP
-Only very few programs deal with the brk(2) interface directly, the
-few that does usually have their own memory management facilities.
+Only very few programs deal with the brk(2) interface directly.
+The few that do usually have their own memory management facilities.
LISP or FORTH interpreters are good examples.
Most other programs use the
.B malloc(3)
OpenPOWER on IntegriCloud