Type set and you will get a list of all the current variables.
If you want something to persist put it in ~/.bashrc or ~/.bash_profile (if you're using bash)
The environment variables of a process exist at runtime, and are not stored in some file or so. They are stored in the process's own memory (that's where they are found to pass on to children). But there is a virtual file in
/proc/pid/environ
This file shows all the environment variables that were passed when calling the process (unless the process overwrote that part of its memory — most programs don't). The kernel makes them visible through that virtual file. One can list them. For example to view the variables of process 3940, one can do
cat /proc/3940/environ | tr '\0' '\n'
Each variable is delimited by a binary zero from the next one. tr replaces the zero into a newline.
There is 1 file that can be used to store env variables.
.bashrc
You can add your variables and use them. For example I have added Django virtual env as environment variable and now I can access it anywhere. Add this to your bashrc file
As to the location of environment variables in RAM, they are stored in the top of the stack of main() function. any dynamic modification by setenv() et al. are then allocated elsewhere