The SU package is free software, meaning that you may have unrestricted use of the codes for both processing and software development, provided that you honor the license that appears at the beginning of this manual and as the file LEGAL_STATEMENT in the current release of the package. (This latter file takes precedence). The package is maintained and expanded periodically, with each new release appearing at 3 to 6 month intervals, depending on changes that accumulate in the official version here at CWP. The package is distributed with the full source code, so that users can alter and extend its capabilities. The philosophy behind the package is to provide both a free processing and development environment in a proven structure that can be maintained and expanded to suit the needs of a variety of users.
The package is not necessarily restricted to seismic processing tasks, however. A broad suite of wave-related processing can be done with SU, making it a somewhat more general package than the word ``seismic'' implies. SU is intended as an extension of the Unix operating system, and therefore shares many characteristics of the Unix, including Unix flexibility and expandibility. The fundamental Unix philosophy is that all operating system commands are programs run under that operating system. The idea is that individual tasks be identified, and that small programs be written to do those tasks, and those tasks alone. The commands may have options that permit variations on those tasks, but the fundamental idea is one-program, one-task. Because Unix is a multi-tasking operating system, multiple processes may be strung together in a cascade via ``pipes'' ().
This decentralization has the advantage of minimizing overhead by not launching single ``monster'' applications that try to do everything, as is seen in Microsoft applications, or in some commercial seismic utilities, for example.
Unix has the added feature of supporting a variety of shell languages, making Unix, itself, a meta-language. Seismic Unix benefits from all of these attributes as well. In combination with standard Unix programs, Seismic Unix programs may be used in shell scripts to extend the functionality of the package.
Of course, it may be that no Unix or Seismic Unix program will fulfill a specific task. This means that new code has to be written. The availability of a standard set of source code, designed to be readable by human beings, can expedite the process of extending the package through the addition of new source code.