Qual é a diferença entre tempfile e mktemp?

A maioria dos sistemas que encontrei temtempfile(1) emktemp(1). Existem diferenças sintáticas emktemp também pode criar diretórios, mas eles parecem fazer a mesma coisa.

Existe alguma diferença entre os dois? Por que ambos existem? É mais um padrão que o outro? Se eu quiser criar um arquivo temporário com segurança, há algum motivo para preferir um ao outro?

Eu suspeito que há algum conhecimento interessante do Unix por trás disso, mas minhas pesquisas não resultam em nada.