Buscar

ATIVIDADE 1 - SISTEMAS OPERACIONAIS

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 3 páginas

Prévia do material em texto

ATIVIDADE 1
SISTEMAS OPERACIONAIS
Prof. CAIO MOREIRA
1)Resolva os 6 exercícios do livro - Cap. 01, página 10.
1. Quais os dois principais objetivos de um sistema operacional?
R= Abstração e gerência. Criar uma camada de abstração entre aplicações e hardware e gerenciar os
recursos de forma eficiente.
2. Por que a abstração de recursos é importante para os desenvolvedores de aplicações? Ela tem
alguma utilidade para os desenvolvedores do próprio sistema operacional?
R= Porque ela pode prover interfaces de acesso aos dispositivos mais simples de usar do
que as interfaces de baixo nível. Torna os aplicativos independentes do hardware e
define interfaces de acesso homogêneas para dispositivos de tecnologias distintas. Tem bastante utilidade
pois minimiza os conflitos de hardware ao acessar interfaces simples.
3. A gerência de atividades permite compartilhar o processador, executando mais de uma aplicação
ao mesmo tempo. Identifique as principais vantagens trazidas por essa funcionalidade e os desafios
a resolver para implementá-la.
R= Pode executar várias tarefas ao mesmo tempo, distribuindo de forma justa o uso de hardware entre as
aplicações. Gerencia os trabalhos de impressão para que sejam usados por um aplicativo por vez para não
ocorrer mistura de conteúdo nos documentos impressos. Desafio: gerenciar uso do processador para
distribuição entre todos os aplicativos do sistema, o acesso à impressora deve ter acesso exclusivo e evitar
que um usuário ou grupo utilize todos os recursos em detrimento dos outros.
4. O que caracteriza um sistema operacional de tempo real? Quais as duas
classificações de sistemas operacionais de tempo real e suas diferenças?
R= Sua característica essencial é ter um comportamento temporal previsível, ou seja, seu tempo de resposta
deve ser previsível no melhor e no pior caso de operação.
Crítico (Hard real-time systems): Perda de um prazo pelo sistema pode perturbar seriamente o sistema sico
sob seu controle, com graves consequências humanas, econômicas ou ambientais.
Não-crítico (Soft real-time systems): Perda de um prazo é percep vel e degrada o serviço prestado, sem
maiores consequências.
5. Relacione as afirmações aos respectivos tipos de sistemas operacionais: distribuído (D),
multiusuário (M), desktop (K), servidor (S), embarcado (E) ou de tempo-real (T):
[T] Deve ter um comportamento temporal previsível, com prazos de resposta claramente definidos.
[S] Sistema operacional usado por uma empresa para executar seu banco de dados corporativos.
[E] São tipicamente usados em telefones celulares e sistemas eletrônicos dedicados.
[D] Neste tipo de sistema, a localização física dos recursos do sistema computacional é transparente
para os usuários.
[M] Todos os recursos do sistema têm proprietários e existem regras controlando o acesso aos
mesmos pelos usuários.
[S] A gerência de energia é muito importante neste tipo de sistema.
[E] Sistema que prioriza a gerência da interface gráfica e a interação com o usuário.
[K] Construído para gerenciar de forma eficiente grandes volumes de recursos.
[K] O MacOS X é um exemplo típico deste tipo de sistema.
[E] São sistemas operacionais compactos, construídos para executar aplicações específicas sobre
plataformas com poucos recursos.
6. Sobre as afirmações a seguir, relativas aos diversos tipos de sistemas operacionais, indique quais
são incorretas, justificando sua resposta:
(a) Em um sistema operacional de tempo real, a rapidez de resposta é menos importante que a
previsibilidade do tempo de resposta.
(b) Um sistema operacional multiusuários associa um proprietário a cada recurso do sistema e
gerencia as permissões de acesso a esses recursos.
(c) Nos sistemas operacionais de rede a localização dos recursos é transparente para os usuários.
R= Incorreta, pois deve haver o controle de acesso para impedir o uso de recursos por usuários não
autorizados, é fundamental esse controle para a segurança dos sistemas operacionais de rede.
(d) Um sistema operacional de tempo real deve priorizar as tarefas que interagem com o usuário.
R= Incorreta, um sistema operacional desktop prioriza as tarefas que interagem com o usuário
(e) Um sistema operacional embarcado é projetado para operar em hardware com poucos recursos.
2) Descreva a história do Linux e do GNU/Linux: criação, inspirações, Predecessores,
desenvolvimento e etc...
R= Em 1991, em Helsinki, Linus Torvalds começou o projeto que mais tarde se tornaria o núcleo Linux. Era
inicialmente um emulador de terminal, o qual Torvalds usava para acessar os grandes servidores UNIX da
universidade. Ele escreveu um programa especificamente para o hardware que estava usando e
independente de um sistema operacional porque queria usar as funções de seu novo computador com um
processador 80386. O desenvolvimento foi feito no MINIX usando o GNU C compiler, o qual é ainda hoje a
escolha principal para compilar o Linux (embora o código possa ser construído com outros compiladores,
como o Intel C Compiler).
Como Torvalds escreveu em seu livro Just for Fun, ele eventualmente percebeu que havia escrito o núcleo de
um sistema operacional. No dia 25 de agosto de 1991, ele anunciou esse sistema em um post
no newsgroup "comp.os.minix." da Usenet.
Torvalds primeiramente publicou o núcleo Linux sob sua própria licença, que tinha restrições no que diz
respeito à atividade comercial.
O software a ser usado junto com o núcleo era o desenvolvido como parte do Projeto GNU, licenciado sob os
termos da GNU General Public License, uma licença de software livre. O primeiro lançamento do núcleo
Linux, o Linux 0.01, incluía um binário do Bash shell do GNU.
Nas "Notas para o lançamento do linux 0.01", Torvalds listou que o software GNU era necessário para o
funcionamento do Linux. Em 1992, ele sugeriu o lançamento do núcleo sob a GNU General Public License.
Ele anunciou sua decisão primeiramente nas notas de lançamento da versão 0.12. Em meados de dezembro
de 1992, ele publicou a versão 0.99 usando a GNU GPL. Desenvolvedores do Linux e do GNU trabalharam
para integrar os componentes do GNU com o Linux para fazer um sistema operacional totalmente funcional
e totalmente livre.
3) Pesquise e responda: o que é possível fazer no Linux que não se pode fazer no Windows?
R= Licença gratuita, acesso livre ao codigo fonte do sistema operacional, podendo ser modificado e até
comercializado desde que não seja fechado para modificações, suporte completo ao hardware, linha de
comando, instalação centralizada de aplicativos entre outros.
4) Pesquise no livro e na internet e descreva o mecanismo de interrupção de hardware e de
exceção. Exemplifique passo-a-passo.
R= A interrupção ocorre quando o dispositivo precisa informar o processador rapidamente sobre um evento
interno, como a chegada de um pacote de rede, um clique de mouse ou a conclusão de uma operação de
disco. Neste caso, o controlador notifica o processador, enviando a ele uma requisição de interrupção (IRQ –
Interrupt ReQuest) através do barramento de controle. Ao receber a requisição de interrupção, os circuitos
do processador suspendem seu fluxo de execução corrente e desviam para um endereço pré-definido, onde
se encontra uma rotina de tratamento de interrupção (interrupt handler). Essa rotina é responsável por
tratar a interrupção, ou seja, executar as ações necessárias para atender o dispositivo que a gerou. os
principais passos associados ao tratamento de uma interrupção envolvendo a placa de rede Ethernet,
enumerados a seguir:
https://pt.wikipedia.org/wiki/Helsinki
https://pt.wikipedia.org/wiki/N%C3%BAcleo_Linux
https://pt.wikipedia.org/w/index.php?title=Emulador_de_terminal&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Hardware
https://pt.wikipedia.org/wiki/MINIX
https://pt.wikipedia.org/wiki/GNU_Compiler_Collection
https://pt.wikipedia.org/wiki/Intel_C++_Compiler
https://pt.wikipedia.org/wiki/Just_for_Fun
https://pt.wikipedia.org/wiki/Newsgroup
https://pt.wikipedia.org/wiki/Usenet
https://pt.wikipedia.org/wiki/Projeto_GNU
https://pt.wikipedia.org/wiki/GNU_General_Public_Licensehttps://pt.wikipedia.org/wiki/Software_livre
https://pt.wikipedia.org/wiki/Bash
https://pt.wikipedia.org/wiki/GNU_General_Public_License
1. o processador está executando um programa qualquer (em outras palavras, um fluxo de execução);
2. um pacote vindo da rede é recebido pela placa Ethernet;
3. o controlador Ethernet envia uma solicitação de interrupção (IRQ) ao processador;
4. o processamento é desviado do programa em execução para a rotina de tratamento da interrupção;
5. a rotina de tratamento é executada para interagir com o controlador de rede (via barramentos de dados e
de endereços) para transferir os dados do pacote de rede do controlador para a memória;
6. a rotina de tratamento da interrupção é finalizada e o processador retorna à execução do programa que
havia sido interrompido.
Essa sequência de ações ocorre a cada requisição de interrupção recebida pelo processador.
Entretanto, alguns eventos gerados pelo próprio processador podem ocasionar o desvio da execução usando
o mesmo mecanismo das interrupções: são as exceções. Ações como instruções ilegais (inexistentes ou com
operandos inválidos), tentativas de divisão por zero ou outros erros de software disparam exceções no
processador, que resultam na ativação de uma rotina de tratamento de exceção, usando o mesmo
mecanismo das interrupções.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes