Landside Information Control
Figure 5

Proprietary Systems

Historically, the computer manufacturer provides a proprietary operating system with the computer hardware when it is bought. Proprietary operating systems, although philosophically similar, are unique from a practical standpoint. Programs written for one operating system can not, as a practical matter, run on another computer system and a user is forever tied to a particular manufacturer. The selection of an operating system by the marine terminal usually determines the variety of software available to be purchased for the machine.

UNIX

Recent attempts have been made to standardize the operating system. The operating system of choice has been UNIX [reference 16-17]. The interest in UNIX stems from widespread support by computer manufacturers [reference 18]. The computer manufacturers are interested in UNIX because AT&T makes the program available worldwide at a reasonable price. In addition, the UNIX operating system is reasonably easy to move from one computer to another [reference 19]. UNIX is so portable because it is written predominantly in a general high level language, the C language. This is unusual, an operating system is usually written in a special purpose computer language which closely matches the computer hardware.

At this time, UNIX or UNIX-like operating systems are supported at some level by virtually all computer manufacturers; including IBM and DEC. For this reason, it is currently the operating system of choice for computer program development. When a software house purchases a new computer, it only need be concerned about the cost of the machine and not the nature of the operating system.

Language Standards

When a computer program is written, a language must be selected in which to implement the program. There are low-level languages which are closely matched to a particular machine. No one recommends the general use of low-level languages any more, even though they are known to be more efficient. However, low level languages are used for very small high usage parts of the computer program to make them run faster. When hardware is selected that is too small for the job, low level languages must be used for the entire program to increase efficiency. This is ridiculed in the computer industry as a false economy.

There are a great many high-level computer languages available, several of which have been standardized. The major ones which are standardized or undergoing standardization are:

  • COBOL: used primarily for business applications
  • FORTRAN: used primarily for scientific applications
  • PASCAL: used primarily as an educational tool
  • C: used as a general purpose/system programming language
  • ADA: used on major U.S. defense contracts
The important practical considerations in the selection of a language are:
  • Does the language have wide spread support in the computer industry? Widespread support enhances the competitive process when the computer hardware is selected.
  • Are there trained people that can be employed to maintain the computer program written in the selected language? This is influenced by the local labor pool and to some extent, the mainstream nature of the language.
In general, the smaller marine terminal will depend on the software development house for language level maintenance of the software so that the exact computer language selected may not be an important concern. It will be important that the terminal control program be written in a high level language and that it is licensed as part of the delivered product. A terminal dissatisfied with one software house can carry the licensed program to another software supplier.

Database Standards

The database is another service center used by the terminal control program (see Figure 5). The database will convert complicated information requests into the simple requests that the operating system provides. There are three recognized basic standard structures for storing data on a disk: network, hierarchical, and relational [reference 20]. Consequently, there are these three basic types of commercial databases available. A database today is as complicated and as serious a consideration as the operating system. Usually, only one database is run on a computer. In conjunction with the operating system, the database will usually determine the variety of software available to be purchased for the machine. The standardizing effort for databases is similar to the standardization of the operating system. The messages sent to the database and the tasks performed by the database must be specified. Of the three structures, only the network and relational databases have been the focus of any standardization effort. The standardized network model is generally closely tied to the COBOL language [reference 21]. The relational model is a more recent concept [reference 22], and is generally considered easier to understand for both the programmer and end user. Virtually all serious database suppliers attempt to make their database appear relational because it is so simple to understand. The relational model is currently in the process of standardization. The messages to the database will be standardized on a database language, SQL. The database language is based on the original work performed by IBM [reference 23].