Assignment 2, due Sept. 9

Part of the homework for 22C:112, Fall 2013
by Douglas W. Jones
THE UNIVERSITY OF IOWA Department of Computer Science

On all assignments, your name must be legible as it appears on your University ID card! Assignments are due at the start of class on the day indicated (usually Friday). Exceptions will be by advance arrangement unless there is what lawyers call "an act of God" (something outside your control). Homework must be turned in on paper, either in class or in the teaching assistant's mailbox. Never push late work under someone's door!

  1. Background: Today's cloud computing servers rely on the ability to offer private virtual machines to customers anywhere on the Internet, so that customers who are adversaries can safely share the same physical resources in the cloud without conflict. One of the leading commercial vendors of software to do this is VMware corp.

    a) Virtualization began with virtual memory. In what decade did virtual memory emerge? What was the first system to offer virtual memory? (0.5 points)

    b) The second step in virtualization was the virtual machine operating system. In what decade was the first virtual machine operating system released (0.5 points)

  2. A Quick Question: What is the default shell installed on the departmental Linux servers? The fastest way to answer this is to try the command echo $SHELL after you log into your lab account. (0.5 points)

  3. Background: Here is a little shell script, from the executable file script in the current directory:
    echo X $argv

    a) What is the output if you type this shell command? (0.5 points)

    ./script echo hello world

    b) What is the output if you type this shell command? (0.5 points)

    ./script ./script ./script ./script

    c) What terminates the recursion? (0.5 points)


To connect to the departmental Linux cluster without setting up a VPN from off campus, you must use port 40 (or 30022, as formerly recommended). From on-campus or if using a VPN from off campus, port 22 works.

For access from a Linux or Mac system, open a local terminal window and type:

ssh -p 40

The current recommended tool for ssh access from Windows machines is PuTTY. This is open-source software available as a free download from the official PuTTY web site:

The PuTTY session panel lets you specify ssh as the session type and lets you override the default port number.

This version of the instructions was edited using port 40.