Questão de Sistemas Operacionais — Outros Assuntos de Sistemas Operacionais — INSTITUTO AOCP 2023
- Código
- qa543616
- Banca
- INSTITUTO AOCP
- Órgão
- MPE MS
- Ano
- 2023
- Cargo
- Ana ( )
- A.rsrc
- B.rdata
- C.exec
- D.text
- E.pdx
GabaritoD — .text
Gabarito: letra D. A seção .text do formato PE é a que contém o código executável — as instruções de máquina que a CPU efetivamente executa. As demais seções citadas têm funções distintas: .rsrc guarda recursos (ícones, menus, strings), .rdata guarda dados somente leitura (constantes, strings literais) e .exec/.pdx simplesmente não são seções padrão do formato PE.
O formato PE (Portable Executable) é o padrão de arquivos executáveis e bibliotecas do Windows (extensões .exe, .dll, .sys, .ocx). Ele organiza o conteúdo do arquivo em seções, cada uma com um propósito específico e permissões próprias de acesso à memória. Essa estrutura é análoga ao formato ELF usado em sistemas Unix/Linux, que também divide o arquivo em seções como .text, .data e .bss.
A seção .text é o coração do executável: é nela que fica o código binário do programa, ou seja, a sequência de instruções de máquina que o processador vai buscar e executar. Por isso, essa seção recebe permissão de leitura e execução, mas normalmente não de escrita — o código não deve ser modificado durante a execução. É exatamente essa característica que a questão explora: identificar qual seção contém "instruções e códigos de programas que são executados pela CPU".
Para fixar, veja o papel de cada seção comum do PE:
Seção | Conteúdo | Permissão típica |
|---|---|---|
| Código executável (instruções da CPU) | Leitura + Execução |
| Variáveis globais inicializadas | Leitura + Escrita |
| Variáveis globais não inicializadas | Leitura + Escrita |
| Dados somente leitura (constantes, strings) | Leitura |
| Recursos (ícones, menus, diálogos, versão) | Leitura |
| Informações de realocação de endereços | Leitura |
A pegadinha da banca está em oferecer .exec e .pdx como distratores — nomes que parecem plausíveis (lembram "executável" e "execução"), mas que não existem como seções padrão do formato PE. O candidato que não conhece a estrutura real do formato pode ser tentado a escolher uma dessas opções pelo nome, em vez de lembrar que a seção de código é tradicionalmente chamada de .text.
Guarde a distinção central: .text = código (instruções), .data/.bss = dados do programa, .rdata = dados somente leitura, .rsrc = recursos. É nessa fronteira que as alternativas se dividem.
A seção .rsrc (de resources) armazena recursos do programa, como ícones, imagens, menus, strings de interface e informações de versão. Não contém instruções executáveis pela CPU — é um repositório de dados auxiliares usados pela interface e pelo sistema.
A seção .rdata (de read-only data) contém dados somente leitura, como constantes, strings literais e tabelas de endereços de importação (IAT). Embora seja carregada na memória, ela não é executada — serve apenas como área de dados imutáveis do programa.
.exec não é uma seção padrão do formato PE. O nome parece remeter a "executável", mas o formato PE não define uma seção com esse nome. A seção que contém o código executável é a .text.
A seção .text é exatamente a que contém instruções e códigos de programas executados pela CPU. É nela que o compilador coloca o código binário gerado a partir do código-fonte, e é essa seção que o carregador do Windows mapeia na memória com permissão de execução. O processador busca as instruções diretamente dessa área de memória durante a execução do programa.
.pdx não é uma seção padrão do formato PE. Assim como .exec, é um distrator inventado pela banca para confundir o candidato que não conhece a nomenclatura real das seções.
A banca aposta no candidato que escolhe pelo nome "sonoro" — .exec e .pdx parecem seções de execução, mas não existem no formato PE. O nome real da seção de código é .text, herança dos formatos Unix (COFF/ELF). Memorize o par: código = .text, nunca .exec.
Para questões de formato de executável, monte mentalmente a tabela das seções principais (.text, .data, .bss, .rdata, .rsrc) com o conteúdo de cada uma. A banca raramente foge desse rol — se aparecer uma seção que você não conhece, desconfie: provavelmente é distrator.
Gabarito: letra D
Link permanente: /questoes/qa543616