12
1 Software e Redes Informática aplicada à Ciência da Informação 2 Software Software Séries de instruções codificadas em linguagem computacional destinadas a informar o computador como desenvolver tarefas Categorias Software Básico Software Aplicativo (ou de Aplicação) 3 Um conjunto de programas que se situa entre os softwares aplicativos e o hardware: Gerencia os recursos do computador (CPU, dispositivos periféricos). – Estabelece uma interface com o usuário. Determina como o usuário interage com o sistema operacional. Provê e executa serviços para softwares aplicativos. Sistemas Operacionais 4 Funções dos Sistemas Operacionais Inicialização do Computador Gestão de Programas Gestão da Memória Programação de Tarefas Configuração de Dispositivos Controle da Rede Monitoração do Desempenho Interfaceamento com o Usuário 5 Sistemas Operacionais Funções do Sistema Operacional Inicialização do Computador Gestão de Programas Gestão da Memória Programação de Tarefas Configuração de Dispositivos Acesso à Web Segurança do Sistema Controle da Rede Monitoração do Desempenho Interfaceamento com o Usuário 6 Sistemas Operacionais Localização Residente no disco rígido do computador (maioria dos casos) Possibilidade de armazenamento em um chip ROM (handhelds) Computadores de diferentes portes possuem tipicamente diferentes sistemas operacionais Tipos similares de computadores podem possuir sistemas operacionais diferentes Diversos sistemas operacionais não são compatíveis entre si

Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

  • Upload
    donhan

  • View
    231

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

1

Softwaree

Redes

Informática aplicada àCiência da Informação

2

Software

� Software

� Séries de instruções codificadas em linguagem computacional destinadas a informar o computador como desenvolver tarefas

� Categorias

� Software Básico

� Software Aplicativo (ou de Aplicação)

3

♦ Um conjunto de programasque se situa entre ossoftwares aplicativos e o hardware:– Gerencia os recursos do computador

(CPU, dispositivos periféricos).– Estabelece uma interface

com o usuário.• Determina como o usuário

interage com o sistemaoperacional.

– Provê e executa serviços parasoftwares aplicativos.

Sistemas Operacionais

4

Funções dos Sistemas Operacionais

Inicializaçãodo Computador

Gestão deProgramas

Gestão daMemória

Programaçãode Tarefas

Configuraçãode Dispositivos

Controle da Rede

Monitoraçãodo Desempenho

Interfaceamento com o Usuário

5

Sistemas Operacionais

� Funções do Sistema Operacional� Inicialização do Computador� Gestão de Programas� Gestão da Memória� Programação de Tarefas� Configuração de Dispositivos� Acesso à Web� Segurança do Sistema� Controle da Rede� Monitoração do Desempenho� Interfaceamento com o Usuário

6

Sistemas Operacionais

� Localização� Residente no disco rígido do computador (maioria

dos casos)

� Possibilidade de armazenamento em um chip ROM (handhelds)

� Computadores de diferentes portes possuemtipicamente diferentes sistemas operacionais

� Tipos similares de computadores podem possuirsistemas operacionais diferentes

� Diversos sistemas operacionais não sãocompatíveis entre si

Page 2: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

2

7

Funções dos Sistemas Operacionais

� Booting

� Processo de inicialização ou reinicialização de um computador

8

Funções dos Sistemas Operacionais

Residente na memória

� Permanece na memóriaenquanto o computadorestiver executando

� O kernel é residente namemória

Não Residente na memória

� Instruções permanecem no disco rígido até que sejamnecessárias

� Outras partes do SO sãonão residentes

� Kernel

� Núcleo de um SO

� Gestão de memória e dispositivos

� Manutenção dos relógios do computador

� Inicialização de aplicativos

� Compartilhamento de recursoscomputacionais (programas, dispositivos, dados, informação)

� A cada inicialização do computador, o kernel e outrasinstruções de uso frequente do SO são carregadas

9

Passo 1

A fonte de alimentaçãofornece energia elétricapara as diferentespartes do sistema

Funções dos Sistemas Operacionais

� Inicialização de um sistema computacional

processador

BIO

S

10

Passo 2

O processador procurao BIOS

Funções dos Sistemas Operacionais

� Inicialização de um sistema computacional

BIOSBasic Input/Output System

Firmware que contém as instruções de inicializaçãodo computador

processador

BIO

S

11

Passo 3

A BIOS realiza o POST

Funções dos Sistemas Operacionais

� Inicialização de um sistema computacional

POSTPower-On Self Test

Teste mediante o qual sãoverificados componentestais como mouse, teclado, conectores e placas de expansão

processador

BIO

S

placas deexpansão

conectores

teclado

drive deCD-ROM

12

Passo 4

Os resultados do POST são comparados com os dados armazenadosno chip CMOS

Funções dos Sistemas Operacionais

� Inicialização de um sistema computacional

Chip CMOS

Complementary Metal Oxyde

Semiconductor

Armazena informações de configuração do computador e também detecta novosdispositivos conectados

processador

BIO

S

placas deexpansão

conectores

drive de CD-ROM

chipCMOS

Page 3: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

3

13

Passo 5

O BIOS procura osarquivos do sistema no drive A (disco flexível) e, em seguida, no drive

C (disco rígido)

Funções dos Sistemas Operacionais

� Inicialização de um sistema computacional

Arquivos do sistema

Arquivos específicos do sistema operacional, carregados durante a inicialização

processador

BIO

S

placas deexpansão

conectores

drive de CD-ROM

chipCMOS

discorígido

drive dedisco flexível

14

Passo 6

O programa de bootcarrega na RAM o kernel do SO (armazenado no HD), o qual assume, a partirde então, o controledo computador

Funções dos Sistemas Operacionais

� Inicialização de um sistema computacional

processador

BIO

S

placas deexpansão

conectores

drive de CD-ROM

chipCMOS

discorígido

drive dedisco flexível

módulos dememória RAM

15

� Inicialização de um sistema computacional

Step 7

Funções dos Sistemas Operacionais

Passo 7

O SO carrega informaçõesde configuração, exibe a área de trabalho (desktop) na tela e executaprogramas na pasta Iniciar(StartUp)

Pasta Iniciar (StartUp)

Contêiner de uma lista de programas que sãoautomaticamente iniciadosquando o computador éinicializado

16

� Interfaceamento com o Usuário

Funções dos Sistemas Operacionais

� Controle do modo de entrada de dados e do modode apresentação das informações na tela do monitor

Interface orientadaa caractere

Interface gráfica(GUI ou WIMP)

17

Funções dos Sistemas Operacionais

AplicaAplicaççãoão ememforegroundforeground

AplicaAplicaççõesões emembackgroundbackground

((listadaslistadas nana barrabarrade de ferramentasferramentas))

� Ambiente Multi-Tarefas� Usuário trabalha ao mesmo tempo com duas ou

mais aplicações residentes na memória

18

MultiMulti--usuusuááriorio

SO permite a execuçãosimultânea de programaspor dois ou mais usuários

MultiMulti--processamentoprocessamento

SO pode suportar a execuçãosimultânea de programas pordois ou mais processadores

ComputadorComputador ToleranteTolerante a a FalhasFalhas

Continua a operar mesmo se um ouou mais de seus componentes falhar(duplicação de componentes, taiscomo processadores, memórias e drives de disco)

Funções dos Sistemas Operacionais

� Outras características de gestão de programas

Page 4: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

4

19

RAM(memória física)

Funções dos Sistemas Operacionais

� Gestão da Memória Virtual

� O SO aloca umaporção de um meiode armazenamento(usualmente o disco rígido) paraatuar como RAM adicional

Disco(memória virtual)

20

Funções dos Sistemas Operacionais

� Gestão da Memória Virtual

Passo 1

O SO transfere osdados e as instruçõesde programas menosusados recentementepara o disco rígido, uma vez que a memória é necessáriapara outros propósitos

RAM(memória física)

Disco(memória virtual)

swap out de página

21

Funções dos Sistemas Operacionais

� Gestão da Memória Virtual

Passo 2

O SO transfere osdados e as instruçõesde programas do disco rígido para a memória quandonecessários

RAM(memória física)

Disco(memória virtual)

swap out de página

swap in de página

22

Página copiadado disco para a

memória (swap in)

Página copiadado disco para a

memória (swap in)

Página copiadada memória parao disco (swap out)

Página copiadada memória parao disco (swap out)

Arquivode swap

Arquivode swap

Disco rígidoDisco rígido

Dados ou instruçõesde programa utilizados

mais recentemente

Dados ou instruçõesde programa utilizados

mais recentemente

MemóriaMemória

Dados ou instruçõesde programa utilizadosmenos recentemente

Dados ou instruçõesde programa utilizadosmenos recentemente

Gerenciamentoda memória virtual

Gerenciamentoda memória virtual

Página copiadado disco para a

memória (swap in)

Página copiadado disco para a

memória (swap in)

Página copiadada memória parao disco (swap out)

Página copiadada memória parao disco (swap out)

Arquivode swap

Arquivode swap

Disco rígidoDisco rígido

Dados ou instruçõesde programa utilizados

mais recentemente

Dados ou instruçõesde programa utilizados

mais recentemente

MemóriaMemória

Dados ou instruçõesde programa utilizadosmenos recentemente

Dados ou instruçõesde programa utilizadosmenos recentemente

Gerenciamentoda memória virtual

Gerenciamentoda memória virtual

� Gestão da Memória Virtual - Síntese

Funções dos Sistemas Operacionais

23

Funções dos Sistemas Operacionais

� Driver de Dispositivo

� Programa que possibilita a comunicação do SO com um dispositivo de E/S

� Cada dispositivo requer um driver próprio

driver de dispositivo

24

SISTEMAS OPERACIONAIS

São programas que controlam os computadores, coordenam o hardware e suas tarefas e gerenciam a utilização dos diversos dispositivos de sistema computacional, como: impressoras, monitores, etc. Os sistemas operacionais além de fazerem o interfaceamento entre o hardware e os programas, fazem também a conexão lógica entre o homem e a máquina. Os aplicativos necessitam de um sistema operacional para funcionar, e são desenvolvidos especificamente para ele. Geralmente pode-se dizer que a cada família de CPU, ou geração de computadores, usa-se um sistema operacional diferente. Exemplos:a) MS-DOS

(Disk Operating System) Antigo sistema operacional da Microsoft usado nos computadores PCs e compatíveis (clones);

b) Windows 95, 98, Me, 2000, XP, 2003Sistema operacional para PCs compatíveis;

c) LinuxSistema operacional para PCs compatíveis e principal rival do Windows;

d) UnixSistema operacional usado nos médios e grandes computadores.

Page 5: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

5

25

O sistema operacional DOS

MS-DOS acrônimo de Microsoft Disk OperatingSystem é um sistema operacional, comprado pela Microsoft para ser usado na linha de computadores IBM PC. O dono, e criador original do projeto QDOS - Quick and DirtyOperating System, é a empresa Seattle Computer Systems, que foi inicialmente uma tentativa de criar um concorrente do estabelecido Sistema Operacional CP/M que rodasse no recém-lançado processador 8086 da Intel.

26

O sistema operacional WINDOWS

É um sistema operacional monousuário, multitarefa (possibilidade de realizar várias tarefas “ao mesmo tempo”) com interface gráfica.

Exemplos de operações executadas pelo Windows:

•Carrega o sistema operacional, gerenciando todo o computador;•Acessa os programas compatíveis com essa plataforma;•Permite o gerenciamento de seus arquivos: cópia, exclusão, recuperação, backups, impressão, formatação de discos (fixos ou flexíveis), entre outras tarefas.

27

♦Mercado dos servidores – computadores de maior porte, rápidos, seguros, e de grande responsabilidade (se eles pararem, a empresa toda pára). Neste mercado, o uso do Unix e do Linux é predominante.

♦Mercado dos desktops – onde se situam os micros, de menor porte e menor responsabilidade. Neste mercado, a maioria dos micros usam o sistema Windows.

DOIS GRANDES MERCADOS PARA OS SISTEMAS OPERACIONAIS

28

♦Um dos primeiros sistemas operacionais foi o Unix(década de 60), hoje um dos mais usados, tanto em mainframes como micros.

♦Com o surgimento dos micros, foi criado inicialmente o DOS, e depois o Windows (com recursos para multimídia e conexão em rede).

♦Na década de 90, foi criado o Linux, por um estudante finlandês (Linus Torvalds). Linus era pobre e não tinha dinheiro para comprar um sistema operacional. Então resolveu criar um para si mesmo. Ele também colocou gratuitamente o sistema na internet para quem quisesse usá-lo.

HISTÓRIA DOS SISTEMAS OPERACIONAIS

29

1. Preço (Linux)Uma cópia do Windows XP custa us$ 270. Uma empresa com 1.000 micros, vai gastar us$ 270.000 para poder usá-lo. O Linux é de graça.

2. Facilidade de uso (Windows)Windows é um pouco mais fácil de usar.

LINUX X WINDOWS

30

3. Segurança (Linux)A concepção do Windows permite fácil invasão pelo hackers. O Linux foi criado para ser seguro (com base no Unix).

4. Confiabilidade (L)Windows contém muitos bugs, e está sempre sendo consertado (atualizações). Linux é estável, e uma nova versão demora anos, pois tem poucos bugs.

LINUX X WINDOWS

Page 6: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

6

31

5. Mercado de desktops (Windows)Dominado pelo Windows, pois foi feito para agradar ao usuário, além de ter surgido antes do Linux.

6. Compatibilidade (Windows)Como a maioria usa Windows, seus arquivos são usados por todos. Se você usar outro sistema, vai criar arquivos que poderão não ser lidos pela maioria.

LINUX X WINDOWS

32

7. Aplicativos (Windows)Os fabricantes de aplicativos (editores gráficos, jogos, etc.) desenvolvem seus produtos para os sistemas operacionais dominantes.

8. Documentação (Windows)A Microsoft tem mais dinheiro para desenvolver manuais e helps (ajudas).

9. Assistência técnica (Windows)Idem, a Microsoft tem mais recursos.

LINUX X WINDOWS

33

10. Sistema aberto (Linux)

Um sistema aberto é aquele no qual qualquer técnico pode saber exatamente o que ele faz. Um sistema fechado pode estar espionando a empresa ou o usuário e enviando os dados para o fabricante. Na área militar isso é critico.

O Linux é um sistema aberto (você tem acesso ao programa fonte). Windows é fechado (você só recebe o executável - .Exe).

LINUX X WINDOWS

34

11. Alto volume de transações (Linus)O Windows foi feito para PCs e não suporta um volume elevado de transações. Por isso, os servidores usam mais Unix e Linux.

12. Personalização (Linux)É a possibilidade de adequar o sistema às necessidades especificas da empresa ou do usuário. Nos sistemas fechados, é muito restrita essa possibilidade. Você tem que usar do jeito que o fabricante decidiu. No Linux, os técnicos da empresa podem adequá-lo às necessidades da empresa, customizando e eliminando módulos desnecessários.

LINUX X WINDOWS

35

Nos 12 itens acima, o Windows mostrou-se melhor em seis casos, e o Linux em outros seis. Ou seja, empataram. Mas essa análise não deve ser quantitativa.

Por exemplo, o exército americano resolveu trocar o Windows pelo Macintosh unicamente pela falta de segurança do Windows. Neste caso, apenas um item pesou na decisão.

LINUX X WINDOWS

36

♦Um recurso recente, que só existia em mainframes, estádisponível para os micros: as “máquinas virtuais” (a mais famosa é o software da www.vmware.com).

♦Com ela, você pode ter vários sistemas operacionais instalados: unix, linux, dos, windows, etc.

♦Com um click do mouse, você pode mudar de um sistema para outro, sem ter que dar a partida novamente no computador. A comunicação entre os vários sistemas pode se dar por uma área comum do disco, formatada de modo a ser compatível com todos os sistemas instalados no computador.

MÁQUINAS VIRTUAIS

Page 7: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

7

37

♦COMO SE USA UMA MÁQUINA VIRTUAL?

♦Por exemplo, você pode usar o linux para acessar a internet (é mais seguro) e realizar projetos de engenharia e científicos (é muito mais rápido). Depois voltar ao windowspara elaborar relatórios com os resultados, via office, e distribuir.

MÁQUINAS VIRTUAIS

38

Software Aplicativo

♦ Software usado para solucionar um problemaem particular ou realizar uma tarefa específica.

39

Adquirindo Software

♦ Software customizado– Escrito por programadores contratados

pela organização.

♦ Software empacotado (comercial)– Comprado em uma loja, por meio de

catálogo, ou por um site Web.

40

Software Customizado

♦ Feito sob medida, especificamentepara as necessidades de umaorganização.– A organização contrata programadores de

computador para projetar, escrever, testare implementar software.

♦ Pode ser extremamente complexo e demandar anos para ser escrito.

41

Software Empacotado

♦ Vendido em lojas, catálogos ousites Web. – Às vezes, é baixado da Internet.

♦ O pacote contém um ou mais CDs ouDVDs, que contêm o software.– Tipicamente, contém a documentaçãodo software.

♦ Projetado para ter usabilidade

42

Usabilidade

♦ Fácil de usar: – Deve ser intuitivo até mesmo para o

usuário iniciante.– Pode ser usado com um mínimo de

treinamento e documentação.

ISSO 9241-11 Guidance on Usability (1998)

Usabilidade é a capacidade de um produto ser usado por usuários específicos para atingir objetivos específicos com eficácia, eficiência e satisfação em um contexto específico de uso.

Page 8: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

8

43

Linguagens de Programação

Usadas para: ♦ Descrever algoritmos, isto é, sequências de

passos que levam à solução de um problema.

♦ Permitir que os usuários especifiquem comoestes passos devem ser sequenciados pararesolver um problema.

♦ Especificar algoritmos com precisão.

44

Linguagem de Programação

♦ O que é linguagem?– “O uso da palavra articulada ou escrita como

meio de expressão e de comunicação entre pessoas.”

♦ E Linguagem de programação?– Software através do qual podemos desenvolver

programas para informarmos ao computador o que queremos que seja feito.

Pensamento Humano (não-estruturado)

Programa Computador

45

Linguagem de Programação

♦ Definições– Notação para escrever programas, através dos quais

podemos nos comunicar com o hardware e dar as ordens adequadas para a realização de um determinado processo.

– Conjunto de regras que providencia a maneira de dizer a um computador que operações executar.

– Conjunto de símbolos (vocabulário) e regras (gramática) que especifica como transmitir informações entre usuários e computador.

46

Tipos de Linguagem

♦ Linguagens de baixo nível– Restritas a linguagem de máquina.– Forte relação entre as operações implementadas pela

linguagem e as operações implementadas pelo hardware.

♦ Linguagens de alto nível– Aproximam-se das linguagens utilizadas por humanos

para expressar problemas e algoritmos.– Cada declaração numa linguagem de alto nível equivale

a várias declarações numa linguagem de baixo nível.

47

Primeiras Linguagens

♦ Programadores usavam linguagem de máquina– Sequências de dígitos binários (0s e 1s). – Por exemplo, a instrução “some 1 + 1” deveria ser

representada como: 10100100♦ Muitas desvantagens:

– Grande probabilidade de erro em todos os estágios do processo de programação.

– Mesmo sendo com algoritmos simples resulta emlongos programas, o que dificulta o processo de validação e detecção de erros.

– O cálculo de endereços de memória devem ser feitosmanualmente, com um árduo trabalho e uma grandeprobabilidade de erros.

48

Linguagens Básicas – Assembly

♦ Algumas das desvantagens podem ser superadas fazendocom que o computador seja o responsável pelo estágio de tradução.

♦ O programa ainda é escrito em termos de operaçõesbásicas de máquina, mas a tradução em código binário éfeita pelo computador.

♦ O programa que faz essa tradução é chamado de assembler

♦ Exemplo: ADD 1,1

♦ Trata do problema de cálculo de endereço, usando nomesem formato de texto para endereçar os dados.

Page 9: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

9

49

Linguagem de Baixo Nível

Linguagem de Máquina

Significado

0010 0001 1110 carrega no registrador 1 o conteúdo da posição de memória 14

0010 0010 1111 carrega no registrador 2 o conteúdo da posição de memória 15

0001 0001 0010 soma o conteúdo do registrador 1 com o conteúdo do registrador 2 e coloca no registrador 1

0011 0001 1111 armazena o conteúdo do registrador 1 na posição de memória 15

Linguagem de Máquina

Linguagem de BaixoNível

0010 0001 1110 LOAD R1, val1

0010 0010 1111 LOAD R2, val2

0001 0001 0010 ADD R1, R2

0011 0001 1111 STORE R1, val2 50

Linguagens de Alto Nível x Linguagens de Baixo Nível

♦ Alto nível– Minimiza as dificuldades da programação em

Linguagem de Baixo Nível pois se aproxima da linguagem humana

– Problemas podem ser solucionados muito mais rapidamente e com muito mais facilidade.

– A solução do problema não necessita ser obscurecida pelo nível de detalhes necessários em um programa em linguagem de baixo nível.

– O programa em linguagem de alto nível é normalmente fácil de seguir e entender cada passo da execução.

– Fácil portabilidade em diferentes CPUs.

51

Linguagens de Alto Nível x Linguagens de Baixo Nível

♦ Baixo nível– Indicada para funções que precisam implementar

instruções de máquina específicas que não são suportadas por linguagens de alto nível.

– Impossibilidade de uso de linguagens de alto nível (hardware simples).

– Difícil portabilidade em diferentes CPUs.– Minimiza as dificuldades de programação em notação

binária já que faz uso de códigos mnemônicos ao invés da notação binária.

52

Linguagens de programação

Linguagem de Máquina

Linguagem de BaixoNível

Linguagem de AltoNível

0010 0001 1110 LOAD R1, val1

val2 = val1 + val2 0010 0010 1111 LOAD R2, val2

0001 0001 0010 ADD R1, R2

0011 0001 1111 STORE R1, val2

53

Histórico

♦ Primeira geração: linguagem de máquina.

♦ Segunda geração: linguagem de baixo nível.

♦ Terceira geração: linguagens de alto nível. São linguagens estruturadas que se caracterizam por suportarem variáveis, matrizes, instruções condicionais, instruções repetitivas, funções e procedimentos. Exemplos de linguagens de 3ªgeração são BASIC, PASCAL, C, COBOL, FORTRAN, etc...

Existem centenas de linguagens de programação, agrupadas em 5 gerações:

54

Histórico

♦ Quarta geração: São linguagens declarativas e não procedimentais, isto é, permitem dizermos o que queremos que seja feito e não como queremos que seja feito. O melhor exemplo de linguagem de 4ª geração é o SQL (Structured Query Language), utilizada para consulta e manipulação de bases de dados.

♦ Quinta geração: são normalmente conhecidas como linguagens orientadas a objetos (OO – Object Oriented). Alguns autores incluem também nesta geração os sistemas especialistas, desenvolvimento de inteligência artificial, execução de programas em paralelo.

Page 10: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

10

55

Mas, se os computadores trabalham internamente com a linguagem de

máquina, como é que podemos fazer para que o computador entenda os programas desenvolvidos em linguagem de baixo ou

de alto nível?

Código Fonte Tradutor

Código Objeto

56

Processamento de linguagens

Interpretação:

♦ As ações indicadas pelos comandos da linguagem são diretamente executadas. Executa repetidamente a seguinte sequência:1. Obter o próximo comando do programa.

2. Traduzir para linguagem de máquina e determinar que ações devem ser executadas.

3. Executar estas ações.

57

Processamento de linguagens

Compilação:

♦ Programas escritos em linguagem de alto nível são traduzidos para versões equivalentes em linguagem de máquina, antes de serem executados. Passos básicos:1. Traduzir programa para código objeto (compilador).2. Traduzir o código objeto para código relocável

(montador), em linguagem de máquina. 3. Carregar programa inteiro na memória principal, como

código executável de máquina.4. Executar cada instrução.

58

Redes de Computadores

Definições

♦ Conjunto de computadores autônomos interconectados por uma única tecnologia [Tanenbaum]

♦ Internet é uma rede de redes

♦ Sistema de comunicação que visa a interconexão entre computadores, terminais e periféricos

59

Redes de Computadores

Usos de redes de computadores♦ Aplicações comerciais

– Compartilhamento de recursos físicos e informações– Comunicação entre usuários– Comércio eletrônico

♦ Aplicações domésticas– Compartilhamento de recursos físicos e informações– Comunicação entre usuários– Comércio eletrônico– Entretenimento

60

Classificações de Redes

♦ Extensão geográfica– Redes pessoais (Personal Area Networks – PANs)

• Cobrem distâncias muito pequenas

• Destinadas a uma única pessoa

• Ex.: Bluetooth

– Redes locais (Local Area Networks – LANs)• Cobrem pequenas distâncias (um prédio ou um conjunto de

prédios)

• Geralmente pertencentes a uma mesma organização

• Taxa de transmissão da ordem de Mbps

• Pequenos atrasos de propagação

Page 11: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

11

61

Classificações de Redes

♦ Extensão geográfica (cont.)– Redes metropolitanas (Metropolitan Area Networks –

MANs)• Cobrem grandes distâncias (uma cidade)• Ex.: rede baseada na TV a cabo

– Redes de longa distância (Wide Area Networks –WANs)

• Cobrem distâncias muito grandes (um país, um continente)• Transmissão através de comutadores de pacotes interligados

por enlaces dedicados• De um modo geral possuem taxas de transmissão menores que

as das LANs• Atraso de propagação maiores do que das LANs

62

Topologias de Redes

♦ Estruturas físicas de interligação dos equipamentos da rede

♦ Cada uma apresenta características próprias, com diferentes implicações quanto a– Custo– Confiabilidade– Alcance

♦ Tipos mais comuns– Malha– Estrela– Anel– Barramento– Híbridas

63

Topologias de Redes: Malha Completa

♦ Cada estação é conectada a todas as outras estações da rede♦ Vantagens

– Não há compartilhamento do meio físico– Não há necessidade de decisões de por onde enviar a mensagem

(roteamento)

♦ Desvantagem– Grande quantidade

de ligações (custo)

64

Topologias de Redes: Malha Irregular

♦ Topologia mais geral possível♦ Usada principalmente em redes de longa distância (redes

locais não costumam usar a topologia em malha)♦ Cada estação pode ser conectada diretamente a um número

variável de estações♦ Vantagens

– Arranjo de interconexões pode ser feito de acordo com o tráfego– Pode escolher por onde enviar a mensagem para evitar

congestionamento

♦ Desvantagem– Necessita de decisão de roteamento

65

Topologias de Redes: Estrela

♦ Usada principalmente em redes locais♦ Decisões de roteamento centralizadas em um nó♦ Cada estação é conectada a esse nó central♦ Vantagem

– Boa para situações onde o fluxo de informações é centralizado

♦ Desvantagem – Problema de confiabilidade no nó central

66

Topologias de Redes: Anel

♦ Usada principalmente em redes locais♦ Mensagens circulam nó-a-nó até o destino♦ Cada estação tem de reconhecer o próprio nome (endereço)

nas mensagens e copiar as que lhe são destinadas

Page 12: Software Informática aplicada à Ciência da Informaçãobogliolo.eci.ufmg.br/downloads/TGI070_AULA4.pdf · Informática aplicada à ... Passo 5 O BIOS procura os arquivos do sistema

12

67

Topologias de Redes: Anel

♦ Vantagens– Boa para situações onde o fluxo de informações não é

centralizado– Não há necessidade de decisões de roteamento

♦ Desvantagens– Necessita de mecanismos de acesso ao meio

compartilhado– Confiabilidade da rede depende da confiabilidade

individual dos nós intermediários (funcionam como repetidores)

68

Topologias de Redes: Barramento

♦ Usada principalmente em redes locais♦ Mensagens transferidas sem a participação dos nós

intermediários♦ Todas as estações “escutam” as mensagens♦ Necessidade de reconhecer o próprio nome (endereço)

69

Topologias de Redes: Barramento

♦ Vantagens– Não há necessidade de decisões de roteamento– Como não há armazenamento intermediário, pode-se

obter um melhor desempenho em termos de atraso e vazão

♦ Desvantagem– Necessita de mecanismos de acesso ao meio

compartilhado

70

Topologias Híbridas

♦ Existem ainda configurações híbridas– Anel-estrela– Barramento-estrela– Estrela-anel– Árvore de barramentos

71

Assuntos adicionais

♦ A rede Internet (história, aplicativos, etc.)

♦ Blogs e fotologs

♦ Softwares aplicativos

♦ ETC.