|
|||||||||||||||||||||||||||||||||||
|
1 Review
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
2 of 3 people found the following review helpful:
5.0 out of 5 stars
Very solid Linux commentary,
By
Amazon Verified Purchase(What's this?)
This review is from: The Linux Process Manager (Paperback)
This is a surprisingly good book written by Irish Linux pioneer, it's basically a commentary, it comments every line of the source code literarily, the writing style s not entertaining, but not dry either, it's solid, quality stuff. Some thing goes like this:
[1] void __init fork_init(unsigned long mempages) [2] max_threads = mempages /(THREAD_SIZE/PAGE_SIZE)/2; 76 [3] init_task.rlim[RLIMIT_NPROC].rlim_cur = max_threads/2; [3] init_task.rlim[RLIMIT_NPROC].rlim_max = max_threads/2; 79 } Figure 8.2: Initialisation routine [1] the parameter passed is the total number of page frames present in the system. [2] the literal constant THREAD_SIZE is defined in <asm-i386/processor.h> as 2 * PAGE_SIZE. It is the amount of kernel memory allocated to a process - thetask_struct plus the kernel stack. So THREAD_SIZE/PAGE_SIZE is the size of this in pages (2). Then mempages /(THREAD_SIZE/PAGE_SIZE) is the number of processes that could be created using the whole memory. As each process needs 2 pages, this is half the number of physical pages available. To allow room for code and data as well, the default maximum number of threads is set to half of this again, or a quarter of the number of physical pages. [3] [3] the limits for the init_task are set at half of this again, or a maximum of one eighth of the number of physical pages. This is Tony Cahill's comment about the author's background: "His work involved constructing an interpreter for a proprietary language designed for developing and delivering Computer Aided Learning material, which generated Intermediate (what we would now call Byte) Code. John's research was essentially an exercise in systematic reverse engineering, and demonstrated that it was relatively easy to develop alternative interpreters, which could deliver the same lessons on other hardware, such as PCs." The Irish Linux pioneer died couple years ago. |
|
Most Helpful First | Newest First
|
|
The Linux Process Manager by John O'Gorman (Paperback - February 13, 2003)
$80.00
In Stock | ||