Espacio de direcciones
# Espacio de direcciones

En informática, un espacio de direcciones define un intervalo de direcciones discretas, cada una de las cuales puede corresponder a un host de red, un dispositivo periférico, un sector de disco, una celda de memoria u otra entidad lógica o física.

Para que los programas informáticos guarden y recuperen los datos almacenados, cada unidad de datos debe tener una dirección en la que pueda localizarse individualmente, o bien el programa no podrá encontrar y manipular los datos. El número de espacios de direcciones disponibles dependerá de la estructura de dirección subyacente y éstos generalmente estarán limitados por la arquitectura de la computadora que se está utilizando.

Los espacios de direcciones se crean combinando suficientes calificadores identificados de manera única para hacer que una dirección no sea ambigua (dentro de un espacio de direcciones particular). Para la dirección física de una persona, el espacio de direcciones sería una combinación de ubicaciones, como un vecindario, ciudad, ciudad o país. Algunos elementos de un espacio de direcciones pueden ser iguales, pero si cualquier elemento en la dirección es diferente de las direcciones en dicho espacio, hará referencia a diferentes entidades. Un ejemplo podría ser que hay varios edificios en la misma dirección de la «Calle 32», pero en diferentes ciudades, lo que demuestra que las diferentes ciudades tienen, aunque de forma similar, espacios de direcciones diferentes.

Un espacio de direcciones normalmente proporciona (o permite) un particionamiento a varias regiones de acuerdo con la estructura matemática que tiene. En el caso del orden total, como para las direcciones de memoria, éstas son simplemente trozos. Una jerarquía de dominios anidados aparece en el caso del árbol ordenado dirigido como para el sistema de nombres de dominio o una estructura de directorios; esto es similar al diseño jerárquico de las direcciones postales. En Internet, por ejemplo, la IANA (Internet Assigned Numbers Authority) asigna rangos de direcciones IP a varios registros para permitirles gestionar cada una de sus partes del espacio global de direcciones de Internet.

## Ejemplos

Los usos de direcciones incluyen, pero no se limitan a los siguientes:

* Direcciones de memoria para la memoria principal, E/S mapeada en memoria, así como para la memoria virtual;
* Direcciones de dispositivo en una tarjeta de expansión;
* Direccionamiento sectorial para unidades de disco;
* Nombres de archivo en un volumen particular;
* Varios tipos de direcciones de host de red en redes informáticas;
* Localizadores de recursos uniformes en Internet.
* Virtualización

## Mapeo de direcciones y traducción

Otra característica común de los espacios de direcciones son las asignaciones y las traducciones, que a menudo forman numerosas capas. Esto generalmente significa que algunas direcciones de nivel superior deben ser traducidas a las de nivel inferior de alguna manera. Por ejemplo, el sistema de archivos en un disco lógico opera números de sectores lineales, que deben traducirse a direcciones absolutas del sector de direccionamiento de bloque lógico, en casos simples, mediante la adición de la primera dirección sectorial de la partición. Luego, para una unidad de disco conectada a través de ATA Paralelo, cada uno de ellos debe convertirse en una dirección lógica (significa falso) del Cilindro-Cabezal-Sector debido a las deficiencias históricas de la interfaz. Se convierte de nuevo a LBA por el controlador de periférico de disco y, finalmente, a los cilindros físicos, cabeza y números de sector.

El sistema de nombres de dominio asigna sus nombres a (y de) direcciones específicas de la red (normalmente direcciones IP), que a su vez pueden asignarse a las direcciones de red de la capa de enlace a través de protocolo de resolución de direcciones. Además, la traducción de direcciones de red puede producirse en el borde de diferentes espacios IP, como una red de área local e Internet.

Un ejemplo icónico de traducción de direcciones de virtual a físico es la memoria virtual, donde diferentes páginas de espacio de direcciones virtuales se asignan al archivo de página o al espacio de direcciones físicas de la memoria principal. Es posible que varias direcciones virtuales numéricamente diferentes se refieran a una dirección física y por lo tanto al mismo byte físico de RAM. También es posible que una única dirección virtual se trate a cero, una, o más de una dirección física.

