Buscar

Arquitetura de 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

Você também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 3, do total de 14 páginas

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 6, do total de 14 páginas

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 9, do total de 14 páginas

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ê também pode ser Premium ajudando estudantes

Prévia do material em texto

Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Arquitetura de Sistemas Operacionais
Capítulo 1
Visão Geral
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Sumário
Funções básicas
Máquina de níveis
Histórico
Tipos de sistemas operacionais
Sistemas monoprogramáveis
Sistemas multiprogramáveis
Sistemas com múltiplos processadores
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Funções Básicas
Visão do sistema operacional 
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Máquina de Níveis
Visão do usuário
Arquitetura de Sistemas Operacionais – Machado/Maia
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Máquina de Níveis
Máquina de níveis
Arquitetura de Sistemas Operacionais – Machado/Maia
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Histórico
Década de 1940
Década de 1950
Década de 1960
Década de 1970
Década de 1980
Década de 1990
Década de 2000
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Histórico
Processamento batch
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Tipos de Sistemas Operacionais
Tipos de sistemas operacionais
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Tipos de Sistemas Operacionais
SOs monoprogramáveis/monotarefa
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Tipos de Sistemas Operacionais
SOs multiprogramáveis/multitarefa
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Tipos de Sistemas Operacionais
SOs multiprogramáveis /multitarefa
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Sistemas com Múltiplos Processadores
Sistemas fortemente acoplados
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Sistemas com Múltiplos Processadores
Sistemas fracamente acoplados
Arquitetura de Sistemas Operacionais – I
Cap. 1 - Visão Geral
*
Introdução
Um SO é complexo, mas pode ser visto como um conjunto de rotinas executadas pelo processador. Sua principal função é controlar o funcionamento de um computador , gerenciando a utilização e o compartilhamento de seus diversos recursos (processadores, memórias e dispositivos de E/S.
O SO é uma interface entre o usuário e o computador (facilita, simplifica, aumenta a produtividade e dá segurança).
Um SO não tem um funcionamento linear, suas rotinas estão associadas a eventos assíncronos.
Objetivos: apresentar as funções básicas, conceito de máquina virtual, histórico e os tipos e classes de SOs
 
Funções Básicas: Resumidamente duas: 
Facilidade de acesso aos recursos:
	Como o que é feito o acesso a vídeo, impressoras, unidades de leitura e gravação e comunicação a estes dispositivos
 Compartilhamento de recursos de forma organizada e protegida: 	O SO deve controlar de forma compartilhada os seus recursos e forma ordenada e protegida.
Sem o sistema operacional, um usuário para interagir com o computador deveria conhecer profundamente diversos detalhes sobre hardware do equipamento, o que tornaria seu trabalho lento e com grandes possibilidades de erros. As duas principais funções são “facilidade de acesso aos recursos do sistema” e “compartilhamento de recursos de forma organizada e protegida”.
Maquina Virtual
O usuario enxerga a maquina como se fosse o SO
Maquina de níveis: O HW são circuitos, placas, cabos, etc, e seria necessário entender a arquitetura e sua linguagem de maquina para programa-lo, porém, o SW que permite usa-los. Inicialmente nível 0 (HW) e nível 1 (SO). Nesta visão abstrata podemos ter mais níveis.
 O computador pode ser visualizado como uma máquina de camadas, onde inicialmente existem duas camadas:
hardware (nível 0) e sistema operacional (nível 1). Desta forma, o usuário pode enxergar a máquina como sendo apenas
o sistema operacional, ou seja, como se o hardware não existisse. Esta visão modular e abstrata é chamada máquina
virtual. A vantagem desse conceito é tornar a interação entre usuário e computador mais simples, confiável e eficiente.
O computador pode ser visualizado como uma máquina de níveis ou máquina de camadas, possuindo tantos níveis quanto forem necessários para adequar o usuário às suas diversas aplicações. Quando o usuário está trabalhando em um
desses níveis, não necessita saber da existência das outras camadas. Com isso a interação entre usuário e computador apresenta-se mais simples, confiável e eficiente.
Histórico: 
Pascal, Leibniz e Colmar, criaram maquinas para fazer as operações básicas (+ - x /)
Babage criou a maquina analitica (computador mecanico) Ada Byron o programa.
Boole a lógica booleana (binaria)
Hollerith os cartões perfurados (IBM)
Apartir de 1930 maquinas e computadores eletronicos (ABC) e Turing com a ideia de Maquina Universal (algoritimo)
1940 computadores eletronicos digitais (ENIAC, EDVAC, MANIAC, etc.) e a aquitetura de Von Neumann (programa armazenado) une as ideias da maquina analitica e maquina universal a um mesmo sistema (EDSAC), não haviam interfaces (monitores e teclados) e SO.
1950 transistor, memoria magnética, jobs, processamento em batch e em 53 o 1º SO chamado de monitor, depois os SO incorporaram rotinas para E/S (independencia de dispositivos e finalmente o conceito de memoria virtual (paginação).
1960 surgem os CIs implementaçao de conceitos de multiprogramação, multiprocessamento, time-sharing, memoria virtual, segmentação, paginação e sistemas on-line. Criação do IBM System/360, maquinas de diferentes portes com a mesma aquitetura e criação do MULTICS (UNIX)
1970 Microprocessadores, tecnicas de paralelismo, redes WAN, SNA, Local, Fundação da APPLE e Microsoft, criação dos SO CP/M e UNIX, linguagens pascal e C
1980 PC, TCP/IP, Distribuiçoes de UNIX (BSD, Solaris), DOS, Windows, OS/2, SO de rede (Netware e MS Lan Manager)Criação da SUN, maquinas RISC, interface grafica
1990 Avanços de HW, SW e Telecom. Alto poder de processamento, armazenamento de dado, sistemas especialistas, multimidia, banco de dados distribuidos, IA e redes neurais evolução da Internet, arquitetura cliente/servidor crescimento do Windows e Unix.
2000 tendencia de processamento distribuido, redes wireless, linguagem natural e redução de custos.
A evolução dos SO está ligado ao desenvolvimento do HW, no inicio trabalhavamos com programas ou jobs depois vieram as ideias de processo e subprocesso e pro fim thread. Os SO popularizaram conceitos e tecnicas dos ambientes de grande porte.
Sistemas monoprogramáveis ou monotarefa, sistemas multiprogramáveis ou multitarefa e sistemas com múltiplos
processadores.
Sistemas Monoprogramáveis e Monotarefas:
Processador, memórias e periféricos dedicados a um só programa ou tarefa
Porque em sistemas monoprogramáveis somente é possível a execução de um programa por vez. Como um programa não utiliza todos os recursos do sistema totalmente ao longo da sua execução, existe ociosidade e, consequentemente,
subutilização de alguns recursos.
 Os sistemas monoprogramáveis se caracterizam por permitir que o processador, a memória e os periféricos permaneçam exclusivamente dedicados à execução de um único programa. Nos sistemas multiprogramáveis ou multitarefa, os recursos computacionais são compartilhados entre os diversos usuários e aplicações. Enquanto em sistemas monoprogramáveis existe apenas um programa utilizando os recursos disponíveis, nos multiprogramáveis várias aplicações compartilham esses mesmos recursos.
Sistemas Multiprogramáveis e Multitarefas:
Processador, memórias e periféricos compartilhados para diversos usuários (mono e multiusuários) e aplicações
As vantagens do uso de sistemas multiprogramáveis são a redução do tempo de resposta das aplicações processadas no ambiente e de custos, a partir do compartilhamento dos diversos recursos do sistema entre as diferentes aplicações.Sim, somente um usuário interage com o sistema podendo possuir diversas aplicações executando concorrentemente. O sistema Windows NT é um exemplo
Suas aplicações podem ser gerenciadas tendo processamentos em batch (jobs), time-sharing (atraves do time-slice) sistemas on-line ou em real-time (tempo de resposta é fundamental, não existe o time-slice e sim prioridade de execução.
O processamento batch tem a característica de não exigir a interação do usuário com a aplicação. Todas as entradas e saídas de dados da aplicação são implemetadas por algum tipo de memória secundária, geralmente arquivos em disco.
Alguns exemplos de aplicações originalmente processadas em batch são programas envolvendo cálculos numéricos, compilações, ordenações, backups e todos aqueles onde não é necessária a interação com o usuário.
Os sistemas de tempo compartilhado (time-sharing) permitem que diversos programas sejam executados a partir da divisão do tempo do processador em pequenos intervalos, denomidados fatia de tempo (time-slice). A vantagem na sua utilização é possibilitar para cada usuário um ambiente de trabalho próprio, dando a impressão de que todo o sistema está dedicado, exclusivamente, a ele.
 O fator tempo de resposta. Nos sistemas de tempo real, os tempos de resposta devem estar dentro de limites rígidos. Aplicações de controle de processos, como no monitoramento de refinarias de petróleo, controle de tráfego aéreo, de usinas termoelétricas e nucleares são executadas em sistemas de tempo real.
Multiplos processadores quando possuem mais de uma CPU podem do executar dois ou mais programas ao mesmo tempo ou mesmo subdividir um programa em partes para se executar simultaneamente.
São sistemas possuem vantagens especificas como:
Escalabilidade: ampliar o poder computacional através da adição de novos processadores.
Disponibilidade: manter o sistema funcionando em caso de falhas
Balanceamento de carga: distribuir o processamento entre os diversos processadores.
Os sistemas com múltiplos processadores caracterizam-se por possuir duas ou mais UCPs interligadas e trabalhando em conjunto. A vantagem deste tipo de sistema é permitir que vários programas sejam executados ao mesmo tempo ou que um mesmo programa seja subdividido em partes para serem executadas simultaneamente em mais de um processador.
Sistemas fortemente acoplados com partilham a memória e podem ser divididos em SMP (Symetric Multiprocessors - tempo uniforme de acesso a memória) e NUMA (Non-Uniform Memory Access – diversos conjuntos de processadores e memoria principal, sendo estes conjuntos conectados uns aos outros atraves de uma rede de interconexão) o tempo de acesso à memória varia em função da localização fisica dos mesmos.
Sistemas fracamente acoplados 
Possuem dois ou mais computadores (podendo ter mais de um processador) ligados através de linhas de transmissão (redes).
Com os sistemas operacionais de rede os SORs temos um modelo que pode ser visco como uma única imagem dos serviços disponibilizados pela rede.
Nos sistemas distribuidos o SO esconde detalhes de seus hosts concebendo um sistema centralizado. 
Um exemplo destes são os clusters, computadores ligados por uma conexão de alto desempenho
Nos sistemas fortemente acoplados existem vários processadores compartilhando uma única memória física e dispositivos de entrada/saída, sendo gerenciados por apenas um sistema operacional. Os sistemas fracamente acoplados caracterizam-se por possuir dois ou mais sistemas computacionais conectados através de linhas de comunicação. Cada sistema funciona de forma independente, possuindo seu próprio sistema operacional e gerenciando seus próprios recursos, como UCP, memória e dispositivos de entrada/saída.
Nos sistemas SMP, o tempo de acesso à memória principal pelos diversos processadores é uniforme. Nos sistemas NUMA, existem diversos conjuntos de processadores e memória principal interconectados, onde o tempo de acesso à memória principal varia em função da sua localização física.
Os sistemas fracamente acoplados caracterizam-se por possuir dois ou mais sistemas computacionais conectados através de linhas de comunicação. Cada sistema funciona de forma independente, possuindo seu próprio sistema operacional e gerenciando seus próprios recursos, como UCP, memória e dispositivos de entrada/saída. Os sistemas operacionais de rede permitem que um host compartilhe seus recursos, como uma impressora ou diretório, com os demais hosts da rede enquanto que nos sistemas distribuídos, o sistema operacional esconde os detalhes dos hosts individuais e passa a tratá-los como um conjunto único, como se fosse um sistema fortemente acoplado.

Continue navegando