Execució en plaça

De Viquipèdia
Dreceres ràpides: navegació, cerca

En informàtica, execució en plaça o XIP en sigles angleses per eXecute In Place, és un mètode d'execució del codi des del suport de memòria secundària, ara per ara memòries NOR-Flash, sense traslladar el codi a memòria principal.

És un sistema utilitzat en sistemes incrustats per

  • reduir la quantitat de memòria RAM necessària, reduint així el consum elèctric superior en la RAM (important en els mòbils).
  • reduir la paginació en sistemes de temps real, evitant els retards per les manques a la memòria cau, reduint així les desviacions de temps.
  • reduir la fragmentació de l'espai lliure en memòria principal quan no es disposa de gestor de memòria (MMU).
  • reduir el temps d'arrencada per l'estalvi de descomprimir i copiar el codi inicial o el complet a la RAM.

El desavantatge és que augmenta una mica el temps d'execució perquè aquestes memòries són una mica més lentes.[1]

Això és possible en mitjans adressables per paraules, contràriament als adressables per blocs.

El seu ús més important és en la ROM d'arrencada, però a banda s'hi poden afegir els segments fixos de l'aplicació (codi i valors textuals) deixant per la RAM els segments de variables, separats en compilar.

En sistemes amb gestor de memòria (MMU) hi ha qui hi posa el nucli del Linux ('Kernel XIP')[2] i es parla també de XIP dels programes ('Application XIP')[3] però per aquests darrers cal un sistema de fitxers específic.

Sistemes de fitxers per a XIP[modifica | modifica el codi]

CRAMFS
és el primer a ser usat amb aquesta finalitat. Cal aplicar al nucli el pedaç "CRAMFS Linear XIP"[4]
AXFS
experimental. Combina segments d'execució XIP amb altres d'execució en RAM segons freqüència d'ús, desant aquests darrers comprimits en NAND-Flash.[5]
xip2fs
desenvolupament de IBM per a maquinari propi del S/390.[6]

Referències[modifica | modifica el codi]

  1. Kernel.org - Mètodes per millorar el temps d'arrencada en Linux - XIP Design Tradeoffs (anglès) XIP al nucli; XIP a les aplicacions; Guanys i pèrdues
  2. Kernel XIP (anglès)
  3. Application XIP (anglès)
  4. Pedaç "CRAMFS linear XIP" per a Linux 2.6.21 (anglès)
  5. Kernel.org - Presentant l'Advanced XIP File System (anglès)
  6. Linux for S/390 - Execute in Place file system driver - xip2fs (anglès)

Enllaços externs[modifica | modifica el codi]