Toda vez que você abre um arquivo (ou qualquer coisa que possa abrir como um arquivo, como um socket), você obtém um descritor de arquivo, que é representado por um int. Os 3 primeiros são criados automaticamente para um processo como stdin, stdout e stderr. Quaisquer outros arquivos abertos obtêm outros descritores. Eu suspeito que isso apenas aumenta o número a cada vez, mas eu não sei se é um fenômeno confiável ou não. Então, 3 e 4 seriam os dois primeiros arquivos que foram abertos pelo processo. E 7 seria o quinto arquivo aberto.