Baixe o app para aproveitar ainda mais
Prévia do material em texto
CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS Laboratório de Sistemas Operacionais Professora: Rosane Caldeira Aluno: Juliano Oliveira dos Santos RA: 020777 Atividade OnLine4 1) O que é o núcleo do sistema e quais são suas principais funções? R = È o conjunto de rotinas que oferece serviços e aplicações, além do próprio sistema operacional. As principais funções do núcleo são: suporte a redes locais e distribuídas, contabilização do uso do sistema, auditoria e segurança do sistema, tratamento de interrupções e exceções, criação e eliminação de processos e threads, sincronização e comunicação entre processos e threads; escalonamento e controle dos processos e threads, gerência de memória, gerência do sistema de arquivos, entre outros. 2) O que são instruções privilegiadas e não privilegiadas? Qual a relação dessas instruções com os modos de acesso? R = Instruções privilegiadas são instruções que só devem ser executadas pelo sistema operacional ou sob sua supervisão,impedindo, assim, a ocorrência de problemas de segurança e integridade do sistema. As instruções não-privilegiadas não oferecem risco ao sistema. E para poder executar uma instrução privilegiada, é necessário que no processador seja implementado o mecanismo de proteção conhecido como modos de acesso. Existem, basicamente, dois modos de acesso implementados pelos processadores: modo usuário e modo kernel. 3) Explique como funciona a mudança de modos de acesso e dê um exemplo de como um programa faz uso desse mecanismo. R = A mudança de modos de acesso ocorre no momento da carga do sistema (boot), o sistema operacional inicia em modo kernel. Após estar carregado em memória, o sistema operacional permite que os programas de usuários sejam carregados apenas em modo usuário. Se ocorrer qualquer tipo de interrupção de um programa que estiver em modo usuário, o modo de acesso é alterado para o modo kernel “privilegiado”. Com isso a rotina de tratamento é executada em modo kernel. Ao final de toda rotina de tratamento, há uma instrução específica que, antes de retornar para o programa do usuário, altera o modo de acesso para modo usuário. 4) Como o kernel do sistema operacional pode ser protegido pelo mecanismo de modos de acesso? R = Através do modo usuário. Neste modo, todos os comandos não privilegiados podem ser executados. Todos os aplicativos são executados no modo usuário, e enviam as instruções para o modo kernel que avaliam a segurança e garantia da execução protegida de cada “system call”.Este forma de chamadas identifica se o aplicativo possuí permissão para executar o comando. 5) Por que as rotinas do sistema operacional possuem instruções privilegiadas? R = Como é o sistema operacional que controla tudo, apenas ele tem o poder de dizer o que está certo ou errado. Assim ele mesmo é responsável por qualquer situação de risco para o hardware ou software. Usar o modo kernel, o sistema pode administrar a memória de forma transparente, e também deve saber a hora de cada evento acontecer. No modo kernel, ações delicadas são realizadas e é seguro ao máximo para não falhar. Para gerenciar uma memória, liberar o espaço de memória utilizado por um aplicativo, não deve ser uma tarefa realizada pela programação do programador, mas sim pela observação do sistema operacional. operações deste tipo, são delicadas e devem ser executadas com segurança. para evitar erros e intenções maliciosas, apenas o sistema operacional consegue fazer isso, e só realmente faz se estiver seguro. 6) O que é um system call e qual sua importância para a segurança do sistema? Como as system calls são utilizadas por um programa? R = System Call é uma chamada do sistema, como sua própria tradução indica. Em uma chamada ao sistema, o sistema operacional recebe um comando e possíveis parâmetros, como resposta, recebe um outro código, que pode indicar sucesso, falha ou até mesmo o resultado do próprio comando. No processo de receber o comando, o sistema identifica o aplicativo que fez a chamada e verifica a sua permissão para execução do comando. dada a permissão executa e retorna o resultado. 7) Quais das instruções a seguir devem ser executadas no modo kernel Desabilitar todas as interrupções, consultar a data e a hora do sistema, alterar a data e a hora do sistema, alterar informações residentes no núcleo do sistema, somar duas variáveis declaradas dentro do programa, realizar um desvio para uma instrução dentro do próprio programa e acessar diretamente posições no disco? R = 1. desabilitar todas as interrupções. 2. alterar a data e hora do sistema. 3. realizar um desvio para uma instrução dentro do programa e acessar diretamente posições do disco . 8) Explique o processo de ativação (boot) do sistema operacional? R = Quando o computador é ligado, não existe nada na memória, então o primeiro programa a ser chamado, é chamado boot, que fica gravado na memória rom. Este programa chama um programa que testa a existência dos recursos mínimos para inicializar o sistema e se comunicar com o hardware. este sistema se chama post (power on self test), que identifica possíveis erros do hardware, como falta de memória, teclado etc. Se tudo estiver ok, é verificado a existência de algum sistema operacional instalado em algum dispositivo. Quando encontrado ele chama procura por um espaço chamado boot sector, que contém as informações iniciais para carregar o sistema operacional na memória. 9) Quais as vantagens do modelo de máquina virtual? R = Permite executar uma instrução sobre um computador virtual, desta forma não prejudica o hardware real. Sendo que um computador real pode conter várias máquinas virtuais, qualquer comando não prejudica as outras máquinas virtuais, apenas a que está em execução. 10) Por que a utilização da programação orientada a objetos é um caminho natural para o projeto de sistemas operacionais? R = Por que a vida é orientada a objetos. O hardware e o software também serão. Em outras palavras, todas as coisas podem ser representadas através de objetos e suas propriedades, atributos, família, tipo, escala, recurso etc. Através deste tipo de programação é possível simplificar os módulos programáveis e reutilizar os recursos existentes.
Compartilhar