Agenda. Overview do processo de boot Entendendo o processo Zygote Recursos reservados para a aplicação Android
|
|
- Nelson da Silva Barreto
- 7 Há anos
- Visualizações:
Transcrição
1
2 Agenda Overview do processo de boot Entendendo o processo Zygote Recursos reservados para a aplicação Android Binders Gerenciamento de memória no Android Garbage Collector Causa de referências perdidas Cuidados com Bitmaps
3 Agenda Performance em layouts ViewStub, include, merge Main Thread Tipos de problema Ferramentas Demo
4 Overview do processo de boot
5 Processo de boot
6 Processo de boot Init O init tem a responsabilidade de inicializar parte do sistema e rodar o init.rc que carregará parte do sistema Android, dentre eles:. - ser vice m an ager: ini cia o binder (respon sável pela comu ni cação entre os processos). - vold: vol ume dae mon con trola a mon tagem de volumes de mídia no sis tema de arquivos. - adbd: android debug ger bridge dae mon servi dor para comu nicação com o cliente adb. - installd: servi dor de insta lação de pacotes/aplicações (*. apk). - Zygote: O zygote é o pai de todos os proces sos Java. OBS: O init.rc é escrito em uma linguagem chamada Android Init Language que é composta por Ações, Comandos, Serviços e opções. service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server
7 BINDER
8 BINDER PROCESS A PROCESS B USER DATA USER DATA Transmission Binder Protocol BC_TRANSACTION Reception Binder Protocol BR_TRANSACTION BINDER DRIVER KERNEL SPACE
9 BINDER
10 RECURSOS
11 Recursos RELÓGIO CELULAR - SMALL CELULAR - LARGE CELULAR - XLARGE MB MB MB MB BINDER 1 MB
12 GERENCIAMENTO DE MEMÓRIA
13 Garbage Collector
14 Gerenciamento de memória Causa de referências perdidas na heap Caso 1: String mystring = new String("Hello World") mystring += ", blz?" FIX - Caso 1: Trocar String por StringBuffer/StringBuilder Caso 2: public interface EventListener<EventResponseType> { public void onevent(eventresponsetype response); }
15 Gerenciamento de memória Causa de referências perdidas na heap Caso 2: public void onresume() { super.onresume(); } SomeObject object = new SomeObject(); object.setsuccesslistener(new EventListener<Boolean>() { public void onevent(boolean response) { Log.d(TAG_NAME, "Valid response? "+response); } }); SomeObjectManager.getSingleton().addObject(object);
16 Gerenciamento de memória Causa de referências perdidas na heap FIX - Caso 2: public void ondestroy() { super.ondestroy(); SomeObject objectfrombefore = SomeObjectManager.getSingleton().getOurObject(); objectfrombefore.setsuccesslistener(null); }
17 Gerenciamento de memória Libere memória sempre que possível Callback da activity que o framework do android irá chamar para notificar sobre o estado da memória da app. - ontrimmemory() (Android API 14+); - onlowmemory() (Android API anteriores a 14 ); - Para ambos os casos a flag TRIM_MEMORY_UI_HIDDEN será entregue; - onstop ainda deve ser usado para liberar recursos;
18 Gerenciamento de memória Verifique quanto de memória está disponível antes de fazer grandes alocações Verifica o espaço de memória da pilha - Runtime.getRuntime().totalMemory(); Verifica quanto de memória já foi consumido - Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory(); Verifica o tamanho máximo da pilha - Runtime.getRuntime().maxMemory()
19 Gerenciamento de memória Como otimizar o Bitmap em memória
20 Gerenciamento de memória Como otimizar o Bitmap em memória
21 Gerenciamento de memória Resultado Considerando que eu tenho uma imagem 2048x1536 com um insamplesize de 4 eu teria uma imagem de 512x384. Aplicando a formula abaixo eu passaria a carregar em memória ao invés de 12MB uma imagem de 0.75 MB. # Of Pixels X Bit Depth bytes per pixel = File Size in Megabytes (MB) # Of Pixels = 512x384 == # Of bit depth == 16 (Considerando uma boa qualidade) (((((512 * 384) * 16) / 4) / 1024) / 1024) -> 0.75 MB * O resultado acima é baseado em um bitmap ARGB_8888
22 Performance em layouts
23 Performance em layouts ViewStub - Carrega views por demanda o que faz o layout da tela principal ser carregada de forma mais rápida
24 Performance em layouts <include> - Use include quando se tem layout complexo que pode ser reutilizado. Isso ajudará a evitar multiplas telas idênticas com complexidades diferentes. <merge> - O Uso do merge faz com que elementos raiz redundantes sejam inseridos na hierarquia.
25 Main Thread
26 Main Thread
27 Tipos de problemas
28 Tipos de Problemas - OutOfMemoryError - TransactionTooLargeException - Android not responding (ANR) - Force close - Delay na exibição e execução de tarefas - Database corrompido - Review ruim na play store OBS: Apenas seguindo algumas boas práticas do android uma série de problemas podem ser evitados e consequentemente dores de cabeça. :P
29 FERRAMENTAS
30 Ferramentas Hierarchy View
31 Ferramentas Device Monitor
32 Ferramentas Device Monitor - Android Studio
33 Ferramentas TraceView - Timeline
34 Ferramentas TraceView - Profile
35 Ferramentas Android Lint
36 DEMO
37 Demo Objetivo Dado uma sequência de números inteiros em um array mova os zeros para o final do array.
38 Demo Resultado - Método um ( O(nˆ2) ) leva muito mais tempo - Método dois ( O(n) ) é extremamente rápido comparado com o método um
39 Obrigado! Wagner Batista
Android Core. Felipe Silveira felipesilveira.com.br. Aula 2
Android Core Felipe Silveira felipesilveira.com.br Aula 2 Inicialização Inicialização Boot ROM Boot Loader Kernel Init Zygote System Server Boot ROM Boot ROM A. O código de ROM de inicialização irá detectar
Leia maisAndroid OLÁ MUNDO MÓVEL. Prof. Dr. Joaquim assunção.
Android OLÁ MUNDO MÓVEL Prof. Dr. Joaquim assunção. Parte 1/3 SDK e Android Studio Java SE Development Kit Download and Install JDK 6 http://www.oracle.com/technetwork/java/javase/downloads/index.html
Leia maisUsando e Gerenciando Activities
Usando e Gerenciando Activities Ciclo de vida Activity 2 Especificando a execução Especifica a Activity que é ponto principal de entrada de sua aplicação Se a ação MAIN action ou a categoria LAUNCHER não
Leia maisTUTORIAL ANDROID ACTIVITY - CONSTRUÇÃO DE TELAS
TUTORIAL ANDROID ACTIVITY - CONSTRUÇÃO DE TELAS Uma activity é um componente do aplicativo que fornece uma tela com o qual os usuários podem interagir. Uma aplicação geralmente consiste de múltiplas activities,
Leia maisALOCAÇÃO DINÂMICA DE MEMÓRIA
INE5408 Estruturas de Dados Semestre 2008/1 Prof. Leandro J. Komosinski ALOCAÇÃO DINÂMICA DE Memória de Computador 1 byte = 8 bits (ex.: 00100110) 1 KB = 1024 bytes 1 MB = 1024 KB 1 GB = 1024 MB Meu computador
Leia maisArquitecturas Alternativas. Java Virtual Machine
Arquitecturas Alternativas Java Virtual Machine Compilação da linguagem Java A linguagem Java é uma linguagem interpretada que é executada por uma máquina virtual software denominada JVM (Java Virtual
Leia maisEspecializado Desenvolvimento de Aplicações para Android
Especializado Desenvolvimento de Aplicações para Android Tecnologias de Informação - Web e Mobile Localidade: Lisboa Data: 02 Apr 2018 Preço: 1240 ( Os valores apresentados não incluem IVA. Oferta de IVA
Leia maisProf: Ricardo Quintão Site:
Prof: Ricardo Quintão email: ricardo.quintao@uva.br Site: www.rgquintao.com.br O que é Android? O Android é uma plataforma de software que permite criar aplicativos para dispositivos móveis, como smartphones
Leia maisEspecializado Desenvolvimento de Aplicações para Android
Especializado Desenvolvimento de Aplicações para Android Formato do curso: Presencial Localidade: Porto Data: 06 Set. 2016 a 13 Out. 2016 Preço: 1240 Horário: Pós-laboral e Sábados - 3ª e 5ª, das 18h30
Leia maisINSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE Algoritmos ANSI C - Gerenciamento de Memória Copyright 2014 IFRN Agenda Introdução Alocação dinâmica Funções malloc free calloc realloc
Leia maisCurso online de Fundamentos em Android. Plano de Estudo
Curso online de Fundamentos em Android Plano de Estudo Descrição do programa A Certificação Android ensina como usar as ferramentas necessárias para projetar e implantar aplicativos Android para dispositivos
Leia maisPROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Hello World Professor: Danilo Giacobo OBJETIVOS DA AULA Desenvolver o primeiro aplicativo Android Se familiarizar com o ambiente de desenvolvimento Conhecer os principais
Leia maisProf: Ricardo Quintão Site:
Prof: Ricardo Quintão email: rgquintao@gmail.com Site: www.rgquintao.com.br O que é Android? O Android é uma plataforma de software que permite criar aplicativos para dispositivos móveis, como smartphones
Leia maisProgramação JAVA para Android
Programação JAVA para Android Objetivos Gerais: Este curso é dirigido a todos os profissionais que sintam necessidade de se especializar no âmbito da programação JAVA para Android e queiram aprender a
Leia maisPersistência. Prof. Alberto Costa Neto Linguagens de Programação. Departamento de Computação Universidade Federal de Sergipe
Persistência alberto@ufs.br de Programação Departamento de Computação Universidade Federal de Sergipe Retrospectiva Quanto ao Tempo de Vida Variáveis Estáticas Variáveis Stack-Dinâmicas Variáveis Heap-Dinâmicas
Leia maisCONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO
CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO CLASSES E OBJETOS PARA PROGRAMAÇÃO ORIENTADA A OBJETOS Classes são estruturas das linguagens de POO criadas para conter os dados que
Leia maisINF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS
INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores
Leia maisUNIX Gerência de Memória
UNIX Gerência de Memória Introdução Unix implementado sobre muitos computadores diferen tes baseada, segmentada, paginada, segmentada/paginada A gerência de memória garante: Proteção do espaço de endereçamento
Leia maisQuestão 1. Nome para o arquivo fonte questao1.c
Questão 1 Nome para o arquivo fonte questao1.c Construa um programa, na linguagem de programação C, que receba através da entrada padrão um número natural, o qual indicará quantas operações de divisão
Leia maisAndroid: Ciclo de vida da Activity
Se sua aplicação estiver em execução e o celular receber uma ligação? O que acontecerá com seu aplicativo? Quais métodos serão executados e em qual ordem? Para respondermos essas perguntas e entendermos
Leia maisProgramação para Dispositivos Móveis
Programação para Dispositivos Móveis Professor Ariel da Silva Dias Apresentação Android e IDEs Por que estudar programação para dispositivos móveis? Linha histórica da indústria durante os séculos Feudalismo
Leia maisAula 07: - Mapa de memória de um processo - Ponteiros (parte 1)
MCTA028 Programação Estruturada Aula 07: - Mapa de memória de um processo - Ponteiros (parte 1) Prof. João Henrique Kleinschmidt Material elaborado pelo prof. Jesús P. Mena-Chalco 3Q-20108 Mapa de memória
Leia maisProf. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II JAVA Décima Segunda Aula
Prof. Rogério Albuquerque de Almeida Programação Orientada a Objetos II JAVA Décima Segunda Aula 1 Prof. Rogério Albuquerque de Almeida Programação Orientada a Objeto II Vetores Tratamento de Exceções
Leia maisMVM Mattos Virtual Machine. Andrey de Oliveira Prof. Mauro Marcelo Mattos, Doutor FURB 2012/2
MVM Mattos Virtual Machine Andrey de Oliveira Prof. Mauro Marcelo Mattos, Doutor FURB 2012/2 Roteiro Introdução Objetivos Fundamentação Teórica Desenvolvimento Resultado e Discussão Conclusão Extensões
Leia maisIntrodução ao Desenvolvimento para Dispositivos Móveis
PARTE II Introdução ao Desenvolvimento para Dispositivos Móveis Victor Adriel de Jesus Oliveira INF - UFRGS Summary PARTE I Introdução a Plataformas Móveis Padrões para o Desenvolvimento de Aplicativos
Leia maisUTILIZAÇÃO DA BIBLIOTECA DIMEPSAT PARA ANDROID
UTILIZAÇÃO DA BIBLIOTECA DIMEPSAT PARA ANDROID Neste manual você irá aprender como desenvolver com a biblioteca do SAT Dimep para Android, que é distribuída no formato Android Archive Library. Para demonstrar
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Android Android é um sistema operacional para dispositivos móveis Kernel Linux, drivers e bibliotecas do
Leia maisDiscos. Hardware Tadeu Ferreira Oliveira -
Discos Hardware Tadeu Ferreira Oliveira - tadeu.ferreira@ifrn.edu.br Hardware Um ou vários discos Um ou vários braço Cada braço com uma cabeça de leitura Dividido logicamente em: Cilindro Trilha Setor
Leia maisPROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Ciclo de Vida de uma Aplicação Android Professor: Danilo Giacobo OBJETIVOS DA AULA Entender o ciclo de vida de uma aplicação Android. Conhecer algumas dicas para tirar
Leia maisPor Bruno T Aquino, Roberto Luiz e Ricardo Vinicius Fabri, Abril 14, 2009.
J2ME E O PERFIL MIDP Por Bruno T Aquino, Roberto Luiz e Ricardo Vinicius Fabri, Abril 14, 2009. INTRODUÇÃO Com o passar do tempo os aparelhos celulares deixaram de ser apenas para ligações e agenda para
Leia maisEstruturas de Sistemas Operacionais
Estruturas de Sistemas Operacionais Sistemas Operacionais - Tópicos Componentes do Sistema Serviços de Sistemas Operacionais Chamadas ao Sistema Estrutura do Sistema Máquinas Virtuais Chamadas ao Sistema
Leia maisDescrição geral do Android
Descrição geral do Android (PDM) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Pedro Alexandre Pereira (palex@cc.isel.ipl.pt) Utilização Home screen: Área de notificações Múltiplas páginas
Leia maisProgramação para Dispositivos Móveis
Programação para Dispositivos Móveis Professor Ariel da Silva Dias Desenvolvendo para Android Por que estudar programação para dispositivos móveis? Linha histórica da indústria durante os séculos Feudalismo
Leia maisJavascript por debaixo dos panos
Javascript por debaixo dos panos Laís Lima Designer/Front End Developer @ Cosmobots @laislima.dev @laislima_dev @laislimadev Por que entender? É fundamental que você saiba os poderes da linguagem com que
Leia maisTutorial sobre Activity: Como carregar um fragmento do mapa para a tela do celular
Tutorial sobre Activity: Como carregar um fragmento do mapa para a tela do celular Esse tutorial tem por objetivo mostrar como criar uma activity que carrega um fragmento do mapa do google maps para a
Leia maisINF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS
INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores e Blocos de Inicialização
Leia maisMCTA028 Programação Estruturada Aula 07: - Mapa de memória de um processo - Ponteiros (parte 1)
MCTA028 Programação Estruturada Aula 07: - Mapa de memória de um processo - Ponteiros (parte 1) Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 3Q-2017 1 Mapa de memória de um processo 2 Alocação de
Leia maisExpectativa de respostas
Expectativa de respostas Prova Objetiva Questão Resposta 1 A 2 A 3 C 4 B 5 B 6 ANULADA 7 A 8 D 9 A 10 C 11 B 12 ANULADA 13 C 14 D 15 B 16 B 17 ANULADA 18 C 19 C 20 C Prova Discursiva 1. Explique cada um
Leia maisSISTEMAS EMBARCADOS. Controle de Kernel, gerenciamento de Threads e funções de espera. Prof. André Schneider de Oliveira
Universidade Tecnológica Federal do Paraná (UTFPR) Departamento Acadêmico de Eletrônica (DAELN) SISTEMAS EMBARCADOS Controle de Kernel, gerenciamento de Threads e funções de espera Prof. André Schneider
Leia maisCIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO
REVISÃO POO INTRODUÇÃO À LINGUAGEM JAVA CRIANDO CLASSES EM JAVA Convenção de Nomes em Java Classes iniciam com letras maiúsculas Métodos, atributos e variáveis locais iniciam com minúsculas. Declaração
Leia maisLISTA DE EXERCÍCIOS Prof. Daniel de Souza Gomes Aula extra 26/03/2011
Lista de Linguagem de Programação 3/22/2011 1 LISTA DE EXERCÍCIOS Prof. Daniel de Souza Gomes Aula extra 26/03/2011 1. A lista consta de cinco exercícios propostos 2. Resolva a lista em um arquivo Word
Leia maisCurso: Especializado Desenvolvimento de Aplicações para Android
Curso: Especializado Desenvolvimento de Aplicações para Android Duração: 66h Área formativa: Programação Web & Mobile Sobre o curso Desde o lançamento dos smartphones no mercado, é crescente a procura
Leia mais- Mapa de memória de um processo - Ponteiros
1 MCTA028 Programação Estruturada - Mapa de memória de um processo - Ponteiros Material preparado a partir de slides dos profs. Jesús Mena-Chalco e Fabrício Olivetti Luiz Rozante 3Q-2018 2 Alocação de
Leia maisAPI JDBC. Paulo Ricardo Lisboa de Almeida. 1 Universidade Positivo
API JDBC Paulo Ricardo Lisboa de Almeida 1 JDBC JDBC Java Database Connectivity API Java para conexões com bancos de dados Encontrada dentro de java.sql 2 JDBC Necessário driver JDBC do banco Classes concretas
Leia maisAplicações em CUDA. Medialab Instituto de Computação Universidade Federal Fluminense NVIDIA CUDA Research Center
Aplicações em CUDA Medialab Instituto de Computação Universidade Federal Fluminense NVIDIA CUDA Research Center Roteiro l Introdução l Eventos l Aspectos históricos l Operações atômicas l Introdução sobre
Leia maisChamadas de Sistema (SYSCALL)
Chamadas de Sistema (SYSCALL) Eduardo Ferreira dos Santos Engenharia de Computação Centro Universitário de Brasília UniCEUB Abril, 2016 1 / 26 Sumário 1 Estrutura dos Sistemas Operacionais 2 System Calls
Leia maisDesenvolva de qualquer sistema operacional para qualquer sistema operacional. Sem limites.
Desenvolva de qualquer sistema operacional para qualquer sistema operacional. Sem limites. Gabriel Pereira, Especialista em Java da Clarify Projete e desenvolva situações de Mercado com a criação de um
Leia maisSistemas Operacionais
Sistemas Operacionais Eduardo Ferreira dos Santos Engenharia de Computação Centro Universitário de Brasília UniCEUB Abril, 2016 1 / 20 Sumário 1 Estrutura dos Sistemas Operacionais 2 System Calls 2 / 20
Leia maisUm Modelo Semântico para a Linguagem Java Jorge Henrique Cabral Fernandes CIC-UnB Junho de Introdução
Um Modelo Semântico para a Linguagem Java Jorge Henrique Cabral Fernandes CIC-UnB Junho de 2004 Introdução Este texto apresenta um modelo semântico inicial para um subconjunto da linguagem Java. A Figura
Leia maisUNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação. Processamento Paralelo Threads. Aluno: Wagner Palacio
UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação Processamento Paralelo Threads Aluno: Wagner Palacio Turma: 3º período Professor: Giordano Cabral Recife, 29 de maio de 2012
Leia maisLinguagens de Programação Classificação
Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda
Leia maisArquiteturas de Computadores. Princípios e exemplos de conjuntos de instruções
Arquiteturas de Computadores Princípios e exemplos de conjuntos de instruções Características das aplicações Computação de desktop Ênfase em desempenho de programas com tipos de dados inteiros e ponto-flutuante
Leia maisAula 01. Prof. Diemesleno Souza Carvalho
Programação Orientada a Objetos II Aula 01 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... - Apresentação da disciplina;
Leia maisProcesso. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software
Processo Um programa em execução Gerência de Processos Contexto de Processo Conjunto de Informações para gerenciamento de processo CPU: Registradores Memória: Posições em uso E/S: Estado das requisições
Leia maisNoçõ linguagem Java. Profs. Marcel Hugo e Jomi Fred Hübner. Departamento de Sistemas e Computação Universidade Regional de Blumenau - FURB
Noçõ ções básicas b da linguagem Java Profs. Marcel Hugo e Jomi Fred Hübner Departamento de Sistemas e Computação Universidade Regional de Blumenau - FURB Introduçã ção Origem Funcionamento Vantagens Linguagem
Leia maisExercícios. Alocação Dinâmica. Alocação dinâmica de memória. Alocação de memória. Alocação da Memória Principal. Alocação da Memória Principal
Exercícios 1) Crie uma função que recebe os coeficientes de uma função do 2o. grau e retorna as raízes sem usar vetor. 2) Faça um programa que acha o maior e o menor inteiro dentro de um vetor de 10 inteiros,
Leia maisDESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO
DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS PROFª. M.Sc. JULIANA H Q BENACCHIO Threads, Handler e AsyncTask No Android, cada aplicação é executada em um único processo. Cada processo por sua vez tem uma thread
Leia maisProcesso. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software
Processo Um programa em execução Gerência de Processos Contexto de Processo Conjunto de Informações para gerenciamento de processo CPU: Registradores Memória: Posições em uso E/S: Estado das requisições
Leia maisMCTA001 Algoritmos e Estruturas de Dados I Aula 02: Ponteiros e estruturas
MCTA001 Algoritmos e Estruturas de Dados I Aula 02: Ponteiros e estruturas Prof. Jesús P. Mena-Chalco 1Q-2019 1 Mapa de memória de um processo 2 Alocação de memória: estática VS Dinâmica Na execução, um
Leia maisUniversidade Federal do Paraná
Universidade Federal do Paraná Departamento de Informática Ciência da Computação Tópicos em Sistemas Embarcados Android Prof. Eduardo Todt 2016 objetivos Com Android studio criar primeira app Projetar
Leia maisLista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos
Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos 1. Para a construção de uma aplicação gráfica se faz necessário conceber a interface de aplicação, identificando-se
Leia maisCompilação dos trabalhos: questões de concurso
1 Compilação dos trabalhos: questões de concurso UFBA/DCC/Linguagens para Aplicação Comercial/2009.1 MPU/2007 (Equipe 1) 1 Quanto às variáveis Java, um inteiro de 64 bits em notação de complemento de dois
Leia maisLinguagem de Programação Orientada a Objeto Construtores e Sobrecarga
Linguagem de Programação Orientada a Objeto Construtores e Sobrecarga Professora Sheila Cáceres Sobrecarga (overloading) Na mesma classe podemos definir vários métodos com o mesmo nome Sobrecarga O tipo
Leia maisGerência de Memória. Sistemas Operacionais Flavio Figueiredo (
Gerência de Memória Sistemas Operacionais 2017-1 Flavio Figueiredo (http://flaviovdf.github.io) 1 Até Agora Aprendemos que o SO é uma interface entre o hardware eo software Trocas de contexto Gerência
Leia maisEstrutura de Dados. Aula 07 Alocação Dinâmica
Estrutura de Dados Aula 07 Alocação Dinâmica 2 ALOCAÇÃO DINÂMICA Existem três modos de reservar espaço de memória para o armazenamento de informações: 1ª - através do uso de variáveis globais (e estáticas).
Leia maisSistemas Operativos. Gestão de memória no Windows NT
Sistemas Operativos Gestão de memória no Windows NT Windows Internals, Russinovich, cap. 9, Memory Management Windows Via C/C++, Richter, cap. 13, cap. 14. MSDN, http://msdn.microsoft.com/en-us/library/aa366779(v=vs.85).aspx
Leia maisCriando o primeiro projeto para entender a estrutura do app
File > New > New Project Criando o primeiro projeto para entender a estrutura do app Escolha o tipo de projeto. Tenha sempre atenção a versão mínima da API a ser utilizada no projeto. Normalmente, quando
Leia maisProgramação de Computadores II TCC /Turma A 1
Programação de Computadores II TCC 00.174/Turma A 1 Professor Leandro A. F. Fernandes http://www.ic.uff.br/~laffernandes Conteúdo: Tratamento de exceções Material elaborado pelos profs. Anselmo Montenegro
Leia maisManipulação de Bytecode Java
Manipulação de Bytecode Java Mantendo o espírito Hacker no mundo das linguagens de alto nível André Luiz Breves de Oliveira andre.breves@gmail.com class Hello { public static void main(string[] args) {
Leia maisSingularity. Sistema operacional construído do zero com o objetivo principal de ser seguro. Alex de Magalhães Machado
Sistema operacional construído do zero com o objetivo principal de ser seguro. Alex de Magalhães Machado 05232562 Linguagens de programação seguras, como Java e C#. Compiladores otimizadores geram código
Leia maisAlgoritmos e Técnicas de Programação. Professora Luciana Faria
Algoritmos e Técnicas de Programação Professora Luciana Faria luciana.faria@ifs.ifsuldeminas.edu.br Conceitos Básicos Computadores??? Máquina composta de elemento físicos do tipo eletrônico É uma máquina
Leia maisIntrodução aos Sistemas Operacionais. Subsistema de Arquivos
Introdução aos Sistemas Operacionais Subsistema de Arquivos Eleri Cardozo FEEC/Unicamp Subsistema de Arquivos O subsistema de arquivos deve prover soluções para as seguintes questões: Como a informação
Leia maisJava Standard Edition (JSE)
Java Standard Edition (JSE) 10. Controle de Exceções Esp. Márcio Palheta Gtalk: marcio.palheta@gmail.com 1 Ementa 10. Controle de Exceções; 11. O pacote java.lang; 12. O pacote java.io; 13. Collection
Leia maisEA998/MC933 Guido Araujo e Sandro Rigo
EA998/MC933 Guido Araujo e Sandro Rigo 1 Introdução Livros adotados (e-books) Learning Android, Marco Gargenta, O Reilly Media (livro texto) Professional Android Application, Reto Meier, Wrox Abordagem
Leia mais1. Faça um programa que leia uma string digitada pelo usuário e salve em um arquivo em branco.
Segunda lista de exercícios v100 Engenharia Elétrica - Eletrônica 2º Semestre de 2015 Prof: Daniel Rodrigo Ferraz Bonetti SSC0300 Linguagem de Programação e Aplicações 1 Faça um programa que leia uma string
Leia maisProgramação Estruturada Prof. Rodrigo Hausen Organização e Gerenciamento de Memória
Programação Estruturada Prof. Rodrigo Hausen http://progest.compscinet.org Organização e Gerenciamento de Memória 1 AULA PASSADA - vetores ou arrays Declaração de um vetor (array) em C: tipo nome[tamanho];
Leia maisInformática Sistemas Operacionais Aula 5. Cleverton Hentz
Informática Sistemas Operacionais Aula 5 Cleverton Hentz Sumário Introdução Fundamentos sobre Sistemas Operacionais Gerenciamento de Recursos Interface Com Usuário Principais Sistemas Operacionais 2 Introdução
Leia maisUnix Processos. Geraldo Braz Junior
Unix Processos Geraldo Braz Junior 1 Processos no Unix Unix é multiprogramado; Para cada processo é atribuído um Pid; Diversos daemons são executados: Cron Processamento de emails Gerenciamento da fila
Leia maisIntrodução ao Desenvolvimento de Aplicativos Android
Introdução ao Desenvolvimento de Aplicativos Android Preparando o ambiente de desenvolvimento Entre as ferramentas que você precisa instalar estão: JDK - como o Android faz uso da tecnologia Java, é necessário
Leia maisProgramação com Sockets
Programação com LP4 Ciência da Computação 1 Comunicação entre processos Nível mais baixo É um tipo particular de modelo de programação em redes utilizado em várias linguagens como: C, C++ e Java São estruturas
Leia maisExercício. Alocação Dinâmica. Alocação dinâmica de memória. Alocação de memória. Alocação da Memória Principal. Alocação da Memória Principal
Exercício Crie uma função que recebe o número de dias até um determinado evento e calcula e retorna o equivalente em meses, semanas e dias, sem usar vetor ou o conceito de vetor. Considerar que todos os
Leia maisAlocação Dinâmica em C
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Alocação Dinâmica em C Profa Rosana Braga Adaptado de material preparado pela profa Silvana Maria Affonso de Lara
Leia maisVIRTUALIZAÇÃO CORPORATIVA
VIRTUALIZAÇÃO CORPORATIVA O modelo de virtualização corporativa utilizando o sistema Xen Server sera demostra novamente com o uso da ferramente virtual box de forma que, seja possível a demostração dos
Leia maisGuia do f12 F12. Developer Tools. Leonardo Tegon
Guia do f12 F12 Developer Tools Leonardo Tegon Desenvolver Visualizar e editar o HTML, CSS e JavaScript Gerenciar os dados locais (Cookies, Local Storage) Simular dispositivos mobile Debugar Smartphone
Leia maisAgenda da Aula. Reuso de Software. Tipos de Reuso. Potenciais Problemas. Vantagens de Reuso. Introdução a Reuso de Software
Reuso de Software Aula 02 Agenda da Aula Introdução a Reuso de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com Introdução a Reuso de Software Abordagens de Reuso
Leia maisIntrodução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega
Android Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega Universidade Federal de Santa Catarina November 18, 2008 Agenda 1 Introdução 2 Dalvik 3 Linux 2.6 Introdução
Leia maisComandos TOP, PS e PSTREE
Comandos TOP, PS e PSTREE Todos estes comandos são responsáveis por mostrar os processos existentes em execução no sistema. Porém com suas diferenças, conforme os slides a seguir. Comando TOP O comando
Leia maisCollections Framework
Collections Framework 1 Arrays p Manipular array é bastante trabalhoso. p Dificuldades aparecem em diversos momentos: n não podemos redimensionar um array em Java; n é impossível buscar diretamente por
Leia maisWindows NT 4.0. Centro de Computação
Windows NT 4.0 Centro de Computação Tópicos Introdução Instalação Configuração Organização da rede Administração Usuários Servidores Domínios Segurança Tópicos È O sistema operacional Windows NT È Características:
Leia maisProf. Jhonatan Fernando
Prof. Jhonatan Fernando É uma classe gerenciadora de UI. É possível informar qual layout (arquivo xml) que será carregado para uma determinada activity. O método responsável por informar qual layout será
Leia maisDesenvolvimento Android. Pontapé inicial...
Desenvolvimento Android Pontapé inicial... Toshi Kurauchi andrew.kurauchi@gmail.com @toshikurauchi Por que desenvolver para Android? Por que desenvolver para Android? Por que desenvolver para Android?
Leia maisFRAMEWORK PARA GERENCIAMENTO E DISPONIBILIZAÇÃO DE INFORMAÇÕES MULTIMÍDIA GEOLOCALIZADAS NA PLATAFORMA ANDROID
FRAMEWORK PARA GERENCIAMENTO E DISPONIBILIZAÇÃO DE INFORMAÇÕES MULTIMÍDIA GEOLOCALIZADAS NA PLATAFORMA ANDROID Roteiro Introdução Fundamentação teórica Desenvolvimento Conclusões Introdução Plataformas
Leia maisLaboratório de Ciências Computação
Laboratório de Ciências Computação APP Inventor https://goo.gl/bx1ezt 1 Dispositivos Móveis e Plataformas Os dispositivos móveis fazem parte de nosso dia a dia e nos permitem aplicar a computação de forma
Leia maisRoteiro 20/9/2010. Serviço do sistema operacional. Interface. Chamadas de sistemas (System Call) Programas do sistema Projeto e Implementação
BC1518 - Sistemas Operacionais Estrutura de S.O. Aula 02 3 Quadrimestre de 2010 Prof. Marcelo Z. do Nascimento Email: marcelo.nascimento@ufabc.edu.br Roteiro Serviço do sistema operacional Interface Chamadas
Leia maisAULA 3. Minicurso PET-EE UFRN
AULA 3 Minicurso PET-EE UFRN Nesta aula iremos continuar o exemplo anterior criando uma nova activity e adicionando ao botão um método que irá iniciar a mesma. Começaremos criando o método de envio do
Leia maisDesenvolvimento para dispositivos móveis JavaME
Desenvolvimento para dispositivos móveis JavaME Marcio Seiji Oyamada Aula 1 UNIOESTE Universidade Estadual do Oeste do Paraná Curso de Informática Cascavel - Brasil Introdução Ementa Conceituação de mobilidade
Leia maisIntrodução aos Sistemas Operacionais. Subsistema de Entrada e Saída
Introdução aos Sistemas Operacionais Subsistema de Entrada e Saída Eleri Cardozo FEEC/Unicamp Entrada e Saída O subsistema de entrada e saída é responsável pela interface entre o sistema operacional e
Leia maisUSP - ICMC - SSC SSC o. Semestre 2010 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria
USP - ICMC - SSC SSC 0501-1o. Semestre 2010 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria Prof. Fernando Santos Osório Email: fosorio [at] { icmc. usp. br, gmail. com } Página Pessoal:
Leia maisA melhor plataforma aberta para redes sociais. Gustavo Caldeira Consultor em arquitetura de sistemas e web social caldeira.santos@gmail.
A melhor plataforma aberta Gustavo Caldeira Consultor em arquitetura de sistemas e web social caldeira.santos@gmail.com Tópicos Introdução Pré Requisitos/Instalação Plugins Extendendo o Elgg Performance
Leia mais