37
3 de Março de 2005 Introdução aos Sistemas de Computa dores 1 Introdução aos Sistemas de Computadores Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

Embed Size (px)

Citation preview

Page 1: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 1

Introdução aos Sistemas de Computadores

Pedro BarahonaDI/FCT/UNL

Março 2004

Page 2: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 2

• Objectivos / Programa– Introdução aos Sistemas de Computadores– Introdução à Algoritmia– Familiarização com uma linguagem imperativa

(Octave/MATLAB)– Aplicação a problemas de engenharia– Introdução à programação reactiva (folha de cálculo)

• Responsável:

– Pedro Barahona ( [email protected] /ssdi.di.fct.unl.pt/~pb)

• Assistentes:

– Susana Nascimento, Jorge Cruz (PCE), Joaquim Ferreira da Silva, Marco Correia, Alexandre Pinto, Miguel Maurício

Apresentação da Disciplina

Page 3: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 3

Avaliação• Componente Prática (em grupos de 2):

Mini-teste de Octave (31 Março / 1 Abril) 1º Trabalho de Octave (18 Abril – 29 Abril) 2º Trabalho de Octave (11 Maio – 23 Maio) Mini-teste de Excel (9 Junho)

• Frequência Nota Prática >= 9.5 Presenças > 18 Aulas Práticas (de 24+ previstas)

• Exame: Individual, nas datas oficiais da FCT

• Nota Final: 25 % Nota Prática + 75% Nota Exame

Page 4: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 4

• Os computadores são máquinas que permitem manipulação de símbolos (números, texto, imagem, som, ...).

• No entanto, todos estes símbolos podem ser obtidos a partir de símbolos binários 0/1 ou bits (binary digit), mais fáceis de armazenar e manipular electronicamente (on-off).

• Assim toda a informação pode ser considerada como um conjunto ordenado (sequência) de bits cujo valor simbólico depende do contexto.

• O contexto (por exemplo, o tipo do ficheiro) deverá determinar

– Qual o tipo de informação representada

– Qual o código utilizado

Representação da Informação

Page 5: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 5

Sistema Decimal239

9×100 = 93×101 = 302×102 = 200 239

Sistema Binário

11101111

1×20 = 11×21 = 21×22 = 4

239

1×23 = 80×24 = 01×25 = 321×26 = 641×27 = 128

0, 1, 10, 11, 100, 101, 110, 111, 1000, ...

Representação de Valores NuméricosPor existirem apenas dois dígitos binários, os números são representados em código binário. Neste código a sequência de números inteiros é escrita naturalmente como

O valor de um número pode ser obtido através dos pesos dos seus dígitos (potências de 2)

Page 6: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 6

Representação de TextoCada símbolo é normalmente representado por 1 byte de acordo com o código ASCII (American Standard Code for Information Interchange),

ou de outros mais sofisticados, com dois ou mais bytes, para permitir alfabetos não latinos

ã š α И א ف ι

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 11110000 ! " # $ % & ' ( ) * + , - . /0001 0 1 2 3 4 5 6 7 8 9 : ; < = > ?0010 @ A B C D E F G H I J K L M N O0011 P Q R S T U V W X Y Z [ \ ] ^ _0100 ` a b c d e f g h i j k l m n o0101 p q r s t u v w x y z { | } ~ �0110 € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž

?

0111 ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ

Page 7: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 7

Representação de Imagens• Na representação por mapa de bits (bit map) uma imagem é uma

(muito) longa sequência de bits representando de pontos (pixel – picture element) :

– preto e branco (pixel→1 bit): 1→preto ; 0→branco

– cores (pixel→3 bytes): vermelho+verde+azul (RGB)

• Os mapas de bits ocupam muito espaço pelo que se usam frequentemente técnicas de compressão (ex: GIF e JPEG).

• Uma desvantagem adicional é a dificuldade de aumentar ou diminuir as imagens.

• Em técnicas de vectores, a imagem é representada como um conjunto de linhas e curvas deixando os detalhes do seu desenho para a componente que produz a imagem (monitor, impressora), permitindo obter mais facilmente ampliações e reduções.

Page 8: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 8

Armazenamento de Informação• Num computador a informação (programas e dados) é guardada

em memória, principal ou secundária (Discos Rígidos, Diskettes, CD/DVD, Flash disks, ...).

• A memória principal é organizada numa sequência de células (palavras), cada uma com um tamanho de 1 ou mais bytes (8 bits) e que pode ser acedida individualmente especificando o seu endereço (RAM → random access memory).

• O número de células da memória principal é geralmente muito grande (≈ 500 MB), e expressa-se em potências de 2:

210 bytes = 1024 bytes = 1 Kilobyte = 1 KB220 bytes = 1024 Mbytes = 1 Megabyte = 1 MB230 bytes = 1024 Mbytes = 1 Gigabyte = 1 GB240 bytes = 1024 Mbytes = 1 Terabyte = 1 TB

Page 9: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 9

Armazenamento de Informação• As células de memória têm um endereço que é

especificado por um número de bits igual ao expoente da potência de 2 utilizada.

• Por exemplo, para endereçar 1024 = 210 células são necessários 10 bits: desde a posição 010 = 0000 00002 à posição 1023 = 1111 11112.

0:

1:

2:

3:

4:

endereço01101101

10101110

00001111

01011100

10110011

células

......

• A memória principal pode ser considerada uma longa sequência de bits, permitindo representações com um tamanho arbitrário de bits.

• Por exemplo, uma sequência de 32 bits pode ser representada por 4 células consecutivas.

Page 10: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 10

Memória SecundáriaMemória Principal

Memória Secundária

Disco RígidoDisquetesCDsDVDs...

• A memória secundária complementa a memória principal, de forma não volátil (não se apaga quando se desliga o computador):

– mais espaço de armazenamento (p.ex: DVD ≈ 4 GB);

– possibilidade de separação física da máquina..

• A maior desvantagem destes sistemas relativamente à memória principal é a velocidade de acesso (usa meios mecânicos muito mais lentos).

Page 11: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 11

Arquitectura Básica de um Computador• CPU (Central Processing Unit)

– Lê instruções– Executa insruções

• Memória– Guarda Dados – Guarda Instruções

• Dispositivos de Entrada/Saída – Teclado, rato, placa gráfica, placa de som, discos rígido,

diskettes, flash disks, impressoras, placa de rede, ...)– Permite a comunicação com o “exterior” (utilizador,

periféricos, outros computadores...)

Page 12: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 12

Arquitectura Básica de um Computador

• Vias de Comunicação (Buses)• Ligam os vários componentes

– Address Bus

• Comunica o endereço da memória ou I/O a ser lida/escrita

– Data Bus

• Transmite os dados entre o CPU, a memória e o I/O

– Control Bus

• Escolhe memória ou I/O

• Escolhe leitura ou escrita

Page 13: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 13

CPU (Central Processing Unit)

• A unidade central de processamento é constituida por:

– Uma unidade lógica/aritmética que contém os circuitos que executam a manipulação de dados;

– Uma unidade de controle que contém os circuitos para a coordenação da actividade da máquina;

– Um conjunto de registos gerais que servem para armazenar temporariamente os dados que são manipulados na CPU;

– Dois registos especiais:

• Um contador (program counter) que contém o endereço da próxima instrução a ser executada;

• Um registo de instrução (instruction register) que contém a instrução que está a ser correntemente executada.

Page 14: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 14

CPU

Esquema da Arquitectura de um Computador

5001: 5002: 5003:

2005:

2001: 2002: 2003: 2004:

2006: 2007:

LDA5001LDB5002ADDSTO5003

001310361049

Address Bus

Data Bus

Address Register

(AR)

Program Counter

(PC)

Instruction Register

(IR)

Reg. A

Reg. O

Reg. B

Arithmetic & Logic Unit

Page 15: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 15

Exemplo de Funcionamento

• Executar a (instrução de) atribuição: Z X +Y• Assume-se

– O dado X na posição de memória 5001

– O dado Y na posição de memória 5002

– O dado Z a ser colocado na posição de memória 5003

• Programa em Assembly (≈Linguagem Máquina): 2001: LDA 5001 (5001) (Registo A) 2003: LDB 5002 (5002) (Registo B) 2004: ADD (Reg. A) + (Reg. B) (Reg. O) 2005: STO 5003 (Registo O) (1003)

Page 16: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 16

Exemplo

• Ciclo Fetch-Execute das Instruções

– Fetch

• Avançar o PC para 2001

• Passar o conteúdo do PC para o AR

• Ler a posição apontada por AR para IR

– Execute

• Avançar o PC para 2002

• Passar o conteúdo do PC para o AR

• Ler a posição apontada por AR para o Reg A.

5001: 5002: 5003:

2005:

2001: 2002: 2003: 2004:

2006: 2007:

LDA5001LDB5002ADDSTO5003

001310361049

Page 17: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 17

Linguagens de Programação• Os computadores (mais especificamente os processadores)

executam programas.

• Estes programas podem ser escritos em linguagens com vários graus de abstração:

2005:

2001: 2002: 2003: 2004:

2006: 2007:

LDA5001LDB5002ADDSTO5003

– desde a linguagem ASSEMBLY (linguagem máquina com algumas mnemónicas) directamente relacionada com o funcionamento de um determinado processador

– até às linguagens de alto nível (Pascal, C, Java, ...), independentes do processador Z X+Y

Page 18: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 18

Linguagens de Programação• Uma característica importante da abstração é poder “abstrair” um

conjunto de instruções numa só instrução.

• Esta é naturalmente uma propriedade já conhecida da “matemática”, através da utilização de funções.

• Por exemplo, é conhecido que a soma da série “truncada”:

x - x3/3! + x5/5! - x7/7! + x9/9! + ...

converge para o valor do seno de x. Assim, para denotar o valor do dobro do seno de x, em vez de escrevermos

2* (x - x3/3! + x5/5! - x7/7! + x9/9! + ... )

escrevemos naturalmente 2*sen(x)

abstraindo todo o cálculo do valor do seno de x na notação “sen(x)”

Page 19: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 19

Programas e Funções• De uma forma geral, podemos considerar que uma função tem

um valor determinado pelo valor dos seus argumentos.

Função F: x f(x)

• De uma forma “operacional”, pode considerar-se uma “função” como um mecanismo que calcula o valor da função a partir do valor dos seu(s) parâmetro(s) “de entrada”.

• Esta noção “matemática” de função pode ser adaptada para o domínio da computação

Programa P: input output

• Assim, a execução de um programa pode considerar-se como o mecanismo que determina um qualquer “output” a partir de um dado “input”.

Page 20: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 20

Compiladores• A consideração de diferentes níveis de abstração é naturalmente

extermamente útil para se entender os programas executados pelos computadores.

• Por exemplo, se “inicialmente” (anos 50) os programas eram escritos em linguagem máquina, essa situação alterou-se rapidamente por razões óbvias de eficiência de programação e manutenção de programas.

• Em particular, são muito importantes os programas que

– recebem como input um texto correspondente a um programa escrito numa linguagem de alto nível (por exemplo C); e

– produzem como output um programa escrito em linguagem máquina.

Page 21: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 21

Compiladores• Estes programas são os chamados “compiladores”, naturalmente

dependentes da linguagem de alto nível e da linguagem máquina pretendidas

e que são comparáveis conceptualmente a funções

Compilador(de Pascal)

Programa Máquina

Programa Pascal

25 5

sqrt

Page 22: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 22

Sistemas de Operação• A consideração de vários níveis de abstração é útil não só para

se entenderem os programas executados pelos computadores, mas também para se entender a organização e encadeamento dos vários programas utilizados.

• Um Sistema de Operação (Windows, UNIX, Linux, Mac OS, ...) é um conjunto de programas que permitem operar um computador em “alto nível”.

• Por exemplo, em vez de se especificarem todas as instruções necessárias para ler um ficheiro chamado (texto.txt) do disco para a memória, bastará utilizar uma “instrução” do tipo,

read(“texto.txt”)

disponibilizada pelo sistema de operação às aplicações

Page 23: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 23

Aplicações• Uma vez estabelecidas as primitivas disponibilizadas por um

sistema de operação, vários programas de aplicação podem ser escritos de uma forma independente do computador / processador.

Processador

CompiladorPascal

Compilador C

Editor de Texto

Folha de Cálculo Browser

Bases de

Dados

Jogos

Sistema Operação

de

Read(file)

Page 24: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 24

Sistemas de Operação - Shell• As principais componentes de um sistema de operação são

– Interface com o utilizador (shell – user interface), que interpreta as instruções dadas pelo utilizador.

– O Núcleo (kernel) composto por programas de mais baixo nível, que permitem executar essas instruções.

• Normalmente, a shell disponibiliza uma interface gráfica (GUI – Graphical User Interface) cujos objectos (ficheiros, programas...), são representados e manipulados graficamente no monitor como ícones.

• Uma componente importante das interfaces gráficas é o gestor de janelas, responsável pela divisão do ecrã em espaços denominados janelas e pela sua associação com as respectivas aplicações.

Page 25: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 25

Sistemas de Operação - Kernel• O Núcleo é composto por um conjunto de programas que

executam várias funções:

–Gestão de Ficheiros: Organizam os ficheiros em hierarquias, e provê instruções para a sua criação, alteração e apagamento.

–Gestão de Periféricos: Disponibilizam instruções de alto nível para aceder aos dispositivos periféricos (discos, placa gráfica, placa de som, etc...)

–Gestão de Memória: Organizam a memória para que as zonas de memória (programa e dados) dos vários programas concurrentes (processos) não se confundam.

–Gestão de Processos: Divide o tempo entre os vários processos, interrompendo-os e retomando-os quando apropriado.

Page 26: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 26

Sistemas de Operação – Gestão de Ficheiros• A função do Gestor de Ficheiros é a coordenação das capacidades

de armazenamento da máquina.

• A informação é armazenada em ficheiros que normalmente são agrupados em directorias organizadas hierarquicamente:

A:\

Ficheiro_1 Ficheiro_2 Directoria

Ficheiro_3

C:\

Program Files

Programa_1.exe

...

. . .

C:\Program Files\Programa_1.exe A:\Directoria\Ficheiro_3

Page 27: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 27

Sistemas de Operação – Gestão de Periféricos

• Os gestores de periféricos (device drivers) são as unidades de software que comunicam com os controladores dos periféricos.

• Cada device driver é especializado num determinado periférico (uma impressora, um disco rígido, um monitor, ...).

• Assim, através um qualquer computador (genérico) pode ser configurado para um conjunto particular de periféricos com a instalação dos respectivos device drivers.

Page 28: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 28

Sistemas de Operação – Gestão de Memória

• O gestor de memória é responsável pela coordenação da utilização da memória principal (RAM).

• Vários programas e blocos de dados podem estar simultaneamente na memoria principal.

• Por exemplo:

– Um processador de texto com vários ficheiros abertos

– Uma folha de cálculo

– O browser para aceder à Internet

– Um gestor de correio electrónico

• É necessário coordenar a utilização do espaço disponível, e eventualmente, criar a ilusão de um espaço de memória maior (memória virtual) usando por exemplo espaço do disco rígido.

Page 29: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 29

Sistemas de Operação – Gestão de Processos

• Um processo é um programa em execução.

• Os computadores actuais possibilitam a execução de vários processos concurrentemente, isto é, o tempo de CPU é partilhado (time-sharing) pelos respectivos processos.

• Os gestores dos processos são componentes do sistema operativo responsáveis, pela manutenção

– De uma lista dos processos em execução

– Dos respectivos estados (em execução, suspenso, ...)

– Da prioridade dos processos.

– Dos tempos de CPU atribuidos a cada processo.

Page 30: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 30

Sistemas Multi-Utilizadores• Até aos anos 70/80 a tecnologia não permitia a construção de

computadores pessoais de forma económica. Nessa altura, a arquitectura habitual de um sistema computacional era de um computador “mainframe”, que incluia vários periféricos comuns (discos, impressora, ..) ao qual estavam ligados vários utilizadores através de terminais.

Mainframe Impressora

Discos

Discos

Page 31: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 31

Sistemas Multi-Utilizadores

• Nesses sistemas multi-utilizador o sistema operativo geria os vários utilizadores, dando-lhes, à vez, tempo de CPU, zonas separadas de memória, acesso concorrente aos periféricos, ...

• Com o aparecimento nos anos 80 de computadores pessoais, houve a possibilidade de substituir os terminais individuais por esses computadores pessoais (terminais inteligentes), que permitiam executar de uma forma autónoma várias tarefas.

Mainframe Impressora

Discos

Discos

Page 32: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 32

Redes Locais de Computadores• Esta mudança deu origem ao aparecimento de redes locais de

computadores em que vários computadores pessoais comunicavam entre si (ficheiros, mensagens, ...).

PC

PC

PCPC

“Servidor”

Impressora Base de Dados

• Salvo em organizações “grandes”, os mainframes foram substituídos por computadores menos potentes.

• Estes “servidores”, mantêm serviços e periféricos comuns (bases de dados, impressoras, etc...).

Page 33: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 33

Redes de Computadores• Por outro lado, a tecnologia de comunicações permitiu ligar os

servidores em redes de computadores não locais, em que uma infraestrutura de nós intermédios garantia o encaminhamento das mensagens entre servidores e utilizadores finais.

PC

PC

PCPC

Servidor

PC

PC

PCPC

Servidor

Page 34: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 34

Redes Locais de Computadores• As redes de computadores foram evoluindo ao longo do tempo

desde a ARPANET (rede militar, com acesso a universidades) até à actual INTERNET.

• os utilizadores ligam-se a servidores internet (ISPs) tornando-se seus “clientes” e aceddendo a vários tipos de serviços através de programas aprpriados, tais como

• Browsers, dando acesso a páginas e outros serviços Web (suportados no protocolo HTTP)

• Transferência de ficheiros (protocolo FTP)

• Correio Electronico (por ex. Eudora, Netscape, Outlook)

• Voz (VoIP) por exemplo disponível no MSN Messenger

Page 35: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 35

Redes de Computadores

PC

PC

PCPC

“Servidor”

Impressora Base de Dados

Page 36: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 36

Redes de Computadores• Servidores – Internet (Browsers e Servidores)

– Correio Electrónico, Bases de Dados,

• Redes Globais: Nós e “Routers”

PC

PC

PCPC

“Servidor”

Impressora Base de Dados

Page 37: 3 de Março de 2005 Introdução aos Sistemas de Computadores 1 Pedro Barahona DI/FCT/UNL Março 2004

3 de Março de 2005 Introdução aos Sistemas de Computadores 37

Arquitectura de um Computador

• Arquitectura – CPU, registos, memoria, buses, I/O• Exemplo: C A+B• PC, Fetch e Execute : vantagem da cache• Memória = Dados + programa• Periféricos: Disco, teclado, monitor• Sistema Operativo:

– gestão de memória, gestão de ficheiros, isolar processos, gestão de I/O– Placa gráfica

• Aplicações 1: Compiladores, Interpretadores;• Aplicações 2: Processadores de texto, Folhas de Cálculo;• Aplicações 3: Bases de Dados;• Computação Distribuída

– Protocolos de Comunicação – endereçamento, empacotamento, redes, segurança

– Internet, Execução e acesso remoto (bases de dados distribuídas)