baixe um dos nossos 14 EBOOKs gratuitamente

Сomentários

Transcrição

baixe um dos nossos 14 EBOOKs gratuitamente
EBOOK
Sistemas Operacionais
João Ferreira
ESCOLA TÉCNICA DO BRASIL – ETEBRAS
Diretora-Presidente
Maria Antonieta Alves Chiappetta
Diretor Administrativo Financeiro
Marco Antônio Rodrigues
Diretor de Educação a Distância
George Bento Catunda
Secretária Escolar
Maria Patrícia Farias Bastos
Professor Autor
João Ferreira da Silva Júnior
Imagem da Capa
https://www.atlantic.net/wpcontent/uploads/2013/11/SD-Atl-What-is-OperatingSystems-Management-PIC-11-20-13.jpg
Sumário
APRESENTAÇÃO ................................................................................................................................. 3
1. COMPREENDER CONHECER OS FUNDAMENTOS E RECURSOS DE UM SISTEMA OPERACIONAL
PARA PC ............................................................................................................................................. 4
1.1.
INTRODUÇÃO A COMPUTAÇÃO .......................................................................................... 4
1.2.
HARDWARE E SEUS DISPOSITIVOS...................................................................................... 5
1.3.
SOFTWARE .......................................................................................................................... 8
1.4.
QUAL SISTEMA OPERACIONAL ESCOLHER? ...................................................................... 12
2. CONHECER OS FUNDAMENTOS E RECURSOS DE UM SISTEMA OPERACIONAL PARA
DISPOSITIVOS MÓVEIS .................................................................................................................... 15
2.1.
INTRODUÇÃO A SISTEMAS EMBARCADOS ....................................................................... 15
2.2.
CLASSIFICAÇÕES DOS SISTEMAS EMBARCADOS............................................................... 15
2.3.
TIPOS DE SISTEMAS OPERACIONAIS MÓVEIS ................................................................... 18
2.4.
Virtualização ..................................................................................................................... 21
3. REFERÊNCIAS ............................................................................................................................... 25
APRESENTAÇÃO
Seja muito bem-vindo (a) à disciplina de Sistemas Operacionais, onde veremos uma breve
introdução sobre a ciência da computação, as diferenças entre software e hardware, a
organização dos sistemas e mais detalhadamente os Sistemas Operacionais, de forma clara,
objetiva, prática e interessante.
Esta disciplina está dividida em duas competências. Na primeira abordaremos os conceitos
e recursos de um sistema operacional para um computador pessoal (PC), mas se você está
pensando que essa disciplina será repleta de conteúdo do século passado (por conta dos
PCs), está muito enganado, porque a segunda competência está cheia de novidade, com os
conceitos e recursos de um sistema operacional para dispositivos móveis, o que está
“bombando”!
Estimado (a) aluno (a), perceba que essa disciplina lhe será muito útil, tanto para a vida,
quanto para o resto do curso. Em sua vida, como agente da área da tecnologia, terá que se
adaptar a vários tipos e versões de sistemas operacionais. Já no âmbito do curso, será o
momento de entender onde cada tipo de sistema está embutido dentro de seu
computador e como se dá seu gerenciamento, ou seja, quem manda em quem.
Conheceremos também uma nova forma de se estudar sistemas operacionais, que é
através da instalação e configuração de vários SOs em uma só máquina. Você pode ter
pensado: “-Tá professor, isso não é nenhuma novidade, em minha casa eu já uso o dual
boot e tenho o Linux e o Windows em uma só máquina”, mas não é isso que estou falando,
nós vamos utilizar o conceito de virtualização, e poderemos manipular em seu sistema
operacional Windows um sistema operacional Android, por exemplo.
Bom Curso
3
Manual do
Aluno
Sistemas
Operacionais
Competência 1
1. COMPREENDER CONHECER OS FUNDAMENTOS E RECURSOS DE UM
SISTEMA OPERACIONAL PARA PC
1.1. INTRODUÇÃO A COMPUTAÇÃO
Pessoal, com a evolução do homem, surgiu a necessidade de agilizar a forma de fazer
cálculos, seja através de soma, multiplicação, limites, integrais, etc. De forma “bem
grosseira”, os computadores modernos são máquinas capazes de resolver uma grande
quantidade de operações matemáticas em um curto período de tempo. Como nosso
espaço é curto, aqueles que quiserem saber mais sobre o a história da computação, podem
acessar o seguinte link. Agora, vamos dar um salto sobre a história e evolução da
computação e ver alguns conceitos básicos.
Conceitos Básicos
Os sistemas computacionais se subdividem em duas partes básicas: hardware e software
que se completam (dizem que é o único casamento perfeito, porque um não funciona sem
o outro).
Hardware
É a parte mecânica e física das máquinas, com seus componentes eletrônicos e peças.
Software
É a parte lógica dos sistemas computacionais. É um conjunto de procedimentos básicos que
fazem com que o computador seja útil executando alguma função.
Vamos fazer outra comparação, independente da sua religião, assuma que para existirmos
precisamos de um espírito e um corpo, assim, seu espírito seria o software e seu corpo o
hardware. Aí eu te pergunto qual a funcionalidade de um corpo sem espírito? Nenhuma!
4
Ebook ETEBRAS
Só o hardware não serve de nada! É pura matéria. E o espírito necessita de um corpo para
funcionar aqui na terra!
Vejamos agora como se dividem e são classificados os hardwares e softwares, começando
pelos hardwares.
1.2.
HARDWARE E SEUS DISPOSITIVOS
Em se tratando da parte física dos computadores, existe muito conteúdo disponível na
internet, e em vários livros, mas esse não é o foco desse curso, onde vocês vão aprender a
programar, de toda forma, vou passar a parte mais básica dos hardwares, por acreditar ser
de conhecimento obrigatório a qualquer programador, ok?
Os elementos que constituem o hardware de computador se subdividem em três
categorias, de acordo com sua função dentro da máquina. Cada peça que você possa
imaginar é classificada como de entrada, saída, armazenamento ou processamento. Então
nesse momento, imagine uma peça de seu computador e veja se acerta sua classificação
antes de ler o conteúdo seguinte, beleza?
Bom... Se você sentiu um pouco de dificuldade para fazer essa tarefa é porque lhe falta o
conceito de dado e informação. Dado é qualquer elemento ou valor que visto de forma
isolada, não consegue te trazer um significado. Informação é um conjunto estruturado de
dados, capaz de te trazer algum significado (informação pode ser compreendida como o
processamento dos dados). Veja a Figura 1.
Figura 1 – Dado, Processamento e Informação.
Fonte: Próprio Autor
5
Manual do
Aluno
Sistemas
Operacionais
Para entendermos os próximos conceitos, imagine que um aluno, chamado Kevin,
pressionou a tecla A no teclado de seu notebook e viu essa letra ser exibida em seu editor
de textos, ok?
Dispositivos de entrada
Bom, aqui não tem mistério, como o próprio nome nos informa, dispositivos de
entrada são aqueles pelos quais você consegue inserir dados no computador. Por exemplo:
mouse, digitalizador de imagens (scanner), câmera de vídeo, microfone, etc.
Se Kevin entrou com informações em seu computador, ele utilizou um dispositivo de
entrada, o teclado, que envia uma mensagem ao computador, dizendo: “Alguém
pressionou a tecla A!”
Dispositivos de processamento
Estes são os responsáveis por fazer o processamento dos dados enviados através dos
dispositivos de entrada, como o processador.
Como a letra A foi enviada pelo teclado ao processador, ele vai fazer seu
processamento, que na verdade é a conversão dos sinais elétricos, cálculos, conversões e
etc.
Armazenamento
Existem vários tipos, formas, funções, velocidades e modelos para os dispositivos de
armazenamento, mas todos possuem basicamente a mesma tarefa que é simplesmente
armazenar dados ou informação. Como exemplo temos os discos rígidos (hd), memória
RAM, memória ROM, memória Flash, pen drives, cds, dvds, etc.
6
Ebook ETEBRAS
A nossa cansada letra A, ainda segue seu percurso até que Kevin consiga visualizá-la,
como o processador não consegue armazenar nada, ele guarda esse dado na memória
RAM do notebook, achando que pode ser útil futuramente.
Dispositivos de saída
Finalmente, chegamos aos dispositivos de saída, responsáveis por exprimir os dados
através de algum meio. Como exemplos de dispositivos de saída podemos citar: monitor,
impressora, caixas de som, etc.
Ufa... Finalmente chegou o responsável por exibir a letra A, o monitor! Agora, Kevin
consegue ver o que digitou, pois a letra A foi pega na memória RAM e exibida no monitor.
Bem amigos, essa é uma forma muitíssimo resumida de lhes explicar o que acontece
pelo hardware quando uma simples tecla é pressionada, agora pare e pense na quantidade
de tarefas que são executadas em uma videoconferência, com chat, captura e exibição de
áudio e vídeo... É muita coisa!
MULTIMÍDIA: Que tal assistir uma animação do
a saga de um processador? Desafio você a
identificar quais são os componentes de entrada
e saída.
7
Manual do
Aluno
Sistemas
Operacionais
Figura 2 – Unidades de entrada, saída, processamento e armazenamento.
Fonte: Próprio Autor
A Figura 2 apresenta uma representação gráfica dos dispositivos de entrada, saída,
processamento e armazenamento.
Já descobriu quem é o responsável por gerenciar tudo isso e não permitir que vire uma
bagunça? Não é o processador, tá? Já-já chegaremos ao responsável. Veremos um pouco
mais de hardware na vídeo-aula, vamos agora aos softwares e como eles se organizam!
1.3.
SOFTWARE
De nada adiantaria termos os mais potentes hardwares sem os softwares para fazê-los
funcionar. O software é algo imaterial, você não consegue tocá-lo (assim como seu espírito,
lembra?), mas sem ele, o hardware é inútil. Veja na Figura 3 os três tipos de softwares:
Figura 3 – Tipos de Software (básico, utilitário e aplicativo).
Fonte: Próprio Autor
ATENÇÃO: Não há um consenso entre os
autores da área sobre essa divisão, uma
minoria considera outras categorias. Sintamse livres para pesquisar quais são.
8
Ebook ETEBRAS
Existem vários tipos de Sistemas Operacionais, alguns são responsáveis pela gerência de
muitos usuários, outros controlam dispositivos de hardware como o forno micro-ondas de
sua casa. Existem sistemas operacionais chamados Embarcados, que são construídos para
pequenos dispositivos como aparelhos celulares, SmartPhones e PDAs, veremos mais
detalhadamente este conteúdo na próxima competência.
Componentes do Sistema Operacional
O SO normalmente é armazenado no disco rígido, algumas partes ficam carregadas de
forma permanente na memória do computador e outras são carregadas na memória
temporária (RAM). Os SOs são implementados em módulos e cada módulo responsável por
uma determinada função, veremos alguns módulos típicos de um SO.
O Kernel
O sistema operacional (em nível bem abstrato) possui duas partes principais, o kernel
e o shell. Vamos a outro exemplo, para facilitar a compreensão, imagine uma célula, onde
a parte principal está no núcleo (o DNA) que é protegido por uma membrana. Qualquer
tentativa de acesso ao núcleo deve ser feito por intermédio da membrana. Nos SOs é
exatamente assim, qualquer acesso ao kernel, é feito pelo shell, veja a Figura 4.
9
Manual do
Aluno
Sistemas
Operacionais
Figura 4 – Componentes do Sistema Operacional
Fonte: Próprio Autor
O kernel é composto por códigos que se comunicam com o hardware, gerenciam a
memória e os dispositivos, mantém o clock do computador, inicializam aplicativos,
gerenciam o compartilhamento de recursos, etc.
Existe a opção de se manipular o núcleo do SO por intermédio de uma interface
gráfica, entretanto esta interface gráfica é quem se comunicar com o kernel. O SO
disponibiliza a cada usuário uma interface gráfica (uma tela) que aceita, interpreta, e então
executa comandos ou programas do usuário. Essa interface é comumente chamada de
shell ou interpretador de linha de comando. No caso do Windows o interpretador de
comandos ou shell, está disponível em: Iniciar >> Todos os Programar >> Acessórios >>
Prompt de Comando.
Veja o Prompt de Comandos na Figura 5, logo abaixo, exemplos do uso do Prompt serão
apresentados em nossa vídeo aula.
Figura 5 – Prompt de Comandos do Windows
Fonte: Próprio Autor
10
Ebook ETEBRAS
Gerenciamento de Processos
Dizem que as mulheres conseguem realizar muitas tarefas ao mesmo tempo, seria isso
verdade? Bom, não tenho como saber, mas temos como classificar esse tipo de atitude,
pois você já deve ter percebido que existem pessoas que recebem 3 tarefas e são capazes
de realizá-las “ao mesmo” (de forma paralela) ao passo em que outras só passam para a
segunda tarefa, quando concluem a primeira. Nos SOs isso também acontece, existem
aqueles que realizam apenas uma tarefa de cada vez (chamados monotarefa) e outros
capazes de realizar várias tarefas ao mesmo tempo (denominados multitarefa).
Nobre
aluno, você é enganado por alguns SOs multitarefas, pois eles te passam a impressão que
são capazes de realmente realizar várias tarefas ao mesmo tempo, mas na realidade não
são, o que acontece de fato é que cada processo (entenda processo como sinônimo de
tarefa) possui um pequeno intervalo de tempo e há uma alternância entre esses processos
tão rápida que você tem a ilusão que eles estão sendo executados ao mesmo tempo.
ATENÇÃO: Imagine a situação onde você
instala um aplicativo e assiste a um vídeo, será
que
esses
dois
processos
estão
sendo
executado ao mesmo tempo pelo processador?
Gerenciamento de Memória
As memórias são de inteira responsabilidade do SO, assim, o SO tem acesso irrestrito
às mesmas. Para a execução dos aplicativos, é necessário o uso das memórias, e o
responsável por gerenciar esse acesso é o SO. Como as memórias RAM não são suficientes
à quantidade de processos em execução, o SO usa outro artifício, chamado memória
virtual, que é o uso de uma faixa do disco rígido, como se fosse memória RAM.
Sobre o gerenciamento da memória, o SO é responsável por assegurar que cada
processo tenha seu próprio espaço de endereçamento [1], ou seja, prover proteção da
11
Manual do
Aluno
Sistemas
Operacionais
memória para impedir que um processo utilize um endereço de memória que não lhe
pertença, possibilitar que uma aplicação utilize mais memória do que a fisicamente
existente (a chamada memória virtual ou memória swap).
Gerenciamento do sistema de arquivos
Os arquivos são armazenados em memórias do tipo não volátil, como um HD ou
pendrive (aquelas que funcionam mesmo sem energia) e possuem um tamanho, tipo e
formato específico do SO. O sistema de arquivos é uma estrutura que permite o
gerenciamento e manipulação dos arquivos, como exclusão, leitura, criação, controle de
acesso, etc. São exemplos de sistemas de arquivos: FAT32, NTFS e EXT3.
1.4.
QUAL SISTEMA OPERACIONAL ESCOLHER?
É tanta oferta de SO que você fica na duvida sobre qual escolher, não é verdade? Além
disso, após a escolha, passam-se alguns anos e vem a necessidade de atualização para uma
nova versão, pois queremos sempre o sistema mais moderno. Não há como solucionar esse
problema, até os dias de hoje ainda é assim, continuamos tentando acompanhar a
evolução dos SO. Uma pergunta interessante que você pode estar se fazendo agora é: Sim
professor, mas qual sistema operacional eu devo escolher? Ora, caro aluno, aquele SO que
vá de encontro as suas necessidades! Você precisa de um SO para usar em seu computador
pessoal, ou precisa montar um servidor web? Tem dinheiro para comprar esse SO ou
prefere utilizar um gratuito? Vou te mostrar algumas opções e você fica responsável por
escolher, combinado?
PESQUISA: A título de curiosidade, faça uma
pesquisa na web sobre o preço atual da versão do
seu
Sistema
Operacional
e
seu
Pacote
de
Escritório. (Windows+Office ou Linux+libreOffice).
12
Ebook ETEBRAS
Linux
Linux é um termo utilizado para os SOs que utilizam o kernel Linux. Os SOs Linux possuem o
código fonte aberto, ou seja, você que está lendo esse material agora, pode personalizar o
kernel de seu Linux da forma que desejar.
Outra grande vantagem do Linux é o fato de ser gratuito, você não precisa gastar nada para
usar a maioria das distribuições Linux. Grandes empresas e instituições que necessitam
adquirir muitos SOs, estão preferindo utilizar o Linux, por ser economicamente viável.
O uso do Linux destaca-se principalmente em servidores de dados e web, certamente é a
preferência na escolha das empresas dessa área. O Linux possui diversas distribuições,
como Debian, Kurimin (brasileira), Ubuntu, etc, cada uma com sua especificidade.
PESQUISA: Há muito que se falar sobre o Linux e
certamente um parágrafo é insuficiente, então
recomendo pesquisas na web sobre esse SO, você
pode iniciar pela Wikipédia.
Windows
O que falar de um SO conhecido por todos? Bem, nunca conheci alguém da área de
informática que jamais tenha utilizado o Windows, já conheci alguns que não gostam e
preferem o Linux, mas com certeza conheciam o Windows.
Resta-nos
falar
que
o
Windows é o SO mais utilizado no mundo, e contraditoriamente pago. Possui versões para
usuários finais (assim como você) e para servidores (de arquivos, bancos de dados, etc).
São exemplos de suas versões, Windows 8, Windows 7, Windows 2012 Server, etc.
13
Manual do
Aluno
Sistemas
Operacionais
PESQUISA: Existe muito conteúdo na web sobre o
Windows,
sua
história,
criação,
versões,
configurações, etc. Recomendo uma pesquisa
sobre o SO e indico o início pela Wikipédia.
Estimados alunos, em nossa vídeo aula faremos a demonstração na prática de recursos dos
Sistemas Operacionais, pelo caderno seria muito espaço mal aproveitado, combinado?
Para finalizarmos essa competência com “chave de ouro”, aceite a próxima recomendação!
MULTIMÍDIA: Piratas do vale do Silício é um
filme que retrata a época da criação dos
sistemas operacionais da Microsoft e Apple.
Recomendo que assistam.
14
Ebook ETEBRAS
Competência 2
2. CONHECER OS FUNDAMENTOS E RECURSOS DE UM SISTEMA
OPERACIONAL PARA DISPOSITIVOS MÓVEIS
2.1.
INTRODUÇÃO A SISTEMAS EMBARCADOS
Não é segredo para ninguém que estamos vivendo anos de muita evolução tecnológica em
um curto período de tempo. Lembro que há 10 anos atrás poucos amigos possuíam
celulares, e nas casas que frequentava percebia uma pequena quantidade de aparelhos
com dispositivos eletrônicos embarcados, hoje em dia crianças com 5 anos ganham tablets
como presentes de aniversário ou natal e vejo muitos equipamentos embarcados não
apenas nas casas, mas sim espalhados por todos os lados.
Como você pode imaginar, milhares de programas são desenvolvidos para os
computadores pessoais, servidores e computadores de grande porte, mas o que você
talvez não saiba é que um número muito maior (na casa dos bilhões) é desenvolvido
anualmente para outros fins. Estes outros programas estão embutidos em equipamentos
eletrônicos maiores e executam repetidamente a mesma função, de forma que o usuário
do equipamento nem percebe que ali se encontra um sistema.
2.2.
CLASSIFICAÇÕES DOS SISTEMAS EMBARCADOS
É chegado o momento de entender como os softwares embarcados se classificam. De
Micheli classifica os sistemas digitais em três classes: emulação e sistemas de prototipação,
sistemas de computação de propósito geral e sistemas embarcados [2].
Sistemas de emulação e prototipação
São sistemas baseados em tecnologias de hardware reprogramáveis. Imagine poder
reconfigurar um determinado hardware, é um trabalho para poucos.
Sistemas de computação de propósito geral
Estes incluem computadores tradicionais abrangendo desde laptops até
supercomputadores. Tais sistemas são caracterizados pelo fato de que usuários finais
podem programar seu sistema. Diferentes aplicações são suportadas dependendo do tipo
do software utilizado pelo usuário.
15
Manual do
Aluno
Sistemas
Operacionais
Sistemas Embarcados
Um sistema embarcado ou embutido pode ser definido como: “um sistema
computacional especializado que faz parte de uma máquina ou sistema maior” [3]. De
acordo com Edna Barros, muitos equipamentos hoje em dia utilizam sistemas embarcados,
como exemplo [4]:
(a) produtos de consumo: telefones celulares, pagers, câmeras digitais, videocassete,
vídeo games portáteis, calculadores, etc;
(b) eletrodomésticos: forno de micro-ondas, secretárias eletrônicas,
equipamentos
de segurança, termostatos, máquinas de lavar e
sistemas de iluminação;
(c) automação de escritório: máquinas de fax, copiadoras, impressoras e
scanners;
(d) automóveis: controle de transmissão, injeção eletrônica, suspensão ativa,
ABS.
freio
Características dos Sistemas Embarcados
Pessoal, o firmware é o nome do software escrito para sistemas embarcados, que é
armazenado em uma memória ROM ou memória flash, ao invés de em um disco rígido. Por
vezes o sistema também é executado com recursos computacionais limitados: sem teclado,
sem tela e com pouca memória.
Edna Barros afirma que sistemas embarcados clássicos possuem algumas
características em comum, vejamos algumas logo abaixo [4]:
Funcionalidade única:
Usualmente um sistema embarcado executa somente um programa repetidamente. Por
exemplo, um pager é sempre um pager, enquanto que um computador pessoal pode
executar uma variedade de programas;
Restrições de projeto mais rígidas:
Todos os sistemas de computação possuem em geral alguma restrição de projeto a ser
satisfeita, como por exemplo, custo, tamanho, desempenho, potência dissipada, etc. Nos
16
Ebook ETEBRAS
sistemas embarcados, no entanto, estas restrições são normalmente mais rígidas, por
exemplo, o custo de um sistema não pode ser muito alto para não onerar o custo do
equipamento, o tempo de resposta deve permitir em várias aplicações processamento em
tempo real e devem dissipar pouca potência para permitir uma maior duração da bateria
ou não necessitar de um sistema de refrigeração;
Sistemas reativos de tempo real:
Muitos sistemas embarcados devem reagir a mudanças no ambiente e devem fornecer
resultados em tempo real. Por exemplo, um piloto automático continuamente monitora e
reage a velocidade e aos sensores de freio. Ele deve computar a aceleração e
desaceleração repetidamente num intervalo de tempo. Caso haja um retardo o controle do
carro pode ser perdido.
Sistemas como PDAs são geralmente considerados sistemas embarcados pela natureza
de seu hardware, apesar de serem muito mais flexíveis em termos de software [5].
Figura 6 – Assistente Digital Pessoal (PDA)
Fonte: http://chemicalsafety.gr/index.php/sample-page/ipad-and-pda/
Com a evolução natural dos hardwares dos PDAs, um gerenciamento mais robusto para
executar suas tarefas também surgiu. Tornou-se uma necessidade dos anos atuais a
capacidade de portabilidade dos equipamentos, quando se percebeu a quantidade de
tempo ganho com essa estratégia.
Caro aluno, se você fosse dono de uma empresa, preferiria oferecer a seu funcionário
um computador pessoal, para que ele trabalhe apenas em sua empresa ou um dispositivo
17
Manual do
Aluno
Sistemas
Operacionais
portátil, como notebook, pois assim ele poderia trabalhar na empresa, em casa, durante
viagens, nas férias, etc. Esse foi um dos pensamentos que impulsionou o mercado dos
dispositivos móveis, iniciados com os PDAs. Aqui no Brasil, a primeira vez que vi um PDA foi
na pesquisa do censo pelo IBGE, isso agilizou bastante a conclusão das tarefas do referido
instituto, além de aumentar o detalhamento das informações.
Hoje, como todos vocês percebem, a disseminação dos smartphones, tables, mobile
PCs é enorme, todos pequenos e poderosos computadores portáteis e indispensáveis aos
dias atuais, imagine sua vida sem eles, como seria?
No início dos aplicativos para dispositivos móveis, seus SOs realizavam apenas uma
função principal (fazer ligações entre seus usuários), hoje em dia através dos SOs é possível
uma comunicação colaborativa, comunicação via satélite, utilizar redes locais sem fio,
acesso a contas de e-mail, manipulação de imagens, acesso a redes sociais, etc.
Quase todas as operações feitas anteriormente apenas por SOs de PCs, podem ser
realizadas na palma de sua mão, em qualquer lugar e a qualquer hora.
2.3.
TIPOS DE SISTEMAS OPERACIONAIS MÓVEIS
As grandes empresas da área de tecnologia, como Nokia, Google, Apple, Microsoft,
Samsung, Intel e outras, viram nesse ramo de dispositivos móveis uma grande
oportunidade, então cada uma resolveu desenvolver seu próprio SO.
PESQUISA: Leia aqui um artigo científico que faz
análise e avaliação de sistemas operacionais
móveis [6]. Aproveitem a ótima oportunidade de
iniciação ao mundo acadêmico.
Assim como os SOs para PCs os dos dispositivos móveis são variados e para todos os
gostos, veremos alguns a partir de agora:
18
Ebook ETEBRAS
Symbian
Este SO móvel e sua plataforma de computação foram projetados para smartphones
como fruto de uma parceria entre Ericsson, Nokia, Motorola e PSION em 1998. Uma
década após o início dessa parceria a Nokia comprou todas as ações dos demais
colaboradores, entretanto alguns anos depois anunciou a descontinuação do Symbian.
MULTIMÍDIA: Você pode ler um pouco mais
sobre o Symbian na Wikipédia. Veja também
este vídeo sobre o lançamento do Symbian 3,
feito em 2010, Como o tempo voa...
Windows Phone
Você acha que a Microsoft ficaria de fora de uma fatia tão lucrativa do mercado
tecnológico? Claro que não! Seu SO para dispositivos móveis é muito bom, além de ter sido
projetado para executar boa parte do que é possível com os Pcs.
Essa versão do Windows Phone veio em substituição ao Windows Mobile, entretanto
nenhum aplicativo que executava no Mobile executa no Phone, assim, alguns usuários
acabaram por preferir seus concorrentes (Android e iOS), devido a limitação de aplicativos
disponíveis para a versão Phone em seu início. Hoje em dia isso não existe mais, mas
quando você se apega a determinado SO, como Android e iOS é difícil migrar, o normal é
querer continuar usando o mesmo.
MULTIMÍDIA: Você encontra mais informação
sobre o Windows Phone na Wikipédia ou na
página da Microsoft. Veja também este vídeo
com uma demonstração do Windows Phone 8.1.
iOS (iPhone OS)
Este SO foi desenvolvido pela Apple originalmente para o iPhone, também é usado
em iPod touch, iPad e Apple TV. Os sistemas operacionais da Apple só são executados em
19
Manual do
Aluno
Sistemas
Operacionais
seus próprios hardwares. Este foi o SO pioneiro no uso da tecnologia de toques múltiplos,
de inclinação e multimídia (Assim como muita coisa criada por Steve Jobs, por falar nisso,
você já assistiu ao filme indicado do final da primeira competência? Com o filme você verá
e entenderá muitas conexões entre HP, Microsoft, Apple, etc).
MULTIMÍDIA: Leia na própria página da Apple
sobre o iOS. Veja também este vídeo com uma
rápida demonstração do uso do Windows Phone
8.1.
Android
Este SO é desenvolvido por um grupo de 34 empresas, lideradas pelo Google e possui o
código fonte aberto para você, que será programador, caso se interesse por esta área de
dispositivos móveis (em alta nos últimos anos, recomendo).
PESQUISA: Pesquise na web o preço de venda do
whatsapp, quem comprou e o motivo. Espero que
este exemplo te motive a desenvolver para
dispositivos móveis.
O Android é baseado no núcleo do Linux e possui uma agradável capacidade de
modificação e adaptação, além de um baixo custo, o que o torna uma excelente escolha
para aparelhos mais caros.
MULTIMÍDIA: Veja mais informações como sua
última versão (kit-kat 4.4), aplicativos, blog,
recursos para desenvolvedores e muito mais na
própria página do Android.
20
Ebook ETEBRAS
O Android é o SO para aparelhos móveis mais customizado do mundo e veremos um pouco
de prática com o Android em nossa vídeo aula, antes, é importante que vocês conheçam o
conceito de virtualização, então vamos lá!
2.4.
Virtualização
Acredito que se esta for a primeira vez que você está ouvindo este termo na área de
informática, não sabe que já usou muitos recursos virtualizados. Quando falo em
virtualização, penso que de imediato você esteja traçando algum paralelo em sua mente
sobre o real e o virtual. Se você pensou assim, está absolutamente certo!
Quando pensamos em algo real, nos vêm à mente algo tocável, físico, concreto, estou
certo? Já quando se imagina algo virtual, é exatamente o oposto, algo que não é tocável,
logo não é físico nem concreto, ou seja, é algo abstrato ou simulado.
Com a conexão desses conceitos que você já sabia antes de ler esse material, pois são
naturais ao ser humano, você pode concluir que a criação de algum ambiente virtual é a
simulação de algum outro ambiente real. Caro aluno, você está mais uma vez
absolutamente certo!
Podemos chamar o SO instalado no hardware físico de sistema hospedeiro, pois é
aquele que hospedará os SOs nas máquinas virtuais, que podemos chamar de hóspedes.
Quando esses dois existem na mesma máquina (hospedeiro e hóspede), podemos dizer
que ocorre uma virtualização [7].
Perceba que se você usa um determinado SO hospedeiro e pretende criar uma
máquina virtual para o hóspede, é necessário uma ISO (ou cd/dvd de instalação) do
hóspede, ok? Veja na Figura 7, uma descrição da organização de um SO hospedeiro com 4
hóspedes.
21
Manual do
Aluno
Sistemas
Operacionais
Figura 7 – Arquitetura da Virtualização
Fonte: Adaptada pelo autor de http://www.vmware.com/
Tipos de Virtualização
Virtualização de Hardware: esta consiste em rodar vários sistemas operacionais na
mesma máquina. Isso é possível com o uso de programas específicos, que geram máquinas
virtuais que emulam os componentes físicos de um PC, possibilitando que um sistema
operacional diferente seja instalado em cada uma delas [8].
Virtualização de Apresentação: trata-se do acesso a um ambiente computacional sem
a necessidade de estar em contato físico com ele. Isso propicia, entre outras coisas, a
utilização de um sistema operacional completo (bem como de seus aplicativos) de qualquer
local do planeta, como se estivessem instalados no seu PC [8].
Virtualização de Aplicativos: Esta virtualização existe para resolver o problema de
conflitos entre aplicativos distintos, por exemplo, quando dois aplicativos necessitam de
DLLs diferentes para executar. Esta técnica de virtualização consiste em ter uma única
cópia de determinado aplicativo instalada em um servidor virtual, assim, usuários que
desejarem ter acesso a tal aplicativo podem fazê-lo diretamente, sem a necessidade que
ele também esteja instalado na máquina física [8].
22
Ebook ETEBRAS
Ferramentas de Virtualização
Como era de se esperar, não existe apenas uma solução para este tipo de estratégia, no
mercado de hoje as mais famosas são o Xen, Microsoft, VirtualBox e VMware. Em nossa
vídeo aula trabalharemos com uma dessas ferramentas de virtualização. Vejamos alguns
detalhes do VirtualBox e Vmware.
VirtualBox
Este software de virtualização é atualmente mantido pela Oracle, e visa criar
ambientes virtuais para instalação de diferentes sistemas. Com o VirtualBox é possível
instalar um Linux “dentro” do Windows, e vice-versa, utilizando o mesmo hardware. É um
de meus virtualizadores favoritos, entretanto em sua última versão tive problemas de
compatibilidade de rede com a máquina hospedeira.
PESQUISA: Você pode fazer o download do
VirtualBox em sua página oficial. Caso tenha
dificuldade na instalação, procure por vídeos no
youtube.
VMware
O VMware carrega o nome de sua empresa, que é especializada em virtualização.
Possui várias versões de ferramentas para virtualização, cada uma, direcionada a
determinado público-alvo e um fim específico, como desenvolvedores, empresas,
computação em nuvem, etc.
A versão que recomendo para nosso curso é a Player, gratuita e de uso bem intuitivo.
Na Figura 8, exibo esta versão do VMware, seguido de duas máquinas virtuais instaladas
nele, o Android 4.1 e 4.3.
23
Manual do
Aluno
Sistemas
Operacionais
Figura 8 – Vmware com dois SOs móveis virtualizados
Fonte: Próprio Autor
Faça o download da ISO do Andoid 4.3 e instale no VMware Player em sua máquina
pessoal, caso encontre alguma dificuldade, aguarde pela vídeo aula desta competência,
onde pretendo lhes apresentar esta instalação.
Pessoal, chegamos ao fim desta disciplina, espero que tenham compreendido um
pouco mais sobre os sistemas operacionais e percebido que a utilização de máquinas
virtuais é uma “mão na roda” para programadores, pois vocês podem usar vários SOs
diferentes para testar suas aplicações, independentemente se desenvolvem para web,
computadores de mesa ou dispositivos móveis.
24
Ebook ETEBRAS
3. REFERÊNCIAS
[ 1 ] - Tanembaum, Andrew S.; Sistemas Operacionais Modernos, Prentice Hall Brasil, 2ª
Edição, 2003. ISBN 8587918575.
[ 2 ] - DeMicheli, G. "Hardware/software co-design: application domains and design
technologies". In: G. DeMicheli, and M. Sami (eds.), Hardware/software co-design.
Dordrecht: Kluwer Academic Publishers, 1996, pp. 1-28.
[ 3 ] – Webopedia: Online Tech Dictionary for IT Professionals, acessado em 26 mai. 2014,
disponível em www.webopedia.com.
[ 4 ] – Barros, E., Cavalcante, S., Introdução aos Sistemas Embarcados, Grupo de Engenharia
da Computação (GRECO), Centro de Informática, UFPE, acessado em 25 de mai. 2014,
disponível
em:
http://www.cin.ufpe.br/~vba/
periodos/8th/s.e/aulas/STP%20%20Intro%20Sist%20Embarcados.pdf.
[ 5 ] - Wikipédia: a enciclopédia livre, acessado de 13 fev. 2014 a 25 mai. 2014, disponível
em: http://pt.wikipedia.org.
[ 6 ] - Pires, Jefferson F., Ledel, Leandro C.. Padrões de Projeto em Plataforma Móveis
Costa, Norben P. O., Duarte, Nemésio F., Filho, Análise e Avaliação Funcional de Sistemas
Operacionais Móveis: Vantagens e Desvantagens. Salvador: 2013
[ 7 ] – Amaral, F. E., O que é virtualização, Tecmundo, hardware, acessado em 15 de mai.
2014, disponível em: http://www.tecmundo.com.br/web/1624-o-que-e-virtualizacao-.htm
[ 8 ] – Alecrim, E., O que é virtualização e para que serve?, INFOwester, software, acessado
em 06 de mai. 2014, disponível em: http://www.infowester.com/virtualizacao.php
25
Manual do
Aluno
Sistemas
Operacionais