Buscar

jonathan_motta_lista2_exercicios

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Nome: Jonathan motta cardoso 
Exercícios - Lista 2 - Fundamentos da Ciência da computação. 
Questões: 
1) Qual o número exato de 256 GB em TB. Apresente o cálculo. 
256/1024 = 0,25 TB 
2) Possuo um link de Internet de 150 Mbps. Qual a velocidade máxima 
teórica em MB? Apresente os cálculos: 
1 byte = 8 bits 
 150 * 1024 / 8 = 19,200Kb/s ou 19,2 MB 
3) Melissa é uma estudante de Ciência da Computação que é fascinada 
por jogos de computador, por ter passado em todas as disciplinas do 1º e 
2º período da faculdade, ganhou de presente do seu pai um fantástico 
Notebook com a configuração dada na segunda coluna. Enumere a 
segunda coluna de acordo com a primeira. 
 1) CPU 
 2) SO 
3) RAM 
4) Unidade de armazenamento 
5) Placa de vídeo 
(1) Intel Core i7-9750H 
(2) Windows 10 Home Single Language 
(5) NVIDIA® GEFORCE® GTX 1660 Ti com 6GB de GDDR6 
(3) 16GB 
(4) SSD NVMe PCIe M.2 de 256 GB 
(4) HDD SATA 2,5" de 1TB (5400 RPM) 
4) O Ubuntu Linux pertence a que tipo de software? Conceitue este tipo 
de software e faça ou encontre um diagrama para explicar sua atuação. 
Ubuntu é um sistema operacional de código aberto, construído a partir 
do núcleo Linux, baseado no Debian e utiliza GNOME como ambiente de desktop. É 
desenvolvido pela Canonical Ltda. 
Geralmente é executado em computadores pessoais e também é popular 
em servidores de rede, geralmente executando a versão Ubuntu Server, com recursos 
de classe empresarial. Até 2017, o Ubuntu também estava disponível 
para tablets e smartphones, com a edição Ubuntu Touch. 
Ubuntu oferece um sistema que qualquer pessoa possa utilizar sem 
dificuldades, independentemente de nacionalidade, nível de conhecimento ou 
limitações físicas. 
5) Dado um arquivo de 2,5 TB, preciso transmiti-lo através de um link de 
Internet “perfeito” de velocidade de 150 Mbps para upload e download. 
Quanto tempo será necessário para enviar este arquivo? Apresente o 
cálculo. 
1 byte = 8 bits 
 150 * 1024 / 8 = 19,200Kb/s ou 19,2 MB 
 2500000 MB / 19,2 MB = 1302208,3333... segundos ou 15 dias. 
6) Pesquise sobre o compilador GCC (gnu c compiler). Explique 
brevemente o conceito de software livre e sua história, a história do GCC, 
quem o criou e quais as suas motivações, suas características de 
compilação e também comente explique sobre sua versão para Windows 
e MacOS. 
 Fundada em 1985 por Richard Stallman, considerado o pai do Software Livre, a 
Free Software Fundation (FSF) é uma organização que leva adiante os princípios de 
Stallman, que sempre foi contra softwares proprietários – aqueles programas que não 
permitem aos usuários alterar seu código-fonte para modificação. Também é de 
autoria dele o projeto GNU, que junto do Kernel desenvolvido por Linus Torvalds 
formaria mais tarde o sistema operacional Linux. 
Software livre é o software que concede liberdade ao usuário para executar, 
acessar e modificar o código fonte, e redistribuir cópias com ou sem modificações. Sua 
definição é estabelecida pela Free Software Foundation em conjunto com o software 
livre é qualquer programa de computador que pode ser usado, copiado, estudado, 
modificado e redistribuído sem nenhuma restrição. É permitido vender software livre, 
entretanto as mesmas liberdades são válidas para o comprador. O termo Código 
aberto (Open Source do Inglês), assim como definido pela Open Source Initiative, não 
abrange as mesmas liberdades que o software livre, que não se refere apenas ao 
acesso ao código fonte. Assim, todo software livre é código aberto, mas nem todo 
código aberto é software livre. 
Definições: 
1. A liberdade de executar o programa, para qualquer propósito; 
2. A liberdade de estudar o programa, e adaptá-lo para as suas necessidades. 
3. A liberdade de redistribuir cópias do programa de modo que você possa ajudar 
ao seu próximo; 
4. A liberdade de modificar (aperfeiçoar) o programa e distribuir estas 
modificações, de modo que toda a comunidade se beneficie. 
O GNU Compiler Collection (chamado usualmente por GCC) é um conjunto 
de compiladores de linguagens de programação produzido pelo projecto GNU para 
construir um sistema operativo semelhante ao Unix livre. Faz parte do sistema 
operativo GNU e FSF, sendo uma das ferramentas essenciais para manter o software 
livre, pois permite compilar o código-fonte em binários executáveis para as várias 
plataformas informáticas mais comuns. É distribuído pela Free Software 
Foundation (FSF) sob os termos da GNU GPL, disponível para sistemas 
operativos UNIX e Linux e certos sistemas operativos derivados tais como o Mac OS 
X. 
O compilador GCC foi escrito por Richard Stallman em 1987 para servir de 
compilador para o Projecto GNU. Em 1997, um grupo de desenvolvedores 
descontentes com o ritmo lento e a natureza fechada do desenvolvimento oficial do 
compilador GCC, formou-se o projecto EGCS, que juntou 
várias bifurcações experimentais num único projecto bifurcado do GCC. O 
desenvolvimento do EGCS, ao provar-se suficientemente mais vital que o GCC, foi 
finalmente "abençoado" como a versão oficial do GCC em abril de 1999. O projecto 
GCC é agora mantido por um grupo variado de programadores de todo o mundo e até 
à data tem sido adaptado a mais tipos de processadores e sistemas operativos que 
qualquer outro compilador. 
O GCC tem sido adaptado como compilador principal para construir e 
desenvolver para um número de sistemas, incluindo GNU/Linux, os BSDs, Mac OS 
X, NeXTSTEP, BeOS e Haiku. 
O GCC é frequentemente eleito o compilador preferido para 
desenvolver software que necessita de ser executado em vários tipos de hardware. 
Diferenças entre compiladores nativos levam a dificuldades em escrever código que 
seja compilado corretamente em todos os compiladores e construir guiões que corram 
em todas as plataformas. Ao usar os compiladores do projecto GCC, o 
mesmo analisador gramatical é usado em todas as plataformas, fazendo com que o se 
o código compila numa, muito provavelmente compilará em todas. O código poderá 
ser executado um pouco mais lento, mas o potencial de redução de custos de 
produção tende a fazer com que seja a melhor opção disponível. 
 
 
7)Pesquise sobre o funcionamento das linguagens interpretadas e suas 
características principalmente as utilizadas na Web como JavaScript, 
Python e PHP. 
JavaScript: Como uma linguagem multi-paradigma, o JavaScript suporta 
estilos de programação orientados a eventos, funcionais e imperativos (incluindo 
orientado a objetos e prototype-based), apresentando recursos como fechamentos 
(closures) e funções de alta ordem comumente indisponíveis em linguagens populares 
como Java e C++. Possuí APIs para trabalhar com texto, matrizes, datas, expressões 
regulares e o DOM, mas a linguagem em si não inclui nenhuma E/S, como instalações 
de rede, armazenamento ou gráficos, contando com isso no ambiente host em que 
está embutido. 
Foi originalmente implementada como parte dos navegadores web para que 
scripts pudessem ser executados do lado do cliente e interagissem com o usuário sem 
a necessidade deste script passar pelo servidor, controlando o navegador, realizando 
comunicação assíncrona e alterando o conteúdo do documento exibido, porém os 
mecanismos JavaScript agora estão incorporados em muitos outros tipos de software 
host, incluindo servidores em servidores e bancos de dados da Web e em programas 
que não são da Web, como processadores de texto e PDF, e em tempo de execução 
ambientes que disponibilizam JavaScript para escrever aplicativos móveis e de 
desktop, incluindo widgets de área de trabalho. 
Python: Python é uma linguagem de propósito geral de alto nível, multi-
paradigma, suporta o paradigma orientado a objetos, imperativo, funcional e 
procedural. Possui tipagem dinâmica e uma de suas principais características é 
permitir a fácil leitura do código e exigir poucas linhas de código se comparado ao 
mesmo programa em outras linguagens. Devido àssuas características, ela é 
principalmente utilizada para processamento de textos, dados científicos e criação 
de CGIs para páginas dinâmicas para a web. 
PHP: PHP é uma linguagem interpretada livre, usada originalmente apenas 
para o desenvolvimento de aplicações presentes e atuantes no lado do servidor, 
capazes de gerar conteúdo dinâmico na World Wide Web. Figura entre as primeiras 
linguagens passíveis de inserção em documentos HTML, dispensando em muitos 
casos o uso de arquivos externos para eventuais processamentos de dados. 
O código é interpretado no lado do servidor pelo módulo PHP, que também gera a 
página web a ser visualizada no lado do cliente. A linguagem evoluiu, passou a 
oferecer funcionalidades em linha de comando, e além disso, ganhou características 
adicionais, que possibilitaram usos adicionais do PHP, não relacionados a web sites. É 
possível instalar o PHP na maioria dos sistemas operacionais, gratuitamente. 
Concorrente direto da tecnologia ASP pertencente à Microsoft, o PHP é utilizado em 
aplicações como o MediaWiki, Facebook, Drupal, Joomla, WordPress, Magento e 
o Oscommerce. 
8) A linguagem Java é Compilada ou Interpretada? Explique seu processo 
de Compilação/Interpretação. 
 Java é uma linguagem compilada e interpretada. 
 O compilador do Java é chamado de javac, o mesmo compila o código-fonte do 
Java para um código de nível intermediário chamado códigos de bytes. Esses códigos 
de bytes não são diretamente executáveis em qualquer plataforma de hardware 
existente; mas esses códigos são interpretados pelo interpretador Java, o qual pode 
operar por si mesmo ou como parte de um navegador. 
9)Conceitue Algoritmo. 
Um algoritmo é uma sequência finita e não ambígua de instruções computáveis 
para solucionar um problema. 
Em computação, podemos definir um algoritmo como sendo uma forma 
genérica de se representar procedimentos computacionais que. Quando executados, 
levam à solução de uma classe de problemas de natureza semelhante. 
10)Explique a Arquitetura de von Neumann, encontre um diagrama para 
enriquecer sua explicação e também um algoritmo. 
 A Arquitetura de von Neumann é uma arquitetura de computador que se 
caracteriza pela possibilidade de uma máquina digital armazenar seus programas no 
mesmo espaço de memória que os dados, podendo assim manipular tais programas. 
Esta arquitetura é um projeto modelo de um computador digital de programa 
armazenado que utiliza uma unidade de processamento (CPU) e uma de 
armazenamento ("memória") para comportar, respectivamente, instruções e dados. 
 A máquina proposta por Von Neumann reúne os seguintes componentes: 
1. Memória 
2. Unidade aritmética e lógica (ALU) 
3. Unidade central de processamento (CPU), composta por 
diversos registradores, e 
4. Unidade de Controle (CU), cuja função é a mesma da tabela de controle 
da Máquina de Turing universal: buscar um programa na memória, instrução 
por instrução, e executá-lo sobre os dados de entrada. 
 
Todos os elementos dessa arquitetura são alinhados da estrutura hardware do 
CPU, assim o sistema pode realizar todas as suas atividades sem apresentar erros no 
desempenho. Von Neumann é continuamente influenciado pela evolução tecnológica, 
tendo peças mais modernas inseridas. Cada um dos elementos apresentados é 
realizado à custa de componentes físicos independentes, cuja implementação tem 
variado ao longo do tempo, consoante a evolução das tecnologias de fabricação, 
desde os relés eletromagnéticos, os tubos de vácuo (ou válvulas), até aos 
semicondutores, abrangendo os transistores e os circuitos eletrônicos integrados, com 
média, alta ou muito alta densidade de integração, medida em termos de milhões 
transistores por pastilha de silício. 
 
11)Explique o que seria o “Gargalo de von Neumann”. Exemplifique. 
 O gargalo de von Neumann é uma limitação da taxa de transferência causada 
pela arquitetura padrão do computador pessoal. O termo é nomeado por John von 
Neumann, que desenvolveu a teoria por trás da arquitetura dos computadores 
modernos. 
12) Pesquise sobre a “Visão em camadas de um Computador”. Faça ou 
encontre um diagrama explicando.

Continue navegando