NAME
serialize — force target process to run serially with other processes
SYNOPSIS
serialize
command
[command_args]
serialize
[-t]
[-p
pid]
DESCRIPTION
The
serialize
command is used to force the target process to run
serially with other processes
also marked by this command.
The target process can be referred to by
pid
value, or it can be invoked directly on the
command.
Once a process has been marked by
serialize,
the process stays marked until process completion unless
serialize
is reissued on the serialized process with the
-t
option.
The
-t
option causes the
pid
specified with the
-p
option to return to normal timeshare scheduling algorithms.
This call is used to improve process throughput,
since process throughput
usually increases for large processes when they are
executed serially instead
of allowing each program to run for only a short period of time.
By running large processes one at a time,
the system makes more efficient use of the CPU
as well as system memory,
since each process does not end up constantly
faulting in its working set,
to only have the pages stolen when another process
starts running.
As long as there is enough memory in the system,
processes marked by
serialize
behave no differently from other processes in the system.
However, once memory
becomes tight, processes marked by
serialize
are run one at a time with the
highest priority processes being run first.
Each process will run for a finite interval of time before another
serialized process is allowed to run.
Options
serialize
supports the following options:
- -t
Indicates the process specified by
pid
should be returned to timeshare scheduling.
- -p
Indicates the
pid
of the target process.
If neither option is specified,
serialize
is invoked on the command line passed in.
RETURN VALUE
serialize
returns the following value:
- 0
Successful completion.
- 1
Invalid
pid
specification, nonnumeric entry, or
pid
specification is that of a special system process.
- 2
Could not execute the specified command.
- 3
No such process.
- 4
Must be root or a member of a group having the
SERIALIZE
privilege to execute
serialize.
ERRORS
serialize
fails under the following condition and sets
errno
(see
errno(2))
to the following value:
- ESRCH
The
pid
passed in does not exist.
EXAMPLES
Use
serialize
to force a database application to run
serially with other processes marked
for serialization:
Force a currently running process with a
pid
value of 215 to run serially
with other processes marked
for serialization:
Return a process previously marked
for serialization to normal timeshare scheduling.
The
pid
of the target process for this example is
174:
WARNINGS
The user has no way of forcing an execution order on serialized processes.
AUTHOR
serialize
was developed by HP.