## randcall

#### OS/161 Reference Manual

### Name

randcall - make randomized system calls

### Synopsis

`/testbin/randcall` [`-f`] [`-c` count] [`-r` seed] callset

### Description

`randcall` makes randomized system calls, that is, system calls with completely random arguments. The callset determines which list of system calls it uses; it is either "all", which does everything, or a number that identifies one of the assignments, in which case it exercises all the system calls that are supposed to be working when that assignment is complete. (If the lists compiled into randcall are wrong, contact your course staff.)

Ordinarily, in case some of these calls cause process termination, randcall forks before making each call. This can be slow, so the -f option can be used to suppress this behavior.

The `-c` count option tells randcall to make count iterations through the list of calls it's using. (It always goes through the list sequentially.) The default count is 100.

The `-r` seed option allows one to set the pseudorandom seed used by `randcall` to generate the call arguments. The default seed is 0.

`randcall` prints what it's doing, so if it blows up you should be able to see what happened.

The system calls that do not take arguments are not on any of the call lists. Neither is reboot, to prevent accidental system shutdown.

### Requirements

`randcall` should never under any circumstances crash the kernel, no matter what call list is in use.

### Bugs

There should be an option to seed the random generator from random:.