Note that "ls" lists the length of /proc/filesystems as "0", but read() will get more than 0 data. Less doesn't know that /proc files are special in this way, and treats them as a 0-length file. You could argue that this is a bug in the semantics of the proc filesystem. ... Not very successfully. /dev/tty, etc. have similar semantics [but less refuses to work with them.] -- Raul