SlideShare uma empresa Scribd logo
1 de 22
Arquitetua Avançada de Computadores
Estudo dos Sistemas de
Memórias Virtuais
Grupo n.º 7
20180573
20180258
20180257
Integrantes do
Grupo
Manuel Júnior F. Freitas
Almeida Tomás Kapango
Ndombele João Baptista
Memória virtual é uma técnica que se combina as memórias principal e secundária para
dar a impressão ao usuário de existir uma memória principal muito maior do que a real
existente.
Os programas deixam de estar limitados ao tamanho da memória principal, pois podem
estar associados à memoria secundária.
Visa diminuir a fragmentação da memória principal e aumentar seu compartilhamento.
Algumas funções da Gerência de Memória Virtual são desenvolvidas em Hardware.
(Desempenho)
INTRODUÇÃO
SISTEMA DE MEMÓRIA E SUAS CARACTERÍSTICAS
A memória dos computadores é um elemento indispensável e tão importante
quanto a Unidade Central de Processamento (CPU) ou processador. A memória é
um dispositivo que permite ao computador armazenar dados de forma temporária
ou permanente. Segundo Tanenbaum (2007), a memória é a parte do computador
onde os programas e os dados são armazenados. Sem uma memória na qual os
processadores (CPU) possam ler ou escrever informações, o conceito de
computador digital com programa armazenado não pode ser implementado.
Para o funcionamento adequado de um computador, é necessário dispor,
nele mesmo, de diferentes tipos de memória. Em algumas tarefas, pode ser
fundamental que a transferência de dados seja feita da forma mais rápida
possível – é o caso das tarefas realizadas pela CPU, onde a velocidade é
fator preponderante, ao passo que a quantidade de bits a ser manipulada é
muito pequena. Esse tipo de memória deve possuir características
diferentes daquele em que a capacidade de armazenamento é mais
importante que a sua velocidade de transferência de e para outros
dispositivos. Destacamos que a necessidade da existência de vários tipos
de memória ocorre em virtude de vários fatores concorrentes, mas
principalmente em função do aumento da velocidade das CPUs (a qual é
muito maior do que o tempo de acesso da memória) e da capacidade de
armazenamento.
Considerando os diversos tipos de memórias existentes, as quais variam em
função de sua tecnologia de fabricação, capacidade de armazenamento,
velocidade e custo, pode-se dizer que fica muito difícil projetar um computa- dor
utilizando-se apenas um único tipo de memória. Dessa forma, segundo Monteiro
(2007), o computador possui muitas memórias, as quais se encontram
interligadas de forma bem estruturada, constituindo o que é chamado de
subsistema de memória, o qual é parte do sistema computacional.
Figura 1. Características básicas dos tipos de memória
Localização É Volátil? Velocidade
Capacidade de
armazenamento
Custo por bit
Registrador Processador Sim
Muito alta (opera na
velocidade do
processador) Muito baixa (Bytes) Muito alto
Cache Processador Sim
Alta (opera na
velocidade do
processador) Baixa (KB) Alto
Principal Placa-mãe RAM – sim
ROM – não
Depende do tipo de
memória instalada Média (MB) Médio (tem caído
muito)
Secundária HD, CDs, etc. Não Baixa (lenta) Alta (GB)
Baixo (tem caído
muito)
Memória Cache
Na busca de soluções para a limitação imposta pela comunicação entre
processador e memória, foi desenvolvida uma técnica que consiste na inclusão de
um dispositivo de memória entre a memória principal e o processador memória
cache. Sua função principal é acelerar a velocidade de transferência das
informações entre processador e memória principal e, com isso, aumentar o
desempenho dos sistemas de computação.
A memória cache é um tipo de memória construída com tecnologias semelhantes
às do processador, isso eleva os custos de produção. Para amenizar o fator custo
e dispor das vantagens de um sistema computacional com desempenho mais
rápido, foram incorporadas ao computador pequenas porções de memória cache,
localizadas internamente ao processador e entre ele e a memória principal, as
quais funcionam como um espelho de parte da memória principal.
Nesse caso, quando o processador solicita um determinado dado e o encontra na
cache, não há necessidade de requisitá-lo à memória principal, reduzindo
significativamente o tempo de processamento. Ou seja, quanto mais memória
cache um processador possuir, melhor será o seu desempenho.
Memória principal
A memória principal é denominada memória RAM (Random Access Me-
mory), corresponde a um tipo de memória volátil, ou seja, seu conteúdo fica
armazenado enquanto o computador estiver ligado; ao desligar a corrente
elétrica, o conteúdo da memória RAM é apagado. A Figura 1 apresenta um
pente (módulo) de memória RAM típico.
Organização da memória principal
A memória principal encontra-se organizada em um conjunto de células, sendo
que cada uma delas representa o agrupamento de uma quantidade de bits. Cada
célula caracteriza uma unidade de armazenamento na memória e possui um
endereço único, o qual é utilizado pelo processador para acessar seu conteúdo.
Portanto, a célula é a menor unidade endereçável em um computador. Monteiro
(2007) complementa essa explicação afirmando que cada célula é constituída de
um conjunto de circuitos eletrônicos, baseados em semicondutores, que
permitem o armazenamento de valores 0 ou 1, os quais representam um dado ou
uma instrução.
A quantidade de bits que pode ser armazenada em uma célula é definida
pelo fabricante. Uma célula contendo N bits permite o armazenamento de
2N combinações de valores, o que representará a quantidade de células
possíveis na memória. Um tamanho comum de célula adotado pelos
fabricantes é 8 bits (1 byte).
A memória secundária também é denominada de memória de massa, por
possuir uma capacidade de armazenamento muito superior à das outras
memórias conforme discutido neste tópico. Outra característica que difere
a memória secundária das outras memórias é o fato de ser permanente
(não volátil), ou seja, não perde o conteúdo armazenado caso o
computador seja desligado.
Este tipo de memória não possui acesso direto pelo processador, sempre
havendo a necessidade de carregamento de dados dos dispositivos de
memória secundária para a memória principal, para que então sejam enviados
ao processador.
Memória Secundária
H D
são especificados o posicionamento dos “Units” nas páginas e a aparência
gráfica da aplicação. As especificações de WebML podem ser representadas
utilizando a linguagem XML, visto que ela não possui um modelo específico para
expressar a apresentação gráfica das páginas, em um nível conceitual. Por esse
motivo, a apresentação das páginas é considerada uma transformação de
documentos; onde se constrói a especificação WebML de uma página em um
arquivo escrito em uma linguagem de implementação concreta como JSP ou
ASP.NET4. Consequentemente, a construção de templates (modelos) para a
apresentação das páginas pode ser construída pelo uso do XSL (Extensible Style
Sheet) complementando o uso do CSS (Cascading Style Sheets).
Memória virtual é uma técnica que usa a memória secundária como uma
cache para armazenamento secundário. Houve duas motivações principais:
 Permitir o compartilhamento seguro e eficiente da memória entre vários
programas;
 Remover os transtornos de programação de uma quantidade pequena e
limitada na memória principal.
MEMÓRIA VIRTUAL
A memória virtual consiste em recursos de hardware e software com três funções
básicas:
i. Realocação (ou recolocação), para assegurar que cada processo (aplicação)
tenha o seu próprio espaço de endereçamento, começando em zero;
ii. proteção, para impedir que um processo utilize um endereço de memória
que não lhe pertença;
iii. Paginação (paging) ou troca (swapping), que possibilita a uma aplicação
utilizar mais memória do que a fisicamente existente (essa é a função mais
conhecida).
Todos os computadores modernos de uso genérico utilizam memória virtual
para executar a mais simples das aplicações, tais como processadores de
texto, folhas de cálculo, jogos, leitores multimídia, etc. Os sistemas
operacionais mais antigos, como o DOS e o Microsoft Windows de 1980, ou os
mainframes da década de 1960, geralmente não tinham a funcionalidade da
memória virtual, com as excepções notáveis do Atlas B5000 e o Apple Lisa.
A memória virtual foi inicialmente criada para possibilitar a um programa ser
executado em um computador com uma quantidade de memória principal
(física) menor que o tamanho de todo o espaço utilizado pelo próprio
programa. Ou seja, o espaço ocupado pelas instruções, dados e pilha de
execução de um programa pode ser maior que o espaço em memória principal
disponível.
História da Memória Virtual
A memória virtual foi desenvolvida por volta de 1959-1962, na Universidade de
Manchester para o Computador Atlas, terminado em 1962. A ideia é atribuída a John
Fotheringham, no entanto, Fritz-Rudolf Güntsch, um cientista alemão, pioneiro da
ciência computacional e, mais tarde, o criador do mainframe Telefunken TR 440,
alega ter inventado o conceito em 1957, na sua tese de doutorado (Conceito lógico
para um sistema digital computacional com múltiplos sistemas assíncronos de
armazenamento e modo de memória rápida automática).
Existem dois mecanismos principais para implementação da memória
virtual: paginação e segmentação.
Na paginação a memória física é dividida em blocos de bytes contíguos
denominados molduras de páginas (page frames), geralmente com
tamanho de 4 KiB (arquiteturas x86 e x86-64) ou 8 KiB (arquiteturas RISC)
de tamanho. Por sua vez, o espaço de memória de um processo (contendo
as instruções e dados do programa) é dividido em páginas que são
fisicamente armazenadas nas molduras e possuem o mesmo tamanho
destas.
Funcionamento da Memória Virtual
Na segmentação existem vários espaços de endereçamento para cada aplicação
(os segmentos). Neste caso, o endereçamento consiste em um par ordenado
deslocamento, onde o deslocamento é a posição do byte dentro do segmento.
Na arquitetura x86 (32 e 64 bits), são usadas a segmentação e a paginação. O
espaço de endereçamento de uma aplicação é dividido em segmentos, onde é
determinado um endereço lógico, que consiste no par [segmento: deslocamento];
o dispositivo de segmentação converte esse endereço para um endereço linear
(virtual); finalmente, o dispositivo de paginação converte o endereço virtual para
físico, localizando a moldura de página que contém os dados solicitados.
CONCLUSÃO
Concluímos que um programa no ambiente de memória virtual não faz referência a endereços
físicos, somente a endereços virtuais. O processador manipula somente endereços da
memória principal.
Assim, antes da execução, os endereços virtuais necessitam ser convertidos para endereços
físicos. Como o espaço de endereçamento Virtual não tem relação com o Espaço de
Endereçamento Real (memória principal), isso permite que o processo esteja fora da memória
principal.
Quando um programa é executado, somente parte dele fica residente em memória principal, o
restante fica em memória secundária até ser chamado. O programador não é afectado pelos
endereços virtuais.
Os compiladores e linkers fazem o trabalho desse gerenciamento. O Sistema Operativo cuida
dos detalhes durante a execução.
MUITO OBRIGADO!

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Aula 7 de Arquitetura
Aula 7 de ArquiteturaAula 7 de Arquitetura
Aula 7 de Arquitetura
 
Arquitetura 8
Arquitetura 8Arquitetura 8
Arquitetura 8
 
Aula 04 memórias - pt. i
Aula 04  memórias - pt. iAula 04  memórias - pt. i
Aula 04 memórias - pt. i
 
Hardware memória principal
Hardware  memória  principalHardware  memória  principal
Hardware memória principal
 
Arquitetura 8 1
Arquitetura 8 1Arquitetura 8 1
Arquitetura 8 1
 
Aula 04 arquitetura de computadores
Aula 04   arquitetura de computadoresAula 04   arquitetura de computadores
Aula 04 arquitetura de computadores
 
Memórias
MemóriasMemórias
Memórias
 
Memoria primária
Memoria primáriaMemoria primária
Memoria primária
 
Trabalho de sd
Trabalho de sdTrabalho de sd
Trabalho de sd
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas Operacionais
 
Arquitetura de computadores – memórias
Arquitetura de computadores – memóriasArquitetura de computadores – memórias
Arquitetura de computadores – memórias
 
Gerência de Armazenamento: Sistemas de Armazenamento em Massa
Gerência de Armazenamento: Sistemas de Armazenamento em MassaGerência de Armazenamento: Sistemas de Armazenamento em Massa
Gerência de Armazenamento: Sistemas de Armazenamento em Massa
 
Pesquisa sobre tipos de memorias
Pesquisa sobre tipos de memoriasPesquisa sobre tipos de memorias
Pesquisa sobre tipos de memorias
 
Aula 6 de Arquitetura de Computadores
Aula 6 de Arquitetura de ComputadoresAula 6 de Arquitetura de Computadores
Aula 6 de Arquitetura de Computadores
 
Endereçamento de memória
Endereçamento de memóriaEndereçamento de memória
Endereçamento de memória
 
Gerenciamento de Memoria
Gerenciamento de MemoriaGerenciamento de Memoria
Gerenciamento de Memoria
 
Tipos memorias2
Tipos memorias2Tipos memorias2
Tipos memorias2
 
Tipos de memórias
Tipos de memóriasTipos de memórias
Tipos de memórias
 
MemóRias
MemóRiasMemóRias
MemóRias
 
Memórias
MemóriasMemórias
Memórias
 

Semelhante a Htm trabalho

Desempenho em equipamentos informáticos
Desempenho em equipamentos informáticosDesempenho em equipamentos informáticos
Desempenho em equipamentos informáticospjclima
 
INTRODUÇÃO À ARQUITETURA DE COMPUTADORES.pptx
INTRODUÇÃO À ARQUITETURA DE COMPUTADORES.pptxINTRODUÇÃO À ARQUITETURA DE COMPUTADORES.pptx
INTRODUÇÃO À ARQUITETURA DE COMPUTADORES.pptxCidrone
 
Computação de Alto Desempenho com PS3
Computação de Alto Desempenho com PS3Computação de Alto Desempenho com PS3
Computação de Alto Desempenho com PS3Orlando Junior
 
Gerenciamento de memoria
Gerenciamento de memoriaGerenciamento de memoria
Gerenciamento de memoriaJailson Silva
 
Aula 5a - Sistemas Operacionais
Aula 5a - Sistemas OperacionaisAula 5a - Sistemas Operacionais
Aula 5a - Sistemas OperacionaisJocelma Rios
 
Geração TEC - Help Desk - Hardwares e Sistemas Operacionais
Geração TEC - Help Desk - Hardwares e Sistemas OperacionaisGeração TEC - Help Desk - Hardwares e Sistemas Operacionais
Geração TEC - Help Desk - Hardwares e Sistemas OperacionaisAlan Carlos
 
Geração TEC Help Desk - Hardwares e Sistemas Operacionais
Geração TEC Help Desk - Hardwares e Sistemas OperacionaisGeração TEC Help Desk - Hardwares e Sistemas Operacionais
Geração TEC Help Desk - Hardwares e Sistemas OperacionaisAlan Carlos
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3Universal.org.mx
 
Aulas de Informatica para os cursos de psicologia e RH
Aulas de Informatica para os cursos de psicologia e RHAulas de Informatica para os cursos de psicologia e RH
Aulas de Informatica para os cursos de psicologia e RHssuserc13d5d
 
Arquitetura 8 1 - 2012.2
Arquitetura 8   1 - 2012.2Arquitetura 8   1 - 2012.2
Arquitetura 8 1 - 2012.2Paulo Fonseca
 

Semelhante a Htm trabalho (20)

Arquitetura 8
Arquitetura 8Arquitetura 8
Arquitetura 8
 
Desempenho em equipamentos informáticos
Desempenho em equipamentos informáticosDesempenho em equipamentos informáticos
Desempenho em equipamentos informáticos
 
Arquitetura 8 1
Arquitetura 8 1Arquitetura 8 1
Arquitetura 8 1
 
Gestao de Memoria_SLIDE.pptx
Gestao de Memoria_SLIDE.pptxGestao de Memoria_SLIDE.pptx
Gestao de Memoria_SLIDE.pptx
 
INTRODUÇÃO À ARQUITETURA DE COMPUTADORES.pptx
INTRODUÇÃO À ARQUITETURA DE COMPUTADORES.pptxINTRODUÇÃO À ARQUITETURA DE COMPUTADORES.pptx
INTRODUÇÃO À ARQUITETURA DE COMPUTADORES.pptx
 
Informatica concursos
Informatica concursosInformatica concursos
Informatica concursos
 
memorias
memoriasmemorias
memorias
 
Computação de Alto Desempenho com PS3
Computação de Alto Desempenho com PS3Computação de Alto Desempenho com PS3
Computação de Alto Desempenho com PS3
 
Gerenciamento memoria
Gerenciamento memoriaGerenciamento memoria
Gerenciamento memoria
 
S.o aula 2324
S.o aula 2324S.o aula 2324
S.o aula 2324
 
Gerenciamento de memoria
Gerenciamento de memoriaGerenciamento de memoria
Gerenciamento de memoria
 
Aula 5a - Sistemas Operacionais
Aula 5a - Sistemas OperacionaisAula 5a - Sistemas Operacionais
Aula 5a - Sistemas Operacionais
 
Aula Noções de Informatica
Aula Noções de InformaticaAula Noções de Informatica
Aula Noções de Informatica
 
Geração TEC - Help Desk - Hardwares e Sistemas Operacionais
Geração TEC - Help Desk - Hardwares e Sistemas OperacionaisGeração TEC - Help Desk - Hardwares e Sistemas Operacionais
Geração TEC - Help Desk - Hardwares e Sistemas Operacionais
 
Geração TEC Help Desk - Hardwares e Sistemas Operacionais
Geração TEC Help Desk - Hardwares e Sistemas OperacionaisGeração TEC Help Desk - Hardwares e Sistemas Operacionais
Geração TEC Help Desk - Hardwares e Sistemas Operacionais
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3
 
Mem%f3ria
Mem%f3riaMem%f3ria
Mem%f3ria
 
Joaopinheiro
JoaopinheiroJoaopinheiro
Joaopinheiro
 
Aulas de Informatica para os cursos de psicologia e RH
Aulas de Informatica para os cursos de psicologia e RHAulas de Informatica para os cursos de psicologia e RH
Aulas de Informatica para os cursos de psicologia e RH
 
Arquitetura 8 1 - 2012.2
Arquitetura 8   1 - 2012.2Arquitetura 8   1 - 2012.2
Arquitetura 8 1 - 2012.2
 

Htm trabalho

  • 1. Arquitetua Avançada de Computadores Estudo dos Sistemas de Memórias Virtuais Grupo n.º 7
  • 2. 20180573 20180258 20180257 Integrantes do Grupo Manuel Júnior F. Freitas Almeida Tomás Kapango Ndombele João Baptista
  • 3. Memória virtual é uma técnica que se combina as memórias principal e secundária para dar a impressão ao usuário de existir uma memória principal muito maior do que a real existente. Os programas deixam de estar limitados ao tamanho da memória principal, pois podem estar associados à memoria secundária. Visa diminuir a fragmentação da memória principal e aumentar seu compartilhamento. Algumas funções da Gerência de Memória Virtual são desenvolvidas em Hardware. (Desempenho) INTRODUÇÃO
  • 4. SISTEMA DE MEMÓRIA E SUAS CARACTERÍSTICAS A memória dos computadores é um elemento indispensável e tão importante quanto a Unidade Central de Processamento (CPU) ou processador. A memória é um dispositivo que permite ao computador armazenar dados de forma temporária ou permanente. Segundo Tanenbaum (2007), a memória é a parte do computador onde os programas e os dados são armazenados. Sem uma memória na qual os processadores (CPU) possam ler ou escrever informações, o conceito de computador digital com programa armazenado não pode ser implementado.
  • 5. Para o funcionamento adequado de um computador, é necessário dispor, nele mesmo, de diferentes tipos de memória. Em algumas tarefas, pode ser fundamental que a transferência de dados seja feita da forma mais rápida possível – é o caso das tarefas realizadas pela CPU, onde a velocidade é fator preponderante, ao passo que a quantidade de bits a ser manipulada é muito pequena. Esse tipo de memória deve possuir características diferentes daquele em que a capacidade de armazenamento é mais importante que a sua velocidade de transferência de e para outros dispositivos. Destacamos que a necessidade da existência de vários tipos de memória ocorre em virtude de vários fatores concorrentes, mas principalmente em função do aumento da velocidade das CPUs (a qual é muito maior do que o tempo de acesso da memória) e da capacidade de armazenamento.
  • 6. Considerando os diversos tipos de memórias existentes, as quais variam em função de sua tecnologia de fabricação, capacidade de armazenamento, velocidade e custo, pode-se dizer que fica muito difícil projetar um computa- dor utilizando-se apenas um único tipo de memória. Dessa forma, segundo Monteiro (2007), o computador possui muitas memórias, as quais se encontram interligadas de forma bem estruturada, constituindo o que é chamado de subsistema de memória, o qual é parte do sistema computacional.
  • 7. Figura 1. Características básicas dos tipos de memória Localização É Volátil? Velocidade Capacidade de armazenamento Custo por bit Registrador Processador Sim Muito alta (opera na velocidade do processador) Muito baixa (Bytes) Muito alto Cache Processador Sim Alta (opera na velocidade do processador) Baixa (KB) Alto Principal Placa-mãe RAM – sim ROM – não Depende do tipo de memória instalada Média (MB) Médio (tem caído muito) Secundária HD, CDs, etc. Não Baixa (lenta) Alta (GB) Baixo (tem caído muito)
  • 8. Memória Cache Na busca de soluções para a limitação imposta pela comunicação entre processador e memória, foi desenvolvida uma técnica que consiste na inclusão de um dispositivo de memória entre a memória principal e o processador memória cache. Sua função principal é acelerar a velocidade de transferência das informações entre processador e memória principal e, com isso, aumentar o desempenho dos sistemas de computação. A memória cache é um tipo de memória construída com tecnologias semelhantes às do processador, isso eleva os custos de produção. Para amenizar o fator custo e dispor das vantagens de um sistema computacional com desempenho mais rápido, foram incorporadas ao computador pequenas porções de memória cache, localizadas internamente ao processador e entre ele e a memória principal, as quais funcionam como um espelho de parte da memória principal.
  • 9. Nesse caso, quando o processador solicita um determinado dado e o encontra na cache, não há necessidade de requisitá-lo à memória principal, reduzindo significativamente o tempo de processamento. Ou seja, quanto mais memória cache um processador possuir, melhor será o seu desempenho.
  • 10. Memória principal A memória principal é denominada memória RAM (Random Access Me- mory), corresponde a um tipo de memória volátil, ou seja, seu conteúdo fica armazenado enquanto o computador estiver ligado; ao desligar a corrente elétrica, o conteúdo da memória RAM é apagado. A Figura 1 apresenta um pente (módulo) de memória RAM típico.
  • 11. Organização da memória principal A memória principal encontra-se organizada em um conjunto de células, sendo que cada uma delas representa o agrupamento de uma quantidade de bits. Cada célula caracteriza uma unidade de armazenamento na memória e possui um endereço único, o qual é utilizado pelo processador para acessar seu conteúdo. Portanto, a célula é a menor unidade endereçável em um computador. Monteiro (2007) complementa essa explicação afirmando que cada célula é constituída de um conjunto de circuitos eletrônicos, baseados em semicondutores, que permitem o armazenamento de valores 0 ou 1, os quais representam um dado ou uma instrução.
  • 12. A quantidade de bits que pode ser armazenada em uma célula é definida pelo fabricante. Uma célula contendo N bits permite o armazenamento de 2N combinações de valores, o que representará a quantidade de células possíveis na memória. Um tamanho comum de célula adotado pelos fabricantes é 8 bits (1 byte).
  • 13. A memória secundária também é denominada de memória de massa, por possuir uma capacidade de armazenamento muito superior à das outras memórias conforme discutido neste tópico. Outra característica que difere a memória secundária das outras memórias é o fato de ser permanente (não volátil), ou seja, não perde o conteúdo armazenado caso o computador seja desligado. Este tipo de memória não possui acesso direto pelo processador, sempre havendo a necessidade de carregamento de dados dos dispositivos de memória secundária para a memória principal, para que então sejam enviados ao processador. Memória Secundária
  • 14. H D são especificados o posicionamento dos “Units” nas páginas e a aparência gráfica da aplicação. As especificações de WebML podem ser representadas utilizando a linguagem XML, visto que ela não possui um modelo específico para expressar a apresentação gráfica das páginas, em um nível conceitual. Por esse motivo, a apresentação das páginas é considerada uma transformação de documentos; onde se constrói a especificação WebML de uma página em um arquivo escrito em uma linguagem de implementação concreta como JSP ou ASP.NET4. Consequentemente, a construção de templates (modelos) para a apresentação das páginas pode ser construída pelo uso do XSL (Extensible Style Sheet) complementando o uso do CSS (Cascading Style Sheets).
  • 15. Memória virtual é uma técnica que usa a memória secundária como uma cache para armazenamento secundário. Houve duas motivações principais:  Permitir o compartilhamento seguro e eficiente da memória entre vários programas;  Remover os transtornos de programação de uma quantidade pequena e limitada na memória principal. MEMÓRIA VIRTUAL
  • 16. A memória virtual consiste em recursos de hardware e software com três funções básicas: i. Realocação (ou recolocação), para assegurar que cada processo (aplicação) tenha o seu próprio espaço de endereçamento, começando em zero; ii. proteção, para impedir que um processo utilize um endereço de memória que não lhe pertença; iii. Paginação (paging) ou troca (swapping), que possibilita a uma aplicação utilizar mais memória do que a fisicamente existente (essa é a função mais conhecida).
  • 17. Todos os computadores modernos de uso genérico utilizam memória virtual para executar a mais simples das aplicações, tais como processadores de texto, folhas de cálculo, jogos, leitores multimídia, etc. Os sistemas operacionais mais antigos, como o DOS e o Microsoft Windows de 1980, ou os mainframes da década de 1960, geralmente não tinham a funcionalidade da memória virtual, com as excepções notáveis do Atlas B5000 e o Apple Lisa. A memória virtual foi inicialmente criada para possibilitar a um programa ser executado em um computador com uma quantidade de memória principal (física) menor que o tamanho de todo o espaço utilizado pelo próprio programa. Ou seja, o espaço ocupado pelas instruções, dados e pilha de execução de um programa pode ser maior que o espaço em memória principal disponível. História da Memória Virtual
  • 18. A memória virtual foi desenvolvida por volta de 1959-1962, na Universidade de Manchester para o Computador Atlas, terminado em 1962. A ideia é atribuída a John Fotheringham, no entanto, Fritz-Rudolf Güntsch, um cientista alemão, pioneiro da ciência computacional e, mais tarde, o criador do mainframe Telefunken TR 440, alega ter inventado o conceito em 1957, na sua tese de doutorado (Conceito lógico para um sistema digital computacional com múltiplos sistemas assíncronos de armazenamento e modo de memória rápida automática).
  • 19. Existem dois mecanismos principais para implementação da memória virtual: paginação e segmentação. Na paginação a memória física é dividida em blocos de bytes contíguos denominados molduras de páginas (page frames), geralmente com tamanho de 4 KiB (arquiteturas x86 e x86-64) ou 8 KiB (arquiteturas RISC) de tamanho. Por sua vez, o espaço de memória de um processo (contendo as instruções e dados do programa) é dividido em páginas que são fisicamente armazenadas nas molduras e possuem o mesmo tamanho destas. Funcionamento da Memória Virtual
  • 20. Na segmentação existem vários espaços de endereçamento para cada aplicação (os segmentos). Neste caso, o endereçamento consiste em um par ordenado deslocamento, onde o deslocamento é a posição do byte dentro do segmento. Na arquitetura x86 (32 e 64 bits), são usadas a segmentação e a paginação. O espaço de endereçamento de uma aplicação é dividido em segmentos, onde é determinado um endereço lógico, que consiste no par [segmento: deslocamento]; o dispositivo de segmentação converte esse endereço para um endereço linear (virtual); finalmente, o dispositivo de paginação converte o endereço virtual para físico, localizando a moldura de página que contém os dados solicitados.
  • 21. CONCLUSÃO Concluímos que um programa no ambiente de memória virtual não faz referência a endereços físicos, somente a endereços virtuais. O processador manipula somente endereços da memória principal. Assim, antes da execução, os endereços virtuais necessitam ser convertidos para endereços físicos. Como o espaço de endereçamento Virtual não tem relação com o Espaço de Endereçamento Real (memória principal), isso permite que o processo esteja fora da memória principal. Quando um programa é executado, somente parte dele fica residente em memória principal, o restante fica em memória secundária até ser chamado. O programador não é afectado pelos endereços virtuais. Os compiladores e linkers fazem o trabalho desse gerenciamento. O Sistema Operativo cuida dos detalhes durante a execução.