IUP Computer Science
COSC 300 Fall 1999

Project #4
(Due in class 4 November 1999)

Using the system services $GETJPIW, $GETSYIW, and $ASCTIM, collect the following information with an assembly language program and display it in a clear and readable form. That is, don't just display the values; display a label with each.

For the process/job that is running:

a. The number of page faults generated by the process so far.
b. The date and time at which the process was created - time of the login.
c. The amount of CPU time the process has used. This is measured in ticks (hundredth of a second).
d. The name of the image (program) that is currently running.
e. The account (project) name for the account the process is using.
f. The name of the virtual terminal that the current process is using.

For the Academic system (node OAK):

a. The date and time that the system was booted.
b. The version of VMS that is being used.
c. The number of pages in a page fault cluster - this is the number of pages that are fetched when one page fault occurs.
d. The number of nodes in the system cluster.
e. The maximum number (limit) of login tries that are allowed before the system takes evasive action.
f. The number of seconds that a terminal may be disconnected before the associated process is killed.
g. The maximum number of remote terminals allowed on the system at one time.

Hand in a .LIS listing of the program and a printout of an AUDIT.LOG file that shows the execution of the program.

EXTRA CREDIT: Determine how long the current process has been logged in and display this time. This is the length of time from the process login to the current time. Express the length of time in minutes. You will need to use the $GETTIM system service to do this, even then it is not very easy.