Você está na página 1de 3

Atividade de Avaliação 1

1) Explique o que é um Sistema Operacional (S.O) e por que precisamos


dos mesmos? (1.0)

Um sistema operacional (SO) é um conjunto de programas que inicializam o


hardware do computador. Fornece rotinas básicas para controle de dispositivos.
Fornece gerenciamento de tarefas, agendamento e interação. Mantenha a
integridade do sistema.

2) Qual é a diferença entre modo núcleo e modo usuário? Explique como


ter dois modos distintos ajuda no projeto de um sistema operacional.
(1.5)

O sistema operacional é o software ou programa mais importante que roda em um


computador. Ele nos permite usá-lo e emitir comandos para ele.

Precisamos dele porque nos permite interagir com os computadores e dar ordens.
Sem um sistema operacional, os computadores são inúteis e não temos uma
plataforma para escrever cartas, ouvir música, navegar na Internet ou enviar
programas. o email.

3) Explique o que são chamadas ao sistema. Apresente 3 exemplos de


syscalls, informando se elas são POSIX ou não, e explique sua
funcionalidade. (1.5)

os processos são mais seguros que os threads, porque cada processo é


executado em seu próprio espaço de endereço virtual.

Gerência de processos

pid = fork() cria um processo filho idêntico ao pai

pid = waitpid(pid, &statloc, options) espera uma criança terminar

s = execve(name, argv, environp) encerrar a execução do processo e retomar o


status
4) Explique os estados possíveis de processos e as transições entre
esses estados. Faça uma figura que ajude na explicação. (1.5)

Um processo pode estar nos seguintes estados: estado de pronto, estado de


execução e estado de espera. Quando um processo está em estado de espera
ou em estado de pronto ele fica respectivamente na lista de estados de espera
e de pronto

5) Explique a diferença entre processos e threads. (1.0)


Processos e threads são sequências de execução independentes. A diferença típica
é que os threads (do mesmo processo) são executados em um espaço de memória
compartilhado, enquanto os processos são executados em um espaço de memória
separado. ... Chamá-los de "threads" significa que eles compartilham memória.

6) Qual a vantagem de termos uma aplicação multithread em relação a


uma aplicação monothread? Explique um exemplo de como uma
aplicação poderia dividir tarefas entre threads. (1.5)
A maior diferença entre aplicativos single-threaded e aplicativos multi-thread é o
uso do espaço de endereço. Em multi-threading, em comparação com a
comunicação do processo em um ambiente de thread único, esse
compartilhamento de memória torna a troca de dados entre threads do mesmo
processo simples e rápida

7) Julgue como Verdadeiro ou Falsas as sentenças abaixo. Para as


sentenças avaliadas como Falsas, justifique sua resposta. (2.0)

a. O OS/360 foi um dos primeiros SOs significativos na história e tinha


por característica ter apenas alguns milhares de linhas de código e
ser um sistema que apresentou o conceito de máquinas virtuais.
(VERDADEIRO)

b. O espaço de endereçamento é o conjunto de endereços que


um programa de usuário pode utilizar para identificar a
localização das chamadas ao sistema ofertadas pelo SO.
(VERDADEIRO)

c. O conceito de time-sharing se refere ao fato de termos


diferentes processos ocupando simultaneamente áreas
diferentes da memória em um determinado sistema
computacional.(VERDADEIRO)

d. Um thread pop-up é um thread que é criado por um processo


para lidar com uma nova mensagem que foi recebida pelo
mesmo. Por exemplo, imagine um processo do WhatsApp que
ao receber uma mensagem, um novo vídeo de um amigo, cria
uma thread para lidar com o download deste vídeo e depois
gerar uma notificação para o usuário. (VERDADEIRO)

e. O uso de threads é mais seguro que o uso de processos, já


que o sistema operacional implementa soluções para controlar
que o funcionamento de uma thread não interfira em
outra(FALSO Os processos são mais seguros do que os
threads porque cada processo é executado em seu próprio
espaço de endereço virtual.
)

Você também pode gostar