SISTEMAS OPERACIONAIS GERÊNCIA DE MEMÓRIA
|
|
- Aline Carreiro Teixeira
- 6 Há anos
- Visualizações:
Transcrição
1 SISTEMAS OPERACIONAIS GERÊNCIA DE MEMÓRIA /12
2 Conteúdo GERENCIAMENTO DE MEMÓRIA...3 ALOCAÇÃO DE MEMÓRIA CONTÍGUA...4 PAGINAÇÃO...5 SEGMENTAÇÃO...7 MEMÓRIA VIRTUAL...9 2/12
3 GERENCIAMENTO DE MEMÓRIA Memória! Memória! Memória! Adianta ter muita memória? Existe algum limite? Como são usadas pelo SO? Recordemos um pouco sobre a arquitetura dos computadores. A memória volátil (conteúdo que se perde quando desligada) é uma forma de armazenamento temporário. Para ler ou escrever um dado em memória, a CPU endereça aquela região e requisita a operação de leitura ou escrita. Encontram-se memórias voláteis internas e externas à CPU. Internamente, há um tipo de memória denominado registrador, cujo endereço é reconhecido pelo nome do registrador e não pelo seu endereço numérico como acontecem com as memórias voláteis externas. A quantidade e o tamanho em bits dos registradores variam com o modelo e o tipo da CPU. É a memória mais rápida encontrada num computador. Seu tempo de acesso é de apenas algumas unidades de ciclos de clock da CPU. A quantidade é fixa e não pode ser expandida. Uma CPU de 8 bits não tem, necessariamente, somente registradores de 8 bits (Ex: CPUs Intel 4040, Zilog Z80, Intel 8080, Intel 8088, Intel 8086, NEC-V20, NEC-V30, etc). Embora o barramento externo de uma CPU seja de 8 bits, pode-se ter registradores internos de 16, 32 ou até mais de 64 bits. Por serem internas, a única forma de acessá-las é através de instruções da CPU. O tamanho do dado em bits depende do barramento de dados tanto da CPU quanto da memória. Tem-se, portanto, dois tipos de barramentos: barramento de endereços e o barramento de dados. Tais barramentos são, teoricamente, independentes entre si. Atualmente as CPU, dependendo da arquitetura do computador, são dotadas de memórias não voláteis, quase tão rápidas quanto os registradores. São endereçadas numericamente pelos barramentos internos da CPU, assim o controle de acesso está embutido na própria CPU. Apresentam-se com capacidade de endereçamento maior porém ainda bastante limitadas. São denominadas de Memória Cache de Primeiro Nível. Sem este tipo de cache a CPU teria que esperar muitos ciclos de clock para que uma instrução seja transferida do banco de memória externa ou principal. A técnica de caching traz o benefício de maior desempenho. Curiosidade: Antes do lançamento das CPUs Intel 80486, aquele fabricante colocou no mercado uma CPU com cache interno de 1K. A primeira série de CPU saiu com cache de 512 bytes. Alguns estudiosos no assunto modificaram os barramentos de clock, acelerando-os até que os clocks entre a série 386 se igualasse a serie 486. Pelo simples fato de ter maior cache, a mesma placa mãe apresentava desempenho 80% maior com um 386. Só por causa do caching maior? Sim! Somente por isto! Com o avanço da tecnologia, os fabricantes de placas mãe inseriram processadores auxiliares mais poderosos, que implementavam um segundo nível de caching, ou cache de segundo nível. Agora, a memória cache era externa e o endereçamento controlado pelo processador auxiliar gerando espelhos ainda maiores da memória principal, numa velocidade próxima dos caches de primeiro nível. O resultado foi a melhora do desempenho computacional, alcançando 99% maior que a mesma CPU sem o recurso, ou quase duplicando-o em relação a um sistema sem cache. Reparem que o espaço de armazenamento se torna cada vez maior a medida que a memória se 3/12
4 aproxima da memória principal. A figura 1 mostra as etapas de transferencia de um dado A da memória principal até a CPU, considerando os recursos apresentados. Até então cita-se endereçamentos em espaços pequenos. Aparentemente, o esquema só fuincionaria se a aplicação tivesse um tamanho menor que a do cache de nível 1. Uma aplicação pode ser muito maior que isto! Como ela cabe? A Fig. 1 - Mapeamento de memórias para a transferência de um dado A desde a memória principal até o registrador. técnica desenvolvida emprega a idéia de mapeamento de memória. O código não é transferido totalmente para a CPU. A grande maioria das aplicações nem cabem completamente no cache de nível 2 nem mesmo na quantidade de memória principal. Assim, o código e dados são transferidos em partes a medida que são executados ou tratados. ALOCAÇÃO DE MEMÓRIA CONTÍGUA Considere o caso de uma aplicação de 16 Mbytes, Kernel e drivers consumindo 24 Mbytes. Memória principal com 64Mbytes, cache nivel 2 de 2 Mbytes e Cache de Nivel 1 de 512K. A soma dos tamanhos da aplicação, kernel e drivers é inferior ao tamanho físico da memória principal. OBS: Não vamos considerar, ainda, onde a aplicação residia anteriormente. Neste caso, o Módulo de Gerenciamento de Memória poderia reservar um espaço contíguo de endereçamento na memória principal, armazenando alí a aplicação completamente. Porém, o kernel e drivers estão sempre presentes em memória. Surge a necessidade de algum critério para controlar o que é kernel, o que é driver e o que é aplicação. Uma solução é, por exemplo, alocar um tamanho contíguo com tamanho suficiente para alojar todos o códigos e dados. Contudo, o kernel permenece em memória e estará presente enquanto o computador estiver operacional. Torna-se conveniente a separação do que é sistema operacional e o que é aplicação temporária, pois a aplicação tem vida curta se comparada ao kernel. Por tais razões, a alocação única e contígua não pode ser aplicada. Fig. 2 - Particionamento da memória física. Uma vez que a solução acima foi barrada pela tempo de vida ativo do Kernel, uma segunda solução é dividir a quantidade de memória em duas (2) partes contíguas (Figura 2). Uma delas é reservada ao Kernel+drivers e a segunda para as aplicações do usuário. O critério foi aceito e aplicado por encontrar facilidades na implementação em hardware, bastando habilitar ou 4/12
5 desabilitar o bit mais significativo. As aplicações não usavam, de forma geral, todas os periféricos disponíveis, nem mesmo todas as funções do kernel. Assim, a simples divisão em duas partes apresentavam regiões vazias que poderiam ser aproveitadas para a execução de aplicações maiores ou por regiões de memória cujo tamanho fosse definido durante a execução da aplicação. Esta ocorrência denomina-se de Alocação Dinâmica de Memória. A reserva ou alocação de qualquer tamanho resultaria em pequenas partes vazias que poderiam não ser preenchidas, o que resultaria em espaços não alocáveis. Para contornar este novo problema, adotou-se o critério de reserva com tamanho mínimo fíxo e múltiplos daquele valor. Ou seja, se o tamanho mínimo fixo fosse de 16 Kbytes e ocorresse uma reserva de 50 bytes então seriam reservados os 16Kbytes. Ao empregarem tal técnica os desenvolvedores esperavam resolver um problema a acabaram de criar outro ainda maior, pois os espaços remanecentes resultavam na fragmentação quando na comutação de execução entre códigos. Logo a solução de reserva ou alocação em blocos contíguos continuava ineficiente. Opções como compactação e reordenação também foram testadas, porém sem sucesso, pois as movimentações de conteúdos representavam um maior consumo de processamento daquele códigos do Kernel e, consequentemente, a redução de desempenho da apllicação. PAGINAÇÃO A paginação é uma técnica de gerenciamento de memória em que o espaço de endereçamento físico não é contíguo e existe a alocação de tamanhos fixos. Na paginação os espaços de memória reservados correspondem a espaços em posições aleatórias na memória física. A implementação deste método exigiu o conceito de Memória Lógica. A memória lógica representa um espaço lógico sempre contígüo e associado às posições aleatórias da memória física através de uma tabela de mapeamento. Os tamanhos da memória lógica e do espaço ocupado na memória física são idênticos. Se o tamanho de uma página lógica é pequeno (digamos 4 bytes) então a tabela de mapeamento representará de ¼ do tamanho da memória física, o que torna esta quantidade desavantajosa. Assim, os pesquisadores optam por implementar páginas com tamanho variável definido em tempo de execução do código. Implementar o controle de paginação pela pópria CPU através de software puro também não traz qualquer vantagem. As técnicas de implementação usam formas de endereçamento com auxílio de hardware. Elas tentam, na medida do possível, agilizar o acesso à memória física. Considere a memória lógica de 4 bytes, contendo os valores apresentados na Figura 4 e seguindo a mesma Fig. 3 - Modelo de paginação com tabela detabela da Figura 3. mapeamento entre memórias lógica e física. 5/12
6 Fig. 4 - Modelo de paginção com tabela de mapeamento entre memórias lógica de 4 bytes e física A letra g na memória lógica tem o endereço (Página 1, deslocamento 6). A mesma letra g na memória física tem o endereço (Página 5, deslocamento 22). número da página Lógica P número de deslocamento Lógico, na página d End.Físico = (p' *4 + d) Será que dará certo? Vejamos... Se p = número da página lógica e d o número do deslocamento em relação ao deslocamento inicial da página..(d = 6 4 = 2) e na tabela de mapeamento, p' = 5, logo: End. Físico = (5*4 + 2) = 22 6/12
7 Tente a n. (R: d = = 1, p=3, tabela=> 3->7 ==>> End. Fisico=7*4+1=29. Este tipo de operação pode ser facilmente realizado por processadores auxiliares... Achamos uma das finalidades do Chip-Set. Técnicas tais como Page-Table Base Register PTBR (registrador base da tabela de páginas), Translation Look-aside Buffer TLB (Buffer Paralelo de Tradução) isolados ou combinados com Address-Space Identifiers ASIDs (Identificadores de Espaços de Endereçamento) consideram o uso de memória mais rápidas para o armazenamento e manipulação das tabelas. Além dessas técnicas os pesquisadores buscaram uma estrutura da tabela que facilitasse a identificação do acesso à memória física e desenvolveram outras estruturas, tais como Paginação Hierárquica (considerada adequada para processadores de 32 bits, mas inadequada para 64 bits), Paginação Reeditada Hash (adequada para 32 e 64 bits, com ressalvas) e Páginação Invertida (32 e 64 bits). PAGINAÇÃO COMPARTILHADA A página compartilhada será feita como um todo perante a identificação do seu proprietário. PROTEÇÃO Uma certa página pode pertencer ao kernel ou à aplicação (ou aplicações) do usuário. De forma intencional ou equivocada, uma aplicação poderia escrever em regiões do Kernel, o que é prejudicial. Tal fato leva a estabelecer algum método de proteção da página. Assim, a tabela de mapeamento é adaptada para indentificar a tarefa correspondente através de um código de identificação, um número atribuído à tarefa. Este número é denominado PID (Process Identification), conforme será visto no Módulo de Gerenciamento de Tarefas. É desta forma que o Módulo de Gerenciamento de Memória saberá qual tarefa é proprietária daquela página. SEGMENTAÇÃO No método de paginação, há a desvantagem de dados, pilha, código e símbolos ficarem agrupados ao longo das páginas. O método de segmentação veio para separar tais espaços conforme a finalidade. O segmento de dados tem um tamanho qualquer, assim como os outros. Uma vez separados e identificados, pode-se estabelecer o compartilhamento somente de códigos, por exemplo, entre 1 ou mais tarefas em execução. Na paginação, a página inteira poderia ser compartilhada, mas não uma fração dela. A Figura 5 mostra um exemplo de segmentação e o respectivo mapeamento para a memória física. Observe que os segmentos são identificados pela sua finalidade operacional: dados, código, pilha, etc. 7/12
8 Fig. 5 - Exemplo de Segmentação. Observar que os segmentos ocupam espaços e posições na memória real conforme especificado na Tabela de Mapeamento. A coluna Limite define o tamanho do segmento tanto na Memória Lógica quanto na Real. A coluna Base especifica o endereço de início do segmento. Ao contrário da paginação onde se têm o compartilhamento como um todo, na segmentação pode-se compartilhar apenas as áreas de memória de interesse. Suponha que a área de código, dados globais e símbolos sejam compartilhadas por um conjunto de aplicações. Isso trará a economia de memória e maior desempenho, pois não será desperdiçado o tempo para a recarga de tais áreas. Assim, na segmentação, o kernel criará, além da tabela de mapeamento, uma tabela de compartilhamento, especificando os PIDs das aplicações que terão livre acesso ou acesso controlado (somente leitura) de uma área específica. Considere o compartilhamento de área de dados quando um mesmo editor de texto é executado duas vezes e cada um abre um arquivo diferente. 8/12
9 Fig. 6 - Compartilhamento de segmentos num sistema de memória segmentada. Seria altamente promissor e vantajoso se o kernel utilizasse recursos de hardware para a verificação dos índices de vetores (arrays). Explorando tal recurso seria possível evitar erros comuns (e perigosos!) de programas por extrapolação de limites reais e lógicos (buffer overflow). Isto é possível em algum hardware, mas se a extrapolação acontecer em memória lógica não há como evitar. Suponha que o término da tarefa T1. Neste caso, apenas a área de memória física de a seria liberado, o que abrirá um espaço de bytes. Caso seja necessário executar outra aplicação que apresente segmentos maiores que tal tamanho, será necessário aguardar a liberação de mais espaço, ou seja, ocorreu a Fragmentação da memória física. O Gerenciador de Memória terá então que utilizar alguma estratégia para resolver o caso, pois a liberação esperada pode não ocorrer. Uma possível solução seria a desfragmentação da memória física, através do método de compactação ou de reposicionamento dos segmentos. MEMÓRIA VIRTUAL Considere um computador com 8 MB de memória, atendendo 64 usuários, os quais executam várias aplicações concorrentemente, sendo que o tamanho de cada uma delas ultrapassa os 9/12
10 limites da memória física. Isto é possível? Como acontece? Fig. 7 - Quando o Espaços de Memória exigida pela aplicação é maior que o Espaço de Meória Física. Abordar-se-á, apenas, os conceitos que embasam a ideia enquanto que os mecanismos serão vistos após o Gerenciamento de Arquivos. A quantidade máxima da memória física é limitada pela arquitetura da CPU (capacidade de endereçamento) e pelo custo (quantidade de memória instalada). As CPUs de 32 bits de um certo fabricante tem 32 bits de endereçamento real. Isto significa 2 32 endereços de memória ou 4 Giga Endereços. As CPUs daquele mesmo fabricante de 64 bits acessam barramento de dados de 64 bits e 56 bits endereços 2 56 ou TeraBytes. Hoje, o custo de uma pastilha de memória é bastante reduzido quando comparado aos valores praticados há 30 anos. Vamos admitir o caso inicial. Conforme visto anteriormente, é comum dividir a quantidade de memória em 2 partes: uma para o sistema operacional e outra para as aplicações e usuários. Teremos então, dos 8MB disponíveis, somente 4Mb disponíveis para 64 usuários, o que resulta em 64KB para cada usuário. Se o usuário deseja executar uma aplicação de 80KB (o que é muito pequena se comparada às encontradas atualmente) então o problema continua... A solução foi buscar um tipo de memória mais barata que pudesse atender à demanda, em quantidade suficiente e que está presente no sistema computacional. Onde isso estaria disponível? Disco! Sim! O disco! Embora ele não seja tão veloz quanto a memória física é uma solução. A ideia é usar uma área (espaço) em disco para armazenar os segmentos e páginas que ocupavam a memória principal que não está sendo utilizada naquele momento. Tal espaço reservado é denominado de Memória Virtual ou vulgarmente denominada de Swap Memory. O mecanismo de funcionamento é simples. Considere a aplicação de 80KB. Não é possível levá-la totalmente para a memória física. Assim, a parte inicial da aplicação (dados+código) é transportada para o espaço admitido por aquele memória. O Gerenciador de Memória se encarrega de montar uma tabela de endereçamento contendo o endereços iniciais e finais da aplicação, onde elas estão armazenadas, usando algum dos critérios de gerenciamento já vistos (paginação ou segmentação, ou misto). Ao ser solicitado um endereço que estava armazenado na 10/12
11 região virtual (em disco), parte da aplicação é comutada entre a memória física e a virtual (swap). Tal procedimento traz algumas consequências. Imaginemos que, ao iniciar a aplicação, seja necessário a presença de uma espaço que estava em memória virtual. É realizado o swap ou troca de conteúdo. Logo em seguida, o novo código em execução solicita um espaço de dados que acabara de ser levado para a memória virtual. Um novo swap é realizado porém o código anterior foi permutado. Isto é um exemplo de erro de alocação. Podemos apontar dois responsáveis: o link editor, usado pelo compilador que gerou aquele código; o código da aplicação que está mal estruturado. Isto explica o motivo pelo qual certas aplicações apresentam lentidão em sua execução quando o espaço de memória se torna escasso. Fig. 8 - Reservas (Alocação) de Memória. Uma outra consequência desastrosa para o sistema operacional é a fragmentação dos espaços vazios na memória real promovida pela troca de posições ativas entre as áreas da aplicação em relação a de swap. Pode parecer estranho, mas a aplicação é copiada em alguns sistemas operacionais, conforme a sua filosofia de projeto. Por exemplo: SOs Windows consideram uma aplicação um objeto a ser executado. Neste caso, parte do objeto é levado para a memória física enquanto outra parte é copiada para área de swap (em disco). Outros sistemas operacionais, o OpenVMS e o VMS por exemplo, tratam um disco como uma extensão da memória física, o que dispensa as cópias pois uma área de disco é como se fosse uma área de memória. É interessante como a filosofia de projeto de um SO interfere nas soluções dos problemas inerentes daquele SO. Interessante! Isto quer dizer que um sistema operacional implementa uma "filosofia" de tratamento dos componentes de um computador, por exemplo: Windows tudo é objeto, OpenVMS tudo é Memória, Linux (ou unix clones) tudo é arquivo. Como isto é feito no VMS? Conforme visto, uma área de disco pode ser definida pela tripla: número do cilindro, número da cabeça, setor e deslocamento (offset) em relação ao setor. Com isto é possível estabelecer um acesso direto a qualquer byte do disco. A grande desvantagem 11/12
12 do processo é que o tamanho do disco é limitado à quantidade de endereçamento, exceto por manipulações de bits de expansões do barramento de endereços. Perante o cenário funcional, pode-se dizer que a Memória Virtual corresponde à separação entre a memória lógica usada pelo usuário e a memória física do sistema. Qual solução é adotada quando não existe memória virtual? Para contornar tal problema os programadores usam o recurso de sobreposição ( overlay), onde o código e dados presentes em memória são substituídos (sobrescritos) pelo novo conjunto de código e dados. Com a memória virtual tal preocupação deixa de existir. 12/12
Organização e Arquitetura de Computadores. Ivan Saraiva Silva
Organização e Arquitetura de Computadores Hierarquia de Memória Ivan Saraiva Silva Hierarquia de Memória A Organização de Memória em um computador é feita de forma hierárquica Registradores, Cache Memória
Leia maisHardware: Componentes Básicos. Sistema de Computador Pessoal. Anatomia de um Teclado. Estrutura do Computador. Arquitetura e Organização
Hardware: Componentes Básicos Arquitetura dos Computadores Dispositivos de Entrada Processamento Dispositivos de Saída Armazenamento Marco Antonio Montebello Júnior marco.antonio@aes.edu.br Sistema de
Leia maisUnidade 1: O Computador
Unidade : O Computador.3 Arquitetura básica de um computador O computador é uma máquina que processa informações. É formado por um conjunto de componentes físicos (dispositivos mecânicos, magnéticos, elétricos
Leia maisSISTEMAS OPERACIONAIS. 3ª. Lista de Exercícios
SISTEMAS OPERACIONAIS INF09344 - Sistemas Operacionais / INF02780 - Sistemas Operacionais / INF02828 - Sistemas de Programação II Prof a. Roberta Lima Gomes (soufes@gmail.com) 3ª. Lista de Exercícios Data
Leia maisProcessamento de Dados aplicado à Geociências. AULA 1: Introdução à Arquitetura de Computadores
1 Processamento de Dados aplicado à Geociências AULA 1: Introdução à Arquitetura de Computadores UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO TECNOLÓGICO CURSO SUPERIOR DE TECNOLOGIA EM GEOPROCESSAMENTO
Leia maisAula 03. Processadores. Prof. Ricardo Palma
Aula 03 Processadores Prof. Ricardo Palma Definição O processador é a parte mais fundamental para o funcionamento de um computador. Processadores são circuitos digitais que realizam operações como: cópia
Leia maisARQUITETURA DE COMPUTADORES. Professor: Clayton Rodrigues da Siva
ARQUITETURA DE COMPUTADORES Professor: Clayton Rodrigues da Siva OBJETIVO DA AULA Objetivo: Conhecer a estrutura da arquitetura da Máquina de Von Neumann. Saber quais as funcionalidades de cada componente
Leia maisInformática I. Aula 19. http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/06/06 1
Informática I Aula 19 http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/06/06 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Leia maisO que é um banco de dados? Banco de Dados. Banco de dados
COLÉGIO EST. JOÃO MANOEL MONDRONE - ENS. FUNDAMENTAL, MÉDIO, PROFISSIONAL E NORMAL Rua Mato Grosso n.2233 - Fone/Fax (045) 3264-1749-3264-1507 Banco de Dados O que é um banco de dados? Um conjunto de informações
Leia maisFlávia Rodrigues. Silves, 26 de Abril de 2010
Flávia Rodrigues STC5 _ Redes de Informação e Comunicação Silves, 26 de Abril de 2010 Vantagens e Desvantagens da Tecnologia Acessibilidade, quer a nível pessoal quer a nível profissional; Pode-se processar
Leia maisTECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I
TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I Aula 02: Organização e Arquitetura de Computadores / Lógica Digital (Parte I) O conteúdo deste documento tem por objetivo
Leia maisBanco de Dados I. Prof. Edson Thizon ethizon@bol.com.br
Banco de Dados I Prof. Edson Thizon ethizon@bol.com.br Conceitos Dados Fatos conhecidos que podem ser registrados e que possuem significado implícito Banco de dados (BD) Conjunto de dados interrelacionados
Leia maisOrganização de Computadores 1
Organização de Computadores 1 3.1 CPU: Unidade de Processamento Central Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Unidade de Processamento Central (CPU): Memória Principal Unidade de Processamento
Leia maisMicrocontroladores e Microprocessadores. Conversão de Bases Prof. Samuel Cavalcante
Microcontroladores e Microprocessadores Conversão de Bases Prof. Samuel Cavalcante Conteúdo Conversão de Qualquer base para Decimal Decimal para Binário Hexadecimal para binário Componentes básicos de
Leia maisT.I. para o DealerSuite: Servidores Versão: 1.1
T.I. para o DealerSuite: Servidores Versão: 1.1 Lista de Figuras T.I. para o Dealer Suite: Servidores Figura 1 Tela Principal do ESXi...4 Figura 2 Tela VMware Player...5 Figura 3 Arquivo /etc/exports do
Leia maisFundamentos de Teste de Software
Núcleo de Excelência em Testes de Sistemas Fundamentos de Teste de Software Módulo 1- Visão Geral de Testes de Software Aula 2 Estrutura para o Teste de Software SUMÁRIO 1. Introdução... 3 2. Vertentes
Leia maisMicroprocessadores. Memórias
s António M. Gonçalves Pinheiro Departamento de Física Covilhã - Portugal pinheiro@ubi.pt Arquitectura de Microcomputador Modelo de Von Neumann Barramento de Endereços µprocessador Entrada/Saída Barramento
Leia maisEngenharia de Software II
Engenharia de Software II Aula 26 http://www.ic.uff.br/~bianca/engsoft2/ Aula 26-21/07/2006 1 Ementa Processos de desenvolvimento de software Estratégias e técnicas de teste de software Métricas para software
Leia maisSistemas Operacionais. Rodrigo Rubira Branco rodrigo@kernelhacking.com rodrigo@fgp.com.br. www.fgp.com.br
Sistemas Operacionais Rodrigo Rubira Branco rodrigo@kernelhacking.com rodrigo@fgp.com.br Tipos de Sistemas Operacionais De Sistemas Embarcados (PalmOS,WinCE,WinXPEmbbeded,Linux) Hardware simples, especifico
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Introdução Slide 1 Nielsen C. Damasceno Introdução Tanenbaum (2007) definiu que um sistema distribuído é aquele que se apresenta aos seus usuários como um sistema centralizado, mas
Leia maisSistemas Computacionais e Hardware. Disciplina: Informática Prof. Higor Morais
Sistemas Computacionais e Hardware Disciplina: Informática Prof. Higor Morais 1 Agenda Sistema Computacional O Computador e seus componentes Hardware 2 Unidade de entrada Unidade de saída Unidade de Processamento
Leia maisExperiência 04: Comandos para testes e identificação do computador na rede.
( ) Prova ( ) Prova Semestral ( ) Exercícios ( ) Prova Modular ( ) Segunda Chamada ( ) Exame Final ( ) Prática de Laboratório ( ) Aproveitamento Extraordinário de Estudos Nota: Disciplina: Turma: Aluno
Leia maisIntrodução a Programação Aula 01
Introdução a Programação Aula 01 Prof. Bruno Crestani Calegaro Curso de Sistemas de Informação ELC1064 Lógica e Algoritmo 1 O que é um computador? Máquina programável genérica Constituído por: Processador
Leia maisFACULDADE MULTIVIX CURSO DE ENGENHARIA DE PRODUÇÃO 2º PERÍODO MARIANA DE OLIVEIRA BERGAMIN MONIQUE MATIELLO GOMES THANIELE ALMEIDA ALVES
FACULDADE MULTIVIX CURSO DE ENGENHARIA DE PRODUÇÃO 2º PERÍODO MARIANA DE OLIVEIRA BERGAMIN MONIQUE MATIELLO GOMES THANIELE ALMEIDA ALVES COMPUTAÇÃO EM NUVEM CACHOEIRO DE ITAPEMIRIM 2015 MARIANA DE OLIVEIRA
Leia maisConceitos básicos sobre computadores
SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Conceitos básicos sobre computadores Prof. Vanderlei Bonato: vbonato@icmc.usp.br Sumário O que é um computador e onde podemos encontrá-los? Divisão:
Leia maisENGENHARIA DE SOFTWARE
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Curso Técnico em Informática : ENGENHARIA DE SOFTWARE Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Um conjunto estruturado
Leia maisVirtualização: Para vencer a complexidade da TI ABERDEEN GROUP
Virtualização: Para vencer a complexidade da TI ABERDEEN GROUP 1 A luta da TI é real Lutar faz parte da vida. Todos os dias, tanto em nossa vida pessoal quanto profissional, lutamos para fazer nosso melhor,
Leia maisComandos de Eletropneumática Exercícios Comentados para Elaboração, Montagem e Ensaios
Comandos de Eletropneumática Exercícios Comentados para Elaboração, Montagem e Ensaios O Método Intuitivo de elaboração de circuitos: As técnicas de elaboração de circuitos eletropneumáticos fazem parte
Leia maisComércio e Manutenção de Produtos Eletrônicos. Mapeamento de memória e conexões do Controlador CP-WS13/8DI8DO2AI2AO/USB/OEM. Versão 1.
Comércio e Manutenção de Produtos Eletrônicos Manual CP-WS1 Mapeamento de memória e conexões do Controlador CP-WS13/8DI8DO2AI2AO/USB/OEM PROXSYS Versão 1.4 Setembro -2015 Controlador Industrial CP-WS1
Leia maisIntrodução à Programação de Computadores Parte I
Introdução à Programação de Computadores Parte I Prof. Dr. Edson Pimentel Centro de Matemática, Computação e Cognição Objetivos Compreender os componentes básicos de um programa... Objetivos Bacharelado
Leia maisRedes de Computadores
Nível de rede Inst tituto de Info ormátic ca - UF FRGS Redes de Computadores Nível de rede Aula 6 Aplicação Apresentação Sessão Transporte Rede Enlace Físico Protocolo nível de aplicação Protocolo nível
Leia maisVeeam Endpoint Backup FREE
CONSULTORIA INFORMÁTICA DOWNLOAD GRATUITO Veeam Endpoint Backup FREE Visão Global do Produto Veeam Endpoint Backup FREE 1 Veeam Endpoint Backup está preparado para proteger a sua empresa. O Veeam Endpoint
Leia maisRoteiro... Sistemas Distribuídos Aula 4. Troca de mensagens. Comunicação entre processos. Conceitos de SD, vantagens e desvantagens
Roteiro... Conceitos de SD, vantagens e desvantagens Infra-estrutura de um SD Considerações de projeto Sistemas Distribuídos Aula 4 Karine de Pinho Peralta Modelos de Comunicação - comunicação entre processos
Leia maisGerenciamento do Escopo do Projeto (PMBoK 5ª ed.)
Gerenciamento do Escopo do Projeto (PMBoK 5ª ed.) De acordo com o PMBok 5ª ed., o escopo é a soma dos produtos, serviços e resultados a serem fornecidos na forma de projeto. Sendo ele referindo-se a: Escopo
Leia maisHARDWARE INFORMÁTICA. Prof.: MARCIO HOLLWEG mhollweg@terra.com.br
INFORMÁTICA Prof.: MARCIO HOLLWEG mhollweg@terra.com.br HARDWARE O COMPUTADOR, INDEPENDENTE DO TIPO: PARA QUE ISTO POSSA OCORRER TEMOS QUE ALIMENTÁLO COM DADOS E AGUARDAR O RETORNO DESTE PROCESSAMENTO.
Leia maisO Funcionamento do Processador
O Funcionamento do Processador Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Os cinco componentes clássicos de um Computador - Controle O
Leia maisArquitetura e Organização de Computadores I
AULA 09 Estruturas de Interconexão (Barramentos) II Existem algumas questões relacionadas ao desempenho do sistema e os barramentos que merecem ser destacadas. 1. a quantidade de dispositivos conectados
Leia maisHardware. Objetivos do Capítulo
Objetivos do Capítulo Identificar os principais tipos, tendências e usos de microcomputadores, computadores de médio porte e mainframes. Caracterizar as principais tecnologias e usos de periféricos de
Leia maisArquitetura e Organização de Computadores. Histórico. Gerações
Histórico Gerações 00001 As gerações dos computadores Os computadores são máquinas capazes de realizar vários cálculos automaticamente, além de possuir dispositivos de armazenamento e de entrada e saída.
Leia maisFundamentos de Programação. Diagrama de blocos
Fundamentos de Programação Diagrama de blocos Prof. M.Sc.: João Paulo Q. dos Santos E-mail: joao.queiroz@ifrn.edu.br Página: http://docente.ifrn.edu.br/joaoqueiroz/ O processo de desenvolvimento (programação),
Leia maisÁlgebra Linear Aplicada à Compressão de Imagens. Universidade de Lisboa Instituto Superior Técnico. Mestrado em Engenharia Aeroespacial
Álgebra Linear Aplicada à Compressão de Imagens Universidade de Lisboa Instituto Superior Técnico Uma Breve Introdução Mestrado em Engenharia Aeroespacial Marília Matos Nº 80889 2014/2015 - Professor Paulo
Leia maisANEXO I CRITÉRIOS DE AVALIAÇÃO E CLASSIFICAÇÃO DAS PROPOSTAS TÉCNICA E DE PREÇOS
ANEXO I CRITÉRIOS DE AVALIAÇÃO E CLASSIFICAÇÃO DAS PROPOSTAS TÉCNICA E DE PREÇOS Os critérios abaixo descritos serão seguidos no julgamento das propostas técnica e comercial, aplicando-se tais procedimentos
Leia maisVisão geral do sistema de memória de computadores
Visão geral do sistema de memória de computadores 1 Capacidade da memória Humana Pesquisas concluem que o armazenamento de informações na memória humana se dá a uma taxa de aproximadamente 2 bits por segundo
Leia maisTécnico em Radiologia. Prof.: Edson Wanderley
Técnico em Radiologia Prof.: Edson Wanderley Rede de Computadores Modelo Mainframe Terminal Computador de grande porte centralizado; Os recursos do computador central, denominada mainframe são compartilhadas
Leia maisFundamentos de Arquitetura e Organização de Computadores
Fundamentos de Arquitetura e Organização de Computadores Dois conceitos fundamentais no estudo dos sistemas de computação são o de Arquitetura e Organização de computadores. O termo arquitetura refere-se
Leia maisArquitetura de referência de Streaming sob demanda para desktop (ODDS) DELL
Arquitetura de referência de Streaming sob demanda para desktop (ODDS) DELL Um informativo técnico da Dell Dell Mohammed Khan Kailas Jawadekar ESTE INFORMATIVO É APENAS PARA FINS INFORMATIVOS E PODE CONTER
Leia maisGerenciamento de Memória Minix 3.1.7
Gerenciamento de Memória Minix 3.1.7 Prof. Alexandre Beletti Introdução Não utiliza paginação Não faz swapping (está disponível, mas inativo) PM = gerencia processos e memória Chamadas de sistemas: Memória
Leia mais- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br
Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br Sistemas de Arquivos- Parte 2 Pontos importantes de um sistema de arquivos Vários problemas importantes devem
Leia maisAnálise Qualitativa no Gerenciamento de Riscos de Projetos
Análise Qualitativa no Gerenciamento de Riscos de Projetos Olá Gerente de Projeto. Nos artigos anteriores descrevemos um breve histórico sobre a história e contextualização dos riscos, tanto na vida real
Leia maisOganização e Arquitetura de Computadores
Oganização e Arquitetura de Computadores Capítulo 14 e 15 Unidade de Controle Parte I Operação da Unidade de Controle 1 Micro-Operações Um computador executa um programa Ciclo: Busca/Executa Cada ciclo
Leia maisTópicos Avançados em Banco de Dados Dependências sobre regime e controle de objetos em Banco de Dados. Prof. Hugo Souza
Tópicos Avançados em Banco de Dados Dependências sobre regime e controle de objetos em Banco de Dados Prof. Hugo Souza Após vermos uma breve contextualização sobre esquemas para bases dados e aprendermos
Leia maisMATA49 Programação de Software Básico
MATA49 Programação de Software Básico Leandro Andrade leandrojsadcc.ufba.br PROF. LEANDRO ANDRADE 1 Arquitetura dos processadores Intel PROF. LEANDRO ANDRADE 2 Um pouco de história... Como sabemos
Leia maisArquitetura de Computadores Sistemas Operacionais II
Definição de Processo Arquitetura de Computadores Sistemas Operacionais II Processo é o mesmo de Programa? Programa Estrutura estática Instruções + Dados Processo Entidade Ativa Instância de um Programa
Leia maisNivel de Linguagem de Montagem (Assembly)
Nivel de Linguagem de Montagem (Assembly) Orlando Loques setembro 2006 Referências: Structured Computer Organization (capítulo 7), A.S. Tanenbaum, (c) 2006 Pearson Education Inc Computer Organization and
Leia maisARTIGO. Sobre monitoramento a Distancia e aplicação automática de medicamentos. Sistema de monitoração a distancia e aplicação de medicamentos.
ARTIGO Sobre monitoramento a Distancia e aplicação automática de medicamentos. Autor: Marcos José Sanvidotti Sistema de monitoração a distancia e aplicação de medicamentos. Resumo: O monitoramento a distância
Leia mais3.2. Bibliotecas. Biblioteca Professor Antônio Rodolpho Assenço, campus Asa Sul: Os espaços estão distribuídos da seguinte forma:
1 3.2. Bibliotecas Contam as Faculdades UPIS com a Biblioteca Professor Antônio Rodolpho Assenço e a Biblioteca do Campus II, que atuam como centros dinâmicos de informação, atendendo o corpo docente e
Leia maisMódulo de Contrato Agora OS
Módulo de Contrato Agora OS O módulo de contrato irá permitir fazer o acompanhamento e cobrança de contratos através da criação de índices personalizados pelo cliente. Exemplo: Contrato de prestação de
Leia maisDesenvolvimento de Software
PODER JUDICIÁRIO JUSTIÇA DO TRABALHO TRIBUNAL REGIONAL DO TRABALHO DA 15ª REGIÃO Secretaria de Tecnologia da Informação e Comunicações Total de Páginas:16 Versão: 1.0 Última Atualização: 26/07/2013 Índice
Leia maisSistemas Operacionais
Sistemas Operacionais 1 Sistema Operacional Um conjunto de programas que se situa entre os softwares aplicativos e o hardware Gerencia os recursos do computador (CPU, dispositivos periféricos). Estabelece
Leia maisAntes de deixarmos o hardware (1) Nível da Arquitetura do Conjunto das Instruções
Antes de deixarmos o hardware (1) Nível da Arquitetura do Conjunto das Instruções (Aula 11) Visão Geral do Nível ISA 8 Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Agradecimentos:
Leia maisBIOS - Códigos de erro
Durante o boot, o BIOS realiza uma série de testes, visando detectar com exatidão os componentes de hardware instalados no micro. Este teste é chamado de POST, acrônimo de "Power-On Self Test". Os dados
Leia mais10. CPU (Central Processor Unit)... 10 2 10.1 Conjunto das instruções... 10 2 10.2 Estrutura interna... 10 4 10.3 Formato das instruções...
10. CPU (Central Processor Unit)... 10 2 10.1 Conjunto das instruções... 10 2 10.2 Estrutura interna... 10 4 10.3 Formato das instruções... 10 4 10. CPU (CENTRAL PROCESSOR UNIT) Como vimos no capítulo
Leia maisDeswik.Sched. Sequenciamento por Gráfico de Gantt
Deswik.Sched Sequenciamento por Gráfico de Gantt SOLUÇÕES EM SEQUENCIAMENTO DE LAVRA QUE NOS DIFERENCIAM Uma abordagem dinâmica e moderna para o sequenciamento de lavra Desde gráficos de Gantt interativos
Leia mais4/11/2010. Computadores de grande porte: mainframes e supercomputadores. Sistemas Computacionais Classificação. Sistemas Computacionais Classificação
Arquitetura de Computadores Quanto ao princípio de construção Computador Analógico: Computadores de grande porte: mainframes e supercomputadores Prof. Marcos Quinet Universidade Federal Fluminense UFF
Leia maisIntrodução. Aula 02. Estrutura de Dados II. UFS - DComp Adaptados a partir do material da Profa. Kenia Kodel Cox
Introdução Estrutura de Dados II Aula 02 UFS - DComp Adaptados a partir do material da Profa. Kenia Kodel Cox 1 Estrutura de Dados estuda o que? 2 A programação habilita os computadores a cumprirem imensa
Leia maisIntrodução à Informática. Alexandre Meslin
Introdução à Informática Alexandre Meslin (meslin@nce.ufrj.br) Organização da Memória Conceito de hierarquia de memória Memória principal e memórias secundárias Projeto lógico da memória principal Memórias
Leia maisSistema Operacional. Implementação de Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais
Sistema Operacional Implementação de Processo e Threads O mecanismo básico para a criação de processos no UNIX é a chamada de sistema Fork(). A Figura a seguir ilustra como que o processo e implementado.
Leia maisArquitectura interna de um computador
Arquitectura interna de um computador Trabalho elaborado por: Carla Ventura e Sandra Jacinto 1 Descrição de uma tarefa Fases de execução de uma tarefa Unidades de execução de uma tarefa Computador como
Leia maisISS Eletrônico. Formato de Arquivos para Transmissão de Documentos Declarados através do aplicativo OFFLINE. Extensão do Arquivo JUNHO2006.
ISS Eletrônico Formato de Arquivos para Transmissão de Documentos Declarados através do aplicativo OFFLINE Caro contribuinte. A transmissão de arquivos é uma facilidade fornecida pelo sistema de ISS Eletrônico
Leia maisHistórico e Evolução da Computação
Lista de Exercícios Introdução à Informática Professor: Sérgio Salazar Histórico e Evolução da Computação O 1º computador foi o ENIAC, utilizado para montar tabelas para o cálculo de projéteis na 2ª Guerra
Leia maisRecensão digital Dezembro de 2013
Educação, Formação & Tecnologias (julho dezembro, 2013), 6 (2), 105 109 Recensão digital Dezembro de 2013 As ferramentas digitais do Mundo Visual http://nlstore.leya.com/asa/newsletters/ev/imagens/html/vfinal.html
Leia maisPORTARIA N Nº 178 Rio de Janeiro, 25 de outubro de 2012.
PORTARIA N Nº 178 Rio de Janeiro, 25 de outubro de. ACRESCENTA A ARQUITETURA DE PADRÕES TECNOLÓGICOS DE INTEROPERABILIDADE -, NO SEGMENTO RECURSOS TÉCNOLÓGICOS O PADRÃO TECNOLÓGICO SISTEMAS OPERACIONAIS
Leia maisSistemas Operacionais. Sincronização: Semáforos Problema dos Leitores/Escritores
Sistemas Operacionais Sincronização: Semáforos Problema dos Leitores/Escritores Autoria Autores Eduardo André Mallmann 0905/96-9 João Paulo Reginatto 1530/96-0 Local Instituto de Informática UFRGS disciplina:
Leia maisMÓDULO 2 Topologias de Redes
MÓDULO 2 Topologias de Redes As redes de computadores de modo geral estão presentes em nosso dia adia, estamos tão acostumados a utilizá las que não nos damos conta da sofisticação e complexidade da estrutura,
Leia maisArquitecturas de Software Enunciado de Projecto 2007 2008
UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Arquitecturas de Software Enunciado de Projecto 2007 2008 1 Introdução Na primeira metade da década de 90 começaram a ser desenvolvidas as primeiras
Leia maisInteligência Artificial
Inteligência Artificial Aula 7 Programação Genética M.e Guylerme Velasco Programação Genética De que modo computadores podem resolver problemas, sem que tenham que ser explicitamente programados para isso?
Leia maisPALAVRAS-CHAVE Handhelds, Manutenção de Subestação, Tecnologia da Informação.
21 a 25 de Agosto de 2006 Belo Horizonte - MG Utilização de Computadores de Mão (Handheld) pelos Eletricistas da Manutenção de Subestação e Linhas da AES Eletropaulo no Controle de Inspeções e Ordens de
Leia maisMANUAL DE INSTALAÇÃO SAT DIMEP PDV CAKE
MANUAL DE INSTALAÇÃO SAT DIMEP PDV CAKE INSTALAÇÃO DO EQUIPAMENTO O procedimento de instalação do SAT (Dimep) é bastantes simples, para equipamentos Dimep basta seguir as etapas abaixo. 1. Instalação do
Leia maisSupervisório Remoto aplicado em Dispositivo Móvel na Plataforma NI LabVIEW
Supervisório Remoto aplicado em Dispositivo Móvel na Plataforma NI LabVIEW "Este artigo demonstra os recursos e passos necessários para implementar um sistema supervisório de consumo energético e controle
Leia maisExercício. Exercício
Exercício Exercício Aula Prática Utilizar o banco de dados ACCESS para passar o MER dos cenários apresentados anteriormente para tabelas. 1 Exercício oções básicas: ACCESS 2003 2 1 Exercício ISERIDO UMA
Leia maisNotas de Aula Guilherme Sipahi Arquitetura de Computadores. Arquitetura de von Neumann
Notas de Aula Guilherme Sipahi Arquitetura de Computadores Burks, Goldstine e von Neumann (1946): Arquitetura de von Neumann Concluído em 1952 - IAS (Institute for Advanced Studies) Computer Na proposta
Leia maisAo considerar o impacto ambiental das empilhadeiras, observe toda cadeia de suprimentos, da fonte de energia ao ponto de uso
Energia limpa Ao considerar o impacto ambiental das empilhadeiras, observe toda cadeia de suprimentos, da fonte de energia ao ponto de uso Empilhadeira movida a hidrogênio H oje, quando se trata de escolher
Leia mais1. Na página 13, com relação aos discos SSD para Máquinas Virtuais (VMs): 2 Na página 14, com relação a Backup / Armazenamento:
RESPOSTA QUESTIONAMENTOS 1. Na página 13, com relação aos discos SSD para Máquinas Virtuais (VMs): a. Hoje, temos uma solução que contempla Storage Tierizado (SSD + SAS + SATA). Esta configuração atende
Leia maisSistemas Distribuídos
Comunicação em Grupo Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 10.4 pág. 304-311 2 Comunicação em Grupo Suponha que se deseja um serviço de arquivos único
Leia maisConteúdo programático
Introdução à Linguagem C Conteúdo programático Introdução à Linguagem C Estrutura de Programas Variáveis, Constantes Operadores, Entrada e Saída de Dados Estruturas de Desvio Estrutura de Múltipla Escolha
Leia maisCVS Controle de Versões e Desenvolvimento Colaborativo de Software
CVS Controle de Versões e Desenvolvimento Colaborativo de Software Cristiano Caetano Novatec Editora Capítulo 1 Introdução ao CVS Quem controla o passado, controla o futuro. Quem controla o presente, controla
Leia maistipo e tamanho e com os "mesmos" elementos do vetor A, ou seja, B[i] = A[i].
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA SUL-RIO- GRANDENSE CAMPUS SAPUCAIA DO SUL PROFESSOR: RICARDO LUIS DOS SANTOS EXERCÍCIO DE REVISÃO E FIXAÇÃO DE CONTEÚDO - ARRAYS 1. Criar um vetor A
Leia maisAuxílio Estudantil Fase de análise
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DIRETORIA DE GESTÃO DE TECNOLOGIA DA INFORMAÇÃO ASSESSORIA DE AUXÍLIO ESTUDANTIL PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Auxílio Estudantil Fase de análise
Leia maisLógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto
Lógica de Programação Profas. Simone Campos Camargo e Janete Ferreira Biazotto O curso Técnico em Informática É o profissional que desenvolve e opera sistemas, aplicações, interfaces gráficas; monta estruturas
Leia maisRegistro Hospitalar de Câncer Conceitos Básicos Planejamento Coleta de Dados Fluxo da Informação
Registro Hospitalar de Câncer Conceitos Básicos Planejamento Coleta de Dados Fluxo da Informação Registro Hospitalar de Câncer Este tipo de registro se caracteriza em um centro de coleta, armazenamento,
Leia maisLinux e Computação Científica
Linux e Computação Científica Sumário Motivação Noções de Sistemas Operacionais Ferramental Computação Científica Motivação Financeira Linux é livre Desempenho Linux gerencia melhor recursos de processdor,
Leia maisOrientações para Inscrição do Grupo e Projeto de Pesquisa
1 Orientações para Inscrição do Grupo e Projeto de Pesquisa O primeiro passo é criar um login de acesso que será com um e-mail e uma senha única para o grupo. Ao entrar no ambiente de Inscrição e selecionar
Leia maisPESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR. Prof. Angelo Augusto Frozza, M.Sc.
PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR Prof. Angelo Augusto Frozza, M.Sc. ROTEIRO Esta aula tem por base o Capítulo 2 do livro de Taha (2008): Introdução O modelo de PL de duas variáveis Propriedades
Leia maisMemórias Cache. Memória
Memórias Cache Memória Organização da cache de memória Funcionamento: CPU regs controlo da cache memória cache Memória central CPU referencia memória Se está em cache acede à cache Senão acede à memória
Leia mais