Para quem as variáveis de ambiente pertencem?
Cada processo possui suas próprias variáveis de ambiente.
Notas:
-
Todo processo tem um bloco de ambiente que contém um conjunto de variáveis de ambiente e seus valores.
-
As variáveis de ambiente são herdadas do processo pai e são uma cópia do bloco pai.
-
Por padrão, um processo filho herda as variáveis de ambiente de seu processo pai.
-
Um processo pode optar por passar um ambiente diferente para um processo filho, criando um novo bloco de ambiente e passando-o para o processo filho quando for criado.
-
Não é possível para nenhum processo alterar as variáveis de ambiente de qualquer outro processo.
O que é getenv
getenv
é função na Biblioteca C Padrão.
Name
getenv, secure_getenv - get an environment variable Synopsis
#include <stdlib.h> char *getenv(const char *name); char *secure_getenv(const char *name);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
secure_getenv(): _GNU_SOURCE
Description
The getenv() function searches the environment list to find the environment variable name, and returns a pointer to the corresponding value string.
The GNU-specific secure_getenv() function is just like getenv() except that it returns NULL in cases where "secure execution" is required.
...
Source getenv (3) - Página man do Linux
Outras leituras
getenv()
do código-fonte
"Estou tentando entender quais são as" variáveis de ambiente "exatamente."
Veja a resposta link por Scott para uma explicação detalhada a partir de uma perspectiva de codificação.