3. Software

Propaganda
Sistemas de Informações
Fundamentos da Computação
3. Software
Márcio Aurélio Ribeiro Moreira
[email protected]
http://si.uniminas.br/~marcio/
Software
Para tirar todo o proveito do hardware,
precisamos de software que são:
Classificados em:
Arquitetura:
Aplicativos
Software
Utilitários
Básicos
Básico
Utilitários
Aplicativos
Hardware
Márcio Moreira
3. Software – Slide 2
Fundamentos da Computação
Software básico
 Conjunto de programas que definem o
padrão de comportamento do equipamento,
tornando-o utilizável, ou seja, são os
programas usados para permitir o
funcionamento do hardware.
Sistema
Operacional
Interpretador
Tradutores
Compilador
Básico
Montador
Márcio Moreira
3. Software – Slide 3
Fundamentos da Computação
Sistema operacional
 Responsável pelo gerenciamento do hardware e dos
demais softwares. Seu propósito é prover um ambiente
onde o usuário possa executar programas de forma
conveniente e eficiente.
 Essencialmente é um gerenciador de recursos:
 Processos, memória, sistema de arquivos e dispositivos de I/O
(input = entrada / output = saída).
 Em outras palavras:
 Controla os programas que estão sendo executados.
 Gerencia o uso da memória principal alocando, usando e liberando
memória.
 Controla discos, pastas e arquivos.
 Gerencia dispositivos: teclado, mouse, monitor, placa de rede,
modem, impressora, etc.
 Permite a interação do usuário com a máquina.
Márcio Moreira
3. Software – Slide 4
Fundamentos da Computação
Tipos de sistema operacional
 Mono-usuário:
 Apenas uma pessoa o utiliza por vez.
 Ex: MS-DOS, DR-DOS e Windows 3.x  Ultrapassados.
 Multi-usuário:
 Permite que várias pessoas o utilizem de uma vez.
 O mesmo processador é compartilhado por vários usuários ao
mesmo tempo. Meio: várias janelas, vários terminais, etc.
 Como é feito? Time-sharing = compartilha ciclos de CPU.
 Ex: Windows: 95, 98, 2000, 2003, NT, ME, XP e Vista.
 Ex: Linux, Unix, AIX, HP UX, Sun Solaris, Mac OS, etc.
 Eles também podem ser classificados em:
 Monotarefa: Só consegue executar uma atividade de cada vez.
 Multitarefa: Executa mais de uma tarefa por vez. Padrão atual.
Márcio Moreira
3. Software – Slide 5
Fundamentos da Computação
Interface gráfica com usuário
 GUI = Graphical User Interface
 É a denominação genérica de uma interface como a do
Windows (ou do Mac OS), com a qual o usuário não tem a
necessidade de lembrar a sintaxe de comandos.
 É composta de:
 Ícones: objetos, símbolos e representações gráficas para
representar arquivos, programas, funções e comandos.
 Mouse: dispositivo de posicionamento e apontamento.
 Menus universais e opções abertas como cortinas (barras de
formatos, ferramentas, menus, etc.).
 Janelas sobrepostas.
 Ex: Windows, Mac OS, Linux: KDE, x-window, etc.
Márcio Moreira
3. Software – Slide 6
Fundamentos da Computação
Linguagens de programação
 São formadas por vocabulário (conjunto
de símbolos) e gramática (conjunto de
regras) que especificam como
programar um computador.
Alto Nível
SQL
Java
 Possuem:
 Sintaxe: forma de escrever.
 Ex: variável = valor.
 Semântica: significado.
 Ex: atribui o valor à variável.
VB, .NET
Cobol
Pascal
 Podem ser de:
 Alto nível: próxima à linguagem humana.
 Ex: SQL, Java, VB, .NET e Cobol.
 Ex de instrução Java:
a = 12;
C, C++, C#
 Baixo nível: mais próxima da máquina.
Assembler
 Ex: Assembler, C, C++, C# e Pascal.
 Ex de instrução Assembler: mov ax, 12;
Márcio Moreira
3. Software – Slide 7
Baixo Nível
Fundamentos da Computação
Tradutores
 Interpretador:
 Lê uma instrução em linguagem de alto nível,
transforma para linguagem de máquina e
executa a instrução.
 Ex: Basic, Q-Basic, algumas máquinas Java.
 Compilador:
 Lê todas as instruções do código fonte (.java),
em linguagem de alto nível, transforma para
linguagem de máquina e grava as instruções
traduzidas no programa compilado (.class).
 Montador:
Alto Nível
SQL
Java
VB, .NET
Cobol
Pascal
 Lê um programa compilado numa linguagem
de baixo nível, anexa funções de bibliotecas e
C, C++, C#
gera o programa executável (.jar).
SW Básico
Sistema
Operacional
Interpretador
Tradutores
Compilador
Assembler
Baixo Nível
Montador
Márcio Moreira
3. Software – Slide 8
Fundamentos da Computação
Software
Resumo dos tradutores
Característica
Básico
Interpretador Compilador
Número de instruções
1
Arquivo de entrada
Utilitários
Aplicativos
Montador
Todas
Fonte
Fonte
Objeto
-
Objeto
Executável
Erro de sintaxe
Na hora
Na saída
-
Erro de execução
Na hora
-
No executável
Arquivo de saída
Desempenho de execução
Dependência
Márcio Moreira
Menor
-
3. Software – Slide 9
Melhor
Montador
Compilador
Fundamentos da Computação
Linguagens
 Linguagem de máquina:




É baseada em código binário (0s e 1s).
É utilizada diretamente pelo computador.
Representa o conjunto de instruções de um processador.
Ex: 0010 0001 1110 (colocar no registrador 1 o conteúdo da
posição 14).
 Linguagem de baixo nível:
 É uma simplificação da linguagem de máquina.
 Permite que os programas utilizem abreviações simples de
instruções de programa (mnemônicos).
 Ex. de instrução ..: mov ax, [14] (Assembly)
 Ex. de linguagens: Assembly, C, C++, C#.
 Linguagem de alto nível:
 Não exige conhecimento intrínseco da máquina.
 São mais fáceis de ler, escrever e manter.
 Ex: Java, .NET, SQL, etc.
Márcio Moreira
3. Software – Slide 10
Fundamentos da Computação
Software
Utilitários
Básico




Utilitários
Aplicativos
Complementam o Sistema Operacional (SO) e os aplicativos.
Podem vir junto com o SO ou não.
Podem ser fabricados pelo mesmo fabricante do SO ou não.
Exemplos:
 Ferramentas de disco:
 Formatadores:
 Desfragmentadores:
 Recuperadores:
preparam discos para o uso.
reorganiza os arquivos no disco.
marcam ou recuperam setores defeituosos.
 Antivírus (e anti-spywares): Norton, McAfee, Trend Micro, Panda, etc.
 Compressão de dados:
 Comprimem e restauram dados baseando-se em padrões de repetições.
 Ex: zip, arj, winzip, gzip, etc.
 Hibernação: salva sessão do equipamento e volta ao mesmo estado.
 Backup: Faz cópias de segurança do HD para mídias de backup. Ex:
Cheyenne, Seagate, Microsoft, etc. Tipos de backup:
 Completo:
 Incremental:
Márcio Moreira
Copia todo o conteúdo (todos os arquivos).
Copia somente os arquivos que foram modificados.
3. Software – Slide 11
Fundamentos da Computação
Software
Aplicativos
Básico
Utilitários
Aplicativos
 São programas voltados para necessidades mais
próximas (aplicações) do usuário.
 Podem ser de uso:
 Geral:
O mesmo programa pode ser utilizado para várias aplicações
diferentes.
Ex: Ferramentas de produtividade (Editores de Texto, Planilha,
Apresentadores, etc.), bancos de dados, etc.
 Específico:
Destinam-se a uma aplicação específica. Logo, só servem para
a finalidade para a qual foram construídos.
Ex: Folha de Pagamento, Controle de Estoque, Contas a Pagar
e a Receber, Contabilidade, etc.
Márcio Moreira
3. Software – Slide 12
Fundamentos da Computação
Download