You are on page 1of 26

Participantes:
Jéssica Sousa;
Juliane Lima;
Visleine Silva;
Wesley Xavier.

.

Gerencia de Processo Processo de Boot . para se iniciar algum processo.O kernel do Linux executa o processo “init”. o zygote aguarda novas solicitações. Após o processo de carregamento inicial. Assim como no Linux. que inicia as configurações básicas do sistema operacional Android e inicia outros processos e serviços. ocioso. ficando por enquanto. O processo zygote carrega as classes Java do núcleo. Essas classes Java podem ser reutilizadas por outros aplicativos do Android e. . e executa os passos iniciais de processamento. acelera o processo de inicialização global. é executada a chamada Fork(). portanto. que é responsável por inicializar a MV Dalvik e todos os processos e serviços Java. nesta etapa. incluindo o zygote.

.device. • Installd: Servidor de instalação de pacotes/aplicações” *. • Media: Inicia os servidores multimídia (áudio. • ServiceManager: Inicia o binder (responsável pela comunicação entre os processos). o “init” entra em um loop infinito monitorando a ocorrência de eventos e a execução de processos.device. vídeo. ou seja.mp3”.rc é específico do dispositivo.apk. cada aplicação tem o seu ID de usuário diferente.rc (init. É no “init. e cada aplicação roda com um user ID diferente. dentre eles: • Console: Inicia o shell bash . lendo um arquivo em “/system/media/audio/ui/boot. Depois de interpretar este arquivo. Ao executar uma aplicação.rc” que esta configurada boa parte do restante da inicialização do sistema. •Bootsound: Executa um arquivo de áudio no boot.rc e init. • Adbd: Android debugger bridge daemon — servidor para comunicação com o cliente adb.O processo de inicialização acessa o arquivos init. • Vold: Volume daemon — controla a montagem de volumes de mídia no sistema de arquivos. etc). o processo “zygote” cria uma instância da MV Dalvik para executá-la. incluindo a execução dos serviços básicos do Android.

que instancia uma MV Dalvik para executar um processo ou serviço Java. Todos os aplicativos desenvolvidos em Java é criado por este processo. Iniciar o System Server.O Zygote O “zygote” é o pai dos processos Java. O “zygote” tem basicamente dois objetivos principais: Prover uma infraestrutura para a execução de aplicações Java. que gerencia a base dos serviços do sistema operacional Android . 2.

contendo entre várias informações. .Assim como em Sistemas Unix. os processos possuem PCB (Bloco de Controle de Processos). o estado do processo.

. A prioridade de uma aplicação é igual a de seu componente de maior prioridade.No Android todos os processos são mantidos na memória até que haja a necessidade de recursos para outros processos. A ordem na qual os processos são finalizados para liberação de recursos está associada ao nível de prioridade da aplicação do mesmo.

o tempo do processador é dividido em fatias de tempo. o sistema operacional Android divide os seus processos em três grandes classe: processos interativos. ou seja.Política de Escalonamento de Processos Assim como no Linux. O escalonador do Android não distingue processos interativos de processos batch. as quais são alocadas aos processos. . diferenciando-os apenas dos processos em tempo real. processos em Lote e processos em tempo real. fatias essas denominadas de quantum. Android é baseado em time-sharing.

e que é responsável pela identificação do método a ser invocado e da passagem dos argumentos entre os processos. .Inter-process communication) e chamada remota de métodos. que permite que um processo possa chamar uma rotina em outro processo.IPC (Inter-process communication) O kernel utilizado pelo Android também introduz o Binder. um novo mecanismo para a comunicação entre processos (IPC .

diferente de um computador pessoal que é o principal alvo do sistema Linux. O módulo de wakelock permite que as aplicações desabilitem o mecanismo de baixo consumo. visto que a energia em dispositivos móveis é um recurso escasso. entrará em modo de baixo consumo para garantir economia de bateria. Se um dispositivo Android ficar um tempo sem ser usado. .Módulo Wakelocks O módulo Wakelocks foi mais uma alteração referente ao Kernel do Linux.

6. O algoritmo utilizado para esta substituição de páginas é o Least Recentment Used (LRU). Memória virtual por paginação e segmentação. alocados em páginas e mapeados em uma tabela de páginas. Diferenças do Linux: -Ashmen – mecanismo de compartilhamento de memória.Gerência de memória Baseado no kernel linux. Kernel Data/Stack. . kernel e usuário. User Data/Stack.Memory Handler -para terminar processos quando falta memória. User Code. -Pmem -gerenciamento de grandes regiões contíguas de memória física compartilhadas entre o usuário e o kernel. Paginação – divido em tamanhos fixos. Dentro do kernel: Kernel Code. Segmentação – divide a memória em 2 espaços distintos. Out-of. dois ou mais processos podem comunicar-se através de uma região compartilhada. Memória de baixo nível pelo kernel 2.

Gerenciamento de entrada e saída-E/S O Gerenciamento de entrada e saída no Android é implementado através dos devices drivers. o Kernel do Android inseriu o Timed GPIO. Está implementado em ‘drives/misc/timed_gpio. É o que possibilita acionar saídas de Input/Onput(I/O)Entrada e saída de forma temporizada. Todas as operações de entrada e saída são efetuadas como uma sequencia de bytes. Em relação á entrada e saída de dados.c”. um device para cada dispositivo. não existindo o conceito de registro ou métodos de acesso. .

O sistema Android trabalha com duas formas de entrada e saída: • Uma orientada a blocos relacionados a dispositivos com alta transferência (cartões de memória ). . controlados pelo sistema operacional. o drive deve ser acoplado ao núcleo. Sempre que um novo dispositivo é acrescentado no sistema. • E outra orientada a caracteres que são relacionados a dispositivos mais lentos.É implementado através do device drivers.quando uma operação de leitura é realizada um bloco é transferido para a memória e posteriormente processado.

TIMED output GPIO é um sistema que permite a mudança de um pino GPIO e restaura automaticamente após um tempo limite especificado. .TIMED GPIO(General Purpose Input/Output) GPIO é um mecanismo que permiti que os programas acessem e manipulem registros GPIO do espaço do usuário.

.

Suporte para 1 Exabyte para partições e 16 Terabytes para arquivos. na checagem. Modificação da data de arquivos. Pré-alocação. Suporte a recuperação de arquivos Undelete. Melhor desempenho. Suporte a journaling com checksum. pois. Allocate-on-flush. Modificação da data de inodes. . Desfragmentação. partes não utilizadas do HD são puladas.SISTEMAS DE ARQUIVO Ext4: Suporte para acesso separado.

.SISTEMAS DE ARQUIVO Desvantagens: Com a alocação tardia. Devido ao Journal ter sido implementando apenas a partir do EXT3. há a possibilidade de perda de dados caso o sistema pare antes que possam ter sido alocados. ele é muito suscetível a falhas e deixa o sistema um pouco lento.

13000 linhas de código. Gerenciamento da memória flash. . Seleciona algoritmos de alocação e limpeza.SISTEMAS DE ARQUIVO F2FS(Flash-Friendly File System): Criado pela Samsung para resolver o “problema” de smartphones usarem memória em flash. Configura layout em disco.

Disk Info.EXT4 X F2FS Androguide. Seguindo uma metodologia rígida :Wipe Data e instalação da CyanogenMod. apps de Benchmark).Reboot do dispositivo pouco antes de cada benchmark e ativação do modo avião. que só mostra vantagem na leitura sequêncial quando trabalha 20% mais rápido.Instalação dos Google Apps atualizados para a última versão. F2FS é até 5X mais rápido do que o EXT4.Instalação de aplicativos adicionais (Pimp my Z1.fr um dos usuário mais ativos do XDA Developers realizou testes em um Sony Xperia Z1 comparando os dois sistemas. .

F2FS EXT4 .EXT4 X F2FS Cache: F2FS é mais pesado.

EXT4 X F2FS Leitor de banco de dados: F2FS é mais rápido . F2FS EXT4 .

mas mais rápido nos outros quesitos . F2FS EXT4 .EXT4 X F2FS Performance geral: F2FS é mais lento em leitura sequencial.

SEGURANÇA DE ARQUIVO Igual ao Linux. O Superuser pode modificar todas as entidades. Cada entidade está em um grupo que possui um “dono”. Só poderá modificar quem tem permissão para tal no grupo. . possui permissão especial. Modelo de permissões com base no utilizador.

br/artigo/Sistemas-de-arquivos-para-GNU-Linux?pagina=4 http://acer-br.free-electrons.linuxnewmedia.htm http://lxr.net/56850/google-android-versoes-nomes-sabores/ .free-electrons.com.vivaolinux.androidpit.br/android/25841-entendendo-a-estrutura-de-pastas-dolinux-e-android.Referências Bibliográficas Texto: http://canaltech.br/artigo/Esquemas-de-particionamento-e-sistemas-dearquivos?pagina=3 http://www.com.c http://www.com/app/answers/detail/a_id/13508/~/quais-os-formatos-desistema-de-arquivo-que-o-sistema-operativo-android-suporta%3F http://www.net/developer/products/multiconnect-ocg/multiconnect-ocgd/gpio-connector-and-cable-information/ https://tecnoblog.com.tecmundo.com.custhelp.vivaolinux.br/sistemas-de-arquivos-android-f2fs-vs-ext4 http://lxr.c http://www.com.multitech.com/source/fs/f2fs/super.com/source/fs/ext4/file.com.br/o-que-e/software/O-que-e-Checksum/ http://www.br/lm/noticia/um_novo_sistema_de_arquivos_para_m emoria_flash http://www.

xda-developers.1.2.1397408308.1.170339031.1397408308.utmcsr=%28direct%29|utmccn=%28direct %29|utmcmd=%28none%29&__utmv=-&__utmk=30060348 .Referências Bibliográficas Imagem: http://forum.php? t=2697069&__utma=248941774.1397422641. 3&__utmb=248941774.1397477040.com/showthread.10.1397477040&__utmc=248941774&__utmx=&__utmz=248941774.