Sobreposição (programação de computadores)

método de prohramação
(Redirecionado de Overlay)

Em computação, de forma geral, a sobreposição (do inglês overlay) significa "substituir um bloco de instruções ou dados armazenados com outros".[1] A sobreposição é um método de programação que permite que programas sejam maiores que a memória principal do computador. Um sistema embarcado normalmente usaria a sobreposição devido a limitação da memória física, que é a memória interna para um sistema em chip e a falta das facilidades de memória virtual.

Esquema de sobreposição

Utilização editar

A construção de um programa de sobreposição envolve dividir manualmente um programa em blocos de código objeto independentes, chamados de overlays, dispostos em uma estrutura de árvore. Segmentos irmãos, aqueles que estão no mesmo nível de profundidade, compartilham a mesma memória, chamada de região de sobreposição ou região de destino. Um gerente de sobreposição, a parte do sistema operacional ou a parte do programa de sobreposição, carrega a sobreposição desejada da memória externa na sua região de destino quando é necessário. Muitas vezes os ligadores fornecem suporte para sobreposições.[2]

Exemplo editar

O exemplo a seguir mostra as instruções de controle que instruem o Editor de Ligação do OS/360 para vincular um programa de sobreposição, destinado a mostrar a estrutura:

 INCLUDE SYSLIB(MOD1)
 INCLUDE SYSLIB(MOD2)
 OVERLAY A
   INCLUDE SYSLIB(MOD3)
     OVERLAY AA
       INCLUDE SYSLIB(MOD4)
       INCLUDE SYSLIB(MOD5)
     OVERLAY AB
        INCLUDE SYSLIB(MOD6)
 OVERLAY B
    INCLUDE SYSLIB(MOD7)
                       +--------------+
                       | Root Segment |
                       | MOD1, MOD2   |
                       +--------------+
                               |
                    +----------+----------+
                    |                     |
             +-------------+       +-------------+
             |  Overlay A  |       |  Overlay B  |
             |  MOD3       |       |  MOD7       |
             +-------------+       +-------------+
                    |
           +--------+--------+
           |                 |
    +-------------+   +-------------+
    | Overlay AA  |   | Overlay AB  |
    | MOD4, MOD5  |   | MOD6        |
    +-------------+   +-------------+

Referências

  Este artigo sobre computação é um esboço. Você pode ajudar a Wikipédia expandindo-o.