22C:116, Lecture Notes, Lecture 1, Spring 2002

Douglas W. Jones
University of Iowa Department of Computer Science

  1. The course title says something important about this class

    This word by word breakdown can be continued!

  2. What is an Operating System?

    Posing This question to a class typically generates the following kinds of responses:

  3. WARNING:

    This is a hard class. The prerequisites for studying this subject include the following:

  4. An Example

    I visited the John Deere corporate data processing center in the fall of 2001. Here's a very rough idea of the kind of system they run, giving an idea of the kind of environment in which modern operating systems are expected to run.

    In operation, this system serves basically two purposes. First, some fraction of the Windows NT machines were used as E-mail servers, both gateway machines and machines that could respond to specially formatted E-mail to deliver services to off-web users.

    Second, some fraction o the machines served as dial-up hosts for remote sites that dial directly into the corporate system. Apparently, these were mostly at dealerships that don't yet use the internet.

    Third, most of the Windows NT and UNIX power is providing web service, to both public corporate web sites, private corporate sites accessed over the public internet, and private corporate sites accessed over the corporate intranet. Most new applications seem to be web-based, with various server-side applications (both UNIX and Windows NT based) providing the required access to corporate resources. Many of these services, in turn, submit jobs on the mainframes to do the actual operatons on corporate databases. The mainframes are, in effect, back-end database machines, although they also run a number of purely mainframe-based applications.

    So, the fun puzzle is, how do you design operating systems to run in this kind of environment! This is very different from the world of the purely personal computer with a single CPU and one end user, yet the operating systems they use, Windows NT, a version of UNIX, and a version of IBM's old VM system, are all systems that have also been used in single user settings (curiously, VM was even supported by one short-lived model in the PC family, the PC-XT/370).