Buscar

aula9_Softwares

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 38 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 38 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 38 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

PROGRAMA DE INFORMÁTICA BÁSICA 
Softwares 
Prof. João Dallyson 
 
Sumário 
• Introdução 
• Evolução do Software 
• Classificação do Software 
• Sistema Operacional (SO) 
• Evolução do SO 
• Funções do SO 
• Componentes do SO 
 
 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 2 
Software Hardware 
Peopleware 
Sistemas Computacionais 
• Integração de componentes: 
– Hardware + Software + Peopleware 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 3 
O que é Software 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 4 
• “É o conjunto de Instruções (programas de 
computador) que, quando executadas, produzem o 
desempenho desejado e dados que permitem que 
os programas manipulem adequadamente a 
informação. ” 
PRESSMAN 
• “Não é apenas um conjunto de instruções, mas 
também todos os dados de documentação e 
configuração associados, necessários para que o 
programa funcione adequadamente.” 
SOMMERVILLE 
Software X Hardware 
• Software 
– Ordena e controla todas as atitudes do hardware 
– Maleável - modificações fáceis, feitas por 
programadores 
– Lógico 
• Hardware 
– Processadores, memórias, impressoras, etc... 
– Depende do software para funcionar 
– Rígido - modificações difíceis, feitas somente pelos 
fabricantes. 
– Físico 
 25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 5 
Evolução do Software 
• Anos 1940 a 1950 
– Os computadores não muito adaptáveis 
– A execução de programas exigia preparação de 
equipamentos: fita magnéticas, colocação de cartões 
perfurados nas leitoras, configuração de 
interruptores, etc.... 
– Ao término da execução de cada programa 
(chamado de processo) as fitas e cartões perfurados 
precisavam ser retirados antes da preparação do 
próximo programa; 
– Planilhas de agendamento para gerenciar a reserva 
da máquina por usuário 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 6 
Evolução do Software 
• Anos 1950 a 1960 (Primeira Era) 
– Operador carregava os programas no armazenamento em massa (AM) da máquina; 
– Um programa chamado Sistema Operacional fazia a leitura e executava os programas 
do AM; 
– Instruções em batch (Processamento em lote); 
– Várias instruções agrupadas executavam em lotes que não era interrompida até o final 
do processamento; 
– Os processos residentes na memória em massa esperam a execução em uma Fila. 
 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 7 
FIFO 
Evolução do Software 
• Anos 1960 a 1970 (Segunda Era) 
– Processamento interativo 
• Usuário interage com o programa por meio de terminais remotos 
– Surgiram programas multitarefa; 
– Processamento em tempo real 
• O computador realiza a tarefa de acordo com as restrições de tempo 
em seu ambiente (mundo externo); 
– Surgiram os primeiros bancos de dados (Adabas) e os primeiros softwares 
para venda. 
 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 8 
Evolução do Software 
• Anos 1970 a 1980 (Terceira Era) 
– Surgiu o conceito de sistemas distribuídos; 
– O software começou a ser popularizado; 
– Os computadores ficaram mais baratos e com maior acesso; 
– Os software se tornaram produtos de consumo em massa; 
• Anos 1980 até hoje (Quarta Era) 
– O grau de processamento começa a aumentar de forma bem 
rápida; 
– Surgem a tecnologia orientada a objetos; 
– O software é usado para auxílio na tomada de decisão; 
– A inteligência Artificial começa apresentar aplicações práticas 
(Redes Neurais, Lógica Fuzzy, Máquinas de Vetores Suporte 
etc.) 
– Software com processamentos paralelos; 
 
 25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 9 
Classificação de Software 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 10 
Software 
de Aplicação de Sistema 
Utilitário 
Sistema 
Operacional 
Interface com 
o usuário 
Núcleo 
• Efetuar tarefas que sirvam 
diretamente ao usuário. 
• Programas para a realização 
de tarefas particulares 
Ex: Planilhas, SGBDs, 
sistema de contabilidade 
Fornece a infraestrutura 
Necessária para a execução 
De software de aplicação 
• Úteis ao sistema computacional; 
• Unidade de software que estendem 
as capacidades do SO. 
Ex: Drivers, Backups, Antivírus, 
Compactadores (winzip) 
Sistemas Operacionais (SO) 
• O SO é o software mais importante de um 
sistema computacional, além de ser muito 
complexo; 
• Seu objetivo é gerenciar os recursos do 
computador; 
• Ele fornece o subsídio, para que os softwares 
sejam construídos; 
 
 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 11 
Funções básicas do SO 
• Gerenciar operação dos dispositivos de hardware do 
computador (processador, memória, etc...) 
• Gerenciar e manter o sistema de arquivos; 
• Dar suporte aos programas que são executados; 
• Serviço para Rede; 
• Sistema de Proteção (recursos alocados); 
• Programação de Tarefas 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 12 
Componentes do SO 
Evolução dos SOs 
• Sistemas em Lote (Batch) 
– Primeira forma de processamento 
– Era encontrado em grandes computadores; 
– Nessa época os usuários finais não interagiam com o 
sistema; 
• Como era feito? 
– Eram preparadas tarefas (Jobs) compostas por um 
programa, os dados necessários para executar as 
instruções; 
– Estas tarefas eram alimentadas por um operador; 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 13 
Monotarefa x Multitarefa 
• Sistemas monotarefa realizam uma nova operação 
somente quando uma operação em execução 
termina, ou seja, executa somente um operação 
por vez; Ex: MS-DOS 
 
• Sistema multitarefas também é executada 
somente uma operação por vez, mas a diferença é 
que a operação não precisa ser terminada para dar 
a vez para outra, ou seja, executa várias tarefas, 
mas um pouco de cada por vez; Ex: Exemplo: 
Windows 9x 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 14 
Evolução dos SOs 
• Compartilhamento de Tempo x Multitarefa 
– Compartilhamento de Tempo: 
• Múltiplos usuários compartilhando o acesso a um 
computador comum; 
• Fornecem serviços a diversos usuários concorrentemente 
• Pode ser implementado aplicando a técnica de 
multiprogramação: o tempo é dividido em intervalos e, 
então a execução de cada processo é restrita a apenas um 
intervalo por vez; 
– Multitarefa: 
• Um único usuário executando diversas tarefas 
simultaneamente; 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 15 
Evolução dos SOs 
• Sistemas de Tempo Real 
– São sistemas em que o tempo de processamento é 
essencial; 
– O processamento tem que ocorrer no tempo pré-
determinado para não haver problemas ; 
– São classificados em críticos e não críticos: 
• Críticos: tem que garantir que as tarefas críticas devem 
executar no tempo determinado; 
• Não críticos: uma tarefa crítica recebe prioridade até ser 
concluída; 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 16 
Componentes dos Sistemas Operacionais 
• Interface do Usuário 
– Comunicação com o usuário 
• Baseada em texto (Shell) 
• Interface Gráfica com o Usuário (GUI) 
• Núcleo (Kernel) 
– Concentra o acesso ao hardware; 
– Dá suporte as funções básicas requeridas 
• Gerenciamento de Arquivos 
• Gerenciamento de Memória 
• Controladores de Dispositivos 
• Escalonador (Gerenciamento de Processo) 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentosda Computação 17 
Interface com o usuário 
• Interface de usuário age como intermediador entre os 
usuários e o núcleo do Sistema Operacional 
 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 18 
Gerenciador de Arquivos 
• Coordena o uso dos recursos no armazenamento em 
massa (AM) - Disco Rígido 
• Mantém registro de todos os arquivos armazenados no 
AM 
– Localização do arquivo; 
– Que usuários podem acessar o arquivo; 
– Quais partes do AM estão disponíveis; 
– A maioria dos gerenciadores de arquivos permite o 
agrupamento dos arquivos em diretórios ou pastas; 
– Os caminhos são separados por barras: 
• Ex: animais/prehistoria/dinossauros/ (Linux) 
• Ex: animais\prehistoria\dinossauros\(Windows) 
• Qualquer acesso a um arquivo por outras unidades de 
software é obtido por meio do gerenciador de arquivos 
 
 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 19 
Controladores de Dispositivos 
• Unidades de software que se comunicam com os 
controladores de hardware para realizar operações nos 
dispositivos periféricos; 
 
• Cada controlador de dispositivo é projetado exclusivamente 
para um tipo de dispositivo: 
– Ex: Impressora, drive de disco, monitor, etc.. 
 
• Outros softwares podem deixar a cargo do controlador de 
dispositivo a tarefa de impressão de um arquivo; 
 
• Permite que o SO seja customizado por meio da instalação 
dos controladores de dispositivos apropriados. 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 20 
Gerenciador de Memória 
• Coordena o uso da memória principal (MP) da 
máquina; 
• Ambiente monoprogramado: 
– Problema é mínimo; 
– O Programa é colocado na MP, executado e depois 
substituído por outro programa. 
• Ambiente multiusuários e multiprogramados: 
– Muitos programas e blocos de dados devem residir na 
MP simultaneamente; 
– O Gerenciador deve garantir que as ações de cada 
programa sejam restritas ao espaço alocado ao 
programa; 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 21 
Gerenciador de Memória 
• O que fazer quando a MP não tem mais espaço? 
– O SO aloca uma porção de um meio de 
armazenamento (usualmente o disco rígido) para 
atuar como RAM adicional; 
– Técnica de Paginação: 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 22 
RAM 
(memória 
física) 
Disco 
(memória 
virtual) • Os dados são divididos em 
unidades de tamanho uniforme 
chamadas de páginas 
Gerenciador de Memória 
• Memória Virtual 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 23 
Passo 1 
O SO transfere os dados e 
as instruções de programas 
menos usados 
recentemente para o disco 
rígido, uma vez que a 
memória é necessária para 
outros propósitos 
RAM 
(memória física) 
Disco 
(memória virtual) 
swap out de página 
Gerenciador de Memória 
• Memória Virtual 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 24 
Passo 2 
O SO transfere os 
dados e as instruções 
de programas do disco 
rígido para a memória 
quando necessários 
RAM 
(memória física) 
Disco 
(memória virtual) 
swap out de página 
swap in de página 
Inicialização (booting process) 
• Boot loader (Sistema de Inicialização) 
– É permanentemente armazenado na ROM da 
máquina; 
– É executado inicialmente quando a máquina é 
ligada; 
– Transfere o Sistema Operacional da memória 
secundária para a memória principal (MP); 
– Após colocar o SO na MP o sistema de inicialização 
passa o controle das atividades da máquina para o 
SO. 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 25 
Inicialização (booting process) 
• Boot loader (Sistema de Inicialização) 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 26 
Coordenando as atividades da máquina 
• Qual a diferença entre processo e programa? 
• Programa: 
– Conjunto finito de instruções, ou seja, regras estáticas que 
devem ser seguidas; 
– Exemplo: Partitura em um livro fechado na prateleira; 
• Processo: 
– Instância de um programa em execução; 
– Atividade dinâmica cujas propriedades mudam à medida que 
o tempo passa; 
– Exemplo: Músico tocando a partitura 
– A atividade de executar um programa sob o controle do 
sistema operacional; 
– Estado do processo: Estado atual da atividade. Inclui o valor 
do contador de programa 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 27 
Gerenciamento de Processo 
• Todo processo necessita de recurso (Memória, 
acesso a arquivos, Processamento, etc); 
 
• O SO cria, excluí ou suspende processos e tem que 
controlar a comunicação entre eles; 
 
• Um processo pode ter vários fluxos de execução 
(threads) 
– Exemplo: Os navegadores; 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 28 
Gerenciamento de Processo 
• O SO pode executar vários processos, mas como isso é 
gerenciado? 
– O SO possui dois componentes chamados de Escalonador e 
Despachante; 
– Escalonador: 
• Tem a função de controlar a execução dos processos; 
• Mantém um bloco de informação na MP chamado de tabela de 
processos; 
• Mantém informações: área de memória atribuída, prioridade do 
processo e se o processo está apto ou esperando. 
– Despachante: 
• Supervisiona a execução dos processos escalonados; 
• Controla a alocação de fatias de tempo para os processos na tabela de 
processos 
• Dá uma fatia de tempo para um processo; inicia um circuito 
temporizador; gera um sinal de interrupção no fim da fatia; 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 29 
Estados de um processo 
 
 
 
 
 
1 - Escalonador escolhe novo processo para executar; 
2 - Escalonador entrega a CPU ao novo processo; 
3 - Processo bloqueado para fazer entrada de dados (por exemplo, 
espera dados do teclado) ou outra situação na qual não tem 
condições lógicas de rodar. 
4 - Operação de entrada e saída concluída ou processo volta a ter 
condições de rodar novamente. 
 25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 30 
• Troca de processo (troca de contexto): 
– É o procedimento de trocar de um processo para 
outro. 
 
Multiprogramação: Processo A e Processo B 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 31 
Passos na CPU na Interrupção 
1. A CPU completa o ciclo de máquina atual; 
2. Grava o estado do processo atual; 
3. Configura o contador de programa: 
1. Posição do tratador de interrupção; 
4. A próxima instrução executada será a primeira 
instrução dentro do tratador de interrupções. 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 32 
Segurança 
• Problemas de segurança relacionados aos SOs 
• Ataques externos: 
– Problemas: 
• Senhas inseguras 
• Software Sniffing (software de escuta): Grava as atividades 
e posteriormente as relatam para um intruso em potencial 
– Soluções: 
• Software de auditoria: 
– Grava e analisa as atividades que ocorrem dentro do SO. 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 33 
Segurança 
• Ataques internos: 
– Problemas: 
• Acesso a células da memória principal fora da área 
permitida; 
• Enganar o gerenciado de arquivos para obter acesso a 
arquivos não autorizado; 
– Solução: 
• Controlar as atividades do processo por meio de modos 
privilegiados e instruções privilegiadas 
– Modo privilegiado (modo kernel): tem acesso a todo o HW e é 
capaz de executar qualquer instrução pela CPU; 
– Modo usuário: parte do conjunto de instruçõesda máquina está 
disponível (segurança) 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 34 
Questões e Exercícios 
1) Cite exemplos de Filas. Em cada caso, indique situações que violam a 
estrutura de FIFO. 
2) Quais das seguintes atividades requerem processamento em tempo real? 
1) Impressão de etiqueta de correio 
2) Jogar no computador 
3) Mostrar números na tela de um smartphone à medida que eles são 
digitados 
4) Executar um programa de previsão da economia no ano seguinte 
5) Tocar um música em mp3 
3) Qual a diferença entre compartilhamento de tempo e multitarefas? 
4) Descreva como funciona a memória virtual. 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 35 
Agradecimentos 
 
 
• Ao Prof. Me. Geraldo Braz, DEINF/UFMA 
• Ao Prof. Me. Osvaldo Silva Sousa Junior, NTI/UFMA 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 36 
Referências 
• BROOKSHEAR, J. G. Ciência da Computação: Uma visão 
abrangente. 11ª Ed. Porto Alegre, 2013. 
• MARÇULA, M.; BENINI FILHO, P. A. Informática 
Conceitos e Aplicações. 3ª Ed. São Paulo: Érica, 2008; 
• VELLOSO, F. C. Informática Conceitos Básicos. 8.ed. Rio 
de Janeiro: Elsevier, 2011. 
• http://www.ppgia.pucpr.br/~laplima/ensino/soecn/so_
common/materia/01_intro.html 
 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 37 
Perguntas.... 
25/10/2013 Prof. João Dallyson (BCT – UFMA) Fundamentos da Computação 38

Continue navegando