Tuesday, November 11, 2003

Becoming a parent gives a whoooole new meaning to a lot of things.

Take exceptional flow control for example. These days I am learning about this exceptionally dry material. But since I have just become a father, some of the phrases in my textbook have taken on a new, and alarming, meaning. A few examples:

"A parent process creates a new running child process by calling the fork function."

Iiiiiinteresting. "Hey, honey, what say you we call the fork function tonight?"
And it goes on:

"The newly created child process is almost, but not quite, identical to the parent."

How true. But then it gets kind of weird:

"The child gets an identical (but separate) copy of the parent's user-level virtual address space, including the text, data, and bss segments, heap, and user stack. The child also gets identical copies of any of the parent's open file descriptors, which means the child can read and write any files that were open in the parent when it called fork."

It can?! Sheez.

"The most significant difference between the parent and the newly created child is that they have different PIDs."

OK. However, there are more disturbing quotes. For example:

"Parent processes should always reap their terminated children."

And finally, some of this stuff is just obscene. Like the explanatory chapter, entitled:

"Why are terminated children called zombies?"

I am not going to read that to you. Too twisted. Yes, CS really is a dark and scary place.