Get Memory Management Algorithms and Implementation in C C 1st Edition Bill Blunden free all chapters
Get Memory Management Algorithms and Implementation in C C 1st Edition Bill Blunden free all chapters
com
https://ebookgate.com/product/memory-management-algorithms-
and-implementation-in-c-c-1st-edition-bill-blunden/
OR CLICK HERE
DOWLOAD NOW
https://ebookgate.com/product/data-structures-and-algorithms-in-c-1st-
edition-michael-mcmillan/
ebookgate.com
https://ebookgate.com/product/data-structures-and-algorithms-in-c-4th-
edition-adam-drozdek/
ebookgate.com
https://ebookgate.com/product/memory-war-and-trauma-nigel-c-hunt/
ebookgate.com
Data Structures Algorithms And Applications In C 2nd
Edition Sartaj Sahni
https://ebookgate.com/product/data-structures-algorithms-and-
applications-in-c-2nd-edition-sartaj-sahni/
ebookgate.com
https://ebookgate.com/product/effective-c-50-specific-ways-to-improve-
your-c-1st-edition-bill-wagner/
ebookgate.com
https://ebookgate.com/product/data-clustering-algorithms-and-
applications-1st-edition-charu-c-aggarwal/
ebookgate.com
https://ebookgate.com/product/data-structures-and-algorithms-
using-c-1st-edition-michael-mcmillan/
ebookgate.com
Offshoring IT The Good the Bad and the Ugly 1st Edition
Bill Blunden (Auth.)
https://ebookgate.com/product/offshoring-it-the-good-the-bad-and-the-
ugly-1st-edition-bill-blunden-auth/
ebookgate.com
Memory Management
Algorithms and
Implementation in C/C++
by
Bill Blunden
ISBN 1-55622-347-1
10 9 8 7 6 5 4 3 2 1
0208
Product names mentioned are used for identification purposes only and may be trademarks of
their respective companies.
All inquiries for volume purchases of this book should be addressed to Wordware
Publishing, Inc., at the above address. Telephone inquiries may be made by calling:
(972) 423-0090
This book is dedicated to Rob, Julie, and Theo.
iii
Table of Contents
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . xi
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . xiii
v
Table of Contents
Memory Allocation . . . . . . . . . . . . . . . . . . . . 66
Case Study: Linux . . . . . . . . . . . . . . . . . . . . . . 67
History and MINIX . . . . . . . . . . . . . . . . . . . . 67
Design Goals and Features. . . . . . . . . . . . . . . . 68
Linux and Segmentation . . . . . . . . . . . . . . . . . 69
Linux and Paging . . . . . . . . . . . . . . . . . . . . . 72
Three-Level Paging . . . . . . . . . . . . . . . . . . 72
Page Fault Handling . . . . . . . . . . . . . . . . . . 76
Memory Allocation . . . . . . . . . . . . . . . . . . . . 76
Memory Usage . . . . . . . . . . . . . . . . . . . . . . 81
Example: Siege Warfare . . . . . . . . . . . . . . . . . 82
Example: Siege Warfare, More Treachery . . . . . . . 87
Case Study: Windows . . . . . . . . . . . . . . . . . . . . 92
Historical Forces . . . . . . . . . . . . . . . . . . . . . 92
Memory Map Overview . . . . . . . . . . . . . . . . . 96
Windows and Segmentation . . . . . . . . . . . . . . . 99
Special Weapons and Tactics . . . . . . . . . . . . . 99
Crashing Windows with a Keystroke . . . . . . . . 102
Reverse Engineering the GDT . . . . . . . . . . . 102
Windows and Paging . . . . . . . . . . . . . . . . . . 105
Linear Address Space Taxonomy . . . . . . . . . . 105
Musical Chairs for Pages. . . . . . . . . . . . . . . 106
Memory Protection . . . . . . . . . . . . . . . . . 108
Demand Paging . . . . . . . . . . . . . . . . . . . . 109
Memory Allocation . . . . . . . . . . . . . . . . . . . 110
Memory Usage . . . . . . . . . . . . . . . . . . . . . 114
Turning Off Paging . . . . . . . . . . . . . . . . . . . 117
Example: Things That Go Thunk in the Night . . . . 118
Closing Thoughts . . . . . . . . . . . . . . . . . . . . . 122
References . . . . . . . . . . . . . . . . . . . . . . . . . 123
Books and Articles . . . . . . . . . . . . . . . . . . . 123
Web Sites . . . . . . . . . . . . . . . . . . . . . . . . 125
vi
Table of Contents
vii
Table of Contents
Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
Trade-Offs . . . . . . . . . . . . . . . . . . . . . . . . 247
malloc() Version 2: Sequential Fit . . . . . . . . . . . 248
Theory . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Implementation . . . . . . . . . . . . . . . . . . . . . 251
memmgr.cpp . . . . . . . . . . . . . . . . . . . . . 251
mallocV2.cpp . . . . . . . . . . . . . . . . . . . . . 260
driver.cpp . . . . . . . . . . . . . . . . . . . . . . . 261
Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Trade-Offs . . . . . . . . . . . . . . . . . . . . . . . . 264
malloc() Version 3: Segregated Lists . . . . . . . . . 265
Theory . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Implementation . . . . . . . . . . . . . . . . . . . . . 266
memmgr.cpp . . . . . . . . . . . . . . . . . . . . . 267
mallocV3.cpp . . . . . . . . . . . . . . . . . . . . . 274
Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Trade-Offs . . . . . . . . . . . . . . . . . . . . . . . . 279
Performance Comparison . . . . . . . . . . . . . . . . . 279
viii
Table of Contents
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
ix
Acknowledgments
xi
Acknowledgments
xii
Introduction
xiii
Introduction
Historical Setting
In the late 1930s, a group of scholars arrived at Bletchley Park in an
attempt to break the Nazis’ famous Enigma cipher. This group of
codebreakers included a number of notable thinkers, like Tommy
Flowers and Alan Turing. As a result of the effort to crack Enigma,
the first electronic computer was constructed in 1943. It was named
Colossus and used thermionic valves (known today as vacuum tubes)
for storing data. Other vacuum tube computers followed. For exam-
ple, ENIAC (electronic numerical integrator and computer) was
built by the U.S. Army in 1945 to compute ballistic firing tables.
xiv
Introduction
ASIDE
“After 45 minutes or so, we’ll see that the results are
obvious.”
— David M. Lee
I have heard Nobel laureates in physics, like Dave Lee,
complain that students who rely too heavily on calculators
lose their mathematical intuition. To an extent, Dave is cor-
rect. Before the dawn of calculators, errors were more com-
mon, and developing a feel for numeric techniques was a
useful way to help catch errors when they occurred.
During the Los Alamos project, a scientist named Dick
Feynman ran a massive human computer. He once mentioned
that the performance and accuracy of his group’s computa-
tions were often more a function of his ability to motivate
people. He would sometimes assemble people into teams
and have them compete against each other. Not only was
this a good idea from the standpoint of making things more
interesting, but it was also an effective technique for catching
discrepancies.
xv
Introduction
In 1958, the first integrated circuit was invented. The inventor was
a fellow named Jack Kilby, who was hanging out in the basement of
Texas Instruments one summer while everyone else was on vaca-
tion. A little over a decade later, in 1969, Intel came out with a 1
kilobit memory chip. After that, things really took off. By 1999, I
was working on a Windows NT 4.0 workstation (service pack 3) that
had 2GB of SDRAM memory.
The general trend you should be able to glean from the previous
discussion is that memory components have solved performance
requirements by getting smaller, faster, and cheaper. The hardware
people have been able to have their cake and eat it too. However,
the laws of physics place a limit on how small and how fast we can
actually make electronic components. Eventually, nature itself will
stand in the way of advancement. Heisenberg’s Uncertainty Princi-
ple, shown below, is what prevents us from building infinitely small
components.
D xD p ³ (h/4p )
For those who are math-phobic, I will use Heinsenberg’s own words
to describe what this equation means:
“The more precisely the position is determined, the less pre-
cisely the momentum is known in this instant, and vice versa.”
In other words, if you know exactly where a particle is, then you
will not be able to contain it because its momentum will be huge.
Think of this like trying to catch a tomato seed. Every time you try
to squeeze down and catch it, the seed shoots out of your hands and
flies across the dinner table into Uncle Don’s face.
Einstein’s General Theory of Relativity is what keeps us from
building infinitely fast components. With the exception of black
holes, the speed limit in this universe is 3x108 meters per second.
Eventually, these two physical limits are going to creep up on us.
When this happens, the hardware industry will have to either
make larger chips (in an effort to fit more transistors in a given area)
or use more efficient algorithms so that they can make better use of
existing space. My guess is that relying on better algorithms will be
the cheaper option. This is particularly true with regard to memory
management. Memory manipulation is so frequent and crucial to
performance that designing better memory management subsys-
tems will take center stage in the future. This will make the time
spent reading this book a good investment.
xvi
Introduction
Impartial Analysis
In this book, I try very hard to offer memory management solutions
without taking sides. I have gone to great lengths to present an
unbiased discussion. This is important because it is extremely
tempting to champion a certain memory management algorithm
(especially if you invented it). There are some journal authors who
would have you believe that their new algorithm is a panacea to
cure the ills of the world. I do not have the ulterior motives of a col-
lege professor. I am here to offer you a set of tools and then let you
decide how best to use them. In this book, I will present you with
different techniques and try to point out the circumstances in which
they perform well.
The question “Which is the best memory management algo-
rithm?” is very similar in spirit to any of the following questions:
“Which operating system is the best?”
“Which programming language is the best?”
“Which data structure is the best?”
“Which type of screwdriver is the best?”
I can recall asking a program manager at Eaton Corp., John
Schindler, what the best operating system was. John was managing
at least a dozen different high-end platforms for Eaton, and I
thought he would know. I was expecting him to come right back
with a quick answer like: “Oh, OpenBSD is the best.” What actually
happened was something that surprised me. He looked at me for a
minute, as if the question was absurd. Then he smiled and said,
“Well, it really depends on what you’re going to use the machine for.
I use Solaris for networking, HP-UX for app servers, AIX to talk to
our mainframe, NT for mail, . . . ”
The truth is there is no “best” solution. Most solutions merely
offer certain trade-offs. In the end, the best tool to use will depend
upon the peculiarities of the problem you are trying to solve.
This is a central theme that appears throughout the domain of
computer science. Keep it in the back of your mind, like some sort
of Buddhist mantra:
“There is no best solution, Grasshopper, only trade-offs.”
For example, linked lists and arrays can both represent a linear set
of items. With a linked list, you get easy manipulation at the
expense of speed. Adding an element to a linked list is as easy as
modifying a couple of pointers. However, to find a given list
xvii
Introduction
element, you may have to traverse the entire list manually until you
find it. Conversely, with an array, you get access speed at the
expense of flexibility. Accessing an array element is as easy as add-
ing an integer to a base address, but adding and deleting array
elements requires a lot of costly shifting. If your code is not going to
do a lot of list modification, an array is the best choice. If your code
will routinely add and delete list members, a linked list is the better
choice. It all depends upon the context of the problem.
Audience
This book is directed toward professional developers and students
who are interested in discovering how memory is managed on pro-
duction systems. Specifically, engineers working on PC or
embedded operating systems may want to refresh their memory or
take a look at alternative approaches. If this is the case, then this
book will serve as a repository of algorithms and software compo-
nents that you can apply to your day-to-day issues.
Professionals who design and construct development tools will
also find this book useful. In general, development tools fall into the
class of online transaction processing (OLTP) programs. When it
comes to OLTP apps, pure speed is the name of the game. As such,
programming language tools, like compilers, often make use of
suballocators to speed up the performance of the code that manipu-
lates their symbol table.
With regard to compiling large software programs consisting of
millions of lines of code, this type of suballocator-based optimization
can mean the difference between waiting for a few minutes and
waiting for a few hours. Anyone who mucks around with
suballocators will find this book indispensable.
Software engineers who work with virtual machines will also be
interested in the topics that I cover. The Java virtual machine is
famous for its garbage collection facilities. In this book I explore
several automatic memory management techniques and also pro-
vide a couple of concrete garbage collection implementations in
C++.
Finally, this book also targets the curious. There is absolutely
nothing wrong with being curious. In fact, I would encourage it. You
may be an application developer who has used memory manage-
ment facilities countless times in the past without taking the time to
xviii
Introduction
determine how they really work. You may also have nurtured an
interest that you have had to repress due to deadlines and other pri-
orities. This book will offer such engineers an opportunity to
indulge their desire to see what is going on under the hood.
Organization
This book is divided into six chapters. I will start from the ground
up and try to provide a comprehensive, but detailed, view of mem-
ory management fundamentals. Because of this, each chapter builds
on what has been presented in the previous one. Unless you are a
memory management expert, the best way to read this book is
straight through.
xix
Introduction
operating system that took advantage of all four layers. All the sys-
tems that I examined use a vastly simplified two-layer scheme.
xx
Introduction
Approach
When it comes to learning something complicated, like memory
management, I believe that the most effective way is to examine a
working subsystem. On the other hand, it is easy to become lost in
the details of a production memory manager. Contemporary mem-
ory managers, like the one in Linux, are responsible for keeping
track of literally hundreds of run-time quantities. Merely tracking
the subsystem’s execution path can make one dizzy. Hence, a bal-
ance has to be struck between offering example source code that is
high quality and also easy to understand. I think I have done a suffi-
cient job of keeping the learning threshold low without sacrificing
utility.
xxi
Introduction
Typographical Conventions
Words and phrases will appear in italics in this book for two reasons:
n To place emphasis
n When defining a term
The courier font will be used to indicate that text is one of the
following:
n Source code
n An address in memory
n Console input/output
n A filename or extension
Numeric values appear throughout this book in a couple of different
formats. Hexadecimal values are indicated by either prefixing them
with “0x” or appending “H” to the end.
For example:
0xFF02
0FF02H
The C code that I include will use the former notation, and the
assembler code that I include will use the latter format.
Binary values are indicated by appending the letter “B” to the
end. For example:
0110111B
Prerequisites
“C makes it easy to shoot yourself in the foot; C++ makes it
harder, but when you do, it blows away your whole leg.”
— Bjarne Stroustrup
xxii
Introduction
interrupts, that can only be fleshed out using assembler. This is one
reason why mid-level languages, like C, provide syntactic facilities
for inline assembly code. If you look at the Linux source code, you
will see a variety of inline assembly code snippets. If at all possible,
I wrapped my assembly code in C. However, you can’t always do
this.
Learning assembly language may seem like an odious task, but
there are several tangible and significant rewards. Assembly lan-
guage is just a mnemonic representation of machine instructions.
When you have a complete understanding of a processor’s assembly
language, including its special “privileged” instructions, you will
also have a fairly solid understanding of how the machine functions
and what its limitations are. In addition, given that compilers gener-
ate assembly code, or at least spit it out in a listing file, you will also
be privy to the inner workings of development tools.
In short, knowing assembly language is like learning Latin. It
may not seem immediately useful, but it is . . . just give it time.
I use C early in the book for small applications when I felt like I
could get away with it. Most of the larger source code examples in
this book, however, are written in C++. If you don’t know C or
C++, you should pick up one of the books mentioned in the “Refer-
ences” section at the end of the Introduction. After a few weeks of
cramming, you should be able to follow my source code examples.
I think C++ is an effective language for implementing memory
management algorithms because it offers a mixture of tools. With
C++, you can manipulate memory at a very low, bit-wise level and
invoke inline assembly code when needed. You can also create
high-level constructs using the object-oriented language features in
C++. Encapsulation, in particular, is a compiler-enforced language
feature that is crucial for maintaining large software projects.
NOTE At times, you may notice that I mix C libraries and conven-
tions into my C++ source code. I do this, most often, for reasons
related to performance. For example, I think that C’s printf() is
much more efficient than cout.
xxiii
Introduction
Companion Files
Software engineering is like baseball. The only way you will ever
acquire any degree of skill is to practice and scrimmage whenever
you get the chance. To this end, I have included the source code for
most of the examples in this book in a downloadable file available at
www.wordware.com/memory.
Dick Feynman, who was awarded the Nobel Prize in physics in
1965, believed that the key to discovery and insight was playful
experimentation. Dick was the kind of guy who followed his own
advice. In his biography, Surely You’re Joking, Mr. Feynman, Dick
recounts how spinning plates in a dining hall at Cornell led to his-
toric work in quantum mechanics. By testing a variety of new ideas
and comparing the results to your predictions, you force yourself to
xxiv
Introduction
References
Brey, Barry. The Intel Microprocessors: 8086/8088, 80186, 80286,
80386, 80486, Pentium, Pentium Pro, and Pentium II. 2000,
Prentice Hall, ISBN: 0-13-995408-2.
This is a fairly recent book and should take care of any ques-
tions you may have. Barry has been writing about Intel chips
since the first one came out.
Kernighan, Brian and Dennis Ritchie. The C Programming Lan-
guage. 1988, Prentice Hall, ISBN: 0131103628.
This is a terse, but well-read introduction to C by the founding
fathers of the language.
Reid, T. R. The Chip: How Two Americans Invented the Microchip
and Launched a Revolution. 2001, Random House, ISBN:
0375758283.
Schildt, Herbert. C++ From the Ground Up. 1998, Osborne
McGraw-Hill, ISBN: 0078824052.
If you have never programmed in C/C++, read this book. It is
a gentle introduction written by an author who knows how to
explain complicated material. Herb starts by teaching you C and
then slowly introducing the object-oriented features of C++.
Stroustrup, Bjarne and Margaret Ellis. The Annotated C++ Refer-
ence. 1990, Addison-Wesley, ISBN: 0201514591.
Once you have read Schildt’s book, you can use this text to fill
in the gaps. This book is exactly what it says it is — a reference
— and it is a good one.
xxv
Introduction
Warning
In this book I provide some rather intricate, and potentially danger-
ous, source code examples. This is what happens when you go
where you are not particularly supposed to be. I recommend that
you use an expendable test machine to serve as a laboratory. Also,
you might want to consider closing all unnecessary applications
before experimenting. If an application dies in the middle of an
access to disk, you could be faced with a corrupt file system.
If you keep valuable data on the machine you are going to use, I
suggest you implement a disaster recovery plan. During the writing
of this book’s manuscript, I made a point to perform daily incremen-
tal backups and complete weekly backups of my hard drive. I also
had a secondary machine that mirrored by primary box. Large cor-
porations, like banks and insurance companies, have truly extensive
emergency plans. I toured a production site in Cleveland that had
two diesel fuel generators and a thousand gallons of gas to provide
backup power.
Neither the publisher nor author accept any responsibility for any
damage that may occur as a result of the information contained
within this book. As Stan Lee might say, “With great power comes
great responsibility.”
xxvi
Author Information
Bill Blunden has been obsessed with systems software since his
first exposure to the DOS debug utility in 1983. His single-minded
pursuit to discover what actually goes on under the hood led him to
program the 8259 interrupt controller and become an honorable
member of the triple-fault club. After obtaining a BA in mathemati-
cal physics and an MS in operations research, Bill was unleashed
upon the workplace. It was at an insurance company in the beautiful
city of Cleveland, plying his skills as an actuary, that Bill got into his
first fist fight with a cranky IBM mainframe. Bloody but not beaten,
Bill decided that groking software beat crunching numbers. This led
him to a major ERP player in the midwest, where he developed
CASE tools in Java, wrestled with COBOL middleware, and was
assailed by various Control Data veterans. Having a quad-processor
machine with 2GB of RAM at his disposal, Bill was hard pressed to
find any sort of reason to abandon his ivory tower. Nevertheless, the
birth of his nephew forced him to make a pilgrimage out west to Sil-
icon Valley. Currently on the peninsula, Bill survives rolling power
blackouts and earthquakes, and is slowly recovering from his initial
bout with COBOL.
xxvii
Chapter 1
Memory Management
Mechanisms
“Everyone has a photographic memory. Some people just don’t
have film.”
— Mel Brooks
1
2 Chapter 1
ASIDE
An arm-waving explanation is a proposition that has not been
established using precise mathematical statements. Mathe-
matical statements have the benefit of being completely un-
ambiguous: They are either true or false. An arm-waving
explanation tends to eschew logical rigor entirely in favor of
arguments that appeal to intuition. Such reasoning is at best
dubious, not only because intuition can often be incorrect, but
also because intuitive arguments are ambiguous. For example,
people who argue that the world is flat tend to rely on arm-
waving explanations.
NOTE Back when Dave Cutler’s brainchild, Windows NT, came out,
there was a lot of attention given to the operating system’s Hardware
Abstraction Layer (HAL). The idea was that the majority of the operat-
ing system could be insulated from the hardware that it ran on by a
layer of code located in the basement. This was instituted to help
counter the hardware dependency issue that I mentioned a minute
ago. To Dave’s credit, NT actually did run on a couple of traditionally
UNIX-oriented hardware platforms. This included Digital’s Alpha pro-
cessor and the MIPS RISC processor. The problem was that Microsoft
couldn’t get a number of its higher-level technologies, like DCOM, to
Memory Management Mechanisms 3
Chapter 1
a binary standard!
The solution that favors speed always wins. I was told by a former
Control Data engineer that when Seymour Cray was designing the
6600, he happened upon a new chip that was quicker than the one
he was currently using. The problem was that it made occasional
computational errors. Seymour implemented a few slick work-
arounds and went with the new chip. The execs wanted to stay out
of Seymour’s way and not disturb the maestro, as Seymour was
probably the most valuable employee Control Data had. Unfortu-
nately, they also had warehouses full of the original chips. They
couldn’t just throw out the old chips; they had to find a use for them.
This problem gave birth to the CDC 3300, a slower and less expen-
sive version of the 6600.
My point: Seymour went for the faster chip, even though it was
less reliable.
Speed rules.
The result of this tendency is that every commercial operating
system in existence has its memory management services firmly
rooted in data structures and protocols dictated by the hardware.
Processors provide a collection of primitives for manipulating mem-
ory. They constitute the mechanism side of the equation. It is up to
the operating system to decide if it will even use a processor’s
memory management mechanisms and, if so, how it will use them.
Operating systems constitute the policy side of the equation.
In this chapter, I will examine computer hardware in terms of
how it offers a mechanism to access and manipulate memory.
Memory Hierarchy
When someone uses the term “memory,” they are typically refer-
ring to the data storage provided by dedicated chips located on the
motherboard. The storage these chips provide is often referred to
as Random Access Memory (RAM), main memory, and primary stor-
age. Back in the iron age, when mainframes walked the earth, it was
called the core. The storage provided by these chips is volatile,
which is to say that data in the chips is lost when the power is
switched off.
There are various types of RAM:
n DRAM
n SDRAM
n SRAM
4 Chapter 1
n VRAM
Dynamic RAM (DRAM) has to be recharged thousands of times
each second. Synchronous DRAM (SDRAM) is refreshed at the
clock speed at which the processor runs the most efficiently. Static
RAM (SRAM) does not need to be refreshed like DRAM, and this
makes it much faster. Unfortunately, SRAM is also much more
expensive than DRAM and is used sparingly. SRAM tends to be
used in processor caches and DRAM tends to be used for wholesale
memory. Finally, there’s Video RAM (VRAM), which is a region of
memory used by video hardware. In the next chapter, there is an
example that demonstrates how to produce screen messages by
manipulating VRAM.
Recent advances in technology and special optimizations imple-
mented by certain manufacturers have led to a number of additional
acronyms. Here are a couple of them:
n DDR SDRAM
n RDRAM
n ESDRAM
DDR SDRAM stands for Double Data Rate Synchronous Dynamic
Random Access Memory. With DDR SDRAM, data is read on both
the rising and the falling of the system clock tick, basically doubling
the bandwidth normally available. RDRAM is short for Rambus
DRAM, a high-performance version of DRAM sold by Rambus that
can transfer data at 800 MHz. Enhanced Synchronous DRAM
(ESDRAM), manufactured by Enhanced Memory Systems, provides
a way to replace SRAM with cheaper SDRAM.
A bit is a single binary digit (i.e., a 1 or a 0). A bit in a RAM chip
is basically a cell structure that is made up of, depending on the type
of RAM, a certain configuration of transistors and capacitors. Each
cell is a digital switch that can either be on or off (i.e., 1 or 0). These
cells are grouped into 8-bit units call bytes. The byte is the funda-
mental unit for measuring the amount of memory provided by a
storage device. In the early years, hardware vendors used to imple-
ment different byte sizes. One vendor would use a 6-bit byte and
another would use a 16-bit byte. The de facto standard that every-
one seems to abide by today, however, is the 8-bit byte.
There is a whole set of byte-based metrics to specify the size of a
memory region:
1 byte = 8 bits
1 word = 2 bytes
1 double word = 4 bytes
Memory Management Mechanisms 5
Chapter 1
1 octal word = 8 bytes
1 paragraph = 16 bytes
1 kilobyte (KB) = 1,024 bytes
1 megabyte (MB) = 1,024KB = 1,048,576 bytes
1 gigabyte (GB) = 1,024MB = 1,073,741,824 bytes
1 terabyte (TB) = 1,024GB = 1,099,511,627,776 bytes
1 petabyte (PB) = 1,024TB = 1,125,899,906,842,624 bytes
Figure 1.1
Chapter 1
Figure 1.2
NOTE A recurring point that I will make throughout this book is the
high cost of disk input/output. As I mentioned previously, the latency
for accessing disk storage is on the order of milliseconds. This is a long
time from the perspective of a processor. The situation is analogous to
making a pizza run from a remote cabin in North Dakota. If you are
lucky, you have a frozen pizza in your freezer/cache and it will only
take 30 minutes to heat up. If you are not lucky, you will have to call
the pizza delivery guy (i.e., access the data from disk storage) and wait
for five hours as he makes the 150-mile trek to your cabin.
Using virtual memory is like making a deal with the devil. Sure, you
will get lots of extra memory, but you will pay an awful cost in terms
of performance. Disk I/O involves a whole series of mandatory
actions, some of which are mechanical. It is estimated that paging
on Windows accounts for roughly 10% of execution time. Managing
virtual memory requires a lot of bookkeeping on the part of the pro-
cessor. I will discuss the precise nature of this bookkeeping in a
later section.
ASIDE
I worked at an ERP company where one of the VPs used to
fine engineers for performing superfluous disk I/O. During
code reviews, he would grep through source code looking for
the fopen() and fread() standard library functions. We
were taught the basic lesson that you cached everything you
possibly could in memory and only moved to disk storage
when you absolutely had no other alternative (and even then
you needed permission). To the VP’s credit, the company’s
three-tier middleware suite was the fastest in the industry.
Disk storage has always been cheaper than RAM. Back in the 1960s
when 8KB of RAM was a big investment, using the disk to create
virtual memory probably made sense. Today, however, the cost dis-
crepancy between DRAM and disk drives is not as significant as it
was back then. Buying a machine with 512MB of SDRAM is not
unheard of. It could be that virtual memory will become a complete
relic or implemented as some sort of emergency safeguard.
Memory Management Mechanisms 9
Chapter 1
Each byte in DRAM is assigned a unique numeric identifier called
an address, just like houses on a street. An address is an integer
value. The first byte in memory is assigned an address of zero. The
region of memory near address zero is known as the bottom of mem-
ory, or low memory. The region of memory near the final byte is
known as high memory. The number of physical (i.e., DRAM) bytes
that a processor is capable of addressing is known as the processor’s
physical address space. (See Figure 1.3.)
Figure 1.3
Figure 1.4
When the processor reads from memory, the following steps are
performed:
1. The processor places the address of the byte to be read on the
address lines.
2. The processor sends the read signal on the control bus.
3. The DRAM chip(s) return the byte specified on the data bus.
When the processor writes to memory, the following steps are
performed:
1. The processor places the address of the byte to be written on
the address lines.
2. The processor sends the write signal on the control bus.
3. The processor sends the byte to be written to memory on the
data bus.
This description is somewhat of an oversimplification. For example,
the Pentium processor reads and writes data 4 bytes at a time. This
is one reason why the Pentium is called a 32-bit chip. The processor
will refer to its 32-bit payload using the address of the first byte
(i.e., the byte with the lowest address). Nevertheless, I think the
general operation is clear.
Memory Management Mechanisms 11
Chapter 1
You have seen how a processor reads and writes bytes to memory.
However, most processors also support two advanced memory man-
agement mechanisms: segmentation and paging.
Segmentation is instituted by breaking up a computer’s address
space into specific regions, known as segments. Using segmentation
is a way to isolate areas of memory so that programs cannot inter-
fere with one another. Segmentation affords what is known as
memory protection. It is possible to institute memory segmentation
without protection, but there are really no advantages to such a
scheme.
Under a segmentation scheme that enforces memory protection,
each application is assigned at least one segment. Large applications
often have several segments. In addition, the operating system will
also have its own custom set of segments. Segments are assigned a
specific set of access writes so that policies can be created with
regard to who can update what. Typically, the operating system code
segments will execute with the highest privilege and applications
will be loaded into segments with less authority.
Figure 1.5
The catch to all this is that the address of a byte in this artifi-
cial/virtual address space is no longer the same as the address that
the processor places on the address bus. This means that transla-
tion data structures and code will have to be established in order to
map a byte in the virtual address space to a physical byte (regard-
less of whether that byte happens to be in DRAM or on disk).
When the necessary paging constructs have been activated, the
virtual memory space is divided into smaller regions called pages. If
the operating system decides that it is running low on physical
memory, it will take pages that are currently stored in physical
memory and write them to disk. If segmentation is being used,
bookkeeping will have to be performed in order to match a given
page of memory with the segment that owns it. All of the account-
ing work is done in close conjunction with the processor so that the
performance hit associated with disk I/O can be kept to a minimum.
Figure 1.6
Chapter 1
decided to use the Pentium to help illustrate segmentation and pag-
ing. I would love to demonstrate theory with a MIPS64 processor,
but I can’t afford an SGI server (sigh). Being inexpensive is one of
the primary reasons for Intel’s continued success. Hackers, like me,
who couldn’t afford an Apple IIe back in the 1980s were left
scrounging for second-hand Intel boxes. There were thousands of
people who had to make this kind of financial decision. So, in a
sense, the proliferation of Intel into the workplace was somewhat of
a grass roots movement.
The Pentium class of processors is descended from a long line of
popular CPUs:
CPU Release Date Physical Address Space
8086 1978 1MB
8088 1979 1MB
80286 1982 16MB
80386 1985 4GB
80486 1989 4GB
Pentium 1993 4GB
Pentium Pro 1995 64GB
Pentium II 1997 64GB
Pentium III 1999 64GB
Pentium 4 2000 64GB
NOTE When the IBM PC came out in 1981, it shipped with a 4.77
MHz 8088. Without a doubt, mainframe developers were overjoyed.
This was because the PC gave them a place of their own. In those
days, the standard dummy terminals didn’t do anything more than
shuttle a data buffer back and forth to a mainframe. In addition, an
engineer had little or no control over when, or how, his code would be
run. The waiting could be agonizing. Tom Petty was right. Bribing a
sysop with pizza could occasionally speed things up, but the full court
grovel got tiring after a while. With an IBM PC, an engineer finally had
a build machine that was open all night with no waiting.
ASIDE
I know one CDC engineer, in particular, who ported a FOR-
TRAN ’77 compiler to a PC in 1982 for this very reason. His
supervisor would walk over and say: “Why do you want to run
on that little three-wheeler instead of the production ma-
chine?” His answer: “Because it is mine, damn it.” This one
statement probably summarizes the mindset that made PCs
wildly successful.
14 Chapter 1
Chapter 1
displayed in Figure 1.7.
Figure 1.7
As you can see, the “E” prefix has been removed from the regis-
ter names. In addition, each of the 16-bit general registers, AX, CX,
DX, and EX, can be manipulated in terms of two 8-bit registers. For
example, the AX register can be seen as the combination of the AH
and AL registers. The AH register refers to the high byte in AX,
and the AL register refers to the low byte in AX.
NOTE The memory and mode registers shown in Figure 1.2 are still
visible in real mode. They still exist if the processor is a 32-bit class
CPU but they have no significance or use in real mode. The only
exception to this rule is if you are trying to switch to protected mode.
Sometimes, for reasons that I will explain later, this is also written
as:
0x8200[0]:0x0100
Figure 1.8
NOTE The fact that there are six segment registers means that at
any time, only six segments of memory can be manipulated. A pro-
gram can have more than six segments, but only six can be accessible
at any one point in time.
Memory Management Mechanisms 17
Chapter 1
bits in size. Given that an offset address is 16 bits, this limits each
segment to 64KB in size.
QUESTION
If the segment address and offset address are both stored in
16-bit registers, how can the sum of two 16-bit values form a
20-bit value?
ANSWER
The trick is that the segment address has an implicit zero
added to the end. For example, a segment address of 0x0C00 is
treated as 0x0C000 by the processor. This is denoted, in practice,
by placing the implied zero in brackets (i.e., 0x0C00[0]). This is
where the processor comes up with a 20-bit value.
As you can see, the real mode segment/offset approach does provide
a crude sort of segmentation. However, at no point did I mention
that the boundaries between segments are protected. The ugly
truth is that there is no memory protection in real mode. When you
run a program in real mode, it owns everything and can run amok if
it wants.
Running an application in real mode is like letting a den of Cub
Scouts into your home. They’re young, spirited, and all hopped-up
on sugar. If you’re not careful, they will start tearing the house
down. Crashing a real mode machine is simple, and there is little
you can do to prevent it (other than back up your work constantly).
In case you are wondering, and I’m sure some of you are, here is
an example of a C program that can crash a computer running in real
mode:
/* --crashdos.c-- */
void main()
{
unsigned char *ptr;
int i;
Intel’s processors would never have made inroads into the enter-
prise with this kind of Mickey Mouse memory management. In an
attempt to support more robust operating systems and larger
address spaces, Intel came out with the 80386. The 80386 had a
physical address space of 4GB and supported a new mode of opera-
tion: protected mode.
Chapter 1
The best way to understand segmentation on Intel is to take a visual
look at how it is implemented. A picture is worth 1,024 words, and
that is particularly true in this case. So take a good, hard look at
Figure 1.9 and compare it to Figure 1.8. You might also want to
bookmark Figure 1.9 so that you can return to it when needed.
Figure 1.9
The first thing to note is that protected mode uses the full-blown
set of Pentium registers displayed in Figure 1.2. Back to 32-bit reg-
isters we go. Also, the segment registers no longer store 16-bit
segment address values. Instead, it holds what is known as a seg-
ment selector.
A segment selector is a 16-bit data structure containing three
fields. Its composition is displayed in Figure 1.10. The really impor-
tant field is the index field. The index field stores an index to a
descriptor table. Index values start at zero.
Figure 1.10
NOTE Almost all of the operating systems this book examines focus
on the GDT and offer very minimal use of the LDT (if they use it at all).
Figure 1.11
Memory Management Mechanisms 21
QUESTION
Chapter 1
How does the processor map a segment selector’s index to a
descriptor?
ANSWER
The processor takes the index, specified by the segment
selector, multiplies the index by eight (as in 8 bytes because
descriptors are 64 bits in length), and then adds this product to
the base address specified by GTDR or LDTR.
NOTE In case you are looking at Figure 1.2 and wondering about
the other two memory management registers, IDTR and TR, I did not
forget them. They are not as crucial to this discussion as GDTR and
LDTR. The IDTR and TR registers are used to manage hardware inter-
rupts and multitasking. This book is focused on pure memory
management, so I will not discuss these registers in any detail. If you
happen to be interested, I recommend that you pick up the Intel man-
ual referenced at the end of this chapter.
Figure 1.12
Standing behind her, under the amber glow of the big silk shaded
copper lamp, Jean sang softly, and all at once, her voice broke.
“What is it?” asked Bab, glancing up. “Tired?”
Jean’s lashes were wet with tears.
“I was wishing Mother were here too,” she answered. “She loves
all this so—just as I do. It’s awfully lonesome up there sometimes
without any of this.”
Bab reached up impulsively and threw her arms around her.
“I knew it,” she whispered. “I told Mother just from your letters
that you had Gileaditis and must come down.”
“Gileaditis?” laughed Jean. “That’s funny. Kit would love it. And
it’s what I have got too. I love the hills and the freedom, but, oh, it
is so lonely. Why, I love even to hear the elevated whiz by, and the
sound of the wheels on the paved streets again.”
“Jean Robbins,” Bab said solemnly. “You’re not a country robin at
all, you’re a city sparrow.”
CHAPTER VI
“ARROWS OF LONGING”
Jean slept late the next morning, late for a Greenacre girl at
least. Kit’s alarm clock was warranted to disturb anybody’s most
peaceful slumbers at 6 A. M. sharp, but here, with curtains drawn,
and the studio as warm as toast, Jean slept along until eight when
Justine came softly into the large room to pull back the heavy
curtains, and say chocolate and toast were nearly ready.
“Did you close the big house at the Cove?” Jean asked, while
they were dressing.
“Rented it furnished. With Brock away at college and me here at
the Academy, Mother thought she’d let it go, and stay with me. She’s
over at Aunt Win’s while I’m at classes. They’ve got an apartment for
the winter around on Central Park South because Uncle Frank can’t
bear commuting in the winter time. We’ll go over there before you
go back home. Aunt Win’s up to her ears this year in American Red
Cross work, and you’ll love to hear her talk.”
“Do you know, Bab,” Jean said suddenly, “I do believe that’s what
ails Gilead. Nobody up there is doing anything different this winter
from what they have every winter for the last fifty years. Down here
there’s always something new and interesting going on.”
“Yes, but is that good? After a while you expect something new
all the time, and you can’t settle down to any one thing steadily.
Coming, Justine, right away.”
“Good morning, you lazy kittens,” said Mrs. Crane, laying aside
her morning paper in the big, chintz-cushioned rattan chair by the
south window. “I’ve had my breakfast. I’ve got two appointments
this morning and must hurry.”
“Mother always mortgages tomorrow. I’ll bet anything she’s got
her appointment book filled for a month ahead. What’s on for today,
dear?”
“Dentist and shopping with your Aunt Win. I shall have lunch
with her, so you girls will be alone. There are seats for a recital at
Carnegie Hall if you’d enjoy it. I think Jean would. It’s Kolasky the
’cellist, and Mary Norman. An American girl, Jean, from the Middle
West, you’ll be interested in her. She sings folk songs beautifully. Bab
only likes orchestral concerts, but if you go to this, you might drop in
later at Signa’s for tea. It’s right upstairs, you know, Bab, and not a
bit out of your way. Aunt Win and I will join you there.”
“Isn’t she the dearest, bustling Mother,” Bab said, placidly, when
they were alone. “Sometimes I feel ages older than she is. She has
as much fun trotting around to everything as if New York were a
steady sideshow. Do you want to go?”
“I’d love to,” Jean answered frankly. “I’ve been shut up away
from everything for so long that I’m ready to have a good time
anywhere. Who’s Signa?”
“A girl Aunt Win’s interested in. She’s Italian, and plays the violin.
Jean Robbins, do you know the world is just jammed full of people
who can do things, I mean unusual things like painting and playing
and singing, better than the average person, and yet there are only
a few who are really great. It’s such a tragedy because they all keep
on working and hoping and thinking they’re going to be great. Aunt
Win has about a dozen tucked under her wing that she encourages,
and I think it’s perfectly deadly.”
Bab planted both elbows on the little square willow table, holding
her cup of chocolate aloft, her straight brows drawn together in a
pucker of perplexity.
“Because they won’t be great geniuses, you mean?”
“Surely. They’re just half way. All they’ve got is the longing, the
urge forward.”
Jean smiled, looking past her at the view beyond the yellow
curtains and box of winter greens outside. There was a little
courtyard below with one lone sumac tree in it, and red brick walks.
A black and white cat licked its paws on the side fence. From a
clothes line fluttered three pairs of black stockings. The voices of the
little Vatellis floated up as they played house in the sunshine.
“Somebody wrote a wonderful poem about that,” she said. “I
forget the name, but it’s about those whose aims were greater than
their ability, don’t you know what I mean? It says that the work isn’t
the greatest thing, the purpose is, the dream, the vision, even if you
fall short of it. I know up home there’s one dear little old lady, Miss
Weathersby. We’ve just got acquainted with her. She’s the last of
three sisters who were quite rich for the country. Doris found her,
way over beyond the old burial ground, and she was directing some
workmen. Doris said they were tearing down a long row of old sheds
and chicken houses that shut off her view of the hills. She said she’d
waited for years to clear away those sheds, only her sisters had
wanted them there because their grandfather had built them. I think
she was awfully plucky to tear them down, so she could sit at her
window and see the hills. Maybe it’s the same way with Signa and
the others. It’s something if they have the eyes to see the hills.”
“Maybe so,” Bab said briskly. “Maybe I can’t see them myself, and
it’s just a waste of money keeping me at the Academy. I’m not a
genius, and I’ll never paint great pictures, but I am going to be an
illustrator, and while I’m learning I can imagine myself all the
geniuses that ever lived. You know, Jean, we were told, not long
ago, to paint a typical city scene. Well, the class went in for the
regulation things, Washington Arch and Grant’s Tomb, Madison
Square and the opera crowd at the Met. Do you know what I did?”
She pushed back her hair from her eager face, and smiled. “I went
down on the East Side at Five Points, right in the Italian quarter, and
you know how they’re always digging up the streets here after the
gas mains or something that’s gone wrong? Well, I found some
workmen resting, sitting on the edge of the trench eating lunch in
the sunlight, and some kiddies playing in the dirt as if it were sand.
Oh, it was dandy, Jean, the color and composition and I caught it all
in lovely splashes. I just called it ‘Noon.’ Do you like it?”
“Splendid,” said Jean.
Bab nodded happily.
“Miss Patmore said it was the best thing I had done, the best in
the class. You can find beauty anywhere if you look for it.”
“Oh, it’s good to be down talking to you again,” Jean exclaimed.
“It spurs one along so to be where others are working and thinking.”
“Think so?” Bab turned her head with her funny quizzical smile.
“You ought to hear Daddy Higginson talk on that. He’s head of the
life class. And he runs away to a little slab-sided shack somewhere
up on the Hudson when he wants to paint. He says Emerson or
Thoreau wrote about the still places where you ‘rest and invite your
soul,’ and about the world making a pathway to your door, too. Let’s
get dressed. It’s after nine, and I have to be in class at ten.”
It was now nearly a year since Jean herself had been a pupil at
the art school. She had gone into the work enthusiastically when
they had lived at the Cove on Long Island, making the trip back and
forth every day on the train. Then had come her father’s breakdown
and the need of the Robbins’ finding a new nest in the hills where
expenses were light. As she turned the familiar street with Bab, and
came in sight of the gray stone building, she couldn’t help feeling
just a little thrill of regret. It represented so much to her, all the aims
and ambitions of a year before.
As they passed upstairs to Bab’s classroom, some of the girls
recognized her and called out a greeting. Jean waved her hand to
them, but did not stop. She was too busy looking at the sketches
along the walls, listening to the familiar sounds through open doors,
Daddy Higginson’s deeply rounded laugh; Miss Patmore’s clear voice
calling to one of the girls; Valleé, the lame Frenchman, standing with
his arm thrown about a lad’s shoulders, pointing out to him mistakes
in underlay of shadows. Even the familiar smell of turpentine and
paint made her lift her nose as Princess did to her oats.
“Valleé’s so brave,” Bab found time to say, arranging her crayons
and paper on her drawing board. “Do you remember the girl from
the west who only wanted to paint marines, Marion Poole? Well, she
joined Miss Patmore’s Maine class last summer and Valleé went
along too, as instructor. She’s about twenty-four, you know, older
than most of us, but Miss Patmore says she really has genius.
Anyway, she was way out on the rocks painting and didn’t go back
with the class. And the tide came in. Valleé went after her, and they
say he risked his life swimming out to save her when he was lame.
They’re married now. See her over there with the green apron on?
They’re giving a costume supper Saturday night and we’ll go.”
“I haven’t anything to wear,” Jean said hastily.
“Mother’ll fix you up. She always can,” Bab told her comfortably.
“Let’s speak to Miss Patmore before class. She’s looking at you.”
Margaret Patmore was the girls’ favorite teacher. The daughter of
an artist herself, she had been born in Florence, Italy, and brought
up there, later living in London and then Boston. Jean remembered
how delightful her noon talks with her girls had been of her father’s
intimate circle of friends back in Browning’s sunland. It had seemed
so interesting to link the past and present with one who could
remember, as a little girl, visits to all the art shrines. Jean had always
been a favorite with her. The quiet, imaginative girl had appealed to
Margaret Patmore perhaps because she had the gift of visualizing
the past and its great dreamers. She took both her hands now in a
firm clasp, smiling down at her.
“Back again, Jean?”
“Only for a week or two, Miss Patmore,” Jean smiled, a little
wistfully. “I wish it were for longer. It seems awfully good to be here
and see you all.”
“Have you done any work at all in the country?”
Had she done any work? A swift memory of the real work of
Greenacres swept over Jean, and she could have laughed.
“Not much.” She shook her head. “I sort of lost my way for a
while, there was so much else that had to be done, but I’m going to
study now.”
“Sit with us and make believe you are back anyway. Barbara,
please show her Frances’s place. She will not be here for a week.”
So just for one short week, Jean could make believe it was all
true, that she was back as a “regular.” Every morning she went with
Bab, and joined the class, getting inspiration and courage even from
the teamwork. Late afternoons there was always something different
to take in. That first day they had gone up to the recital at Carnegie
Hall. Jean loved the ’cello, and it seemed as if the musician chose all
the themes that always stirred her. Chopin’s Nocturne in E Flat; one
of the Rhapsodies, she could not remember which, but it always
brought to her mind firelight and gypsies; and a tender, little
haunting melody called “Petit Valse.” Up home she had played it
often for her father at twilight and it always made her long for the
unfulfilled hopes. And then the “Humoreske,” whimsical, questioning,
it seemed to wind itself around her heart and tease her about all her
yearnings.
Miss Norman sang Russian folk songs and some Hebrides
lullabies.
“I’m not one bit crazy over her,” said Bab in her matter-of-fact
way. “She looks too wholesome and solid to be singing that sort of
music. I’d like to see her swing into Brunhilde’s call or something like
that. She’d wake all the babies up with those lullabies.”
“You make me think of Kit,” Jean laughed. “She always thinks out
loud and says the first thing that comes to her lips.”
“I know.” Bab’s face sobered momentarily as they came out of
the main entrance and went around to the studio elevator. “Mother
says I’ve never learned inhibition, and that made me curious. Of
course, she meant it should. So I hunted up what inhibition meant in
psychology and it did rather stagger me. You act on impulse, but if
you’d only have sense enough to wait a minute, the nerves of
inhibition beat the nerves of impulse, and reason sets in. I can’t bear
reason, not yet. The only thing I really enjoyed in Plato was the
death of Socrates.”
“That’s funny. Kit said something about that a little while ago, the
sunset, and his telling someone to pay for a chicken just as he took
the poisoned cup.”
“I’d like to paint it.” Bab’s gray eyes narrowed as if she saw the
scene. “Why on earth haven’t the great artists done things like that
instead of spotted cows and windmills.”
Before Jean could find an answer, they had reached Signa
Patrona’s studio. It seemed filled with groups of people. Jean had a
confused sense of many introductions, and Signa herself, a tall,
slender girl in black with a rose made of gold tissue fastened in her
dusky, low coiled hair. She rarely spoke, but smiled delightfully. The
girls found Mrs. Crane and her sister in a corner.
“Aunt Win,” said Bab. “Here’s your country girl. Isn’t she
blooming? Talk to her while I get some tea.”
“My dear,” Mrs. Everden surveyed her in a benevolent, critical
sort of fashion, “you’re improved. The last time I saw you, was out
at Shady Cove. You and your sisters were in some play I think, given
by the Junior Auxiliary of the Church. You live in the country now,
Barbara tells me. I have friends in the Berkshires.”
“Oh, but we’re way over near the Rhode Island border,” Jean said
quickly. It seemed as if logically, all people who moved from Long
Island must go to the Berkshires. “It’s real country up there, Gilead
Centre. We’re near the old Post Road to Boston, from Hartford, but
nobody hardly ever travels over it any more.”
“We might motor over in the spring, Barbara would enjoy it. Are
the roads good in the spring, my dear?”
Visions of Gilead roads along in March and April flitted through
Jean’s mind. They turned into quagmires of yellow mud, and where
the frost did take a notion to steal away, the road usually caved in
gracefully after the first spring rains. Along the end of April after
everybody had complained, Tucker Hicks, the road committeeman,
would bestir himself leisurely and patch up the worst places. No
power in Gilead had ever been able to rouse Tucker to action before
the worst was over.
“Mother’d dearly love to have you come,” she said. “The only
thing we miss up there is the friendship of the Cove neighbors. If
you wouldn’t mind the roads, I know you’d enjoy it, but they are
awful in the spring. But nobody seems to mind a bit. One day down
at the station in Nantic I heard two old farmers talking, and one said
the mud up his way was clear up to the wheel hubs. ‘Sho,’ said the
other. ‘Up in Gilead, the wheels go all the way down in some places.’
Just as if they were proud of it.”
Mrs. Everden shook her head slowly, and looked at her sister.
“I can’t even imagine Bess Robbins living in such a forsaken
place.”
“Oh, but it isn’t forsaken,” protested Jean loyally. “And Mother
really enjoys it because it’s made Father nearly well.”
“And there’s no society at all up there?”
“Well, no, not exactly,” laughed Jean, shaking her head, “but
there are lots of human beings.”
“I could never endure it in this world.”
Jean thought privately that there are many things one has to
learn to endure whether or no, and someway, just that little talk
made her feel a wonderful love and loyalty towards the Motherbird
holding her home together up in the hills.
CHAPTER VII
THE CALL HOME
The second evening Aunt Win took them down to a Red Cross
Bazaar at her club rooms. Jean enjoyed it in a way, although after
the open air life and the quiet up home, overcrowded, steam-heated
rooms oppressed her. She listened to a famous tenor sing something
very fiery in French, and heard a blind Scotch soldier tell simply of
the comfort the Red Cross supplies had brought to the little wayside
makeshift hospital he had been taken to, an old mill inhabited only
by owls and martins until the soldiers had come to it. Then a tiny
little girl in pink had danced and the blind soldier put her on his
shoulder afterwards while she held out his cap. It was filled with
green bills, Jean saw, as they passed.
Then a young American artist, her face aglow with enthusiasm,
stood on the platform with two little French orphans, a boy and girl.
And she told of how the girl students had been the first to start the
godmother movement, to mother these waifs of war.
“Wonderful, isn’t it, the work we’re doing?” said Aunt Win briskly,
when it was over and they were in her limousine, bound uptown.
“Doesn’t it inspire you, Jean?”
“Not one single bit,” Jean replied fervently. “I think war is awful,
and I don’t believe in it. Up home we’ve made a truce not to argue
about it, because none of us agree at all.”
“Well, child, I don’t believe in it either, but if the boys will get into
these fights, it always has fallen to us women and always will, to
bind up the wounds and patch them up the best we can. They’re a
troublesome lot, but we couldn’t get along without them as I tell Mr.
Everden.”
“That sounds just like Cousin Roxy,” Jean said, and then she had
to tell all about who Cousin Roxy was, and her philosophy and good
cheer that had spread out over Gilead land from Maple Lawn.
Better than the bazaar, she had liked the little supper at the
Valleé’s studio. Mrs. Crane had found a costume for her to wear, a
white silk mandarin coat with an under petticoat of heavy peach
blossom embroidery, and Bab had fixed her dark hair in quaint
Manchu style with two big white chrysanthemums, one over each
ear. Bab was a Breton fisher girl in a dark blue skirt and heavy linen
smock, with a scarlet cap on her head, and her blonde hair in two
long heavy plaits.
The studio was in the West Forties, over near Third Avenue. The
lower floor had been a garage, but the Valleé’s took possession of it,
and it looked like some old Florentine hall in dark oak, with dull red
velvet tapestry rugs and hangings. A tall, thin boy squatted
comfortably on top of a chest across one corner, and played a
Hawaiian ukulele. It was the first time Jean had heard such music,
and it made her vaguely homesick.
“It always finds the place in your heart that hurts and wakes it
up,” Bab told her. “That’s Piper Pearson playing. You remember the
Pearsons at the Cove, Talbot and the rest? We call him Piper
because he’s always our maker of sounds when anything’s doing.”
Piper stopped twanging long enough to shake hands and smile.
“Coming down to the Cove?”
“I don’t think so, not this time,” Jean said, regretfully. She would
have loved a visit back at the old home, and still it might only have
made her dissatisfied. As Kit said, “Beware of the fleshpots of Egypt
when one is living on corn bread and Indian pudding.”
Marion Valleé remembered her at once, and had the girls help
make sandwiches behind a tall screen. Rye bread sliced very thin,
and buttered with sweet butter, then devilled crabmeat spread
between. That was Bab’s task. Jean found herself facing a Japanese
bowl of cream cheese, bottle of pimentoes and some chopped
walnuts.
Later there was dancing, Jean’s first dance in a year, and Mrs.
Crane smiled at her approvingly when she finished and came to her
side.
“It’s good to watch you enjoy yourself. Jean, I want you to meet
the youngest of the boys here tonight. He’s come all the way east
from the Golden Gate to show us real enthusiasm.”
Jean found herself shaking hands with a little white haired
gentleman who beamed at her cheerfully, and proceeded to tell her
all about his new picture, the Golden Gate at night.
“Just at moonrise, you know, with the reflections of the signal
lights on ships in the water and the moon shimmer faintly rising. I
have great hopes for it. And I’ve always wanted to come to New
York, always, ever since I was a boy.”
“He’s eighty-three,” Mrs. Crane found a chance to whisper. “Think
of him adventuring forth with his masterpiece and the fire of youth
in his heart.”
A young Indian princess from the Cherokee Nation stood in the
firelight glow, dressed in ceremonial garb, and recited some strange
folk poem of her people, about the “Trail of Tears,” that path trod by
the Cherokees when they were driven forth from their homes in
Georgia to the new country in the Osage Mountains. Jean leaned
forward, listening to the words, they came so beautifully from her
grave young lips, and last of all the broken treaty, after the lands
had been given in perpetuity, “while the grass grows and the waters
flow.”
“Isn’t she a darling?” Bab said under her breath. “She’s a college
girl too. I love to watch her eyes glow when she recites that poem.
You know, Jean, you can smother it under all you like, not you, of
course, but we Americans, still the Indian is the real thing after all.
Mother Columbia has spanked him and put him in a corner and told
him to behave, but he’s perfectly right.”
Jean laughed contentedly. In her other ear somebody else was
telling her the Princess was one fourth Cherokee and the rest
Scotch. But it all stimulated and interested her. As Kit would have
said, there was something new doing every minute down here. The
long weeks of monotony in Gilead faded away. Nearly every day
after class Mrs. Everden took the girls out for a spin through the
Park in her car, and twice they went home with her for tea in her
apartment on Central Park South. It was all done in soft browns and
ivories, and Uncle Frank was in brown and ivory too, a slender
soldierly gentleman with ivory complexion and brown hair just
touched with gray. He said very little, Jean noticed, but listened
contentedly to his wife chat on any subject in her vivacious way.
“I trust your father is surely recovering up there,” he said once,
as Jean happened to stand beside him near a window, looking down
at the black swans preening themselves on a tiny island below. “I
often think how much better it would be if we old chaps would take
a playtime now and then instead of waiting until we’re laid up for
repairs. Jerry was like I am, always too busy for a vacation. But he
had a family to work for, and Mrs. Everden and I are alone. I’d like
mighty well to see him. What could I send him that he’d enjoy?”
“Oh, I don’t know,” Jean thought anxiously. “I think he loves to
read now, more than anything, and he was saying just before I left
he wished he had some new books, books that show the current
thought of the day, you know what I mean, Mr. Everden. I meant to
take him up a few, but I wasn’t sure which ones he would like.”
“Let me send him up a box of them,” Mr. Everden’s eyes twinkled.
“I’ll wake him up. And tell him for me not to stagnate up there. Rest
and get well, but come back where he belongs. There comes a point
after a man breaks down from overwork, when he craves to get
back to that same work, and it’s the best tonic you can give him, to
let him feel and know he’s got his grip back and is standing firmly
again. I’ll send the books.”
Sunday Bab planned for them to go to service down at the
Church of the Ascension on lower Fifth Avenue, but Mrs. Crane
thought Jean ought to hear the Cathedral music, and Aunt Win was
to take them in the evening to the Russian Church for the wonderful
singing there.
Jean felt amused and disturbed too, as she dressed. Up home
Cousin Roxy said she didn’t have a mite of respect for church
tramps, those as were forever gadding hither and yon, seeking
diversion in the houses of the Lord. Still, when she reached the
Cathedral, and heard the familiar words resound in the great stone
interior, she forgot everything in a sense of reverence and peace.
After service, Mrs. Crane said she must run into the children’s
ward across the street at St. Luke’s to see how one of her settlement
girls was getting along. Bab and Jean stayed down in the wide
entrance hall, until the latter noticed the little silent chapel up the
staircase at the back.
“Oh, Bab, could we go in, do you think?” she whispered.
Bab was certain they could, although service was over. They
entered the chapel, and knelt quietly at the back. It was so different
from the great cathedral over the way, so silent and shadowy, so
filled with the message to the inner heart, born of the hospital, “In
the midst of life ye are in death.”
“That did me more good than the other,” Jean said, as they went
downstairs to rejoin Mrs. Crane. “I’m sure worship should be silent,
without much noise at all. Up home the little church is so small and
sort of holy. You just have that feeling when you go in, and still it’s
very plain and poorly furnished, and we haven’t a vested choir. The
girls sing, and Cousin Roxy plays the organ.”
Bab sighed.
“Jean, you’re getting acclimated up there. I can see the signs.
Even now your heart’s turning back home. Never mind. We’ll listen
to Aunt Win’s Russian choir tonight, and that shall suffice.”
In the afternoon, some friends came in for tea, and Jean found
her old-time favorite teacher, Daddy Higginson, as all the girls called
him at the school. He was about seventy, but erect and quick of step
as any of the boys; smooth shaven, with iron gray hair, close cut and
curly, and keen, whimsical brown eyes. He was really splendid
looking, she thought.
“You know, Jeanie,” he began, slipping comfortably down a trifle
in his easy chair, as Bab handed him a third cup of tea, “you’re
looking fine. How’s the work coming along up there in your hill
country? Doing anything?”
Jean flushed slightly.
“Nothing in earnest, Mr. Higginson. I rather gave up even the
hope of going on with it, after we went away.”
“You couldn’t give it up if it is in you,” he answered. “That’s one
of the charms and blessings of the divine fire. If it ever does start a
blaze in your soul’s shrine, it can never be put out. They can
smother it down, and stamp on it, and cover it up with ashes of
dead hopes, all that, but sure as anything, once the mind is relaxed
and at peace with itself, the fire will burn again. You’re going back, I
hear from Bab.”
Jean nodded.
“I’m the eldest, and the others are all in school. I’m needed.”
He smiled, looking down at the fire Justine had prepared for
them on the wide hearth.
“That’s all right. Anything that tempers character while you’re
young, is good for the whole system. I was born out west in Kansas,
way back in pioneer days. I used to ride cattle for my father when I
was only about ten. And, Lord Almighty, those nights on the plains
taught my heart the song of life. I wouldn’t take back one single
hour of them. We lived in a little dugout cabin, two rooms, that’s all,
and my mother came of a fine old colonial family out of Colebrook,
in your state. She made the trip with my father and two of us boys,
Ned and myself. I can just remember walking ahead of the big
wagon with my father, chopping down underbrush and trees for us
to get through.”
“Wasn’t it dangerous?” asked Jean, eagerly.
“Dangerous? No! The Indians we met hadn’t learned yet that the
white man was an enemy. We were treated well by them. I know
after we got settled in the little house, baking day, two or three of
them would stand outside the door, waiting while my mother baked
bread, and cake and doughnuts and cookies, in New England style,
just for all the world like a lot of hungry, curious boys, and she
always gave them some.”
“Did you draw and paint them?”
He laughed, a round, hearty laugh that made Mrs. Crane smile
over at them.
“Never touched a brush until after I was thirty. I loved color and
could see it. I knew that shadows were purple or blue, and I used to
squint one eye to get the tint of the earth after we’d ploughed, dull
rusty red like old wounds, it was. First sketch I ever drew was one of
my sister Polly. She stood on the edge of a gully hunting some stray
turkeys. I’ve got the painting I made later from that sketch. It was
exhibited too, called ‘Sundown.’ ”
“Oh, I saw it,” Jean exclaimed. “The land is all in deep blues and
hyacinth tones and the sky is amber and the queerest green, and
her skirt is just a dash of red.”
“That’s what she always made me think of, a dash of red. The
red that shows under an oriole’s wing when he flies. She was
seventeen then. About your age, isn’t that, Jeanie?”
He glanced at her sideways. Jean nodded.
“I thought so, although she looked younger with her hair all
down her back, and short dresses on.”
“I—I hope she didn’t die,” said Jean, anxiously.
“Die? Bless your heart,” he laughed again. “She’s living up in
Colebrook. Went back over the old trail her mother had travelled, but
in a Pullman car, and married in the old home town. Pioneer people
live to be pretty old. Just think, girlie, in your autumn of life, there
won’t be any of us old timers left who can remember what a dugout
looked like or a pioneer ox cart.”
“It must have been wonderful,” Jean said. “Mother’s from the
west too, you know, only way out west, from California. Her brother
has the big ranch there now where she was born, but she never
knew any hardships at all. Everything was comfortable and there
was always plenty of money, she says, and it never seemed like the
real west to us girls, when she’d tell of it.”
“Oh, but it is, the real west of the last forty years, as it is grown
up to success and prosperity. Ned lives out there still, runs for the
State Legislature now and then, keeps a couple of automobiles, and
his girls can tell you all that’s going on in the world just as easily as
they can bake and keep house if they have to. If I keep you here
talking any longer to an old fellow like myself, the boys won’t be
responsible for their action. You’re a novelty, you know, Piper’s
glaring at me.”
He rose leisurely, and went over beside Aunt Win’s chair, and
Piper Pearson hurried to take his place.
“I thought he’d keep you talking here all night. And you sat there
drinking it all in as if you liked it.”
“I did,” said Jean, flatly. “I loved it. I haven’t been here at all. I’ve
been way out on the Kansas prairie.”
“Stuff,” said Piper calmly. “Say, got any good dogs up at your
place?”
“No, why?” Jean looked at him with sudden curiosity.
“Nothing, only you remember when you were moving from the
Cove, Doris sold me her Boston bull pup Jiggers?”
“Oh, I know all about it.” As if she could ever forget how they
had all felt when Doris parted with her dearest treasure and brought
the ten dollars in to add to the family fund.
“We’ve got some dandy puppies. I was wondering whether you’d
take one home to Doris from me if I brought it in.”
“I’d love to,” said Jean, her face aglow. It was just like a boy to
think of that, and how Doris would love it, one of Jiggers’ own
family. “I think we’ll call it Piper, if you don’t mind.”
Piper didn’t mind in the least. In fact, he felt it would be a sign of
remembrance, he said. And he would bring in the puppy as soon as
Jean was ready to go home.
“But you needn’t hurry her,” Bab warned, coming to sit with
them. “She’s only been down a week, and I’m hoping if I can just
stretch it along rather unconsciously, she’ll stay right through the
term, the way she should.”
Jean felt almost guilty, as her own heart echoed the wish. How
she would study, if only it could happen. Yet there came the tug of
homesickness too, along the end of the second week. Perhaps it was
Kit’s letter that did it, telling how the house was at sixes and sevens
without her, and Mother had to be in fifty places at once.
Jean had to laugh over that part though, for Kit was noted for
her ability to attend to exactly one thing at a time.
“Now, Shad, I can’t attend to more than one thing at a time, you
know.”
“Can’t you?” Shad had responded, meditatively. “Miss Roxy can
tend to sixty-nine and a half things at the same time with her eyes
shut and one hand tied.”
Then suddenly, out of the blue sky came the bolt. It was a
telegram signed “Mother.”
“Come at once. Am leaving for California.”
Jean never stopped to think twice. It was the call to duty, and
she caught the noon train back to Gilead Center.
CHAPTER VIII
SEEKING HER GOAL
All the way up on the train Jean kept thinking about Daddy
Higginson’s last words when he had held her hand at parting.
“This isn’t my thought, Jeanie, but it’s a good one even if
Nietzsche did write it. As I used to tell you in class about Pope and
Socrates and all the other warped geniuses, think of a man’s physical
suffering before you condemn what he has written. Carlyle might
have been our best optimist if he’d only discovered pepsin tablets,
and lost his dyspepsia. Here it is, and I want you to remember it, for
it goes with arrows of longing. The formula for happiness: ‘A yea, a
nay, a straight line, a goal.’ ”
It sounded simple enough. Jean felt all keyed up to new
endeavor from it, with a long look ahead at her goal, and patience to
wait for it. She felt she could undertake anything, even the care of
the house during her mother’s absence, and that was probably what
lay behind the telegram.
When Kit met her at the station, she gave her an odd look after
she had kissed her.
“Lordy, but you do look Joan of Arc-ish, Jean. You’d better not be
lofty up home. Everything’s at sixes and sevens.”
“I’m not a bit Joan of Arc-ish,” retorted Jean, with a flash of true
Robbins spirit. “What’s the trouble?”
Kit gathered up the reins from Princess’s glossy back, and started
her up the hill. Mr. Briggs had somehow been evaded this time.
There was a good coating of snow on the ground and the pines
looked weighed down by it, all silver white in the sunshine, and
green beneath.
“Nothing much, except that—what on earth have you got in the
bag, Jean?”
Jean had forgotten all about the puppy. Piper had kept his word
and met her at the train with Jiggers’ son, a sleepy, diminutive
Boston bull pup all curled up comfortably in a wicker basket with
little windows, and a cosy nest inside. He had started to show signs
of personal interest, scratching and whining as soon as Jean had set
the bag down at her feet in the carriage.
“It’s for Doris. Talbot Pearson sent it up to her to remember
Jiggers by.”
“Jiggers?”
“It’s Jiggers’ baby,” said Jean solemnly. “Looks just like him, too.
His name is Piper. Won’t she love him, Kit?”
“I suppose so,” said Kit somewhat ungraciously. “I haven’t room
for one bit of sentiment after the last few days. You’ve been having
a round of joy and you’re all rested up, but if you’d been here, well
. . .” eloquently. “First of all there came a letter from Benita Ranch.
Uncle Hal’s not expected to live and they’ve sent for Mother. Seems
to me as if everyone sends for Mother when anything’s the matter.”
“But Father isn’t going way out there too, is he?”
“Yes. They’ve wired money for both of them to go, and stay for a
month anyway, and Cousin Roxy says it’s the right thing to do. She’s
going to send Mrs. Gorham, the Judge’s housekeeper, to look after
us. Now, Jean, don’t put up any hurdles to jump over because it’s
bad enough as it is, and Mother feels terribly. She’d never have gone
if Cousin Roxy hadn’t bolstered up her courage, but they say the trip
will do Father a world of good and he’ll miss the worst part of the
winter, and after all, we’re not babies.”
Jean was silent. It seemed as if the muscles in her throat had all
tightened up and she could not say one word. They must do what
was best, she knew that. It had been driven into her head for a year
past, that always trying to do what was best, but still it did seem as
if California were too far away for such a separation. The year
before, when it had been necessary to take Mr. Robbins down to
Florida, it had not seemed so hard, because at Shady Cove they
were well acquainted, and surrounded by neighbors, but here—she
looked out over the bleak, wintry landscape and shivered. It had
been beautiful through the summer and fall, but now it was barren
and cheerless. The memory of Bab’s cosy studio apartment came
back to her, and a quick sense of rebellion followed against the fate
that had cast them all up there in the circle of those hills.
“You brace up now, Jean, and stop looking as if you could chew
tacks,” Kit exclaimed, encouragingly. “We all feel badly enough and
we’ve got to make the best of it, and help Mother.”
The next few days were filled with preparations for the journey.
Cousin Roxy came down and took command, laughing them out of
their gloom, and making the Motherbird feel all would be well.
“Laviny don’t hustle pretty much,” she said, speaking of old Mrs.
Gorham, who had been the Judge’s housekeeper for years. “But
she’s sure and steady and a good cook, and I’ll drive over every few
days to see things are going along as they should, and there’s the
telephone too. Bless my heart, if these big, healthy girls can’t look
after themselves for a month, they must be poor spindling
specimens of womanhood. I tell you, Betty, it’s trials that temper the
soul and body. You trot right along and have a second honeymoon in
the land of flowers. And if it’s the Lord’s will your brother should be
taken, don’t rebel and pine. I always wished we had the same
outlook as Bunyan did from his prison cell when he wrote of the
vision on Jordan’s bank, when those left on this side sang and
glorified God if one was taken home. Remember what Paul said, ‘For
ye are not as those who have no hope.’ Jean, put in your mother’s
summer parasol. She’s going to need it.”
Shad drove them down to the station in a snowstorm. Jean stood
in the doorway with Cousin Roxy and Mrs. Gorham, waving until
they passed the turn of the road at the mill. The other girls were at
school, and the house seemed fearfully lonely to her as she turned
back and fastened the storm doors.
“Now,” Cousin Roxy said briskly, drawing on her thick knit woolen
driving gloves, “I’m going along myself, and do you stand up
straight, Jean Robbins, and take your mother’s place.” She mitigated
the seeming severity of the charge by a sound kiss and a pat on the
shoulder. “I brought a ham down for you chicks, one of the Judge’s
prize hickory home smoked ones, and there’s plenty in the cellar and
the preserve closet. You’d better let Laviny go along her own gait.
She always seems to make out better that way. Just you have an
oversight on the girls and keep up the good cheer in the house. Pile
on the logs and shut out the cold. While they’re away, if I were you
I’d close up the big front parlor, and move the piano out into the
living-room where you’ll get some good of it. Goodbye for now. Tell
Laviny not to forget to set some sponge right away. I noticed you
were out of bread.”
Ella Lou took the wintry road with zest, the steam clouding her
nostrils, as she shook her head with a snort, and breasted the hill
road. Jean breathed a sigh as the familiar carriage disappeared over
the brow of the hill. Out in the dining-room, Mrs. Gorham was
moving placidly about as if she had always belonged there,
humming to herself an old time song.
“When the mists have rolled in splendor, from the beauty of the hills,
And the sunshine warm and tender, falls in kisses on the rills,
We may read love’s shining letter, in the rainbow of the spray,
We shall know each other better, when the mists have cleared away.”
When Shad returned from the station, he came into the kitchen
with a load of wood on his arm, stamping his feet, and whistling.
“Seen anything of Joe?” he asked. “I ain’t laid eyes on the little
creature since breakfast, and he was going to chop up my kindling
for me. I’ll bet a cookie he’s took to his heels. He’s been acting funny
for several days ever since that peddler went along here.”
“Oh, not really, Shad,” said Jean, anxiously. She had overlooked
Joe completely in the hurry of preparations for departure. “What
could happen to him?”
“Nothing special,” answered Shad dryly, “ ’cepting an ingrowing
dislike for work.”
“You can’t expect a little fellow only nine to work very hard, can
you?”
“Well, he should earn his board and keep, I’ve been telling him.
And he don’t want to go to school, he says. He’s got to do
something. He keeps asking me when I’m going down to Nantic.
Looks suspicious to me!”
“Nantic? Do you suppose—” Jean stopped short. Shad failed to
notice her hesitancy, but went on out doors. Perhaps the boy was
wondering if he could get any trace of his father down at Nantic, she
thought. There was a great deal of the Motherbird’s nature in her
eldest robin’s sympathy and swift, sure understanding of another’s
need. She kept an eye out for Joe all day, but the afternoon passed,
the girls came home from school, and supper was on the table
without any sign of their Christmas waif. And finally, when Shad
came in from bedding down the cows and milking, he said he was
pretty sure Joe had cut and run away.
“Do you think it’s because he didn’t want to stay with us while
Mother and Father were away?” asked Helen.
“No, I don’t,” Shad replied. “I think he’s just a little tramp, and he
had to take to the road when the call came to him. He wasn’t
satisfied with a good warm bed and plenty to eat.”
But Jean felt the responsibility of Joe’s loss, and set a lamp
burning all night in the sitting room window as a sign to light his way
back home. It was such a long walk down through the snow to
Nantic, and when he got there, Mr. Briggs would be sure to see him,
and make trouble for him. And perhaps he had wandered out into
the hills on a regular tramp and got lost. Just before she went up to
bed Jean called up Cousin Roxy and asked her advice.
“Well, child, I’d go to bed tonight anyway. He couldn’t have
strayed away far, and there are plenty of lights in the farmhouse
windows to guide him. I saw him sitting on the edge of the woodpile
just when your mother was getting ready to leave, and then he
slipped away. I wouldn’t worry over him. It isn’t a cold night, and the
snow fall is light. If he has run off, there’s lots of barns where he can
curl down under the hay and keep warm. When the Judge drives
down to Nantic tomorrow I’ll have him inquire.”
But neither tomorrow, nor the day after, did any news come to
them of Joe. Mr. Briggs was sure he hadn’t been around the station
or the freight trains. Saturday Kit and Doris drove around through
the wood roads, looking for footprints or some other signs of him,
and Jean telephoned to all the points she could think of, giving a
description of him, and asking them to send the wanderer back if
they found him. But the days passed, and it looked as if Joe had
joined the army of the great departed, as Cousin Roxy said.
Before the first letter reached them from California, telling of the
safe arrival at Benita Ranch of Mr. and Mrs. Robbins, winter decided
to come and stay a while. There came a morning when Shad had
hard work opening the storm door of the kitchen, banked as it was
with snow. Inside, from the upper story windows, the girls looked
out, and found even the stone walls and rail fences covered over
with the great mantle that had fallen steadily and silently through
the night. There was something majestically beautiful in the sweep
of the valley and its encircling hills, seen in this garb.
“You’ll never get to school today, girls,” Mrs. Gorham declared.
“Couldn’t get through them drifts for love nor money. ’Twouldn’t be
human, nuther, to take any horse out in such weather. Like enough
the mailman won’t pull through. Looks real pretty, don’t it?”
“And, just think, Mother and Father are in summerland,” Helen
said, standing with her arm around Jean at the south window. “I
wish winter wouldn’t come. I’m going to follow summer all around
the world some time when I’m rich.”
“Helenita always looks forward to that happy day when the
princess shall come into her own,” Kit sang out, gleefully. “Meantime,
ladies, I want to be the first to tell the joyous tidings. The pump’s
frozen up.”
“Shad’ll have to take a bucket and go down to the spring then,
and break through the ice,” Mrs. Gorham said, comfortably. “After
you’ve lived up here all your life, you don’t mind such little things.
It’s natural for a pump to freeze up this sort of weather.”
“You know,” Kit said darkly to Jean, a few minutes later, in the
safety of the sitting room, “I’m not sure whether I want to be an
optimist or not. I think sometimes they’re perfectly deadly, don’t
you, Jean? I left my window open at the bottom last night instead of
the top, and this morning, my dear child, there was snow on my
pillow. Yes, ma’am, and when I told that to Mrs. Gorham, she told
me it was good and healthy for me, and I ought to have rubbed
some on my face. Let’s pile in a lot of wood and get it nice and
toasty if we do have to stay in today. Who’s Shad calling to?”
Outside they heard Shad’s full toned voice hailing somebody out
in the drifts, and presently Piney came to the door stamping her
feet. She wore a pair of Honey’s old “felts,” the high winter boots of
the men folks of Gilead, and was muffled to her eyebrows.
“I walked over this far anyway,” she said happily. “Couldn’t get
through with the horse. I wondered if we couldn’t get down to the
mill, and borrow Mr. Peckham’s heavy wood sled, and try to go to
school on that.”
“We can’t break through the roads,” objected Doris.
“They’re working on them now. Didn’t you hear the hunters come
up in the night? The barking of the dogs wakened us, and Mother
said there were four big teams going up to the camp.”
Just then the door opened and Shad came in with the morning’s
milk, his face aglow, his breath steaming.
“Well, it does beat all,” he exclaimed, taking off his mittens and
slapping his hands together. “What do you suppose? It was dark last
night and snowing when I drove the cows up from the barnyard.
They was all huddled together like, and I didn’t notice them. Well,
this morning I found a deer amongst ’em, fine and dandy as could
be, and he ain’t a bit scared, neither. Pert and frisky and lying
cuddled down in the hay just as much at home as could be. Want to
come see him? I’ve got a path shoveled.”
Out they all trooped to the barn, through the walls of snow. The
air was still and surprisingly mild. Some Phoebe birds fluttered about
the hen houses where Shad had dropped some cracked corn, and
Jim Dandy, the big Rhode Island Red rooster, stood nonchalantly on
one foot eyeing the landscape as if he would have said,
“Huh, think this a snowfall? You ought to have seen one in my
day.”
The barn smelled of closely packed hay and dry clover. Inside it
was dim and shadowy, and two or three barn cats scooted away
from their pans of milk at the sight of intruders. Shad led the way
back of the cow stall to the calf corner, and there, sure enough,
shambling awkwardly but fearlessly to its feet, was a big brown deer,
its wide brown eyes asking hospitality, its nose raised inquiringly.
“You dear, you,” cried Doris, holding out her hand. “Oh, if we
could only tame him; and maybe he’d bring a whole herd down to
us.”
“Let’s keep him until the hunters have gone, anyway,” Jean said.
“Will he stay, Shad?”
“Guess so, if he’s fed, and the storm keeps up. They often come
down like this when feed’s short, and herd in with the cattle, but this
one’s a dandy.”
“And the cows don’t seem to mind him one bit.” Doris looked
around curiously at the three, Buttercup, Lady Goldtip and Brownie.
They munched their breakfast serenely, just as if it were the most
everyday occurrence in the world to have this wild brother of the
woodland herd with them.
“Let’s call up Cousin Roxy and tell her about it,” said Kit. “She’ll
enjoy it too.”
On the way back to the house they stopped short as the sharp
crack of rifles sounded up through the silent hills.
“They’re out pretty early,” said Shad, shaking his head. “Them
hunter fellows just love a morning like this, when every track shows
in the snow.”
“They’d never come near here,” Doris exclaimed, indignantly. “I’d
love to see a lot of giant rabbits and squirrels hunting them.”
“Would you, bless your old heart,” laughed Jean, putting her arm
around the tender hearted youngest of the brood. “Never have any
hunting at all, would you?”
Doris shook her head.
“Some day there won’t be any,” she said, firmly. “Don’t you know
what it says in the Bible about, ‘the lion shall lie down with the lamb
and there shall be no more bloodshed’?”
Shad looked at her with twinkling eyes as he drawled in his slow,
Yankee fashion,
“Couldn’t we even kill a chicken?”
And Doris, who specially liked wishbones, subsided. Over the
telephone Cousin Roxy cheered them all up, first telling them the
road committeeman, Mr. Tucker Hicks, was working his way down
with helpers, and would get the mailman through even if he was a
couple of hours late.
“You folks have a nice hot cup of coffee ready for the men when
they come along, and I’ll do the same up here, to hearten them up a
bit. I’ll be down later on; a week from Monday is Lincoln’s birthday,
and I thought we’d better have a little celebration in the town hall.
It’s high time we stirred Gilead up a bit. I never could see what good
it was dozing like a lot of Rip van Winkles over the fires until the first
bluebird woke you up. I want you girls to all help me out with the
programme, so brush up your wits.”
“Isn’t that splendid?” exclaimed Kit, radiantly. “Cousin Roxy is
really a brick, girls. She must have known we were ready to nip each
other’s heads off up here just from lack of occupation.”
Piney joined in the general laugh, and sat by the table, eyeing
the four girls rather wistfully.
“You don’t half appreciate the fun of being a large family,” she
said. “Just think if you were the only girl, and the only boy was way
out in Saskatoon.”
Jean glanced up, a little slow tinge of color rising in her cheeks.
She had not thought of Saskatoon or of Honey and Ralph for a long
while.
“When do you expect him back, Piney?”
“Along in the summer, I think. Ralph says he is getting along first
rate.”
“Give him our love,” chirped up Doris.
“Our very best wishes,” corrected Helen in her particular way. But
Kit said nothing, and Jean did not seem to notice, so the message to
the West went unchallenged.
Welcome to Our Bookstore - The Ultimate Destination for Book Lovers
Are you passionate about books and eager to explore new worlds of
knowledge? At our website, we offer a vast collection of books that
cater to every interest and age group. From classic literature to
specialized publications, self-help books, and children’s stories, we
have it all! Each book is a gateway to new adventures, helping you
expand your knowledge and nourish your soul
Experience Convenient and Enjoyable Book Shopping Our website is more
than just an online bookstore—it’s a bridge connecting readers to the
timeless values of culture and wisdom. With a sleek and user-friendly
interface and a smart search system, you can find your favorite books
quickly and easily. Enjoy special promotions, fast home delivery, and
a seamless shopping experience that saves you time and enhances your
love for reading.
Let us accompany you on the journey of exploring knowledge and
personal growth!
ebookgate.com