SóProvas


ID
238312
Banca
CESPE / CEBRASPE
Órgão
ABIN
Ano
2010
Provas
Disciplina
Sistemas Operacionais
Assuntos

Em relação aos sistemas operacionais, julgue os itens subsequentes.

O gerenciamento de memória no ambiente Linux envolve a definição de três tipos de segmentos lógicos para cada processo: texto, dados e pilha. Esses segmentos possuem características diferentes, especialmente em relação aos direitos de escrita durante a execução do processo; enquanto os segmentos de texto e dados são de leitura e escrita, o segmento de pilha é do tipo somente leitura.

Alternativas
Comentários
  • Gabarito: Errado

    Dados e Pilha - Leitura e Escrita; Texto - Leitura

    fonte: Grupo TI Masters e www.inf.ufsc.br/~lourenco/4fase/ine5611/unix.pdf

  • Resposta: Errado

    O gerenciamento de memória no ambiente Linux envolve a definição de três tipos de segmentos lógicos para cada processo: texto, dados e pilha.           ( Definição de Espaço de Endereçamento de um processo) Esses segmentos possuem características diferentes, especialmente em relação aos direitos de escrita durante a execução do processo; enquanto os segmentos de texto e dados são de leitura e escrita, o segmento de pilha é do tipo somente leitura.

    1º A área de texto já está escrita, então não tem necessidade de fazer uma escrita durante a execução.
    2º Os dados podem ser escritos e lidos
    3º A pilha é altamente dinâmica, a todo momento lendo e escrevendo.
  • Complementando os colegas:

    • Texto: contém as instruções binárias do código executável do processo (imagem). 

    • Dados: espaço para as variáveis do processo, declaradas como globais no programa. 

    • Heap: memória para alocação sob-demanda durante a execução – Alocação dinâmica (malloc/free) 

    Pilha: memória para alocação: – De variáveis locais a sub-rotinas (vide chamada de funções); – Do endereço de retorno de uma sub-rotina.


    http://www.inf.ufrgs.br/~johann/sisop1/aula07.threads.pdf

  • Prezados,

    Para que um programa seja executado ele precisa ser transformado em processo(s), assim é necessário alocar o descritor de processos,alocar espaço na memória para o código (área conhecida como TEXT, onde se localiza o programa principal, as funções e as bibliotecas estáticas), os dados (Data, área onde as variáveis são alocadas - globais, locais estáticas, buffers internos)e a pilha (que possui o HEAP, área onde se localiza as variáveis dinâmicas, e o STACK, endereços de retorno de chamadas e parâmetros de funções). Os dados e a pilha podem ser alterados, por isso são de leitura e escrita , enquanto o texto ( programa principal ) é somente de leitura.

    Portanto a questão está errada.


  • Tornando a questão certa:

    O gerenciamento de memória no ambiente Linux envolve a definição de três tipos de segmentos lógicos para cada processo: texto, dados e pilha. Esses segmentos possuem características diferentes, especialmente em relação aos direitos de escrita durante a execução do processo; enquanto os segmentos de dados e pilha são de leitura e escrita, o segmento de texto é do tipo somente leitura.

    Agora, pq apenas o segmento de texto é somente leitura? Pq é o único q contém as instruções do código executável; lógico q só pode ser lido, ou seria um caos as instruções sendo executadas e alteradas...na verdade, seria um desastre para o sistema todo.

    Quanto aos demais, podem ser alterados à vontade, pois possuem apenas alocação de memória e espaços de variáveis.