Pular para o conteúdo principal

Questão de Sistemas Operacionais — Geral — VUNESP 2023

Sistemas OperacionaisGeral
Código
vu197491
Banca
VUNESP
Órgão
CIJUN
Ano
2023
Cargo
Ana ( )

PowerShell é um shell de linha de comando desenvolvido originalmente para sistemas Windows. Este shell possui diversos comandos nativos, chamados de

  1. Aactions.
  2. Bbash.
  3. Ccmdlets.
  4. Dpids.
  5. Ethreads.
Revelar gabarito e comentário

GabaritoC — cmdlets.

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”.

PowerShell e seus comandos nativos

Gabarito: letra C. Os comandos nativos do PowerShell são chamados de cmdlets — pequenos comandos especializados que seguem o padrão de nomenclatura Verbo-Substantivo (ex.: Get-Process, Set-Location). Essa é a terminologia oficial da Microsoft para os comandos do PowerShell, e é exatamente o que a alternativa C espelha.

O PowerShell é um shell de linha de comando e linguagem de script desenvolvido pela Microsoft, inicialmente para Windows, e posteriormente disponibilizado também para Linux e macOS (PowerShell Core). Diferentemente dos shells tradicionais como o bash do Linux, que trabalham com comandos que retornam texto, o PowerShell trabalha com objetos. Cada comando nativo do PowerShell é um cmdlet (pronuncia-se "command-let"), que é uma classe .NET compilada que executa uma função específica. Os cmdlets são a unidade fundamental de automação no PowerShell.

A nomenclatura dos cmdlets segue um padrão rígido: Verbo-Substantivo. O verbo indica a ação (Get, Set, New, Remove, Start, Stop, etc.) e o substantivo indica o alvo da ação (Process, Service, Item, Location, etc.). Por exemplo, Get-Process obtém informações sobre processos em execução, Set-Location muda o diretório atual, New-Item cria um novo item (arquivo, pasta, etc.). Esse padrão torna os comandos intuitivos e autoexplicativos, facilitando a descoberta e o uso.

Os cmdlets são diferentes dos comandos tradicionais de shells como o bash, que são programas executáveis ou builtins do shell. No PowerShell, além dos cmdlets, também é possível executar programas externos, funções, aliases e scripts, mas os cmdlets são os comandos nativos e integrados ao ambiente. Eles são implementados em .NET e retornam objetos, o que permite encadear comandos com pipes (|) e manipular os dados de forma estruturada, sem precisar de parsing de texto.

A pegadinha desta questão está em confundir o PowerShell com outros ambientes ou conceitos. A alternativa B (bash) é o shell padrão do Linux, não do Windows. As alternativas A, D e E são termos de outras áreas: "actions" não é um termo técnico para comandos, "pids" (Process IDs) são identificadores de processos, e "threads" são unidades de execução dentro de um processo. Nenhum desses termos se refere aos comandos nativos do PowerShell.

NÃO CAIA NESSA!

A banca explora a confusão entre o PowerShell e o bash. O bash é o shell padrão do Linux, enquanto o PowerShell é o shell da Microsoft. Se você associar "shell de linha de comando" automaticamente ao bash, pode cair na alternativa B. Mas a questão especifica que é um shell "desenvolvido originalmente para sistemas Windows", o que aponta diretamente para o PowerShell e seus cmdlets. Fique atento ao contexto: shell + Windows = PowerShell = cmdlets.

PowerShell
  • 1Comandos nativos
    • Cmdlets
      • Padrão Verbo-Substantivo
      • Ex.: Get-Process, Set-Location
      • Retornam objetos
  • 2Diferenciais
    • Shell da Microsoft (Windows)
    • Baseado em .NET
    • Pipes com objetos (sem parsing de texto)
  • 3Distratores
    • Bash: shell do Linux
    • PIDs: identificadores de processo
    • Threads: unidades de execução
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

"Actions" (ações) é um termo genérico que não tem relação com a terminologia de comandos do PowerShell. Não existe um conceito de "action" como comando nativo no PowerShell. A banca usa esse termo apenas como distrator, pois não corresponde a nenhum elemento técnico do shell.

Alternativa B — ❌ Incorreta

O bash (Bourne Again Shell) é o shell padrão do Linux e do macOS, não do Windows. Embora o PowerShell possa ser executado no Linux, a questão especifica que o shell foi "desenvolvido originalmente para sistemas Windows", o que exclui o bash. O bash é um shell de linha de comando, mas não é o shell nativo do Windows.

Alternativa C — ✅ Correta ⟵ GABARITO

Os comandos nativos do PowerShell são chamados de cmdlets. Eles seguem o padrão Verbo-Substantivo (ex.: Get-Process, Set-Location) e são a unidade fundamental de automação no PowerShell. A alternativa C está correta porque "cmdlets" é exatamente o termo técnico usado pela Microsoft para designar os comandos nativos do PowerShell.

Alternativa D — ❌ Incorreta

"PIDs" (Process Identifiers) são números que identificam processos em execução no sistema operacional. Não são comandos do PowerShell. O comando Get-Process pode ser usado para obter os PIDs, mas os PIDs em si são identificadores, não comandos.

Alternativa E — ❌ Incorreta

"Threads" são unidades de execução dentro de um processo. São um conceito de concorrência e paralelismo, não comandos do PowerShell. O PowerShell pode manipular threads, mas elas não são comandos nativos do shell.

Gabarito: letra C

Link permanente: /questoes/vu197491