Environmental contamination is a constant threat with
conservatives in power (just kidding… seriously). Over the next
few articles I will attempt to clarify the impact the
environment has on the execution of a program. The environment
is a fairly complicated subject so this article will be broken
into several parts (I’m guessing about three). So without
further ado… We’re all familiar with the environment on a
typical Unix system. The environment is full of “stuff” like
variables, command line arguments, parent process ID, etc. Many
of these are things you can look at by typing things such as
export in a bash or env in csh or by just reviewing the
arguments you pass to a program on the command line. Briefly all
this information is stored in a section of memory that is
persistent across execv()s. Something you may or may not be
aware of is the impact that this can have on the execution path
of a program. Perhaps, through experience, use, or instinct, you
know that an application can read and utilize the inform