Você está na página 1de 56

Sistemas Computacionais Introduo Computao

Licenciatura em Segurana Informtica em Redes de Computadores 2010/2011

Sumrio
Sistemas Computacionais
Introduo Noes de Hardware Terminologia de Sistemas Operativos Sistemas Distribudos

introduo

Introduo
Componentes de um Sistema de Computao

Introduo
Hardware
Recursos fsicos: CPU, memria, dispositivos de E/S (ou I/O)

Programas de Sistema
Inclui o Sistema Operativo, que controla e coordena a utilizao do hardware durante a execuo de vrios programas de aplicao

Programas de Aplicao
Permitem a utilizao dos recursos do sistema para resoluo de problemas dos utilizadores (Sistemas de base de dados, jogos, programas de gesto, etc.)

hardware

Hardware
Elementos Bsicos
Processador Memria Principal Voltil tambm conhecida como memria principal Mdulos de Entrada e Sada (E/S ou I/O) Dispositivos de memria secundria Dispositivos de comunicao Terminais Barramento do Sistema Comunicao entre processadores, memria e mdulos de entrada e sada

Hardware
Componentes de um Computador Pessoal Simples

Monitor

Bus
8

Hardware
Processador
The brain of the computer is the CPU. (Tanenbaum) Busca instrues da memria e executa-as Cada CPU tem/conhece um conjunto de instrues bem definidas
Um Pentium no sabe executar programas para SPARC e vice-versa

Um CPU contm vrios registos internos teis ao seu funcionamento


Pois o acesso memria mais lento

Hardware
Ciclos de Clock
Em cada ciclo de clock, um ou dois operandos so lidos de registos e combinados na Unidade Lgica e Aritmtica

Frequncia
Nmero de ciclos de clock, por segundo Unidade o Hz
200 MHz, 1 GHz = 1000 MHz,

Pipeline
Tcnica que permite colocar instrues numa linha de execuo
CPU executa instruo n, enquanto instruo n+1 j est sendo descodificada, e instruo n+2 sendo lida da memria Pretende superar limitaes do tradicional mtodo Ler descodificar executar uma instruo

10

Hardware
Pipeline

a) pipeline de trs estados b) CPU superescalar


Permite a execuo de vrias instrues no mesmo ciclo de clock

11

Hardware
Memria
Registos internos do CPU
Mesmo material que o CPU (internos a este), praticamente sem atrasos no acesso Tipicamente 32 x 32 bits (CPUs de 32 bits) e 64 x 64 (CPUs de 64 bits)

Cache
Quando CPU necessita de aceder RAM, verifica primeiro na cache Cache hits encontra o que pretende na cache Diferentes nveis de cache (ex.: Cache L1, Cache L2)

RAM Memria Principal Disco duro/rgido Outros


Tapes geralmente usada para suporte a backups/armazenar grande quantidade de dados
12

Hardware
Hierarquia de memria

Os dados apresentados so aproximaes (Tempo Acesso VS. Capacidade)


13

Hardware
Discos

Estrutura de um disco
14

Hardware
Discos

Parmetros de funcionamento para dois discos distintos


15

Hardware
Bus
Barramento de interligao Via de comunicao que liga dois ou mais dispositivos um meio de transmisso partilhado (vrios dispositivos ligam-se a ele para transmitir/receber dados) Geralmente so constitudos por vrias linhas de comunicao (cada linha poder transmitir os sinais binrios [0, 1]) Tipos de barramentos
Barramento de Sistema (ou local) interliga componentes principais (ex.: CPU, memria, E/S) Barramentos de Expanso interliga controladores de E/S (permite isolar o trfego entre CPU e RAM do trfego E/S)
16

Hardware
Implementaes de Bus
IDE Integrated Drive Electronics
um padro tipo para discos em sistemas Pentium (e no s)

SCSI Small Computer System Interface


Barramento de alta performance, especialmente desenvolvido para discos (scanners, etc.) rpidos Conseguem taxas de transferncias at 160 MB/s

USB Universal Serial Bus


Usa conector de 4 pinos (dois dos quais so para fornecimento de energia - SERIAL) Partilham o mesmo device driver Procura de novos dados a cada 1 ms USB 1.0 12 Mbps, USB 2.0 480 Mbps, USB 3.0 quase at 5 Gbps

IEEE 1394 (apelidado de FireWire pela Apple)


Taxas de transferncia at 50 MB/s (muito usado em dispositivos multimdia - cmaras)
17

Hardware
Bus
Ponte PCI estabelece uma conexo/interface entre o barramento do sistema e o barramento PCI (uma espcie de chip especial)

Estrutura de um sistema Pentium


Note o nmero de barramentos - cache, local, memria, PCI, SCSI, USB, IDE, e ISA
18

Hardware
Device Controllers
Dispositivos de E/S contm duas partes: mecnica e electrnica A parte electrnica denominada controlador do dispositivo Device Controller um chip ou conjunto de chips Aceita comandos provenientes do SO, como ler, escrever, etc., apresentando uma interface acessvel ao SO Converte bits transmitidos em srie num bloco de Bytes Executa aces de correco sobre erros

19

Hardware
Device Controllers Propriedades Principais
Transferncia sncrona VS Assncrona transferncias de uma s vez VS geridas por interrupes Buffering dados provenientes de um dispositivo no so armazenados directamente no destino final Dispositivos partilhados VS Dedicados discos podem ser partilhados, mas tape drives no

20

Hardware
DMA Direct Memory Access
Acesso directo memria Dados de E/S so trocados directamente entre a memria e dispositivo (sem interveno do processador) Processador d autoridade inicial ao mdulo de E/S para ler de/escrever na memria CPU fica liberta desta gesto para realizar outras tarefas

21

Hardware
DMA Direct Memory Access

22

Sistemas operativos

23

Sistemas Operativos
Sistema Operativo
Esconde os detalhes necessrios ao funcionamento/gesto da mquina Apresenta ao utilizador uma mquina virtual de fcil utilizao Gere os recursos (memria primria, secundria, CPU), atribuindo a cada programa um conjunto bem definido de tempo e espao para utilizao dos recursos Explora recursos de hardware de um ou mais processadores Disponibiliza um conjunto de servios ao utilizador

24

Sistemas Operativos
Kernel
Ncleo/parte central do Sistema Operativo o primeiro/principal programa do sistema a executar
Responsvel pela gesto do prprio sistema (gere processos e hardware)

Modo de Execuo das Instrues


User Mode
Somente um conjunto de instrues so permitidas executar

Kernel Mode
permitido executar todas as instrues, tendo o SO acesso total ao hardware

Quase todos os processadores suportam os dois modos de execuo (excepto, por exemplo, os embebidos mais simples)
25

Sistemas Operativos
Espao de memria
Kernel Space Espao onde o kernel executa User Space Espao de execuo dos processos de utilizador

System Calls
Chamadas ao sistema, solicitando servios
Ex.: Operaes de E/S, criao de processos

Permitem que o programa de um utilizador invoque servios do prprio Sistema Operativo


Pedidos so interceptados pelo kernel De outra forma, programa do utilizador no teria permisses para aceder a recurso
26

Sistemas Operativos
Interrupts
Interrupes - interrompem a sequncia normal da execuo do CPU Dispositivos de E/S so geralmente mais lentos do que a CPU

(a)
27

(b) a) Passos desde iniciar o mdulo E/S at receber um interrupt b) Tratamento do interrupt (aceitar executar respectivo programa voltar ao prog.)

Sistemas Operativos
Tipos de Interrupts
Programa ocorre como resultado de uma instruo (ex.: diviso por 0) Timer (relgio) gerada por relgio interno ao CPU (SO executa certas operaes com regularidade) E/S gerada por um controlador (driver) de um dispositivo de E/S Falha no hardware ex.: falta de energia, erro paridade na memria

28

Sistemas Operativos
Interrupt Handler
Programa ou rotina que executado quando uma determinada interrupo ocorre Geralmente faz parte do SO Ex.: programa que serve um dispositivo de E/S
Ex.: movimento do rato

29

Sistemas Operativos
Device Drivers
Dispositivos Controladores
Device Drivers (software) Device controllers (hardware)

Software prprio desenvolvido para cada device controller Responsvel pela comunicao com o device controller, numa linguagem comum a ambos, pelo envio de comandos e recepo de respostas Colocado no SO de forma a executar em kernel mode

Teoricamente, os drivers podem executar fora do kernel, mas restries de segurana normalmente impedem essa abordagem/aceitao pelos SOs

30

Sistemas distribudos

31

Sistemas Distribudos
O que um Sistema Distribudo?
A collection of independent computers that appears to its users as a single coherent system.
(Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 PrenticeHall, Inc. All rights reserved. 0-13-239227-5)

Conjunto de componentes (hardware e software) autnomos que, por cooperarem entre si, tentam dar ao utilizador uma imagem una

32

Sistemas Distribudos
Implementao
Adaptao e utilizao dos sistemas clssicos

Exemplos:
Servidores de CPU, servio de ficheiros, WWW, etc.

33

Sistemas Distribudos
Modelo Cliente Servidor
Modelo de comunicao de referncia na Internet Assenta no conceito de prestao de servios Separa clientes e servidores Dois grupos de intervenientes comunicam entre si geralmente utilizando uma rede de computadores Um cliente envia solicitaes ao servidor No servidor executam processos que implementam servios especficos (impresso, partilha de ficheiros, Web, Bases de Dados, etc.)
34

O conceito aplicado em diversos usos e aplicaes

Sistemas Distribudos
Servidor
Desempenha um papel passivo Aguarda pelo contacto dos clientes No conhece os clientes at ser contactado por eles Executa o servio solicitado pelo cliente, devolvendo-lhe uma resposta Exemplo de servios
Servio de ficheiros Servio de impresso Servio proxy Servio Web

35

Sistemas Distribudos
Cliente
Desempenha um papel activo Contacta o servidor, efectua um pedido e aguarda pela resposta Tipicamente utilizado directamente pelo utilizador Tem de conhecer previamente o endereo do servidor

36

Sistemas Distribudos
Modelo Cliente Servidor

37

Co-existncia numa rede de um servidor e vrios clientes

Sistemas Distribudos
Modelo Cliente Servidor

Interaco genrica entre um cliente e um servidor


38

Sistemas Distribudos
Modelo Cliente Servidor

Dois clientes e um servidor com SO de rede (ex.: GNU/Linux) Comunicao com base num conjunto de protocolos

39

Sistemas Distribudos
Modelo Cliente Servidor
Vantagens
Concentrao de recursos (ficheiros, impressoras, aplicaes, etc.) num nico ponto permite melhor controlo e administrao Maior segurana Acesso mais simples

Desvantagens
Ponto nico de falha servidor inoperacional implica que a rede no funcione Necessidade de administrador experiente para gerir e colmatar rapidamente possveis falhas

40

Sistemas Distribudos
Peer-to-peer (P2P)
Arquitectura descentralizada Proveniente do ingls Ponto-a-Ponto Rede linear, rede distribuda ou rede no hierrquica Caracteriza pela descentralizao das funes na rede Um computador pode actuar simultaneamente como servidor e/ou cliente Cada utilizador controla os seus prprios recursos

Cada terminal realiza tanto funes de servidor como de cliente


41

Sistemas Distribudos
Peer-to-peer (P2P)

Arquitectura de uma rede Peer-to-Peer


42

Sistemas Distribudos
Arquitecturas Modernas

43

Exemplo de distribuio horizontal de um servio Web

Sistemas Distribudos
Cluster Computing
Tornaram-se populares devido melhoria da relao preo / performance Construo de super-computadores com base em mquinas relativamente baratas, acopladas atravs de uma rede de elevado dbito Permite a uma aplicao executar paralelamente em vrias mquinas Normalmente, o cluster assenta num conjunto homogneo de mquinas (mesmas caractersticas de hardware, mesmo SO, ligadas mesma rede)

44

Sistemas Distribudos
Cluster Computing

O n mestre
45

Pode consistir num par de alta-disponibilidade Contm informao sobre o cluster (ex.: contas de utilizador) Monitora o correcto funcionamento do cluster

Sistemas Distribudos
Cluster Computing
Propriedades desejadas
Utilizadores no sabem que esto a usar um cluster Os ns desconhecem que fazem parte de um cluster Aplicaes desconhecem pertencer a um cluster Servidores da rede no necessitam saber que esto a servir um n do cluster

Vantagens
Alta disponibilidade continuidade de servio, mesmo em caso de falha de hardware ou software Aumento de escalabilidade possibilita a introduo de novos componentes/ns conforme o aumento de carga do sistema Simplificao da tarefa de administrao administrao do grupo como se de um s sistema/n se tratasse No existe um nico ponto de falha
46

Sistemas Distribudos
Grid Computing
A ideia ter um conjunto de recursos disponvel ao utilizador Infra-estrutura semelhante rede elctrica de fornecimento de electricidade Utilizador liga-se para obter poder computacional CPU, armazenamento, software, perifricos, etc. Utilizador no se preocupa com detalhes do local onde os dados so armazenados ou qual o computador que processa o seu pedido

47

Sistemas Distribudos
Grid Computing
Utilizao de recursos computacionais interligados e geograficamente dispersos , para partilha de recursos (ex.: espao e computao) Combinao do poder de mltiplas mquinas para entregar performance superior (velocidade, escalabilidade, dbito) Ao contrrio de um cluster, as mquinas associadas a uma Grid so bastante heterogneas (Grids so dinmicas, heterogneas e podero incluir dispositivos partilhados) No existe regra para hardware, SO, rede, domnios administrativos, segurana, polticas, etc. Uma Grid pode conter clusters, mas um cluster no contm Grids
48

Sistemas Distribudos
Grid Computing Caractersticas
Heterogeneidade
Recursos heterogneos, variedade de tecnologia

Escalabilidade
Capacidade de crescer, sem perda de desempenho ()

Partilha de recursos
Recursos no devem ser consumidos por uma nica aplicao

Multiplicidade de domnios administrativos


Uma organizao possui as suas prprias restries e regras no uso dos recursos, devendo ser respeitadas

Dinamicidade e adaptabilidade
Ateno disponibilidade dos recursos

49

Sistemas Distribudos
Grid Computing

50

Sistemas Distribudos
Cloud Computing
Aplicaes disponveis como um servio acessvel atravs da Internet Sistemas e hardware em datacenters que suportam estes servios Utiliza e implementa tcnicas de virtualizao, escalabilidade, interoperabilidade, qualidade de servio, mecanismos de supresso de falhas, elasticidade, etc.

51

Sistemas Distribudos
Cloud Computing
Camadas de servio
Utilizador final Acesso a aplicaes Plataforma para construo e disponibilizao de aplicaes Eucalyptus Nimbus OpenNebula Etc.

52

Sistemas Distribudos
Importncia do Cloud Computing
D ao utilizador a iluso de um conjunto infinito de recursos Capacidade de pagar o uso efectivo dos recursos computacionais Decremento da electricidade consumida, largura de banda, operaes, software economia de escala Os recursos so disponibilizados medida das necessidades dos utilizadores Elimina os custos associados compra, configurao e gesto de hardware e software necessrio disponibilizao das aplicaes As aplicaes so disponibilizadas como um servio

53

Sistemas Distribudos
Cloud Computing
Virtual Applications
Virtual Client Virtual Client Virtual Client

Virtual Client
App Loads

Private Cloud
App Loads

App Loads

App Loads

App Loads

Federation Virtualization Virtualized Data Center


54

Information Security

Cloud Computing External Cloud

Internal Cloud

Sistemas Distribudos
Cloud Computing Casos de Uso
A team at Clemson University and CERN has used OpenNebula to deploy thousands of VMs on 400 hosts (3,200 cores) running Xen OpenNebula was integrated in internal network and configuration management Contributed drivers for using LVM based disk images

The Dgrid Resource Center Ruhr (DGRZR) has used OpenNebula to manage 248 Blades with a total of 1,984 cores. OpenNebula is used to support the execution of a virtualized Grid site in D-Grid and EGEE

SARA High Performance Computing Center uses OpenNebula in its new HPC Cloud service on 128 cores across 16servers with KVM OpenNebula is used to support the execution of virtual clusters and HPC applications Authors of the OpenNebula Management Console

55

Bibliografia recomendada
Curiosidades:
http://www.zdnet.com/news/ibm-supercomputer-top-rankedblade-machine/139595

Andrew S. Tanenbaum. Modern Operating Systems (2nd Edition). Prentice Hall, 2001 ISBN: 9780130313584 Katarina Stanoevska-Slabeva, Thomas Wozniak, Santi Ristol. Grid and Cloud Computing: A Business Perspective on Technology and Applications (1st Edition). Springer, 2009 ISBN: 978-3642051920
56

REF [Altino Sampaio:ams@estgf.ipp.pt]