O kernel não é necessário para acompanhar os argumentos da linha de comando. Quando um programa é iniciado através da chamada execve , o kernel deve copiar os argumentos na memória do processo (para que eles fiquem disponíveis como argv em um programa C, por exemplo). Depois disso, o kernel pode descartar a memória usada para armazenar os argumentos iniciais da linha de comando. O processo pode sobrescrever sua cópia dos argumentos. Portanto, pode simplesmente não haver vestígios dos argumentos.
Algumas variantes unix mantêm uma cópia dos argumentos de alguma forma. O Solaris expõe alguns dados em /proc/$pid . A partir do OpenSolaris 2009.06, o único traço dos argumentos é em /proc/$pid/psinfo , onde eles são concatenados com espaços intermediários (para que você não possa distinguir entre foo "one" "two" e foo "one two" ) e a sequência resultante seja truncada para 80 bytes . Este campo em /proc/$pid/psinfo é o que ps imprime na coluna args .
A propósito, as opções -f e -l controlam quais campos são impressos, não se os campos são truncados para alguma largura.