Questão de Sistemas Operacionais — Geral — VUNESP 2024
Sistemas Operacionais›Geral
Código
vu212414
Banca
VUNESP
Órgão
Pref Osasco
Ano
2024
Cargo
Ana ( )
Um usuário do sistema operacional Windows digitou no PowerShell o comando $PID, que retornou um número. É correto afirmar que este número indica
Aa quantidade de segundos que o shell está ativo.
Ba quantidade de variáveis que foram criadas dentro do shell.
Co nome do script que está sendo executado.
Do número de identificação do processo da shell.
Eo número de usuários logados no sistema.
Revelar gabarito e comentário▾
GabaritoD — o número de identificação do processo da shell.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Variáveis automáticas do PowerShell: $PID
Gabarito: letra D. O comando $PID no PowerShell retorna o número de identificação do processo (PID – Process IDentifier) da própria sessão do shell, ou seja, o identificador do processo do PowerShell em execução. Esse conceito é o mesmo de PID visto em sistemas operacionais, onde cada processo recebe um identificador único gerenciado pelo núcleo do sistema.
O PowerShell, assim como outros shells (bash, cmd), expõe variáveis automáticas que fornecem informações sobre o ambiente de execução. $PID é uma delas, e seu valor é um número inteiro que identifica unicamente o processo do PowerShell naquele momento. Esse número é atribuído pelo sistema operacional quando o processo é criado e é usado para gerenciar o processo (por exemplo, para encerrá-lo com Stop-Process -Id $PID).
Para entender melhor, é importante distinguir os conceitos de processo e PID. Um processo é um programa em execução, com seu próprio espaço de endereçamento, recursos e estado. O PID é o "número de registro" desse processo no sistema operacional. No contexto do PowerShell, cada vez que você abre uma nova janela ou executa um script, um novo processo é criado, e $PID retorna o identificador desse processo específico.
A banca explora a confusão entre $PID e outras variáveis ou comandos que retornam informações diferentes, como o tempo de atividade do shell, o número de variáveis criadas, o nome do script ou o número de usuários logados. Todas essas são informações que podem ser obtidas por outros meios, mas não por $PID.
Guarde a essência: $PID é o identificador do processo do shell. É exatamente esse conceito que separa a alternativa correta das demais.
Alternativa A — ❌ Incorreta
A quantidade de segundos que o shell está ativo não é retornada por $PID. Essa informação poderia ser obtida, por exemplo, com (Get-Date) - $startTime ou consultando o tempo de início do processo. $PID é apenas um número de identificação, não uma medida de tempo.
Alternativa B — ❌ Incorreta
O número de variáveis criadas dentro do shell não é retornado por $PID. Para listar variáveis, usa-se Get-Variable ou ls variable:. $PID não tem relação com a contagem de variáveis.
Alternativa C — ❌ Incorreta
O nome do script que está sendo executado não é retornado por $PID. Para obter o nome do script, usa-se $MyInvocation.MyCommand.Path ou $PSCommandPath. $PID é um número, não um nome de arquivo.
Alternativa D — ✅ Correta ⟵ GABARITO
$PID retorna o número de identificação do processo da shell, ou seja, o PID do processo do PowerShell. Isso está alinhado com o conceito de PID visto em sistemas operacionais, onde cada processo recebe um identificador único. No PowerShell, essa variável automática é amplamente utilizada para identificar o processo atual, por exemplo, para encerrá-lo ou monitorá-lo.
Alternativa E — ❌ Incorreta
O número de usuários logados no sistema não é retornado por $PID. Para obter essa informação, usa-se query user ou Get-LoggedOnUser (em módulos específicos). $PID é específico do processo, não do sistema como um todo.
NÃO CAIA NESSA!
A banca tenta confundir $PID com outras variáveis automáticas do PowerShell, como $PSVersionTable (versão), $Host (informações do host) ou $MyInvocation (informações do script). Lembre-se: $PID é exclusivamente o identificador do processo. Com treino, você reconhece essas trocas rapidamente 💪
PEGA ESSA DICA!
Para fixar, associe $PID a "Process ID". Em qualquer sistema operacional, o PID é o número que identifica um processo. No PowerShell, $PID é o PID do próprio shell. Se a alternativa falar de tempo, variáveis, script ou usuários, descarte-a imediatamente.