Prévia do material em texto
Sistemas Operacionais - Leitura dos capítulos dos Livros de SO do Silberschatz e Andrews Tannenbaum. 1a)- Defina as propriedades essenciais dos tipos de sistema operacional a seguir: a. Batch É um termo referente a um processamento de dados (é uma série de atividades executadas ordenadamente, que resultará em uma espécie de arranjo de informações, onde inicialmente são coletadas informações, ou dados, que passam por uma organização onde no final será o objetivo que o usuário ou sistema pretende utilizar) que ocorre através de um lote de tarefas enfileiradas, de modo que o sistema operacional só processa a próxima tarefa após o término completo da tarefa anterior. b. Interativo O Sistema operacional interativo define-se como o usuário interage diretamente com o computador mesmo durante a execução de um programa, Através de dispositivos de entrada e saída Ex.: teclado/monitor/mouse c. De tempo compartilhado Consiste em dividir o tempo de processamento entre vários usuários, permitindo a execução de vários programas dividindo o tempo do processador em pequenos intervalos (time-slice). d. De tempo real Ele é destinado à execução de múltiplas tarefas onde o prazo para executar uma tarefa ou um evento é pré-definido. Podem ser orientados a estímulo: tem que reagir, dentro de um prazo pré-definido, a um estímulo do meio. Exemplo: monitoramento de batimentos cardíacos de um paciente. e. De rede É um conjunto de módulos que amplíam os sistemas operacionais, complementando-os com um conjunto de funções básicas, e de uso geral, que tornam transparente o uso de recursos compartilhados da rede. f. Paralelo Sistemas Paralelos e Distribuídos (SPD) são conjuntos de componentes interligados em rede que cooperam para realizar um conjunto de tarefas. As tarefas podem ser executadas de forma paralela e concorrente, com níveis variados de interação entre as mesmas ao longo do processo. g. Distribuído É um software que roda sobre uma coleção de nós computacionais independentes, separados fisicamente mas conectados. Cada nó individual possui um subconjunto de software do sistema operacional agregado. h. em Cluster Cluster é um termo utilizado para um sistema de integração de computadores, fazendo com que eles atuem conjuntamente no processamento de dados para tarefas que necessitam de uma grande carga de trabalho. i. Móvel Sistema Operacional móvel é um tipo de sistema operacional desenvolvido especificamente para smartphones, tablets, PDAs ou outros dispositivos móveis. Embora alguns computadores, como um típico laptop, sejam portáteis, os sistemas operacionais geralmente usados neles não são considerados móveis como eles foram originalmente concebidos para computadores estacionários maiores, que historicamente não têm ou não precisam de recursos específicos "móveis". 1b)- Em um ambiente de multiprogramação e tempo compartilhado, vários usuários compartilham o sistema simultaneamente. Essa situação pode resultar em diversos problemas de segurança. a. Cite dois desses problemas. Sobrecarregamento de processos, podendo causar uma mau funcionamento do SO; Vazamento de informações; b. Podemos assegurar o mesmo nível de segurança tanto em uma máquina dedicada como em uma máquina de tempo compartilhado? Explique sua resposta. Não, pois a dedicada você tem acesso facilmente ao usuário, já a compartilhada não tem esse controle. 2)- Em que circunstâncias seria melhor para o usuário usar um sistema de tempo compartilhado em vez de um PC ou uma estação de trabalho monousuária? Quando o usuário tem a necessidade de executar vários processos simultaneamente. https://pt.wikipedia.org/wiki/Sistema_operacional https://pt.wikipedia.org/wiki/Smartphone https://pt.wikipedia.org/wiki/Tablet https://pt.wikipedia.org/wiki/Personal_digital_assistant https://pt.wikipedia.org/wiki/Dispositivos_m%C3%B3veis https://pt.wikipedia.org/wiki/Computador https://pt.wikipedia.org/wiki/Laptop 3)- Descreva as diferenças entre os multiprocessamentos simétrico e assimétrico. Cite três vantagens e uma desvantagem de sistemas multiprocessadores. O multiprocessamento simétrico ou SMP (Symmetric Multi-Processing) ocorre em um sistema computacional com vários processadores com memória compartilhada sob controle de um único sistema operacional. Já o multiprocessamento assimétrico emprega sistemas diferentes. vantagens do multiprocessamento simétrico: ● No multiprocessamento simétrico muitos processos podem ser executados ao mesmo tempo sem queda no desempenho, pois o sistema operacional delega as instruções a cada processador; ● Se um processador falhar o sistema não tranca pois qualquer outro processador pode assumir as tarefas daquele que falhou, já no assimétrico por exemplo, se o processador mestre falhar o sistema trava; ● No SMP o usuário pode melhorar o desempenho da máquina simplesmente adicionando um processador. Desvantagem: Sistemas fortemente acoplados (os processadores compartilham memória e um relógio) 4)- Em que os sistemas clusters diferem de sistemas multiprocessadores? O que é necessário para duas máquinas pertencentes a um cluster cooperarem para fornecer um serviço de alta disponibilidade? Esses sistemas se diferem, pois são compostos de dois ou mais sistemas individuais acoplados. Para cooperarem é necessária uma rede Lan ou uma interconexão mais rápida, para obter alta disponibilidade é incluso um nível de redundância no sistema, uma camada de software do cluster é executada nos nós do cluster, cada nó pode monitorar um ou mais nós pela Lan, se a máquina falhar a outra assume. 5)- Qual a diferença entre os modelos de sistema distribuído cliente-servidor e entre pares? ● Modelo cliente-servidor: Trabalho de execução de aplicativos em rede, como serviço de e-mail. Armazenamento de arquivos, de modo que todos os usuários autorizados na rede podem acessá-los, cai em computadores servidores designados. Redes cliente-servidor centraliza a carga de trabalho. ● Modelo entre pares: Todos os computadores da rede contribuem mais ou menos igualmente para lidar com a carga de trabalho de processamento e armazenamento de arquivos compartilhados. Redes em pares descentralizam a carga de trabalho. https://pt.wikipedia.org/wiki/Sistema_operacional 6) Assinale a afirmação correta relacionado a Sistemas Operacionais: A- Responsável por alocar recursos de hardware e escalonar tarefas. B- Prover uma interface para o usuário. C- Fornece ao usuário uma maneira de acesso aos recursos do computador. D- Gerenciador dos recursos que compõem o computador (processador,memória, I/O, arquivos, etc). E- Compartilhamento ordenado, a proteção dos recursos a serem usados pelas aplicações do usuário. Quais alternativas estão corretas? [ ] apenas a, b, e [ ] apenas a, b, c, d [ ] apenas a, b, c, e [ ] apenas a, c, d, e [X] todas 7) Defina sistemas Monotarefa. Dê características e exemplos desta tecnologia. Como o próprio nome implica, o sistema operacional permite que apenas um programa (tarefa) seja executado de cada vez (mono programável). Os sistemas monoprogramáveis ou monotarefa se caracterizam por permitir que o processador, a memória, e os periféricos fiquem dedicados a um único usuário. Um exemplo desse sistema é o MS-DOS que foi um dos primeiros sistemas operativos, que executava apenas um programa de cada vez. 8) Defina sistemas multitarefas. Dê características e exemplos desta tecnologia. Quando um sistema operacional permite a execução de mais de um programaao mesmo tempo, ele é chamado de multitarefa e tem de lidar com procedimentos que concorrem quanto à utilização da capacidade de processamento do hardware. Ex: windows, linux, etc. https://pt.wikipedia.org/wiki/MS-DOS https://pt.wikipedia.org/wiki/Sistema_operativo 9) Qual é a finalidade das interrupções? Quais são as diferenças entre uma exceção e uma interrupção? As exceções podem ser geradas intencionalmente por um programa de usuário? Caso possam, com que finalidade? O objetivo das interrupções é indicar a concorrência de um evento. A diferença é que a interrupção manda mensagem via hardware para o Sistema Operacional. A execução envia um programa para o Sistema Operacional. As execuções podem ser geradas intencionalmente com a finalidade de alertar sobre algum erro. 10) Os serviços e funções fornecidos por um sistema operacional podem ser divididos em duas categorias principais. Descreva resumidamente as duas categorias e discuta em que elas diferem. Conveniência: Execução de programas Operações de I/O Sistema de arquivos Detecção de erros Eficiência: Alocação de recursos Proteção Contabilizações 11) Quais são as cinco atividades principais de um sistema operacional relacionadas ao gerenciamento de arquivos? As cinco principais atividades de um sistema operacional com relação à gerência de arquivos são: criação e remoção de arquivos, criação e remoção de diretórios,suporte a primitivas para manipular arquivos e diretórios,mapeamento de arquivos em memória secundária e backup de arquivos em meios de armazenamento estáveis (não-voláteis) 12) Seria possível para o usuário desenvolver um novo interpretador de comandos usando a interface de chamadas de sistema fornecida pelo sistema operacional? Sim, se o sistema operacional oferecer uma ferramenta de interpretador de comandos, o usuário conseguirá desenvolver outra ferramenta que sirva para execução de algum processo ou até mesmo um novo interpretador de comandos. 13) O que é Kernel? A- Formado por um conjunto de rotinas que oferecem serviços aos usuários. B- Formado por um conjunto de rotinas que oferecem serviços ao próprio sistema. C- Mecanismo de proteção ao núcleo do sistema. D- Mecanismo de proteção e de acesso aos seus serviços. E- Núcleo do sistema. Quais alternativas estão corretas? [X] apenas a, b, e [ ] apenas a, b, c, d [ ] apenas a, b, c, e [ ] apenas a, c, d, e [ ] todas 14) Qual é a principal dificuldade que um programador deve superar ao criar um sistema operacional para um ambiente de tempo real? A principal dificuldade é manter o sistema operacional dentro das restrições de tempo de um sistema de tempo real. Assim, quando um programador estiver escrevendo um sistema operacional para um sistema de tempo real ele precisa ter certeza que o "Scheduling Scheme" não permita que o tempo de resposta ultrapasse as restrições de tempo. 15)- Como a diferença entre a modalidade de kernel e a modalidade de usuário funciona como um tipo rudimentar de sistema de proteção (segurança)? Modalidade de usuário é qualquer tipo de mecanismo que controle o acesso de processos ou usuários aos recursos que um sistema de computação defina. Fazendo com que tal mecanismo forneça os meios para a especificação dos controles a serem impostos e meios para sua imposição. 16) Qual é a finalidade das chamadas de sistema? As chamadas de sistemas são funções (interfaces) usadas pelos aplicativos para solicitar a execução de algum serviço ao kernel do sistema operacional. ... Com as chamadas de sistemas é possível, por exemplo, definir acesso a recursos de baixo nível como alocação de memória, periféricos e arquivos. 17) Quais são as cinco principais atividades de um sistema operacional relacionadas ao gerenciamento de processos? Criação,eliminação , suspensão, reativação de processos e fornecer mecanismos para sincronização dos mesmos. 18) Quais são as três principais atividades de um sistema operacional relacionadas ao gerenciamento de memória? manter registro das partes da memória que estão sendo usadas nomomento e por quem; decidir qual processo deve ser alocado na memóriaquando houver espaço disponível ; alocar e desalocar espaço de memória. 19) Como seria o projeto de um sistema que permitisse a escolha do sistema operacional a partir do qual se dará a inicialização? O que o programa bootstrap teria que fazer? Seria uma interface de boot, para determinar qual SO o usuário deseja utilizar, o bootstrap faria o papel de design da página, visto que, é um framework front-end, visando facilitar a interface do usuário. 20) Qual é a finalidade dos programas de sistema? Os programas voltados para dar suporte funcional aos computadores, como os sistemas operacionais, são chamados de software de sistema. Esses softwares, assim como aqueles embutidos em outros sistemas (firmware), podem ser genericamente chamados de "programas". 21) O acesso direto à memória é usado em dispositivos de I/O de alta velocidade para impedir o aumento da carga de execução da CPU. a. Como a CPU se relaciona com o dispositivo para coordenar a transferência? Após estabelecer os buffers, ponteiros e contadores para o dispositivo de I/O, o controlador do dispositivo transfere um bloco inteiro de dados diretamente da memória para o seu próprio buffer ou a partir dele para a memória, sem intervenção da CPU. b. Como a CPU sabe quando as operações da memória foram concluídas? É gerada uma interrupção por bloco para informar ao driver do dispositivo que a operação foi concluída. c. A CPU pode executar outros programas enquanto o controlador de DMA está transferindo dados. Esse processo interfere na execução dos programas de usuário? Caso interfira, que tipos de interferência são gerados? Não interfere. Enquanto o controlador do dispositivo está executando essas operações, a CPU está disponível para cumprir outras tarefas.