38
Sistemas Operacionais Sistemas Operacionais

2010 03 05 Sistemas Operacionais Aula2

Embed Size (px)

Citation preview

Page 1: 2010 03 05 Sistemas Operacionais Aula2

Sistemas Operacionais

Sistemas Operacionais

Page 2: 2010 03 05 Sistemas Operacionais Aula2

2º- Aula

Page 3: 2010 03 05 Sistemas Operacionais Aula2

1.3 O começo da história:décadas de 1940 e 1950 Os Sistemas Operacionais passaram por diversas fases Década de 1940 Os primeiros computadores não dispunham de Sistemas Operacionais Década de 1950 Executavam um job (serviço) por vez Dispunham de tecnologias que facilitavam a transição de um job para outro Eram chamados de sistemas de processamento em lote de fluxo único Os programas e dados eram submetidos consecutivamente em uma fita

Page 4: 2010 03 05 Sistemas Operacionais Aula2

1.4 A década de 1960

Década de 1960 Permanecem como sistemas de processamento em lote Processam vários jobs simultaneamente Multiprogramação Um job podia usar o processador enquanto outros

utilizavam os dispositivos periféricos Desenvolveram-se Sistemas Operacionais avançados

para atender a diversos usuários interativos 1964

A IBM anunciou sua família de computadores System/360

Page 5: 2010 03 05 Sistemas Operacionais Aula2

1.4 A década de 1960

Sistemas de tempo compartilhado Esses sistemas foram desenvolvidos para apoiar usuários

interativos simultâneos O tempo de retorno foi reduzido a minutos ou segundos Tempo entre a submissão de um job e o retorno de

seusresultados Sistemas de tempo real

Fornecem respostas dentro de um prazo determinado O tempo e os métodos de desenvolvimento foram aperfeiçoados

O MIT usou o sistema CTSS para desenvolver seu próprio sucessor, o Multics TSS, Multics e CP/CMS, todos incorporavam memória virtual

Endereçam mais localizações de memória do que as realmente existentes

Page 6: 2010 03 05 Sistemas Operacionais Aula2

1.5 A década de 1970

Os sistemas de tempo compartilhado eram primordialmente multimodais Suportavam processamento em lote, tempo compartilhado e

aplicações de tempo real A computação pessoal estava apenas em seu estágio inicial

Foi favorecida por desenvolvimentos anteriores da tecnologia de multiprocessadores

O Departmento de Defesa desenvolveu o TCP/IP Protocolo de comunicação-padrão Esse protocolo passou a ser amplamente usado em ambientes

militares e universitários Problemas de segurança Volumes crescentes de informação eram transmitidos por linhas

vulneráveis

Page 7: 2010 03 05 Sistemas Operacionais Aula2

1.6 A década de 1980

Década de 1980 Década dos computadores pessoais e das

estações de trabalho A computação era distribuída aos locais em que

era necessária Era relativamente fácil aprender a usar um

computador pessoal Interfaces gráficas com o usuário (GUI)

A transferência de informações entre computadores interconectados em rede tornou-se mais econômica e prática

Page 8: 2010 03 05 Sistemas Operacionais Aula2

1.6 A década de 1980

O modelo de computação cliente/servidor se disseminou Os clientes são os computadores que solicitam serviços

variados Os servidores são os computadores que executam os serviços

solicitados O campo da engenharia de software continuou a evoluir

Recebeu grande impulso do governo dos Estados Unidos, que visava controlar de modo mais rígido os projetos de software do Departamento de Defesa

Uma das metas era a reutilização de códigos Maior grau de abstração nos idiomas de programação Vários threads de instrução podiam ser executados

independentemente

Page 9: 2010 03 05 Sistemas Operacionais Aula2

1.7 História da Internet ee da World Wide Web Advanced Research Projects Agency (ARPA)

Departamento de Defesa no final da década de 1960 ela criou e implementou a ARPAnet

Avó da atual Internet Interligou em rede os sistemas centrais de

computadores das instituições apoiadas financeiramente pela ARPA

Ofereceu capacidade de comunicação quase instantânea por correio eletrônico (e-mail)

Foi projetada para funcionar sem controle centralizado

Page 10: 2010 03 05 Sistemas Operacionais Aula2

História da Internet e da World Wide Web Transmission Control Protocol/Internet Protocol

Conjunto de regras de comunicação pela ARPANet O TCP/IP é usado para gerenciar a comunicação entre

aplicações Garante que as mensagens sejam encaminhadas

(roteadas) devidamente entre transmissores e receptores Correção de erros

Foi posteriormente aberto para ser usado no comércio em geral

Page 11: 2010 03 05 Sistemas Operacionais Aula2

História da Internet e da World Wide Web World Wide Web (WWW)

Localiza e exibe documentos multimídia sobre praticamente qualquer assunto

Começou a ser desenvolvida em 1989 por Tim Berners-Lee, no CERNE

Tecnologia de compartilhamento de informações via documentos de texto interconectados (hyperlinked)

HyperText Markup Language (HTML) Define documentos na WWW Hypertext Transfer Protocol (HTTP) Espinha dorsal de comunicações usada para transferir

documentos pela WWW

Page 12: 2010 03 05 Sistemas Operacionais Aula2

A década de 1990

O desempenho do hardware melhorou exponencialmente Capacidade de processamento e armazenamento barata Execução de programas grandes e complexos em

computadores pessoais Máquinas econômicas para serviços extensivos de banco

de dados e processamento Rara necessidade de computadores de grande porte A computação distribuída ganhou ímpeto Inúmeros computadores independentes podiam executar

tarefas comuns

Page 13: 2010 03 05 Sistemas Operacionais Aula2

A década de 1990

O suporte a Sistemas Operacionais para tarefas de rede tornaram-se padrão Aumento da produtividades e comunicação

A Microsoft Corporation tornou-se dominante: Sistemas Operacionais Windows Empregava vários conceitos usados nos primeiros Sistemas Operacionais Macintosh Permitia que os usários executassem várias aplicações concorrentes com facilidade

A tecnologia de objeto tornou-se popular em várias áreas da computação Diversas aplicações foram desenvolvidas em linguagens de programação

orientadas a objetos Por exemplo, C++ ou Java Sistemas Operacionais Orientados a Objetos (SOOO)

Os objetos representam componentes do Sistema Operacional Não se usou mais o Paradigmas Imperativo

Desenvolvimento dos conceitos de herança e interface Explorados para criar Sistemas Operacionais modulares Mais fáceis de manter e ampliar que os construídos com técnicas anteriores

Page 14: 2010 03 05 Sistemas Operacionais Aula2

A década de 1990

Open Source Initiative (OSI) Fundada para promover os benefícios da programação de

código-fonte aberto Facilita o aperfeiçoamento de produtos de software Permite que qualquer pessoa teste, depure e aperfeiçoe

aplicações Aumenta a chance de descobrir e corrigir problemas

imperceptíveis Fundamental para erros de segurança que precisam ser

corrigidos rapidamente Indivíduos e corporações podem modificar a fonte e Criar

softwares personalizados que atendam às necessidades de um determinado ambiente

Page 15: 2010 03 05 Sistemas Operacionais Aula2

A década de 1990

Os Sistemas Operacionais tornavam-se cada vez mais acessíveis ao usuário As capacidades GUI criadas pela Apple passaram a ser

amplamente usadas e aperfeiçoadas

As capacidades do tipo plug-and-play (ligar-e-usar) foram embutidas nos Sistemas Operacionais

Isso habilita os usuários a adicionar e remover componentes de software dinamicamente sem ter de reconfigurar manualmente o Sistema Operacional

Page 16: 2010 03 05 Sistemas Operacionais Aula2

2000 em diante

Middleware Liga duas aplicações diferentes

Em geral em uma rede e entre máquinas incompatíveis

Particularmente importante para serviços Web Simplifica a comunicação entre plataformas

diferentes

Page 17: 2010 03 05 Sistemas Operacionais Aula2

Serviços Web Compreendem um conjunto de padrões

relacionados São peças de software prontas para uso na

Internet Permite que duas aplicações se

comuniquem e troquem dados

Page 18: 2010 03 05 Sistemas Operacionais Aula2

Bases de aplicação

O PC da IBM imediatamente deu origem a uma imensa indústria de software Fornecedores independentes de software (ISVs)

comercializavam pacotes de software que podiam ser executados no Sistema Operacional MS-DOS

O Sistema Operacional precisava apresentar um ambiente favorável para o rápido e fácil desenvolvimento de aplicações

Do contrário é provável que não fosse amplamente adotado

Page 19: 2010 03 05 Sistemas Operacionais Aula2

Base de aplicação

Para desenvolver aplicações usavam-se o hardware e Sistema Operacional

Os desenvolvedores e usuários não queriam abandonar as bases de aplicação já estabelecidas

Maior custo financeiro e maior tempo dedicado à reaprendizagem

Page 20: 2010 03 05 Sistemas Operacionais Aula2

Bases de aplicação

Interação entre aplicações e o Sistema Operacional

Page 21: 2010 03 05 Sistemas Operacionais Aula2

Componentes do Sistema

Interação do usuário com o Sistema Operacional Em geral por meio de uma aplicação especial chamada shell

Núcleo (kernel) Software que contém componentes centrais do Sistema Operacional

Dentre os componentes mais comuns do sistema operacional encontra se Gerência de Processos Gerência da Memória Gerência de Arquivos Gerência Secundária Gerenciador de E/S Redes Sistema de Proteção Interpretador de Comandos Gerenciador de comunicação interprocessos (IPC)

Page 22: 2010 03 05 Sistemas Operacionais Aula2

Bases de aplicação

Interação entre aplicações e o Sistema Operacional

Page 23: 2010 03 05 Sistemas Operacionais Aula2

Ambientes de Sistemas Operacionais

Page 24: 2010 03 05 Sistemas Operacionais Aula2

Bases de aplicação

Interação entre aplicações e o Sistema Operacional

Page 25: 2010 03 05 Sistemas Operacionais Aula2

Um Shell é um programa que tem comandos do usuário e passá-las para o kernel para processamento.

Existem vário tipos de Shells disponíveis para Linux , dentre eles o padrão é o Bourne Again Shell

Alguns outros shells são: o shell C ou Korn shell (o padrão no sistema operacional AIX da IBM), o shell ASH (ASH é útil para testar scripts para ser compatível com sh), o shell tcsh (versão totalmente compatível do Berkeley Unix shell C) e os novos ZSH casca (ZSH mais perto assemelha ksh mas inclui muitas melhorias).

Shell – Linux

Page 26: 2010 03 05 Sistemas Operacionais Aula2

Bases de aplicação

Interação entre aplicações e o Sistema Operacional

Page 27: 2010 03 05 Sistemas Operacionais Aula2

Bases de aplicação

Interação entre aplicações e o Sistema Operacional

Page 28: 2010 03 05 Sistemas Operacionais Aula2

Como identificar um shell no linux Como você abrir um terminal /console que

você realmente abrir um shell e você será apresentado com uma tela rápida. Um prompt Bash normalmente termina com um $ para mostrar que você está conectado como um usuário normal (Somente em SuSE acaba com> para o utilizador). Um prompt Bash terminando com # mostra que estamos conectado como root (Mesma no SuSE desta vez).

Page 29: 2010 03 05 Sistemas Operacionais Aula2

Info - Falhas no kernel do Linux / 11 de dezembro de 2009 SÃO PAULO – Desenvolvedores do kernel do Linux

corrigiram duas falhas sérias de segurança que ameaçavam usuários do sistema operacional.

Descoberto pelos programadores David Ford e Akira Fujita, os problemas estavam relacionado a ataques de negação de serviço e ganho de privilégios no sistema.

A outra ameaça permitia que usuários sem privilégios ganhassem status de administrador explorando falhas no sistema de arquivos Ext4.

Uma nova rede de computadores zumbis está utilizando servidores Linux para espalhar malware e outras pragas virtuais na rede.

Page 30: 2010 03 05 Sistemas Operacionais Aula2

Malware

O termo malware é proveniente do inglês malicious software; é um software destinado a se infiltrar em um sistema de computador alheio de forma ilícita, com o intuito de causar algum dano ou roubo de informações (confidenciais ou não). Vírus de computador, worms, trojan horses (cavalos de tróia) e spywares são considerados malware. Também pode ser considerada malware uma aplicação legal que por uma falha de programação (intencional ou não) execute funções que se enquadrem na definição supra citada.

Page 31: 2010 03 05 Sistemas Operacionais Aula2

Shell Windows

A shell do Windows é responsável pelo fornecimento da estrutura base da interface de utilizador do Windows, fornecendo uma série de outras funções para ajudar o utilizador a definir a sessão de trabalho, incluindo a organização de ficheiros e pastas, fornecendo maneiras de iniciar os programas.

Existe uma memória intermédia não verificada numa função utilizada pela shell do Windows para extrair informações de atributos personalizados de algumas pastas. Existe uma vulnerabilidade dado que um utilizador mal intencionado pode construir um ataque que pode tirar partido desta falha e executar código no computador do utilizador.

Page 32: 2010 03 05 Sistemas Operacionais Aula2

Shell Windows

Um atacante pode tentar explorar esta vulnerabilidade criando um ficheiro Desktop.ini com um atributo personalizado danificado e hospedando-o numa partilha de rede. Se um utilizador abrir a pasta partilhada onde o ficheiro está armazenado, a vulnerabilidade poderá ser explorada. Um ataque com êxito pode fazer com que a shell do Windows falhe ou provocar a execução de código do atacante no computador do utilizador, no contexto de segurança do mesmo. Factores atenuantes:

Page 33: 2010 03 05 Sistemas Operacionais Aula2

Shell Windows

No caso da execução de código do atacante, este seria executado no contexto de segurança do utilizador. Conseqüentemente, quaisquer limitações das capacidades do utilizador também restringem as ações possíveis ao código do atacante.

Um atacante apenas poderia explorar esta vulnerabilidade hospedando um ficheiro malicioso numa partilha.

Esta vulnerabilidade afeta apenas o Windows XP Service Pack 1 (SP1). Se tiver a versão comercializada original do Windows XP, o seu computador não é afetado.

Page 34: 2010 03 05 Sistemas Operacionais Aula2

Gerência de Processos

Um processo é um programa em execução Um processo precisa de certos recursos

tempo de CPU, memória, arquivos e dispositivos de E/S

O Gerenciamento de processos é responsável por(em conjunto com o SO) Criar e excluir processos Suspender e retomar processos Oferecer mecanismos para:

sincronismo de processos comunicação entre processos

Programa é uma entidade passiva Processo é uma entidade ativa

Page 35: 2010 03 05 Sistemas Operacionais Aula2

Gerência de Processos

Um processo é um programa em execução Um processo precisa de certos recursos

tempo de CPU, memória, arquivos e dispositivos de E/S

O Gerenciamento de processos é responsável por(em conjunto com o SO) Criar e excluir processos Suspender e retomar processos Oferecer mecanismos para:

sincronismo de processos comunicação entre processos

Programa é uma entidade passiva Processo é uma entidade ativa

Page 36: 2010 03 05 Sistemas Operacionais Aula2

Questões – Próxima aula

1 - Brevemente, descreva a evolução dos computadores? 2 - O que é uma thread? 3 - Defina World Wilde Web? 4 - O que é um Sistema Operacional Orientado a Objetos? 5 - O que é um paradigma imperativo? 6 - O que é herança e interface? 7 - Fale com as suas palavras a base da aplicação? 8 - O que é uma maquina virtual? 9 - Pesquise e descreva as principais diferenças sobre as versões do sistema operacional Windows 7.0 e windows server 2008 R ? 10 - O que é um processo? 11 - O que é o hardware? 12 - O que é o Kernel ? 13 - Quais são as funções e o que se espera de um sistema operacional? 14 - Descreva os tipos de sistemas operacionais existentes? 16 - Defina o que é um processo e um Deadoack ? 17 - Descreva a comunicação entre as camadas do sistema operacional?

Page 37: 2010 03 05 Sistemas Operacionais Aula2

Atualidades – Voce S.A

Matéria de Capa : Seja audaz Saiba negociar Atualmente as empresas valorizam a

experiência não o comodismo . Um novo jeito de encarar a carreira

Page 38: 2010 03 05 Sistemas Operacionais Aula2

Boa noite