| dbpprop:abstract
|
- In computer science, execute in place (XIP) is a method of executing programs directly from long term storage rather than copying it into RAM. It is an extension of using shared memory to reduce the total amount of memory required. Its general effect is that the program text consumes no writable memory, saving it for dynamic data, and that all instances of the program are run from a single copy. For this to work, several criteria have to be met: The storage must provide a similar interface to the CPU as regular memory (or an adaptive layer must be present), This interface must provide sufficiently fast read operations with a random access pattern, The file system, if one is used, needs to expose appropriate mapping functions, The program must either be linked to be aware of the address the storage appears at in the system, or must be position-independent, The program must not modify data within the loaded image. The storage requirements are usually met by using NOR flash memory, which can be addressed as individual words for read operations, although it is a bit slower than normal system RAM in most setups. Typically, the first stage boot loader is an XIP program that is linked to run at the address at which the flash chip(s) are mapped at power-up and contains a minimal program to set up the system RAM (which depends on the components used on the individual boards and cannot be generalized enough so that the proper sequence could be embedded into the processor hardware) and then loads the second stage bootloader or the OS kernel into RAM. During this initialization, no writable memory is available, so all computations have to be performed within the processor registers. For this reason, first stage boot loaders tend to be written in assembler language and only do the minimum to provide a normal execution environment for the next program. For a kernel or bootloader, address space generally is assigned internally, so in order to use XIP for them, it is sufficient to instruct the linker to place unmodifiable and modifiable data in different address ranges and provide a mechanism for the modifiable data to be copied to writable memory before any code is run that assumes that data can be accessed normally. This can be done as part of the previous stage, or within a small code segment at the beginning of the program. If address space is assigned externally, such as in an application program that is run on a system that does not provide virtual memory, the compiler needs to access all modifiable data by adding an offset to a pointer to a private copy of the data area. In this case, the external loader is responsible for setting up the instance specific memory areas. XIP places requirements on file systems that are often difficult to meet. The entire file must be stored within consecutive bytes and may not be fragmented, while flash based file systems often aim to distribute data into sectors of the flash chip that have the least erase cycles and even out the wear on the chip, prolonging its lifetime. All these complications and the speed tradeoff mean that XIP is generally only used for first stage bootloaders or when memory is in extremely short supply. A relatively new file system for Linux, called AXFS (Advanced XIP File System), aims to overcome some of the shortcomings associated with XIP, especially in regards to the in-place execution of user-space applications. It makes for instance possible to split up an executable binary file into "XIP regions", thus avoiding the restriction of fragementation that was mentioned above.
- 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. 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. 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 hi ha qui hi posa el nucli del Linux ('Kernel XIP') i es parla també de XIP dels programes ('Application XIP') però per aquests darrers cal un sistema de fitxers específic.
- Execute in place (XIP) — позволяет выполнять программу с того накопителя, где она находится, без предварительной загрузки её в оперативную память. За счёт этого снижаются требования к объёму оперативной памяти с произвольным доступом. Программы, запущенные на выполнение таким образом, могут создавать некоторые из своих сегментов в оперативной памяти, а сегмент кода читать с накопителя. В основном используется для систем с небольшим объёмом оперативной памяти.
|
| rdfs:comment
|
- In computer science, execute in place (XIP) is a method of executing programs directly from long term storage rather than copying it into RAM. It is an extension of using shared memory to reduce the total amount of memory required. Its general effect is that the program text consumes no writable memory, saving it for dynamic data, and that all instances of the program are run from a single copy.
- 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).
- Execute in place (XIP) — позволяет выполнять программу с того накопителя, где она находится, без предварительной загрузки её в оперативную память. За счёт этого снижаются требования к объёму оперативной памяти с произвольным доступом.
|