32
TRABALHO 01 - INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO - COM06850- 2012-II CIÊNCIA DA COMPUTAÇÃO GRUPO 5 2012204302 – Caíque de Oliveira de Souza 2012204291 - Heloiza Barros Del’Esposti 2012204278 - Maycown Douglas O. Miranda 2012204279 - Melissa Silva de Souza 2012204298 - Otto Freitas Quintanilha 2012204286 - Paloma Marques Nobre

Trabalho 01 Resumo

Embed Size (px)

DESCRIPTION

Trabalho de ICC

Citation preview

Page 1: Trabalho 01 Resumo

TRABALHO 01 - INTRODUÇÃO À CIÊNCIA DACOMPUTAÇÃO

INTRODUÇÃO À CIÊNCIA DACOMPUTAÇÃO - COM06850- 2012-II

CIÊNCIA DA COMPUTAÇÃO

GRUPO 5

2012204302 – Caíque de Oliveira de Souza2012204291 - Heloiza Barros Del’Esposti

2012204278 - Maycown Douglas O. Miranda2012204279 - Melissa Silva de Souza2012204298 - Otto Freitas Quintanilha2012204286 - Paloma Marques Nobre

Page 2: Trabalho 01 Resumo

SUMÁRIO

1. INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO .......................................................4

1.1. PROJETAR E IMPLEMENTAR SOFTWARE......................................................4

1.2. VISLUMBRAR NOVAS APLICAÇÕES E FORMAS DE SE UTILIZARCOMPUTADORES. ......................................................................................................4

1.3. PROPOR E DESENVOLVER MANEIRAS EFICIENTES E EFETIVAS DE SETRATAR COM PROBLEMAS COMPUTACIONAIS......................................................5

2. MODELO DE TURING...............................................................................................6

3. MODELO DE VON NEUMANN .................................................................................7

4. COMPONENTES COMPUTACIONAIS .....................................................................9

4.1. HADWARE..........................................................................................................9

4.1.1. UNIDADE DE ENTRADA.................................................................................9

4.1.2. UNIDADE DE SAÍDA .......................................................................................9

4.2. UNIDADE DE MEMÓRIA ..................................................................................10

4.2.1. MEMÓRIA RAM (RANDOM ACCESS MEMORY: MEMÓRIA DE ACESSOALEATÓRIO) ...........................................................................................................10

4.2.2. MEMÓRIA ROM (READ ONLY MEMORY: MEMÓRIA SÓ DE LEITURA) ....10

4.2.3. ROM ..............................................................................................................10

4.2.4. PROM (PROGRAMMABLE ROM: ROM PROGRAMÁVEL) ..........................10

4.2.5. CAPACIDADE DE MEMÓRIA .......................................................................10

4.3. UNIDADE DE ARITIMÉTICA E LÓGICA...........................................................11

4.4. UNIDADE DE CONTROLE ...............................................................................11

4.5. UNIDADE CENTRAL DE PROCESSAMENTO (UCP)......................................11

4.6. DADOS .............................................................................................................12

4.7. ARMAZENAMENTO DE DADOS......................................................................12

Page 3: Trabalho 01 Resumo

4.8. TIPOS DE ARMAZENAMENTO........................................................................13

4.8.1. ARMAZENAMENTO MAGNÉTICO ...............................................................13

4.8.2. ARMAZENAMENTO ÓPTICO .......................................................................13

4.8.3. ARMAZENAMENTO EM ESTADO SÓLIDO .................................................14

4.9. SOFTWARE DE COMPUTADOR .....................................................................15

4.9.1. PROGRAMA..................................................................................................15

4.10. LINGUAGENS COMPILADAS .......................................................................16

4.10.1. Linguagens interpretadas ............................................................................16

4.10.2. Linguagens de alto nível ..............................................................................16

4.10.3. Linguagens de baixo nível ...........................................................................16

4.11. ENGENHARIA DE SOFTWARE ....................................................................17

4.12. SISTEMAS OPERACIONAIS.........................................................................17

5. HISTÓRICO.............................................................................................................19

5.1. GERAÇÃO ZERO: MÁQUINAS MECÂNICAS (ANTES DE 1930) ..................................19

5.2. A PRIMEIRA GERAÇÃO: COMPUTADORES COM VÁLVULAS (1930–1950)................21

5.3. A SEGUNDA GERAÇÃO: COMPUTADORES TRANSISTORIZADOS (1959–1965) ........23

5.4. A TERCEIRA GERAÇÃO: COMPUTADORES COM CIRCUITOS INTEGRADOS (1965–1975) ..........................................................................................................................24

5.5. A QUARTA GERAÇÃO: COMPUTADORES VLSI (1975–1985) ......................25

5.6. QUINTA GERAÇÃO (1985- ATÉ HOJE) ...................................................................27

6. QUESTÕES SOCIAIS E ÉTICAS ............................................................................28

7. REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................31

Page 4: Trabalho 01 Resumo

41. INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO

O domínio de atuação da Ciência da Computação é extremamente vasto

englobando desde os seus fundamentos teórico e algorítmico até os mais avançados

desenvolvimentos em robótica e automação inteligente, computação gráfica, sistemas

inteligentes, bioinformática etc. O curso de Ciência da Computação oferece ao seu

graduado uma fundamentação teórica abrangente que lhe permite participar de maneira

efetiva no desenvolvimento tecnológico da computação.

Os trabalhos desenvolvidos pelos cientistas da computação podem ser

enquadrados em três grandes categorias:

1.1. PROJETAR E IMPLEMENTAR SOFTWARE.

Esta constitui a categoria clássica dos cientistas da computação e nela os

mesmos desenvolvem o desafiante trabalho de análise e de programação, muitas

vezes supervisionando outros programadores e sempre atentos às novas abordagens e

tecnologias.

1.2. VISLUMBRAR NOVAS APLICAÇÕES E FORMAS DE SE UTILIZARCOMPUTADORES.

A rede mundial de computadores, a World Wide Web, por exemplo, constitui

uma maneira revolucionária de se utilizar computadores e foi resultado do progresso

marcante da Ciência da Computação, principalmente, nas áreas de redes de

computadores, banco de dados e interface homem máquina. Atualmente os

pesquisadores vêm trabalhando na construção de robôs inteligentes, na transformação

de banco de dados em bancos de conhecimentos, no emprego de computadores para

desvendar os segredos do nosso DNA etc. Nessa categoria o profissional de ciência da

computação deve atuar em áreas transdisciplinares envolvendo muitas vezes

conhecimentos, técnicas e tecnologias de subáreas não pertencentes à computação.

Page 5: Trabalho 01 Resumo

51.3. PROPOR E DESENVOLVER MANEIRAS EFICIENTES E EFETIVASDE SE TRATAR COM PROBLEMAS COMPUTACIONAIS.

Como exemplos de trabalhos que recaem sobre essa categoria, podemos

citar os melhores métodos possíveis de se armazenar grandes quantidades de

informações em um banco de dados, de se enviar dados utilizando redes de

computadores de maneira extremamente rápida e segura, de gerar e trabalhar com

imagens cada vez mais complexas etc. A bagagem teórica e a habilidade de análise e

desenvolvimento de algoritmos, adquiridos no decorrer do curso podem auxiliam muito

um cientista da computação no desenvolvimento das atividades que recaem sobre essa

categoria.

Um curso de Ciência da Computação tem a computação como fim,

diferentemente de um curso de Sistemas de Informação onde a computação é

considerada como um meio de se tratar eficientemente a informação.

Page 6: Trabalho 01 Resumo

62. MODELO DE TURING

Alan Mathison Turing (1912-1954) foi capaz de estabelecer o modelo de

computador universal, servindo para traçar pela primeira vez os limites da computação

e dando finalmente uma base sobre a qual o computador moderno pudesse se

desenvolver.

Chegando ao ponto inicial relativo a Alan Mathison Turing, ele foi

totalmente essencial para chegarmos às máquinas existentes hoje, criou um modelo de

máquina universal baseada em modelos formais, ou seja, mostrando que essa

máquina pode fazer qualquer cálculo matemático. O modelo da mesma tinha como

base as ações que as pessoas realizam quando estão envolvidas na computação.

Tudo se começa em 1936, o então matemático Alan Turing cria uma

máquina que trabalha com uma fita infinita, com um cabeçote de leitura e gravação,

esse cabeçote vai lendo essas células, que são divisões da fita, analisando o conteúdo

de cada célula dessas, feita a leitura, existe o processo de transição, que é determinado

por trocar o símbolo existente na célula analisada, desse modo a máquina de Turing

pode realizar qualquer cálculo se a instrução apropriada for fornecida, enfim se

levarmos em conta a máquina de Turing e os computadores atuais, eles podem vir a

realizar a mesma coisa desde que seja fornecido os dados de entrada do programa, a

descrição de como realizar o cálculo. Dessa forma o processo da máquina de Turing

serviu de base para modelos computacionais atuais.

Page 7: Trabalho 01 Resumo

73. MODELO DE VON NEUMANN

O Modelo de Von Neumann é caracterizado pelo conceito do computador por

programa armazenado, em que as instruções para o funcionamento da máquina eram

gravadas eletronicamente na memória da mesma. Esta ideia tinha como objetivo deixar

o computador mais rápido, visto que com as instruções armazenadas, o processo de

execução seria mais ágil, pois as instruções estariam sendo obtidas com rapidez

eletrônica, ao contrário dos primeiros computadores em que a implementação das

instruções era dada pela manipulação de uma complexa rede de periféricos.

O modelo de Von Neumann tem como padrão utilizar um número finito de

instruções. E essas instruções são gravadas como padrões binários na memória (0 e 1).

É importante ressaltar que os computadores executam uma instrução de cada vez, e

também um dado é buscado de cada vez. Portanto o processador e a memória

executam as transferências passo a passo. O ciclo normal de execução então é: buscar

a instrução, decodificá-la, executá-la e buscar novas instruções.

Além dos sinais relativos aos dados, temos sinais para controle e

sincronismo dos diversos componentes existentes. Esses sinais trafegam por vias

específicas, denominadas barramentos. Os barramentos principais são,

respectivamente, o barramento de dados e o barramento de controle. A largura de um

barramento significa o numero de bytes que o barramento pode transportar

simultaneamente. A velocidade do tráfego dos dados no barramento de dados em

última análise determina a velocidade do processador

Page 8: Trabalho 01 Resumo

8O Modelo de Von Neumann é formado por:

-Memória

-Unidade de Processamento(Unidade Lógica e Aritmética)

-Unidade de Controle

-Dispositivos de Entrada

-Dispositivos de Saída

Page 9: Trabalho 01 Resumo

94. COMPONENTES COMPUTACIONAIS

4.1. HADWARE

4.1.1. UNIDADE DE ENTRADA

A função de uma unidade de entrada é permitir que qualquer dispositivo que

possa captar dados de meio externo e transportar para uma unidade de memória.

Exemplos de componentes mais comuns de unidade de entrada:

Teclado, mouse, leitores de cartões magnéticos, sensores, scanners, placa

mãe.

4.1.2. UNIDADE DE SAÍDA

A função de uma unidade de saída é o contrario da unidade de entrada, ou

seja, qualquer dado gravado na memória que possa ser transportado para o meio

externo ao computador. Normalmente para cada tipo de unidade de entrada existe uma

unidade de saída correspondente, e algumas vezes o mesmo dispositivo faz as duas

funções.

Exemplo de componentes mais comuns de unidade de saída:

Impressoras, monitores de vídeo, caixas de som, fones.

Page 10: Trabalho 01 Resumo

104.2. UNIDADE DE MEMÓRIA

A função da unidade de memória é armazenar dados em processamento e

sequencias lógicas de passos para execução de processo de dados.

4.2.1. MEMÓRIA RAM (RANDOM ACCESS MEMORY: MEMÓRIA DE ACESSOALEATÓRIO)

A característica da memória RAM simplesmente é armazenar dados e os

programas. Sendo que os dados que são gravados nessa memória podem ser

facilmente apagados e regravados novamente e só permaneceram gravados com o

computador ligado. É a memória chamada de volátil.

4.2.2. MEMÓRIA ROM (READ ONLY MEMORY: MEMÓRIA SÓ DE LEITURA)

A característica de uma memória ROM, é que ela só pode ser lida, os dados

gravados nela nunca pode ser apagado e regravados. Normalmente são gravados com

programas utilitários ou dados de utilização muito frequente (trechos do sistema

operacional, tabelas de teclado, linguagens residentes, etc.). As ROM podem ser

subdivididas em dois tipos: ROM simples, e PROM.

4.2.3. ROM

Simples: as informações são nela gravadas no momento da sua fabricação e

não podem ser alteradas, nem mesmo pelo fabricante do computador.

4.2.4. PROM (PROGRAMMABLE ROM: ROM PROGRAMÁVEL)

Esta ROM é adquirida "virgem" do fabricante e pode ser gravada pelo

usuário com os dados que quiser, tendo para isto um equipamento especial. Uma vez

gravada não pode ser mais desgravada.

4.2.5. CAPACIDADE DE MEMÓRIA

A capacidade de memória (RAM) de um computador é medida pelo número

de Bytes que a mesma consegue reter. Este é um dado importante sobre um

computador, pois dá uma boa ideia de que tipo de trabalho este computador poderá

exercer mais eficientemente. Os múltiplos do Byte são o Quilobyte, o Megabyte, o

Gigabyte e o Terabyte.

Page 11: Trabalho 01 Resumo

114.3. UNIDADE DE ARITIMÉTICA E LÓGICA

A função de uma unidade aritmética e lógicas realizam geralmente as 4

operações aritméticas básicas (soma, subtração, multiplicação e divisão) além da

potenciação. Realizam também operações lógicas que são comparações de grandeza

(maior, menor, igual) entre dados armazenados na memória. Estes dados são levados à

Unidade Aritmética e Lógica, onde é executada a operação desejada e seu resultado

volta à memória para análise ou armazenamento. Assim como a memória, a Unidade

Aritmética e Lógica é constituída unicamente de circuitos eletrônicos.

4.4. UNIDADE DE CONTROLE

A Unidade de Controle tem como função a tarefa de acompanhar cada passo

do programa a ser executado e acionar as unidades que executarão aquele passo. Em

uma operação de soma deve acionar a Unidade de Memória para que entregue à

unidade aritmética e lógica as parcelas a somar, para que seja feita a soma e por fim

seja devolvido à unidade de memória o resultado. Em uma operação de impressão

deve acionar a unidade de memória para que entregue à impressora a informação a ser

impressa.

A unidade aritmética e lógica e a unidade de controle estão, nos

microcomputadores, construídas em um mesmo circuito integrado que recebe o nome

de Microprocessador. É a peça eletrônica mais importante dos microcomputadores que,

inclusive, derivam dela seu nome. Nos computadores tradicionais as funções

aritméticas e lógicas e as funções de controle geralmente não são concentradas em um

único circuito integrado, mas divididas por diversos "chips".

4.5. UNIDADE CENTRAL DE PROCESSAMENTO (UCP)

Normalmente as unidades de memória, aritmética e lógica e de controle

estão acondicionadas em um único móvel que pode tomar o formato de uma pequena

caixa nos microcomputadores, de um arquivo de aço nos minicomputadores ou de um

balcão nos grandes computadores. Ao conjunto destas três unidades se chama no

jargão computacional, Unidade Central de Processamento - UCP (ou CPU - "central

Page 12: Trabalho 01 Resumo

12processing unity"). Geralmente é o equipamento mais caro de um computador e define

o tamanho da máquina.

4.6. DADOS

Seguindo o modelo de Von Neumann um computador com maquina de

processamento de dados recebe dados de entrada para processa-los e no fim fornecer

os resultados.

4.7. ARMAZENAMENTO DE DADOS

Os sistemas de informática podem armazenar os dados tanto internos

como externamente. Internamente, as instruções ou dados podem armazenar-se por

um tempo na memória RAM e na memória ROM. Os dispositivos de armazenamento

externos, que podem residir fisicamente dentro da unidade de processamento principal

do computador, estão fora da placa de circuitos principal. Os dispositivos de

armazenamento externo existentes são os disquetes e os discos rígidos. A maioria dos

grandes sistemas de informática utiliza bancos de unidades de armazenamento em fita

magnética. A tecnologia de CD-ROM, que emprega as mesmas técnicas laser utilizadas

para criar os CDs de música, permite capacidades de armazenamento da ordem de

várias centenas de megabytes de dados.

Sobre os Dispositivos de Armazenamento, podemos destacar os mais

utilizados atualmente, tendo em atenção os principais suportes de informação:

-Unidades de Disquetes

-Unidades Zips.

-Leitores de CD-ROM – Gravadores de CD-ROM

-Leitores de DVDs – Gravadores de DVDs

Page 13: Trabalho 01 Resumo

134.8. TIPOS DE ARMAZENAMENTO

Mídias de armazenamento secundárias e dispositivas existem em quatro

categorias principais; magnética, óptica, e de estado sólido.

4.8.1. ARMAZENAMENTO MAGNÉTICO

Polaridades opostas se atraem, e polaridades idênticas se repelem.

Dispositivos de armazenamento magnéticos usam estes dois estados magnéticos para

registrar dados em um disco ou fita.

Quando um disco gira ou uma fita se move, sinais elétricos nas cabeças

read/write do drive mudam a polaridade de partículas magnéticas minúsculas na

superfície magnética da mídia para registrar 0s e 1s. Quando você recobra um arquivo,

o efeito é invertido. A polaridade da mídia induz uma corrente elétrica imediatamente

abaixo da cabeça de read/write na cabeça de read/write que é transmitida ao

computador na forma de 0s e 1s.

. Flexíveis (disquete ou floppy disk)

. Rígidos (Hard Disk ou HD ou Winchester)

- Capacidade de armazenamento: varia entre KB e GB

- São divididos em trilhas concêntricas, subdivididas em sectores radiais.

Os discos rígidos não são removíveis. São discos permanentes, muito mais

velozes e capazes de armazenar muito mais informações.

4.8.2. ARMAZENAMENTO ÓPTICO

Armazenamento óptico usa um laser para queimar covas pequenas e

escuras na superfície de um disco. No caso de CDs, CD-ROM, e discos de DVD, são

criadas as pits (covas) quando a superfície do disco é forçada em um molde. Um

dispositivo de playback pode ler este revezamento de manchas escuras e claras como

sendo 0s e 1s. Com os giros do disco no drive, um feixe fino de luz laser é colocado na

superfície do disco. A quantidade de luz que é refletida de volta é determinada por se o

raio lazer laçou em um pit ou um land. Pits refletem menos luz que as Lands brilhantes

Page 14: Trabalho 01 Resumo

14e um dispositivo chamado de fotodetector mede a quantidade de luz refletida e circuitos

convertem sua leitura em um 0 ou 1.

4.8.3. ARMAZENAMENTO EM ESTADO SÓLIDO

Uma dos mais recentes dispositivos de armazenamento é chamada memória

flash. Esta memória usa chips de estado sólido muito parecido com esses usados na

memória interna do computador, porém, os dados nestes chips permanecem

registrados até mesmo quando a força é desligada. Considerando que dispositivos de

memória flash não têm nenhuma parte móvel eles são mais rápidos que discos e fitas

operados mecanicamente.

Page 15: Trabalho 01 Resumo

154.9. SOFTWARE DE COMPUTADOR

4.9.1. PROGRAMA

A definição de um programa é simplesmente uma sequencia de instruções

para ser seguidas e posteriormente executadas a fim de mostrar o resultado. Seguindo

o conceito de Von Neumann, os programas são armazenados na memória do

computador, junto com os dados a ser processados. Sendo que o algoritmo são os

passos para realizar certa tarefa. Para resolver um problema no computador é

necessário que seja primeiramente encontrada uma maneira de descrever este

problema de uma forma clara e precisa. É preciso que encontremos uma sequencia de

passos que permitam que o problema possa ser resolvido de maneira automática e

repetitiva. Esta sequencia de passos é chamada de algoritmo. Um exemplo simples e

prosaico de como um problema pode ser resolvido se fornecermos uma sequencia de

passos que mostrem a solução é uma receita de bolo.

A noção de algoritmo é central para toda a computação. A criação de

algoritmos para resolver os problemas é uma das maiores dificuldades dos iniciantes

em programação em computadores. Um fator importante é pode haver mais de um

algoritmo para resolver um problema. Por exemplo, para ir de casa até o trabalho,

posso escolher diversos meios de transportes em função do preço, conforto, rapidez,

etc. A escolha será feita em função do critério que melhor se adequar as nossas

necessidades.

Uma linguagem de programação é um método padronizado para expressar

instruções para um computador, ou seja, é um conjunto de regras sintáticas e

semânticas usadas para definir um programa de computador. Uma linguagem permite

que um programador especifique precisamente sobre quais dados um computador vai

atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser

tomadas sob várias circunstâncias.

As linguagens de programação existem para facilitar a comunicação entre

programador e hardware, o programador escreve instruções em uma linguagem bem

próxima da que as pessoas usam pra se comunicar, depois um segundo programa

Page 16: Trabalho 01 Resumo

16traduz o que o programador escreveu para sequencias compostas por 0 e 1

(Compiladores) ou interpreta as instruções escritas pelo programador e as executa

(Interpretador).

4.10. LINGUAGENS COMPILADAS

São as linguagens que passam por um processo de tradução (compilação),

sendo transformado para um segundo código (código de maquina) compreensível ao

processador, o programa responsável por essa tradução é chamado de compilador.

4.10.1. LINGUAGENS INTERPRETADAS

São linguagens onde o código fonte da mesma é executado por um outro

programa de computador chamado interpretador, que em seguida é executado pelo

sistema operacional ou processador. Mesmo que um código em uma linguagem passe

pelo processo de compilação, a linguagem pode ser considerada interpretada, se o

programa resultante não for executado diretamente pelo sistema operacional ou

processador.

4.10.2. LINGUAGENS DE ALTO NÍVEL

São linguagens com um nível de abstração relativamente elevado, longe do

código de máquina e mais próximo à linguagem humana. Desse modo, as linguagens

de alto nível não estão diretamente relacionadas à arquitetura do computador. O

programador de uma linguagem de alto nível não precisa conhecer características do

processador, como instruções e registradores. Essas características são abstraídas na

linguagem de alto nível. EX: Pyton, C, C++, Java, PHP.

4.10.3. LINGUAGENS DE BAIXO NÍVEL

Trata-se de linguagens de programação que compreendem as

características da arquitetura do computador. Assim, utilizam-se somente instruções do

processador, para isso é necessário conhecer os registradores da máquina. Nesse

sentido, as linguagens de baixo nível estão diretamente relacionadas com a arquitetura

do computador. Um exemplo é a linguagem Assembly, que trabalha diretamente com os

registradores do processador, manipulando dados.

Page 17: Trabalho 01 Resumo

174.11. ENGENHARIA DE SOFTWARE

• Desenvolvimento multiversional de software multipessoal.

• Abordagem sistemática, disciplinada e quantificada ao desenvolvimento,

operação e manutenção de software.

• Disciplina do conhecimento humano que tem por objetivo definir e exercitar

processos (humanos atuando como máquinas), métodos (planos de processos),

ferramentas e ambientes (máquinas apoiando processos e métodos) para construção

de software que satisfaça necessidades de cliente e usuário dentro de prazos e custos

previsíveis.

4.12. SISTEMAS OPERACIONAIS

Um sistema operacional é uma coleção de programas para gerenciar as

funções do processador, o input, o output, o armazenamento e o controle dos

dispositivos. O sistema operacional tem todos os comandos básicos que os aplicativos

vão usar em vez de ter todas estas funções reescritas para cada aplicativo.

Exemplo: para imprimir um arquivo, os processadores de texto mandam o

arquivo para o programa "imprimir" do sistema operacional.

Componentes funcionais dos sistemas operacionais:

Um sistema operacional executa muitas funções para que o computador

funcione bem e eficientemente. Algumas das mais importantes são:

Interpretador de Comandos: traduz comandos para instruções que o

processador entende.

Gerente dos Usuários: guarda as tarefas de um usuário separadas daquelas

dos outros.

Gerente das Tarefas: guarda as operações de uma tarefa separadas

daquelas dos outros.

Page 18: Trabalho 01 Resumo

18Gerente dos Recursos: gerencia o uso de recursos de hardware entre

usuários e tarefas usando-os a qualquer ponto do tempo.

Gerente de Arquivos: cria, deleta, enter, muda arquivos e gerencia acesso

para arquivos.

User Interface: gerencia acesso do usuário para o interpretador de comandos

e o gerente de arquivos.

Exemplos de sistema operacionais: Linux, Windows, Mac.

Page 19: Trabalho 01 Resumo

195. HISTÓRICO

5.1. GERAÇÃO ZERO: MÁQUINAS MECÂNICAS (ANTES DE 1930)

Wilhelm Schickard (1592–1635) foi reconhecido como o inventor da primeira

calculadora mecânica, o Relógio Calculadora (data exata desconhecida). Este

dispositivo podia adicionar e subtrair números contendo até seis dígitos. Em 1642,

Blaise Pascal (1623–1662) desenvolveu uma calculadora mecânica, denominada

Pascaline, para ajudar seu pai no seu trabalho com impostos. A Pascaline podia fazer

adição com transporte (vai-um) e subtração. Ela foi provavelmente o primeiro

dispositivo mecânico de soma realmente usado para objetivos práticos. De fato, a

Pascaline foi tão bem-concebida que o seu projeto básico ainda estava sendo usado no

início do século XX, como evidenciado pelo Lightning Portable Adder, em 1908, e pelo

Addometer, em 1920.

Gottfried Wilhelm von Leibniz (1646–1716), um notável matemático, inventou

uma calculadora conhecida como Stepped Reckoner, que podia adicionar, subtrair,

multiplicar e dividir. Nenhum destes dispositivos podia ser programado ou tinha

memória. Eles precisavam de intervenção manual em cada passo de seus cálculos.

Novos projetos de calculadoras começaram a emergir no século XIX. Um dos

mais ambiciosos dentre estes novos projetos era a Máquina Diferencial (Difference

Engine) de Charles Babbage (1791–1871). Algumas pessoas se referem a Babbage

como “o pai da computação”. De acordo com a opinião geral, ele foi um gênio

excêntrico que nos legou, entre outras coisas, a chave mestra e o “pegador de boi,” um

dispositivo para empurrar bois e outros obstáculos móveis para fora do caminho das

locomotivas.

Babbage construiu sua Máquina Diferencial em 1822. A Máquina Diferencial

recebeu este nome porque usava uma técnica de cálculo chamada de método das

diferenças. A máquina foi projetada para mecanizar o cálculo de funções polinomiais e

era, na verdade, uma calculadora, e não, um computador. Babbage também projetou

uma máquina de propósito geral em 1833, denominada Máquina Analítica. Embora

Babbage tenha falecido antes de tê-la construído, a Máquina Analítica foi projetada

Page 20: Trabalho 01 Resumo

20para ser mais versátil do que sua antecessora, a Máquina Diferencial. A Máquina

Analítica teria sido capaz de realizar qualquer operação matemática. Ela incluía muitos

dos componentes associados aos computadores modernos: uma unidade aritmética

para realizar cálculos (Babbage se referia a ela como o moinho), uma memória (o

depósito) e dispositivos de entrada e saída. Babbage também incluiu uma operação de

desvio condicional onde a próxima instrução a ser executada era determinada pelo

resultado da operação anterior. Ada, Condessa de Lovelace e filha do poeta Lord

Byron, sugeriu que Babbage escrevesse um plano de como a máquina deveria calcular

os números. Isto é reconhecido como sendo o primeiro programa de computador, e Ada

é considerada como sendo a primeira programadora de computadores. Também

existem rumores de que ele teria sugerido o uso do sistema binário de numeração, em

vez do sistema decimal, para armazenar dados.

Em 1801, Jacquard inventou um tear de tecelagem programável que poderia

produzir padrões complexos em roupas. Jacquard deu a Babbage uma tapeçaria que

havia sido tecida neste tear usando mais de 10.000 cartões perfurados. Para Babbage,

pareceu natural que, se um tear podia ser controlado por cartões, então sua Máquina

Analítica também poderia ser. Ada expressou seu encanto com esta ideia, escrevendo

que “A Máquina Analítica tece padrões algébricos da mesma forma que o tear de

Jacquard tece flores e folhas”.

O cartão perfurado provou ser o meio mais resistente de fornecer entrada

para um sistema de computação. A entrada de dados via teclado teve de esperar até

que fossem feitas mudanças fundamentais na forma como as máquinas de calcular

eram construídas. Na segunda metade do século XIX a maioria das máquinas usava

mecanismos com engrenagens, difíceis de integrar com os primitivos teclados porque

eles eram mecanismos com alavancas. Mas mecanismos com alavancas poderiam

facilmente perfurar cartões, e mecanismos com engrenagens poderiam lê-los

facilmente. Portanto, vários dispositivos foram inventados para codificar e, depois,

“tabular” dados perfurados em cartões. A mais importante das máquinas de tabulação

do final do século XIX foi a inventada por Herman Hollerith (1860–1929). A máquina de

Hollerith foi usada para codificar e compilar os dados do censo de 1890. Este censo foi

Page 21: Trabalho 01 Resumo

21completado em tempo recorde, impulsionando as finanças de Hollerith e a reputação de

sua invenção. Hollerith, mais tarde, fundou uma empresa que se tornaria a IBM. Seu

cartão perfurado de 80 colunas, o cartão Hollerith, foi uma marca de processamento

automatizado de dados por mais de 50 anos.

5.2. A PRIMEIRA GERAÇÃO: COMPUTADORES COM VÁLVULAS (1930–1950)

Na década de 1930, Konrad Zuse (1910–1995) partiu do ponto em que

Babbage havia parado e adicionou tecnologia elétrica e outras melhorias ao projeto de

Babbage. O computador de Zuse, o Z1, usava relés eletromecânicos em vez das

engrenagens movidas a manivela de Babbage. O Z1 era programável e possuía uma

memória, uma unidade aritmética e uma unidade de controle. Visto que verbas e

recursos eram escassos na Alemanha durante a guerra, Zuse usava filmes de cinema

descartados em vez de cartões perfurados para a entrada. Embora esta máquina tenha

sido projetada para usar válvulas, Zuse, que estava construindo ele mesmo a sua

máquina, não podia arcar com os custos das válvulas.

Assim, o Z1 corretamente pertence à primeira geração, embora não tivesse

válvulas. Zuse construiu o Z1 na sala da casa de seus pais, em Berlim, enquanto a

Alemanha estava em guerra com a maior parte da Europa. Felizmente ele não

conseguiu convencer os nazistas a comprar a sua máquina. Eles não perceberam a

vantagem tática que tal dispositivo poderia dar a eles. Bombas aliadas destruíram todos

os três primeiros sistemas de Zuse, O Z1, o Z2 e o Z3. As impressionantes máquinas

de Zuse não puderam ser refinadas até o final da guerra e foram mais um “beco de

evolução” na história dos computadores.

Três pessoas claramente emergem como inventoras dos modernos

computadores: John Atanasoff, John Mauchly e J. Presper Eckert. John Atanasoff

(1904–1995) recebeu o mérito da construção do primeiro computador totalmente

eletrônico. O Atanasoff Berry Computer (ABC) era uma máquina binária construída com

válvulas. Visto que este sistema foi construído especificamente para resolver sistemas

de equações lineares, não podemos considerá-lo um computador de uso geral.

Page 22: Trabalho 01 Resumo

22John Mauchly (1907–1980) e J. Presper Eckert (1929–1995) foram os dois

principais inventores do ENIAC, apresentado ao público em 1946. O ENIAC é

reconhecido como sendo o primeiro computador digital de uso geral totalmente

eletrônico.

Esta máquina usava 17.468 válvulas, ocupava 1800 metros quadrados de

chão, pesava 30 toneladas e consumia 174 kilowatts de energia. O ENIAC tinha uma

capacidade de memória de cerca de 1000 bits de informação (cerca de 20 números de

10 dígitos decimais) e usava cartões perfurados para armazenar dados.

A visão de John Mauchly de uma máquina de calcular eletrônica nasceu de

seu interesse ao longo da vida de fazer previsão do tempo matematicamente. Mauchly

fez-se voluntário para um curso rápido em engenharia elétrica na Escola de Engenharia

Moore, da Universidade da Pensilvânia. Depois de completar este programa, Mauchly

tornou-se professor na Escola Moore, onde ensinou um jovem e brilhante aluno, J.

Presper Eckert. Mauchly e Eckert encontraram um interesse mútuo na construção de

um dispositivo eletrônico de cálculo. A fim de assegurar as verbas necessárias para

construir sua máquina, eles escreveram uma proposta formal a ser revisada pela

escola. Eles retrataram a sua máquina de forma tão conservadora quanto possível, a

enquadrando como uma “calculadora automática”.

Embora provavelmente soubessem que computadores poderiam funcionar

mais eficientemente usando o sistema binário de numeração, Mauchly e Eckert

projetaram seu sistema para usar números na base 10, mantendo a aparência de uma

enorme máquina de somar eletrônica. A universidade rejeitou a proposta de Mauchly e

Eckert. Felizmente, o Exército dos Estados Unidos estava mais interessado.

Durante a Segunda Guerra Mundial, o exército tinha uma insaciável

necessidade de calcular trajetórias dos novos equipamentos balísticos. Milhares de

“computadores” humanos foram empregados diuturnamente para trabalhar na

aritmética requerida por estas tabelas balísticas. Compreendendo que um dispositivo

eletrônico poderia encurtar o cálculo de tabelas balísticas de dias para minutos, o

exército liberou fundos para o ENIAC. E o ENIAC realmente reduziu o tempo de cálculo

Page 23: Trabalho 01 Resumo

23de uma tabela, de 20 horas para 30 segundos. Infelizmente, a máquina não ficou pronta

antes do final da guerra. Mas o ENIAC mostrou que computadores com válvulas eram

rápidos e viáveis. Durante a próxima década, sistemas a válvula continuaram a

melhorar e foram comercialmente bem-sucedidos.

5.3. A SEGUNDA GERAÇÃO: COMPUTADORES TRANSISTORIZADOS (1959–1965)

A tecnologia de válvulas da primeira geração não era muito confiável. De

fato, alguns críticos do ENIAC acreditavam que o sistema nunca iria funcionar porque

as válvulas queimariam mais rápido do que poderiam ser substituídas. Embora a

confiabilidade do sistema não fosse tão ruim quanto os pessimistas previam, os

sistemas a válvulas frequentemente passavam mais tempo sem funcionar do que

funcionando.

Em 1948, três pesquisadores do Bell Laboratories – John Bardeen, Walter

Brattain e William Shockley – inventaram o transistor. Esta nova tecnologia não apenas

revolucionou dispositivos como televisões e rádios, mas também impulsionou a

indústria de computadores para uma nova geração. Visto que transistores consomem

menos energia do que válvulas, são menores e trabalham com mais confiabilidade, os

circuitos de computadores consequentemente se tornaram menores e mais confiáveis.

Apesar do uso de transistores, os computadores desta geração ainda eram

grandes e bastante caros. Em geral, somente universidades, governos e grandes

empresas poderiam justificar tais custos. Todavia, muitos fabricantes de computadores

emergiram nesta geração; IBM, Digital Equipment Corporation (DEC) e Univac (agora

Unisys) dominaram a indústria. A IBM comercializou o 7094 para aplicações científicas

e o 1401 para aplicações comerciais. A DEC estava ocupada fabricando o PDP-1. Uma

empresa fundada (mas logo vendida) por Mauchly e Eckert construiu os sistemas

Univac. O mais bem-sucedido sistema Unisys desta geração pertencia à série 1100.

Outra empresa, a Control Data Corporation (CDC), sob a supervisão de

Seymour Cray, construiu o CDC 6600, o primeiro supercomputador do mundo.

Page 24: Trabalho 01 Resumo

24O CDC 6600, de 10 milhões de dólares, podia executar 10 milhões de

instruções por segundo, usava palavras de 60 bits e tinha uma assombrosa memória

principal de 128 k palavras.

5.4. A TERCEIRA GERAÇÃO: COMPUTADORES COM CIRCUITOS INTEGRADOS(1965–1975)

A verdadeira explosão no uso de computadores veio com a geração de

circuitos integrados. Jack Kilby inventou o circuito integrado (CI), ou microchip, feito

com germânio. Seis meses depois, Robert Noyce (que também havia trabalhado em

projeto de circuitos integrados) criou um dispositivo similar usando silício em vez de

germânio. Este é o chip de silício sobre o qual foi construída a indústria de

computadores.

Os CIs pioneiros permitiam que dezenas de transistores existissem em um

único chip de silício que era menor do que um transistor simples em “componente

discreto”. Os computadores se tornaram mais rápidos, menores e mais baratos,

trazendo imensos ganhos ao poder de processamento. A família de computadores IBM

System/360 estava entre os primeiros sistemas disponíveis comercialmente que foram

construídos inteiramente com componentes de estado sólido. A linha 360 de produtos

também foi a primeira da IBM a oferecer compatibilidade entre todas as máquinas da

família, significando que todas usavam a mesma linguagem simbólica. Usuários de

máquinas pequenas podiam migrar para sistemas maiores sem reescrever todo o seu

software. Este foi um novo e revolucionário conceito na época.

A geração CI também viu a introdução de tempo compartilhado e

multiprogramação (a habilidade de mais de uma pessoa usar o computador ao mesmo

tempo). A multiprogramação, por sua vez, necessitou a introdução de novos sistemas

operacionais para esses computadores. Minicomputadores de tempo compartilhado tais

como o PDP-8 e o PDP-11 da DEC, tornaram a computação mais acessível a pequenas

empresas e universidades. A tecnologia de CI também permitiu o desenvolvimento de

supercomputadores mais poderosos. Seymour Cray usou o que havia aprendido

durante a construção do CDC 6600 e iniciou a sua própria empresa, a Cray Research

Corporation. Esta empresa produziu vários supercomputadores, iniciando com o Cray-1,

Page 25: Trabalho 01 Resumo

25de 8 milhões de dólares, em 1976. O Cray-1, em forte contraste com o CDC 6600,

podia executar mais de 160 milhões de instruções por segundo e suportava 8

megabytes de memória.

5.5. A QUARTA GERAÇÃO: COMPUTADORES VLSI (1975–1985)

Agora existem diversos níveis de integração: SSI (small scale integration –

integração em pequena escala), na qual existem de 10 a 100 componentes por chip;

MSI (medium scale integration – integração em média escala), na qual existem de 100 a

1.000 componentes por chip; LSI (large scale integration – integração em larga escala),

na qual existem de 1.000 a 10.000 componentes por chip; e, finalmente, VLSI (very

large scale integration – integração em muito larga escala), na qual existem mais de

10.000 componentes por chip. Este último nível, VLSI, marca o início da quarta geração

de computadores.

Para dar alguma perspectiva a estes números, considere o ENIAC como um

projeto em um chip. Em 1997, para comemorar o quinquagésimo aniversário de sua

primeira demonstração em público, um grupo de estudantes da Universidade da

Pensilvânia construiu um único chip equivalente ao ENIAC. A fera de 1.800 pés

quadrados e 30 toneladas, que devorava 174 kilowatts de potência, no minuto em que

ela era ligada, foi reproduzida em um chip do tamanho de uma unha de um polegar.

Este chip continha aproximadamente 174.569 transistores – uma ordem de magnitude a

menos do que o número de componentes normalmente colocados na mesma

quantidade de silício no final de década de 1990.

A VLSI permitiu à Intel, em 1971, criar o primeiro microprocessador do

mundo, o 4004, que era plenamente funcional, com um sistema de 4 bits que

funcionava a 108KHz. A Intel também introduziu o chip de memória de acesso

randômico (RAM), que podia armazenar quatro kilobits de memória em um único chip.

Isto permitiu aos computadores de quarta geração se tornarem menores e mais rápidos

do que seus antecessores de estado sólido.

O microcomputador pioneiro foi o Altair 8800, apresentado em 1975 pela

empresa Microprocessor Instrumentation and Telemetry (MITS). O Altair 8800 foi

Page 26: Trabalho 01 Resumo

26seguido pelo Apple I e Apple II e pelos PET e Vic 20 da Commodore. Finalmente, em

1981 a IBM introduziu seu PC (personal computer – computador pessoal).

O Computador Pessoal foi a terceira tentativa da IBM de introduzir um

sistema de computação “inicial”. Apesar destas falhas iniciais, John Opel, da IBM,

convenceu sua gerência a tentar novamente. Opel escolheu Don Estridge, um

engenheiro capaz e cheio de energia, para liderar o desenvolvimento do novo sistema,

de codinome Acorn.

Opel pôde iniciar o seu projeto somente após prometer terminá-lo em um

ano, o que parecia ser uma façanha impossível. Estridge sabia que a única maneira

possível de entregar o PC dentro do prazo terrivelmente otimista de um ano seria

romper as regras da IBM e usar tantas partes “terceirizadas” quanto possível. Assim,

desde o princípio, o IBM PC foi concebido com uma arquitetura “aberta”. Embora

algumas pessoas na IBM tenham lamentado a decisão de manter a arquitetura do PC

como não proprietária tanto quanto possível, foi esta abertura que permitiu à IBM

estabelecer os padrões para a indústria.

Enquanto os competidores da IBM estavam ocupados processando

companhias por copiar seus projetos de sistemas, os clones de PCs proliferaram. Em

breve o preço dos microcomputadores “compatíveis com IBM” se tornaram ao alcance

de quase todas as empresas pequenas. Também graças aos fabricantes de clones, em

seguida um grande número desses sistemas verdadeiramente de “uso pessoal”

começou a ser usado nas casas das pessoas.

A IBM mais tarde perdeu o seu domínio do mercado de microcomputadores,

mas o gênio havia saído da garrafa. Para o bem ou para o mal, a arquitetura da IBM

continua sendo de fato o padrão para a microcomputação, que cada ano anuncia

sistemas maiores e mais rápidos. Hoje em dia, o computador de mesa médio possui um

poder de computação muitas vezes maior que o dos mainframes da década de 1960.

O poder computacional trazido pela VLSI aos supercomputadores desafia a

compreensão. O primeiro supercomputador, o CDC 6600, podia executar 10 milhões de

instruções por segundo e tinha 128 kilobytes de memória principal. Em contraste,

Page 27: Trabalho 01 Resumo

27supercomputadores atuais contém milhares de processadores, podem endereçar

terabytes de memória e logo poderão executar um quatrilhão de instruções por

segundo.

5.6. QUINTA GERAÇÃO (1985- ATÉ HOJE)

Uma das característica dessa geração é a simplificação e miniaturização do

computador, além de melhor desempenho e maior capacidade de armazenamento,

aliados a preços cada vez mais acessíveis devido, entre outras coisas, à globalização

da economia. Assim, a tecnologia CIVLSI vem sendo substituída pela ULSI (Ultra Large

Scale Integration). Por outro lado, o conceito de processamento está derivando dos

processadores paralelos, com a execução de muitas operações simultâneas. Essa

tecnologia é para permitir a aplicação desses computadores em sistemas que

controlam aeronaves, embarcações, automóveis e sistemas de processamento crítico.

O exemplo mais marcante dessa geração de processadores é o Pentium, lançado pela

Intel em 1993.

Com mudanças sobretudo nos tipos de memória (DIMM, DDR), o

aparecimento das chamadas placas aceleradoras de vídeo AGP e o aprimoramento da

slot PCI melhorou ainda mais o desempenho das máquinas. O Pentium 4 da Intel e o

Athon XP da AMD (Advance Micro Devices) são, atualmente, os mais potentes do

mercado; entretanto, as políticas de aumento de desempenho desses processadores

esbarram na dificuldade de manter o chip numa temperatura adequada, pois à medida

que aumenta a velocidade de processamento, a temperatura interna cresce

assustadoramente.

Page 28: Trabalho 01 Resumo

286. QUESTÕES SOCIAIS E ÉTICAS

A ciência da computação surge como disciplina científica e acadêmica

apenas na segunda metade do século XX. Nos Estados Unidos da América e em

países europeus está ligado à necessidade de prover qualificação especializada em

processamento de dados para as pessoas que deveriam lidar com um novo artefato

tecnológico: os computadores. Desde a Revolução industrial, a computação é

provavelmente a mais significativa tecnologia atual, ela se encontra presente em nosso

cotidiano tornando-se a ferramenta fundamental do nosso século.

Nos tempos atuais os computadores estão cada vez mais presentes em

diversos setores da atividade humana desde a pesquisa científica de ponta, em

praticamente todas as áreas do conhecimento, até a mais corriqueira das ações

cotidianas. Tornando-nos assim dependentes dessa nova tecnologia. Assim sendo, a

modernidade nos trouxe muitos avanços e facilidades, mas como toda ferramenta o

computador pode ser usado construtivamente ou destrutivamente. As dependências

mais comuns são dependências de substâncias e não de comportamentos, assim é

mais fácil encontrar alguém viciado em cocaína do que viciado em trabalho ou

computador.

Alguns pesquisadores só consideram a dependência química e não a

psicológica, dificultando reconhecer que é possível sim se viciar em algo tão corriqueiro

como trabalho, jogos ou uso de computador. É importante percebermos o computador

como uma ferramenta e o problema não está com ele e sim com o uso abusivo que

podemos fazer dele.

Com essa “conectividade” temos por origem dois grupos, os que possuem

acesso a toda essa nova tecnologia e os que ainda estão privados dela, dando inicio a

divisão social ou também dita como exclusão digital. Esta situação surge como

consequência da exclusão econômica, na medida em que as pessoas com baixos

rendimentos têm maiores dificuldades em adquirir os equipamentos e os serviços de

acesso bem como pagar a educação e a formação, o que limita seriamente o seu

acesso aos benefícios da sociedade da informação.

Page 29: Trabalho 01 Resumo

29Assim é essencial que a sociedade compreenda a importância da inclusão

digital, pois a cada dia que se passa, cria-se uma defasagem cada vez maior entre os

que têm e os que não têm pleno acesso à sociedade da informação, entre os que se

beneficiam da tecnologia digital e os que não têm acesso aos seus benefícios, entre os

que participam plenamente da sociedade da informação e os que ficam de fora.

Verificamos assim que existe uma enorme discrepância, um fosso na

realidade, entre as economias desenvolvidas e as economias de transição, fosso esse

que se alarga ainda mais quando consideramos as economias em desenvolvimento e

as economias menos desenvolvidas.

Se não formos capazes de combater eficazmente a falta da inclusão digital,

contribuiremos, por essa via, não somente para incrementar a discriminação

económica, mas também social e política. Para isso é fundamental criar condições

objetivas de estímulo a adoção de intervenções que permitam uma utilização maior das

tecnologias de informação e comunicação, tanto ao nível dos equipamentos como da

formação das pessoas, de forma a que possamos tirar benefícios reais da utilização

dessas mesmas tecnologias.

“Uma em cada 4 pessoas que usam a internet no mundo tem uma conta no

Facebook”. Esse meio bilhão de pessoas publica 14 milhões de fotos

diariamente. Os 100 milhões de usuários do Twitter postam 2 bilhões de

mensagens por mês. Dê um Google no nome de alguém e os tweets dele vão

estar lá. Pesquisadores cunham termos bonitos como a "era da

hipertransparência" para tentar falar que há xeretas e exibicionistas demais

hoje. Um dos maiores problemas é que a internet não "esquece" nada. E agora,

que ela faz parte da vida de praticamente todo mundo há uma década, qualquer

coisa do passado pode causar um problema no presente. Fotos ousadas num

fotoblog de anos atrás vão complicar você na disputa por um emprego. Uma

troca infeliz de scraps no Orkut, como uma discussão com um ex, podem estar

ao alcance de qualquer um. As redes sociais baseadas em GPS, como a

Fousquare, colocam mais pimenta nesse molho, já que elas mostram num

mapa onde os usuários estão a cada momento. Em suma, nunca existiram

tantas possibilidades de exposição pública. E sim: sempre vai ter alguém que

você não esperava bisbilhotando você. ‘’ (Revista SUPER INTERESSNATE)

Page 30: Trabalho 01 Resumo

30Podemos assim dizer, que a partir da internet temos acesso ao mundo, mas

o mundo também tem acesso livre a nossa vida, com isso perdemos o nosso limite

entre o publico e o privado, pois apenas com “um Google” (pesquisa no Google) temos

o histórico da vida de qualquer um.

Esse acesso livre a informações tem-se inicio novos crimes, denominados

crimes virtuais como o cyberbullying, cavalos de troia, "banker", entre outros.

“A internet deixou de ser uma cidade tranquila, em que era possível passear

sem medo desde que você evitasse determinados becos e ruas desconhecidas.

Hoje os cibercriminosos conseguem inserir códigos maliciosos em páginas tão

insuspeitas quanto os sites da ONU ou do governo britânico. Dados da

americana White Hat Security, especialista em segurança digital, apontam que

mais de 79% dos sites contaminados com malware eram "páginas legítimas"

que haviam sido invadidas por hackers, ou seja, portais de universidades ou

blogs, por exemplo.” (Revista Galileu).

Com o fim da limitação a partir do acesso a internet, temos uma maior

facilidade de distribuição de mídias digitais, a violação do copyright esta cada vez mais

normal hoje em dia, visto que uma pessoa acha mais prático “baixar” uma musica do

que pagar por ela por exemplo. Por outro lado com o fim dessas barreiras temos um

amplo a acesso a informações as quais antes eram restritas a pequeno circulo (poucas

pessoas em locais exclusivos).

Page 31: Trabalho 01 Resumo

317. REFERÊNCIAS BIBLIOGRÁFICAS[1] FOROUZAN, Behrouz; MOSHARRAF, Firouz. Fundamentos da Ciência da

Computação, tradução da 2ª edição internacional.

[2] FONSECA FILHO, CLÉUZIO. História da computação : O Caminho do Pensamento

e da Tecnologia / Cléuzio Fonseca Filho. – Porto Alegre : EDIPUCRS, 200.

[3] COSTA, ABEL. Introdução ao processamento de dados.

[4]http://s3.amazonaws.com/ppt-download/ac2-modelodevonneumann-120316102215-

phpapp02.pdf?response-content-

disposition=attachment&Signature=LTQhTKobFXoY1SPw2foMU8nWwhY%3D&Expires

=1355861034&AWSAccessKeyId=AKIAIW74DRRRQSO4NIKA

[5] http://macnet.home.sapo.pt/apontamentosSC.pdf

[6] http://wwwp.coc.ufrj.br/~fernando/downloads/COMPUTACAO1.pdf

[7] http://equipe.nce.ufrj.br/gabriel/orgcomp2/OrgComp.pdf

[8] http://www.inf.ufsc.br/~barreto/cca/arquitet/arq2.htm

[9] http://infocp.wordpress.com/armazenamento/

[10] http://equipe.nce.ufrj.br/adriano/algoritmos/apostila/algoritmos.htm

[11] http://www.digitaldev.com.br/linguagens/

[12]http://dan-scientia.blogspot.com.br/2010/07/o-que-sao-dispositivos-de-

armazenamento.html

[13] http://www.coladaweb.com/informatica/sistema-operacional

[14] http://www.ebah.com.br/content/ABAAABgaoAB/engenharia-software-03

[15] ANTONIO POZZA, OSVALDO; PENEDO, SÉRGIO. A máquina de Turing.

Page 32: Trabalho 01 Resumo

32[16]http://www2.icmc.usp.br/~jporto/jpalbuquerque2007_aspectos_sociotecnicos_comp.

pdf

[17] http://super.abril.com.br/tecnologia/fim-fim-privacidade-580993.shtml

[18] http://www.fixedpoint.org/sarah/seweb.pdf

[19] http://www.tecmundo.com.br/gmail/2224-vicio-e-dependencia-de-computador-e-

internet.htm

[20]http://revistagalileu.globo.com/Revista/Common/0,,EMI110316-17778,00-

CRIMES+VIRTUAIS.html

[21] http://www.ebah.com.br/content/ABAAAAsEwAH/historia-computacao#

[22] Editora Cengage Learning, 2012. LEITE, MARIO. Técnicas de Programação -

Uma Abordagem Moderna/ Mário Leite.- Rio de Janeiro: Brasport, 2006.