Analise as afirmativas sobre as chamadas de sistema (syscall...
Analise as afirmativas sobre as chamadas de sistema (syscalls) do sistema operacional Linux, colocando entre parênteses a letra V, quando se tratar de afirmativa verdadeira, e a letra F, quando se tratar de afirmativa falsa. A seguir, assinale a alternativa que apresenta a sequência correta.
( ) A chamada fork() faz com que o kernel crie uma cópia praticamente idêntica ao processo.
( ) A chamada init() faz com que o kernel crie uma cópia do processo shell e o execute.
( ) A chamada halt() faz com que o kernel suspenda o processo até a próxima interrupção do escalonador de processos.
( ) A chamada exec() faz com que o kernel inicie um novo processo que substitui o processo corrente.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a D - V-F-F-V.
Vamos analisar cada afirmativa para entender o porquê dessa resposta.
(V) A chamada fork() faz com que o kernel crie uma cópia praticamente idêntica ao processo.
A função fork()
é uma chamada de sistema no Linux que cria um novo processo. Este novo processo é uma cópia quase exata do processo pai, com exceção de alguns detalhes como o ID do processo, que é único. Essa afirmativa é verdadeira.
(F) A chamada init() faz com que o kernel crie uma cópia do processo shell e o execute.
Não existe uma chamada de sistema denominada init()
que faça o que foi descrito. O init
é, na verdade, o primeiro processo a ser iniciado pelo kernel durante o boot do sistema e não é uma syscall que cria cópias de processos shell. Portanto, essa afirmativa é falsa.
(F) A chamada halt() faz com que o kernel suspenda o processo até a próxima interrupção do escalonador de processos.
A chamada halt()
está relacionada ao desligamento do sistema, e não à suspensão de processos. Portanto, essa descrição não está correta, sendo a afirmativa falsa.
(V) A chamada exec() faz com que o kernel inicie um novo processo que substitui o processo corrente.
A exec()
é um conjunto de chamadas de sistema que substitui o espaço de memória do processo atual por um novo programa. Assim, o processo original continua, mas agora com um novo código sendo executado. Esta afirmativa é verdadeira.
Com base nesses esclarecimentos, a sequência correta é D - V-F-F-V.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
O processo init é o primeiro programa executado pelo kernel de qualquer sistema operacional Linux/Unix na sua inicialização. Todos os outros processos são denominados como sendo filhos deste e são monitorados pelo init.
Descrição do halt pelo man do linux:
halt, poweroff, reboot may be used to halt, power-off or reboot the machine.
Bons estudos.
Duas chamadas de sistema, fork() e exec(), são importantes para entender como os processos são inicializados
• fork() – quando um processo chama fork(), o kernel cria uma cópia praticamente idêntica do processo.
• exec() – quando um processo chama exec(programa), o kernel inicia programa, substituindo o processo corrente.
Pg. 23 - livro como funcionar o linux..
Halt: Desliga o computador de forma "segura" registrando seu desligamento em log.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo