procfs is a dynamic representation of what the kernel sees and takes up no hard drive space. Utilities and users may use it to determine or display things like hardware, processes, or other kernel related tasks.
Users are also allowed to write to some of these files, changing the kernel's behavior on various things. Although after rebooting the system, the changes made to procfs are gone, as the kernel doesn't record them for later use, permanent changes can be made by recompiling the kernel (and in a few cases, requires some hand editing of the source file, just to set some values). Normally though, the init scripts write to procfs to set everything up, alleviating the user from having to hand edit source code files, or write to procfs themselves each time they boot the computer.
sysfs is said to be a replacement for procfs in the future.