NAME
NX_CHPART_EPL - nx_chpart_epl(), nx_chpart_mod(),
nx_chpart_name(), nx_chpart_owner(), nx_chpart_rq(),
nx_chpart_sched(): Changes a partition's characteristics.
SYNOPSIS
INCLUDE 'fnx.h'
INTEGER FUNCTION NX_CHPART_EPL(partition, priority)
CHARACTER *(*) partition
INTEGER priority
INTEGER FUNCTION NX_CHPART_MOD(partition, mode)
CHARACTER*(*) partition
INTEGER mode
INTEGER FUNCTION NX_CHPART_NAME(partition, name)
CHARACTER*(*) partition
CHARACTER name*(*)
INTEGER FUNCTION NX_CHPART_OWNER(partition, owner, group)
CHARACTER*(*) partition
INTEGER owner
INTEGER group
INTEGER FUNCTION NX_CHPART_RQ(partition, rollin_quantum)
CHARACTER*(*) partition
INTEGER rollin_quantum
INTEGER FUNCTION NX_CHPART_SCHED(partition, sched_type)
CHARACTER*(*) partition
INTEGER sched_type
PARAMETERS
partition
Relative or absolute pathname of an existing par-
tition for which you are changing the characteris-
tics.
priority (nx_chpart_epl() only)
New effective priority limit for the partition
expressed as an integer with a range from 0
(lowest priority) to 10 (highest priority)
inclusive.
The calling process must have write permission for
the partition to use the nx_chpart_epl() function.
mode (nx_chpart_mod() only)
New protection modes for the partition expressed
as an octal number. See the chmod() function in
the OSF/1 Programmer's Reference for more informa-
tion on specifying protection modes.
The calling process must be the owner of the par-
tition or root user to use the nx_chpart_mod()
function.
name (nx_chpart_name() only)
New name for the partition, expressed as a string
of any length containing only uppercase letters,
lowercase letters, digits, and underscores. The
nx_chpart_name() function can only change the
partition's name ``in place;'' there is no way to
move a partition to a different parent partition.
The calling process must have write permission on
the parent partition of the specified partition to
use the nx_chpart_name() function.
owner (nx_chpart_owner() only)
New owner for the partition expressed as a numeric
user ID (UID). If the owner parameter is -1, the
owner name is not changed. See the Paragon(tm)
System Fortran Compiler User's Guide for informa-
tion about using the getuid() system call to con-
vert a user name to a numeric user ID.
The permissions required for the nx_chpart_owner()
function depend on the operation. To change the
partition's ownership, the calling process must be
the system administrator.
group (nx_chpart_owner() only)
New group for the partition expressed as a numeric
group ID (GID). If the group parameter is -1, the
group name is not changed. See the Paragon(tm)
System Fortran Compiler User's Guide for informa-
tion about using the getgid() system call to con-
vert a group name to a numeric user ID.
The permissions required for the nx_chpart_owner()
function depend on the operation. To change the
partition's group, the calling process must either
be the system administrator or must be the
partition's owner and changing the group to a
group that the calling process belongs to.
rollin_quantum (nx_chpart_rq() only)
New rollin quantum for the partition expressed as
an integer number of milliseconds, or -1 to
specify infinite rollin quantum. The specified
value must not be greater than 86,400,000 mil-
liseconds (24 hours). If you specify a value that
is not a multiple of 100, the value is silently
rounded up to the next multiple of 100.
The minimum rollin quantum can be set in the
allocator.config file. See the allocator.config
manual page for more information.
The calling process must have write permission for
the partition to use the nx_chpart_rq() function.
sched_type (nx_chpart_sched() only)
Type of scheduling for the partition. These
scheduling types are defined in the fnx.h include
file and can be specified:
NX_GANG Gang scheduling (rollin quantum =
0).
NX_SPS Space sharing.
The calling process must have write permission for
the partition to use the nx_chpart_sched() func-
tion.
DESCRIPTION
The nx_chpart...() functions change specific characteristics
of a partition. Each of these calls specifically changes a
partition characteristic as follows:
nx_chpart_epl()
Changes the partition's effective priority limit.
nx_chpart_mod()
Changes the partition's permission modes.
nx_chpart_name()
Changes the partition's name.
nx_chpart_owner()
Changes the partition's owner and group IDs.
nx_chpart_rq()
Changes the partition's rollin quantum.
nx_chpart_sched()
Changes the partition's scheduling type.
When you create a partition with the mkpart command or the
nx_mkpart...() functions, you set a partition's initial
characteristics. You can set specific characteristics or use
the default characteristics. After creating a partition, you
are the partition's owner and you can use the nx_chpart...()
functions or the chpart command to change the partition's
characteristics.
The nx_chpart_epl() function changes the effective priority
limit for a partition. The effective priority limit ranges
from 0 to 10. The effective priority limit is the upper
priority limit on a partition. This limit does not affect
the priority of applications or partitions within a parti-
tion. The system uses the effective priority limit for gang
scheduling in partitions. See the Paragon(tm) System User's
Guide for more information about effective priority limits
and gang scheduling.
The nx_chpart_name() function changes the partition's name
only. You cannot use this function to change the partition's
parent partition or the partition's relationship in a parti-
tion hierarchy.
Each partition has an owner, a group, and protection modes
that determine who can perform what operations on a parti-
tion. When you create a partition, you become the
partition's owner and the partition's group is set to your
current group. The nx_chpart_owner() function changes the
owner and group of a partition. The owner and group must be
specified as a numeric ID, not as a name.
A partition's protection modes consist of three groups of
permission bits that indicate the read, write and execute
permissions for the owner, group, and other users of the
partition. A partition's protection modes are initially set
when the partition is created. The nx_chpart_mod() function
changes the protection mode for a partition. Set the mode
parameter to the three-digit octal value that represents the
protection mode you want for the partition. See the chmod
command in the OSF/1 Command Reference for more information
on specifying protection modes.
The nx_chpart_sched() function changes the partition's
scheduling to either space sharing (NX_SPS) or gang schedul-
ing (NX_GANG). The nx_chpart_sched() function has the fol-
lowing restrictions:
o You cannot change a partition's scheduling to or from
standard scheduling.
o You cannot change a partition's scheduling to space shar-
ing if the partition contains any active applications or
overlapping partitions.
The allocator limits the number of partitions that can use
gang scheduling. For information on the allocator, see the
allocator manual page in the Paragon(tm) System Commands
Reference Manual. You cannot change a partition's scheduling
to gang scheduling if the request exceeds the maximum number
of partitions allocated for gang scheduling. The rollin
quantum is automatically set to 0 (zero) when changing to
gang-scheduling.
RETURN VALUES
0 Partition's characteristic was successfully
changed.
-1 Error. Use the nx_perror() subroutine to display
the error message for the current error.
ERRORS
Allocator internal error
An internal error occurred in the node allocation server.
Exceeded allocator configuration parameters
The application exceeded the configuration parameters for
the partition. See the allocator manual page.
Exceeds partition resources
Request exceeds the partition's resources.
Invalid group
An invalid group ID was specified.
Invalid partition rename
You specified a partition name that was not a simple name.
You cannot change a partition's relationship within a parti-
tion hierarchy.
Invalid priority
An invalid priority level was specified.
Invalid user
An invalid user ID was specified.
Partition not found
The specified partition (or its parent) does not exist.
Partition permission denied
The application has insufficient access permission on a par-
tition.
Scheduling parameters conflict with allocator configuration parameters
The scheduling parameters conflict with the allocator confi-
guration. See the allocator manual page.
LIMITATIONS AND WORKAROUNDS
For information about limitations and workarounds, see the
release notes files in /usr/share/release_notes.
SEE ALSO
Paragon(tm) System Fortran Calls Reference Manual:
nx_mkpart(), nx_pspart(), nx_rmpart()
Paragon(tm) System Commands Reference Manual: allocator,
allocator.config, chpart, lspart, mkpart, pspart, rmpart
OSF/1 Command Reference: chgrp(1), chmod(1), chown(1)
Acknowledgement and Disclaimer