Noções de Software André Aziz (andreaziz.ufrpe@gmail.com) Francielle Santos (francielle.ufrpe@gmail.com) 1
Noções de Software; Sistemas Operacionais: Evolução; Conceitos Básicos; Tipos; Exemplos. DEINFO/UFRPE 2
chips ENIAC, UNIVAC Minicom putadores Transistor es Circuitos Integrados 1966-1971 Microproces sadores 1972 - Redes e internet 1973 - Processos distribuídos Memória para dados Válvulas 1940-1956 1956-1965 Confiabilidade Custo DEINFO/UFRPE 3
Classificação quanto ao porte e utilização Computador pessoal Minicompu tador Supercompu tador Estação de Trabalho Mainframe Fonte: Gandon, 1999 DEINFO/UFRPE 4
Fonte: http://ci.ufpel.edu.br/treinamento/apostilas/nocoes_de_informatica/computador.pdf CPU Unidade de Controle Unidade de Processamento Entrada Determina a interpretação e execução das instruções e controla o fluxo de dados Recebe os dados da memória para processá-los quando uma instrução aritmética ou lógica é executado Saída Memória Principal Memória Secundária Periféricos DEINFO/UFRPE 5
Conceitos Básicos DEINFO/UFRPE 6
Shareware: Programas que podem ser utilizados durante um período de teste; Após esse período o uso é pago. Freeware: Programas que podem ser copiados sem qualquer custo ou perda de funcionalidade; Prezam pela identificação de autoria. DEINFO/UFRPE 7
Software Firmware Software de Sistemas Aplicações DEINFO/UFRPE 8
Firmware: Programas embarcados no hardware: Importantes para o funcionamento básico do computador; Maior velocidade na execução; Presentes em memórias de leitura do tipo: ROM, EPROM, EEROM, etc. DEINFO/UFRPE 9
Software de Sistemas: Programas gerenciam e apóiam as atividades de processamento de um computador: Programas de Gerenciamento de Sistemas: Gerenciam o acesso e utilização de recursos de hardware, software, redes e dados. Programas de Desenvolvimento de Sistemas: Ferramentas CASE (Computer Aided Software Engineering) para suprote ao desenvolvimento de programas. DEINFO/UFRPE 10
Programas de Gerenciamento de Sistemas: Sistemas Operacionais; Sistemas de Gerenciamento de Rede; SGBDs: Sistemas de Gerenciamento de Bancos de Dados. DEINFO/UFRPE 11
Sistema Operacional (S.O.): Conjunto de programas que compõem o software básico do computador, permitindo: O reconhecimento do hardware e o seu funcionamento; A representação dos dados na memória. Finalidade principal: Executar os programas aplicativos e servir de interface entre o computador e seus usuários. Foco na interface com o hardware. DEINFO/UFRPE 12
Aplicações: Programas que constituem formas de operação do computador para o desempenho de tarefas práticas, ligadas ao processamento de dados. Rodam com o auxílio do SO e com foco no usuário. Classificação: Automação industrial; Automação comercial; Apoio educacional; Especiais e científicos; Artístico; Entretenimento; CAD/CAM. DEINFO/UFRPE 13
Evolução DEINFO/UFRPE 14
Programação externa: Nessa época os computadores não tinham memória para armazenamento dos programas. Controle através de chaves, fios e luzes de aviso. Controle do computador: Através de programas isolados; Não havia a noção de tipos de software. Não haviam as linguagens de programação estruturadas. DEINFO/UFRPE 15
Sistemas em lote (batch systems): Programas escritos em cartões perfurados; SOs enfileiravam tarefas (jobs); Recursos computacionais eram melhor utilizados; Programas armazenados na memória principal. Para cada computador, um novo programa e um novo SO. Aparecimento de rotinas de auxílio ao programador: Para lidar com a memória e execução dos programas. DEINFO/UFRPE 16
Aparecimento dos computadores pessoais: Necessidades de SOs com interação com o usuário; Surgimento de linguagens de programação estruturadas; Surgimento das aplicações de pequeno porte. DEINFO/UFRPE 17
Início do império de Bill Gates: Ele e um colega de faculdade (Paul Allen) compram o sistema QDOS ("Quick and Dirty Operating System") de Tim Paterson por $50.000: Renomearam para DOS (Disk Operating System); Venderam as licenças para a IBM. A IBM lançou o seu 1º computador pessoal com o Sistema Operacional DOS. IBM e Microsoft firmaram breve parceria para o desenvolvimento do SO multitarefa chamado OS/2. DEINFO/UFRPE 18
O projeto GNU foi iniciado por Richard Stallman: Com o objetivo de prover um SO livre como alternativa ao UNIX; O estudante finlandês Linus Torvalds iniciou o desenvolvimento do núcleo de um sistema operacional: Precursor do Linux; Desenvolvimento colaborativo através da internet. Mais tarde os dois esforços foram unificados: Linux: Grátis e portado para várias arquiteturas de computadores. DEINFO/UFRPE 19
1º Sistema Operacional Monoprogramável Sistemas Multitarefa 1960 1970 1990 1950 Conceito de Memória Virtual Sistemas Multiprogramáveis Multitarefa 1980 DEINFO/UFRPE 20
Conceitos Básicos DEINFO/UFRPE 21
Usabilidade: Facilidade de uso para o usuário final. Eficiência: No provimento de acesso aos recursos computacionais; No escalonamento do uso destes recursos pelas aplicações; Na otimização da utilização dos recursos pelos programas em execução. DEINFO/UFRPE 22
Segurança: Garantia da privacidade e permissões no acesso aos recursos de hardware e dados armazenados. Evolução: Ser bem-estruturado, garantindo a possibilidade de correção de funcionalidades e desenvolvimento de novas funcionalidades. DEINFO/UFRPE 23
Aplicativos Utilitários Sistema Operacional Hardware DEINFO/UFRPE 24
Conjunto de rotinas - núcleo do sistema ou kernel : Oferecem serviços essenciais aos usuários, às suas aplicações, e também ao próprio sistema. O SO não é executado como uma aplicação tipicamente seqüencial, com início, meio e fim. Procedimentos do sistema são executados concorrentemente; Sem uma ordem específica ou predefinida. DEINFO/UFRPE 25
As funcionalidades dos SOs são implementadas pelos seus diversos módulos: Gestão de Processamento Gestão de Memória Gestão de Arquivos Gestão de Entrada e Saída (E/S, I/O) Redes Segurança Interface com o Usuário!!! DEINFO/UFRPE 26
Comandos de chamadas ao sistema que implementam a interface entre aplicações e o SO. São genericamente agrupadas em 5 classes: Controle de Processo; Manipulação de arquivos; Manipulação de dispositivos; Informações de manutenção; Comunicações. DEINFO/UFRPE 27
A interação do usuário com o hardware através do SO pressupõe: A criação de processos pelo SO: Alocar e desalocar em memória todos os recursos necessários à execução do processo. Escalonamento e controle destes processos: Organização da fila de acesso ao processador. Utiliza parâmetros do sistema e do perfil do usuário para estabelecer a ordem em que os processos permanecerão à espera pela liberação da CPU, para então entrarem em execução. DEINFO/UFRPE 28
Função responsável por fornecer à função de criação/eliminação de processos os endereços em memória disponíveis para alocação; Garante que os programas não utilizarão memória já em utilização por outros programas. DEINFO/UFRPE 29
Responsável por: Gerenciamento dos arquivos; Compartilhamento dos arquivos pelos diversos usuários; Implementação de mecanismos de controle da segurança; Implementação de mecanismos de direitos de acesso às áreas utilizadas pelos usuários nos diversos dispositivos. DEINFO/UFRPE 30
Responsável por: Gerenciamento dos dispositivos de E/S; Auxilia na criação/eliminação de processos; Auxilia na gerência de sistemas de arquivos: Na parte de endereçamento e associação de arquivos em periféricos; DEINFO/UFRPE 31
Função que executa todos os serviços de rede; Permite que computadores utilizando o mesmo SO em uma mesma rede compartilhem recursos e capacidade de processamento; Empacotamento das mensagens vindas dos terminais para o processador central e viceversa; Controla e confirma o envio e recebimento de todas as mensagens que trafegam pela rede. DEINFO/UFRPE 32
Função que detecta e registra (num arquivo especial de LOG): Todas as ocorrências de erro; Todas as violações de direitos de acesso: Ao sistema, aos arquivos, à memória e a todos os recursos do sistema. O arquivo de LOG é usado pela gerência de sistemas: Para verificar e aperfeiçoar os mecanismos de segurança e proteção ao sistema. DEINFO/UFRPE 33
Fonte: http://www.tecmundo.com.br/aumentar-desempenho/11266-comofunciona-o-boot-de-um-computador.htm DEINFO/UFRPE 34
BIOS reconhece placas de vídeo e memória RAM, testa os componentes de hardware; BIOS lê o setor zero (que contém apenas 512 bytes, denominado Master Boot Record) do HD. Ou de outros dispositivos de boot; Leitura do boot loader, inicialização do kernel; Carregamento do SO. DEINFO/UFRPE 35
DEINFO/UFRPE 36
Tipos de Sistemas Operacionais Monoprogramáveis/ Monotarefa Multiprogramáveis/ Multitarefa Múltiplos Processadores DEINFO/UFRPE 37
Executam uma única tarefa (processo) por vez; Processador, memória e periféricos alocados para este processo: Processador pode ficar ocioso e a memória e periféricos subutilizados! DEINFO/UFRPE 38
Permitem que vários programas executem simultaneamente; Programas concorrem pela alocação de processador, memória e periféricos alocados para este processo: Maior complexidade e melhor utilização de recursos; O SO gerencia o acesso concorrente aos recursos; DEINFO/UFRPE 39
DEINFO/UFRPE 40
Multiprogramáveis/ Multitarefa Batch Tempo Partilhado Tempo Real DEINFO/UFRPE 41
1. Programas são inseridos previamente no computador; 2. Programas são executados de acordo com a disponibilidade de recursos. Não há interação com o usuário! DEINFO/UFRPE 42
Computador usado por vários usuários, compartilhando à distância, seus recursos (processador, memória e periféricos): Impressão de utilização única do computador; Sem processamento local (terminais burros ); SO gerencia os recursos: Alocando fatias de tempo ( time slices ) do processador pra cada usuário; Definindo níveis de prioridade para processos e usuários; Noção de workspace para os usuários. DEINFO/UFRPE 43
Com tempos de resposta muito pequenos: Podendo inviabilizar a aplicação se estes não forem atendidos. DEINFO/UFRPE 44
SOs Monousuário: Suportam um único usuário por vez; Exemplo: DOS. SOs Multiusuário: Suportam mais de um usuário simultaneamente Exemplo: UNIX. Pergunta: Existem um SO monotarefa multiusuário? DEINFO/UFRPE 45
Permitem que várias instruções executem simultaneamente: Computadores com mais de um processador. Multiprogramação aplicada a vários processadores ao mesmo tempo: Permite mais de um programa em paralelo ou mesmo mais de uma instrução de um mesmo programa em paralelo! Configurações possíveis (acoplamento): Vários processadores e uma memória; Vários processadores e várias memórias. DEINFO/UFRPE 46
Multiprocessados Fortemente Acoplados Fracamente Acoplados Redes Distribuídos DEINFO/UFRPE 47
Vários computadores independentes interligados em rede: Com compartilhamento de periféricos, dispositivos de I/O e armazenamento. O sistema irá definir: Protocolo para comunicação entre usuários e servidores. Cada computador da rede funciona independentemente: Processamento local. DEINFO/UFRPE 48
Tipo de sistema em rede onde: Há integração e cooperação entre os computadores da rede. Para execução das tarefas solicitadas pelos usuários. Para o futuro: Sistemas operacionais 100% distribuídos! DEINFO/UFRPE 49
Exemplos DEINFO/UFRPE 50
Desenvolvido pelo finlandês Linus Torvalds; O seu código fonte está disponível sob licença GPL: Qualquer pessoa pode utilizar, estudar, modificar e distribuir de acordo com os termos da licença. Apresenta várias distribuições: Slackware, Debian, Suse, Conectiva e Ubuntu: http://www.ubuntu-br.org/ DEINFO/UFRPE 51
SO proprietário baseando no kernel Unix; Desenvolvido pela Apple: Roda somente nos computadores da linha Macintosh; Versões: Leopard, Snow Leopard, Lion, Mountain lion, Mavericks, Yosemite; http://www.apple.com/br/macosx/ DEINFO/UFRPE 52
Família de SOs criados pela Microsoft, empresa fundada por Bill Gates e Paul Allen. Primeira versão: MS-DOS. É o SO mais popular!!! Maior parte de aplicações comerciais disponíveis apenas para este SO. Versões: MS-DOS, 95, 98, 2000, XP, Vista, 7, 8 Windows 8.1: http://windows.microsoft.com/pt-br/windows-8/meet DEINFO/UFRPE 53
Sistema Operacional UNIX desenvolvido pela Sun Microsystems; Atualmente pertence a empresa Oracle; Suporta arquiteturas baseadas nos processadores x86 e SPARC. SO otimizado para servidores: Recursos de análise de desempenho e integração de vários sistemas; Versões: SunOS, Solaris 2, Solaris 10, Solaris 11: http://www.oracle.com/us/products/serversstorage/solaris/index.html DEINFO/UFRPE 54
SO de código aberto projetado pelo Google para trabalhar exclusivamente com aplicações web: Baseado no Linux. GUI minimalista: Semelhante à de um navegador web. Público-alvo: Pessoas que utilizam bastante a internet! DEINFO/UFRPE 55
Noções de Software; Sistemas Operacionais: Evolução; Conceitos Básicos; Tipos; Exemplos. DEINFO/UFRPE 56
DEINFO/UFRPE 57
Noções de Redes DEINFO/UFRPE 58
Noções de Software André Aziz (andreaziz.ufrpe@gmail.com) Francielle Santos (francielle.ufrpe@gmail.com) 59