void link(char* s, char* d)
Constraints can be specified in both names to select a pair of appropriate boxes—see copy(2) for examples of this. Both constraints must match as said in intro(1).
The meaning of link depends on the target box. For example, several system boxes accept links as a mean to make them point to the data source; some system boxes accept links as a mean to tell them where to send events; and the expected meaning when used on boxes implemented by the storage server is to replicate data.
The first call arranges for the output of the current process to be ignored; the second arranges for the cons terminal to send events (e.g. interrupts) to the foo process.