
Computer Architecture Simulation & Visualisation
Using HASE on DICE
To launch HASE some environment variables need to be set. To set these
variables you need to execute the /group/project/hase/bin/setup batch file.
If you want this file to be executed automatically for you anytime you open
a new shell, you may decide to add the following lines at the end of your .brc file:
if [ -e /group/project/hase/bin/setup ]
then source /group/project/hase/bin/setup
fi |
You need to source the .brc file (source ./.brc) or else logout and
login. Thereafter, you can just type Hase. This is an alias
that is defined by the setup file.
The hase group
In order to allow a restricted number of users to access the hase
directory - some of them will be only reading files and some others
will be writing files - a hase group has been created. If you are not
familiar with Linux groups, you should first read the
documentation about
Linux groups and the chmod,chgrp,chown commands.
To know whether or not you belong to the hase group, type the command
'groups' that displays all your groups - you may belong to several groups.
The first group that appears is your
private group.
If hase does not appear and you feel it should, reboot your computer
and if you are still not a member, contact Support.
HASE Directories
The HASE directories are at
You may find it convenient to create your own symbolic link to the
HASE directory as follows:
ln -s /group/project/hase ~/HASE
|
Doing so (just once in a lifetime), you can access the hase directory
simply by typing:
Note: the / is important, there is no HASE account, only a hase directory.
Permissions on files
When you use HASE and you want to build a project, HASE will generate some
files for you (.c, Makefile, executable). The Linux default behaviour is to set
the newly created files as owned by the one who initiated the creation (you)
and as belonging to the private group of the user who initiated the creation (you).
However, the hase/Development directory is a shared resource, so you need to ensure
that all hase users (members of the hase group) can read and/or write all files,
especially, we have a common hase directory in order to allow all hase users to share
some common files, mainly the HASE executable and the Development directory.
To achieve this objective, the files to be shared must belong to the hase group.
Whenever you create a file in the hase directory, ensure that it belongs to the hase
group and the read and/or write permissions are correctly set, e.g.:
Type ls -l
total 172
-rw-rw---- 1 fmallet hase 288 Dec 18 11:32 CONTROL_BOX.errors.mem
-rw-rw---- 1 fmallet hase 13 Dec 18 11:32 CONTROL_BOX.p_values.mem
-rw-rw---- 1 fmallet hase 177 Dec 18 11:32 CONTROL_BOX.pars.mem
|
There are two ways to ensure the permissions are correct:
- The first one is to use the chgrp
and chmod commands:
chgrp hase tomasulo.edl
chmod 660 tomasulo.edl
|
With this solution, you will have to check/set the permissions anytime you rebuild a project.
If you fail to set the correct permissions, people coming after you
will not be able to run or build the same project.
- The second one is to use the 's' bit on newly created directory. That means, whenever
you create a directory within the hase directory, you ensure it belongs to the hase group,
the read and the write permissions are set correctly and the 's' bit is set.
The following command will achieve all that for you automatically:
cd /group/project/hase/Development
mkHasedir myProject
|
Note: The mkHasedir alias is created by the setup file.
To ensure that it has worked, type:
ls -l that should display
total 4
drwxrws--- 4 fmallet hase 512 Dec 18 17:19 myProject/
|
In practice, if the parent directory, in which you are creating the new directory, is already
set with the s permission, you will only need to type mkdir myProject as usual.
If it has not worked, use the manual commands:
chgrp hase myProject
chmod 2770 myProject
|
Copying files to the hase directory
From your own directory
Since your own directory is visible from the DICE system, you just
need to use the cp command as usual.
DCS legacy system
The HASE mechanisms used on the DCS system do not carry across to the
DICE system. On the DCS system there was a hase account, which could be
accessed using the nsu command.
Set-up file
If you were previously executing the DCS setup file, you should add instead:
if [ -e /group/project/hase/bin/setup ]
then source /group/project/hase/bin/setup
else source /home/hase/libraries/setup
fi |
Directory
The DICE hase directory is not visible from the DCS system, and the
hase DCS account (at /home/hase) is not visible from the DICE
system. As a consequence, to move a HASE file between the two systems
you need to copy the file from the hase filespace to a file in your
own filespace first and then copy between your filespace and the hase
filespace.
The DCS HASE system is still available by logging on to a DCS machine,
e.g. scar.
Return to Documents about HASE & SimJava
HASE Project
Institute for Computing Systems Architecture, School of Informatics,
University of Edinburgh
Last change 20/03/2003
Please contact our
webadmin with any comments or changes.
Unless explicitly stated otherwise, all material is
copyright © The University of Edinburgh.