Adriel: Prova AVI - SO FAZAG 2010.2

From AdonaiMedrado.Pro.Br
Revision as of 12:55, 24 August 2010 by Adriel fazag (Talk | contribs) (Questão 2)

Jump to: navigation, search

Questão 1

Um Sistema operacional é, de modo simplificado, um gerenciador de recursos. Por exemplo, ele é o responsável por gerenciar dispositivos E/S, gerenciar a memoria (tanto física como virtual), gerenciar os arquivos, além de outras funções vitais para o funcionamento do sistema.

Um exemplo de SO seria o Android da Google. Ele é baseado em Linux e permite aos desenvolvedores escreverem softwares na linguagem Java, controlando o dispositivo via bibliotecas desenvolvidas pela própria Google.

Mesmo sendo apenas suportado por certos dispositivos móveis ele possui todas as características de um SO mais também possui algumas limitações, por exemplo, apenas são suportados os seguintes formatos de áudio e vídeo: MPEG-4, H.264, MP3 e AAC. Mais em compensação é evoluído em certos pontos como: suporte a Touch Screen, GPS, acelerómetros, aceleradores gráficos 3D e Wi-Fi.

Questão 2

Mesmo sendo um sistema operacional para dispositivos móveis, o Android possui características muito interessantes quando falamos de gerenciamento de processos. Ele permite que vários aplicativos sejam executados ao mesmo tempo (multitarefa), cada um rodando seu próprio processo, também permite o compartilhamento de um mesmo processo entre diversos aplicativos e o uso de vários processos para um único aplicativo. O Android também permite que processos de determinados aplicativos continuem em execução, mesmo que não estejam sendo utilizados naquele momento, ele decide quando é melhor manter estes processos em execução caso haja a necessidade de utilizá-lo mais a frente (função bem parecida com as memórias cache).

Escolhas como esta, de manter ou não um processo em execução, são extremamente importantes quando falamos de dispositivos móveis que, na grande maioria das vezes possuem uma quantidade de memória limitada e quando usadas da forma errada podem ocasionar em diversos problemas. Para isso existe o LifeCycle, que consiste em regras que definem a importância de cada processo, determinando assim, aqueles processos que devem continuar em execução e aqueles que devem ser interrompidos. Para que essas medidas sejam tomadas o Android determina uma hierarquia, de 5 níveis, para cada processo. Sendo assim, os processos de menor importância são eliminados primeiros, em seguida os que estão um nível depois deles também são, e assim vai. Os 5 níveis de hierarquia são:

  • 1 - Processo de primeiro plano (Foreground): São determinados processos que estão sendo utilizados pelo usuário naquele determinado momento, sendo o tipo mais importante na hierarquia.
  • 2 - Processo visível: São processos que mesmo não estando em primeiro plano podem afetar o que o usuário vê na tela.
  • 3 - Processo de serviço: Estes processos não estão diretamente relacionados ao que o usuário vê, mas sim a coisas que ele já iniciou previamente (por exemplo, um MP3 Player rodando em background).
  • 4 - Processo de plano de fundo (Background): Estes processos geralmente podem ser finalizados a qualquer momento, sem que afete diretamente o usuário.
  • 5 - Processo vazio: Estes processos são os que não possuem nenhum componente ativo, eles apenas continuam sendo executados para que sua próxima inicialização ocorra de forma mais rápida. Estes são os processos que mais são finalizados, pois, consomem demasiada memória mesmo não sendo necessários naquele momento.

Atualmente na versão 2.2 o Android não oferece, nativamente, aplicativos que permitam ao usuário gerenciar os processos, isso é algo que provavelmente mudará a partir da versão 3.0.

Ele carece das seguintes funcionalidades:

  • O que pode ou não ser executado ao iniciar o sistema
  • Aplicativo que permita ao usuário administrar os processos

Referências

BRAY, Tim. Multitasking the Android Way. Disponível em: <http://android-developers.blogspot.com/2010/04/multitasking-android-way.html>. Acesso em: 22 ago. 2010.

BURNETTE, Ed. How Android works: The big picture. Disponível em: <http://www.zdnet.com/blog/burnette/how-android-works-the-big-picture/515>. Acesso em: 22 ago. 2010.

Comentários do Professor

  • 16/08/2010
    • É importante você colocar as referências no seu texto. Ou seja, de onde você retirou estas informações? Onde pesquisou? Veja exemplo de como fazer no quadro da página 47 (24 do PDF) de MENDONÇA, Gismália Marcelino. Manual de normalização para apresentação de trabalhos acadêmicos. Salvador: Unifacs, 2009. Disponível em <http://www.unifacs.br/upload/biblioteca/ManualdeNormalizacao.pdf>. Acesso em 16 de ago. de 2010.
    • Você não precisa usar br no wiki, basta colocar uma linha em branco para fazer a quebra de linha.
    • Em "[...] as características de um SO mais também [...]" há um erro de português.
  • 24/08/2010