Baixe o app para aproveitar ainda mais
Prévia do material em texto
Prova 2 Itens que cairão na prova: sistemas multiprocessados. sistemas de tempo real. segurança. sistemas multiprocessados. diferença entre multiiprocessadores, multicomputadores e sistemas distribuidos, como se dá a comunicação: * multiprocessador (mais rápido): recursos locais, tem várias cpus que se comunicam através da memória compartilhada, por escrita e leitura. Sua velocidade depende da velocidade do barramento ESCALONAMENTO em multiprocessador: Compartilhamento de tempo: quando forem processos independentes. CPU busca os processos para executar. Quando termina a fatia de tempo de um processo, a CPU libera e busca outro processo Compartilhamento de espaço: processos relacionados (em que algum momento precisam de sincronização). Processos são grupos de threads e só executa quando tiver todas as CPU necessárias disponíveis (usam CPU até liberar). Compartilhamento em bando: processos (threads) são um bando que iniciam ao mesmo tempo e finalizam ao mesmo tempo (fatia de tempo é a mesma para todos, se não conseguir finalizar, é chamada mais vezes até finalizar). *multicomputadores: CPUMemória são conectados por alguma conexão local (de alta velocidade, dedicada) Memória distribuída Não possui memória compartilhada, porém pode ocorrer Memória Compartilhada Distribuída (memória virtual para uso de todos os multicomputadores) COMUNICAÇÃO em Multicomputadores: Troca de mensagens EXPLÍCITAS: usa primitivas (send e receive): > síncronas (bloqueantes) send envia e bloqueia e receive fica bloqueado até que recebe, e aí faz a computação. Esa timeout; Não sobrepõe comunicação com computação. >assíncronas (não bloqueantes) send envia e faz a computação de outras coisas enquanto envia. Posso aproveitar o tempo de transmissão para fazer computação nos processos envolvidos na comunicação. Troca de mensagens IMPLÍCITAS: >Chamada de Procedimento Remoto (RPC): é chamado remotamente parecendo execução local. Fica invisível para o usuario, não precisando utilizar send/receive ESCALONAMENTO em Multicomputador: Escalonamento local, preocupação maior com balanceamento de carga. Algoritmo determinístico teórico de grafos Algoritmo heurístico distribuído iniciado pelo emissor Algoritmo heurístico distribuído iniciado pelo receptor * sistemas distribuidos: Memória distribuida, com comunicação (mais lenta) através da Internet(rede de uso geral) Deve parecer ao usuário ser um sistema uniprocessado. MIDDLEWARE > usuário não sabe da infraestrutura de execução. Distribuição é transparente para o usuário. NÃO É SISTEMA OPERACIONAL DISTRIBUÍDO apenas esconde algum aspecto da distribuição > Baseado em documentos: www (link na internet) > Baseado em arquivos: comunicação é feita através de leitura e escrita de arquivos. > Modelos de transferência Upload/Download: arquivo é acessado servidor e copia para a maquina. Faz alterações locais, ao fechar é mandado para o servidor. V: Simplicidade, melhor mandar todo o arquivo de uma vez do que em partes. D: Necessita espaço, transfere todo o arquivo quando podia ser apenas uma parte, problemas de consistência com usuários concorrentes. > Modelos de transferência de acesso remoto: V: processamento é todo no servidor, tudo é controlado pelo servidor, acesso é único ao arquivo D: servidor pode ficar inacessível, centralização, servidor é gargalo (muitas mensagens são enviadas ao servidor). Semânticas de arquivo: >Para ter Consistência Sequencial (UNIX) > não permite que clientes armazenem arquivos do lado do usuário. Não pode replicar o servidor. Toda leitura reflete a última escrita. > Semantica de sessão > alterações nos arquivos só são visualizadas por quem está alterando, só podendo ver as mudanças depois desse arquivo ser fechado sistemas de tempo real. Sistema de tempo real não é para melhorar o desempenho do sistema, e sim produzir os resultados no tempo determinado (confiabilidade) Diferença entre sistema não critico e critico: não critico: sistema em operaçãonão vai ter muita diferença ao sistema quando este apresentar falhas, tipicamente objetivo de um calculo de tempo real: quer a correção lógica e temporal. é o sistema que vai produzir os resultados corretos dentro dos tempos pre especificados Hipótese de carga: Hipótese de falha: Thread/tarefa INATIVO (outro estado possível durante o escalonamento), fica suspensa durante um tempo (pois não tem recurso, ou precisa esperar algo mais), por sua própria vontade. segurança 3 objetivos que devem ser atingidos por um ambiente seguro: > manter dados confidenciais > manter os dados integros > manter sistema disponivel Se UM falhar não é mais um sistema seguro. Porque é importante conhecer os tipos de invasores? Se for um invasor leigo preciso de mecanismos de segurança menos sofisticados do que se fosse um invasor com motivos militares. Autenticação de usuario tem 3 principios: Usando Senha Usando biometria * cadastramento: sistema vai medir a caracteristica do usuario e digitalizar e armazendar os resultados * identificação: sistema vai medir a caracteristica do usuario e comparado com o que está armazenado Usando objeto físico Ataques de Dentro do Sistema [vai cair na prova a definição de pelo menos um] Cavalo de Troia Conexão Impostora Bombas lógicas Alçapão Princípios de Projeto de Segurança slide 14 Mecanismo de Proteção – Domínios de Proteção >>Definições de objetos que devem ser protegidos os níveis de proteção e direitos que se tem sobre eles. Matriz de proteção: linhas (dominio), colunas (objetos), celula (tipo de acesso) Listas de controle de acesso: Cada recurso carregando a informação do tipo de acesso que cada usuário vai ter sobre ele. Listas de capacidades: cada usuario carregando a lista de recurso o tipo de acesso permitido para aquele usuario para aquele recurso
Compartilhar