Perguntas: 1. O que é multiprogramação? Quais as principais motivações para o seu desenvolvimento? 2. Discuta brevemente a importância de cada um dos seguintes sistemas mencionados neste capítulo: a) MS-DOS b) CTSS c) Multics d) TSS e) UNIX f) Macintosh 3. Quais desenvolvimentos tornaram viável o computador pessoal? 4. Por que não é funcional usar uma máquina virtual para um sistema rígido de tempo real? 5. Que papel as interfaces gráficas com o usuário desempenharam na revolução do computador pessoal? 6. Qual a diferença de sistema operacional de rede para sistema operacional distribuído? 7. Defina, compare e aponte as diferenças para cada um destes termos: a) On-line b) Tempo real c) Computação interativa d) Tempo compartilhado 8. Avalie as arquiteturas monolítica, de camadas e de micronúcleo segundo a) Eficiência b) Robustez c) Extensibilidade d) Segurança Exercício Individual 1- A multiprogramação é a capacidade do sistema operacional de executar mais de um processo concomitamente, alternando rapidamente entre os processos no decorrer do tempo, dando a sensação de execução simultânea. Um dos motivos que levaram ao desenvolvimento da multiprogramação foi que chegaram a conclusão que a melhor maneira de otimizar a utilização de recursos, era executando uma mistura de diferentes Jobs. 2- a- O MS-DOS carrega o controlador no maior bloco de memória superior livre (UMB) e faz com que todos os outros UMBs fiquem disponíveis para utilização do controlador. b- O CTSS aceita várias tarefas residentes na memória ao mesmo tempo, para serem processadas concorrentemente, através de um mecanismo de divisão do tempo de UCP entre os processos. c- O objetivo do projeto multics era ser um sistema operacional com suporte a memória virtual, utilizando recursos de paginação e segmentação de memória, possibilitando um processo mais sofisticado de transferência de dados entre discos de memória. d- O TSS, todos incorporavam memória virtual, o que ajudava a livrar os programadores de grande parte da carga do gerenciamento de memória, liberando-os para se concentrarem no desenvolvimento de aplicações. e- Os projetista do UNIX criaram uma linguagem de alto nível C especificamente para implementar o UNIX. f- Nos computadores Macintosh, a GUI estava embutida no sistema operacional, de modo que, o aspecto e a sensação de todos às aplicações seriam similares. 3- O que fez tornar agradável para o consumidor foi às interfaces gráficas, mas conhecidas como GUIs. 4- Porque o disco rígido é centena de vezes mais lento do que a memória RAM. Apesar dos programas funcionarem normalmente usando memória virtual, o sistema vai ficando cada vez mais lenta. 5- As interfaces gráficas com o usuário (GUIs) facilitavam o uso do computador pessoal, proporcionando uma interface uniforme. 6- Um sistema operacional distribuído é uma coleção de computadores independente que aparecem ao usuário como um único computador. Já um sistema operacional de rede, é um conjunto de módulos que ampliam os sistemas operacionais completando-os com um conjunto de funções básicas, e de uso geral, que tornam transparente o uso de recursos compartilhados da rede. 7- a- Esses sistemas possuem uma linguagem de controle que permite ao usuário comunicar-se diretamente com o sistema operacional, através de comandos. Dessa forma, é possível verificar arquivos armazenados em disco ou cancelar a execução de um programa. O sistema normalmente responde em poucos segundos à maioria desses comandos. b- São implementados de forma semelhante aos sistemas de tempo compartilhado. O que caracteriza a diferença entre os dois tipos de sistema é o tempo exigido no processamento das aplicações. No sistema de tempo real não existe a idéia de fatia de tempo. Um programa utiliza o processador o tempo que for necessário ou até que apareça outro mais prioritário. c- Envolve uma comunicação com o mundo externo durante a computação. Isto está no contraste à compreensão tradicional de computação qual supõe uma relação simples entre um agente computando e seu ambiente, consistindo em fazer uma pergunta (entrada) e em gerar uma resposta (saída). d- Permitem que diversos programas sejam executados a partir da divisão do tempo do processador em pequenos intervalos, denominados fatia de tempo. 8- a- Mede o tempo de resposta do job solicitado pelo usuário, sendo a medida de tarefas que o processador pode realizar em certo período de tempo. b- Um sistema operacional sem falhas, caso venha a falhar deve minimizar os danos ao hardware do sistema. c- Sistema operacional que se adapta bem a novas tecnologias, indo além de seu projeto original. d- É o sistema operacional que impede acesso de usuários e software sem autorização.