Indica el tipo de recurso que describe esta estructura.
Valor
Significado
0
Indica que este recurso es un intervalo de memoria.
1
Indica que este recurso es un intervalo de E/S.
2
Indica que este recurso es un intervalo de números de bus.
3-191
Estos valores están reservados para uso futuro.
192-255
Estos valores están reservados para su uso por parte del proveedor de hardware.
GeneralFlags
Valor que contiene las marcas de bits que son comunes a todos los tipos de recursos.
Bit(s)
Significado
0 - Marca consumidor/productor
Cuando se establece, esto indica que el dispositivo consume este recurso.
1 - Tipo de descodificación
Cuando se establece, indica que este puente descodifica de forma resta la dirección. Esto solo se aplica a los puentes de nivel superior.
Cuando no se establece, indica que este puente descodifica positivamente esta dirección.
2 - Dirección mínima fija
Cuando se establece, indica que la dirección mínima es fija.
3 - Número máximo de direcciones fijas
Cuando se establece, indica que la dirección máxima es fija.
De 4 a 7 - Reservado
Estos bits están reservados y deben establecerse en cero.
TypeSpecificFlags
El valor de este miembro depende del valor del miembro ResourceFlags . Las marcas de cada tipo de recurso se describen en las tablas siguientes.
Recurso de memoria (ResourceFlags = 0)
Bit(s)
Significado
0 - Estado de escritura
Cuando se establece, indica que este intervalo de memoria está disponible para lectura y escritura. De lo contrario, esto indica que este intervalo de memoria es de solo lectura.
De 1 a 2: atributos de memoria (MEM)
0 : indica que la memoria no se puede almacenar en caché.
1 : indica que la memoria se puede almacenar en caché.
2 : indica que la memoria es almacenable en caché y admite la combinación de escritura.
3 - La memoria es almacenable en caché y captura previa.
De 3 a 4: atributos de memoria (MTP)
Estos bits solo se definen si este recurso de memoria describe la RAM del sistema.
0 - Memoria de intervalo de direcciones: este intervalo está disponible para que el sistema operativo pueda usar la RAM.
1 - Intervalo de direcciones reservado: este intervalo de direcciones está en uso o reservado por el sistema y no se debe incluir en el grupo de memoria asignable del administrador de memoria del sistema operativo.
2 - Intervalo de direcciones ACPI: ACPI Reclamar memoria. El sistema operativo puede usar este intervalo después de leer las tablas ACPI.
3 - Intervalo de direcciones NVS: MEMORIA DE NVS ACPI. Este intervalo de direcciones está en uso o reservado por el sistema y no debe ser utilizado por el sistema operativo. Este intervalo es necesario para guardarlo y restaurarse a través de una suspensión nvS.
5- Traducción de memoria a E/S
0 - Type-static: este recurso es memoria en los lados principal y secundario del puente.
1 - Traducción de tipos: este recurso es la memoria en el lado secundario del puente y la E/S en el lado principal del puente.
De 6 a 7 - Reservado
Estos bits están reservados y deben establecerse en cero.
Recurso de E/S (ResourceFlags = 1)
Bit(s)
Significado
De 0 a 1 : intervalo
0 - Reservado.
1 - Solo intervalos que no son ISA. Esta marca es para puentes en sistemas con varios puentes. Establecer este bit significa que la ventana de memoria especificada en este descriptor se limita a las direcciones de E/S que no son ISA que se encuentran dentro de la ventana especificada. Los intervalos de E/S que no son ISA son: n100-n3FF, n500-n7FF, n900-nBFF, nD00-nFFF. Este bit solo se puede establecer para puentes completamente configurados a través del espacio de nombres ACPI.
2 - Solo intervalos ISA. Esta marca es para puentes en sistemas con varios puentes. Establecer este bit significa que la ventana de memoria especificada en este descriptor se limita a las direcciones de E/S de ISA que se encuentran dentro de la ventana especificada. Los intervalos de E/S de ISA son: n000-n0FF, n400-n4FF, n800-n8FF, nC00-nCFF. Este bit solo se puede establecer para puentes completamente configurados a través del espacio de nombres ACPI.
3 - La ventana de memoria cubre todo el intervalo
De 2 a 3 - Reservado
Estos bits están reservados y deben establecerse en cero.
4- Traducción de E/S a memoria
0 - Type-static: este recurso es E/S en los lados principal y secundario del puente.
1 - Traducción de tipos: este recurso es E/S en el lado secundario del puente y la memoria en el lado principal del puente.
5 - Traducción dispersa
Este bit solo es significativo si se establece el bit 4 (traducción de E/S a memoria).
0 - Traducción densa: la dirección de memoria del lado principal de cualquier puerto de E/S específico dentro del intervalo secundario se puede encontrar mediante la siguiente función.
address = port + TranslationAddress
1 - Traducción dispersa: la dirección de memoria del lado principal de cualquier puerto de E/S específico dentro del intervalo secundario se puede encontrar mediante la siguiente función.
En la dirección usada para acceder al puerto de E/S, los bits de 2 a 11 deben ser idénticos a los bits de 12 a 21, lo que proporciona cuatro bytes de puertos de E/S en cada página de 4 KB.
De 6 a 7 - Reservado
Estos bits están reservados y deben establecerse en cero.
Recurso de intervalo de números de bus (ResourceFlags = 2)
Bit(s)
Significado
De 0 a 7 - Reservado
Estos bits están reservados y deben establecerse en cero.
RevisionId
Indica la revisión del descriptor de espacio de direcciones extendido detallado por esta estructura. Para ACPI 3.0, este valor es 1.
Reserved
Granularity
Máscara de bits que indica qué bits se han descodificado.
MinimumAddress
Dirección inicial mínima. En el caso de los puentes que traducen direcciones, este es el espacio de direcciones en el lado secundario del puente.
MaximumAddress
Dirección inicial máxima. En el caso de los puentes que traducen direcciones, este es el espacio de direcciones en el lado secundario del puente.
TranslationAddress
En el caso de los puentes que traducen direcciones a través del puente, esta es la dirección del lado principal.
AddressLength
Longitud de la dirección.
TypeAttribute
Indica los atributos específicos del tipo de recurso especificado en el miembro ResourceFlags . Si ResourceFlags es cero, este valor es cero; de lo contrario, el significado del valor se puede encontrar en la especificación UEFI de la sección titulada GetMemoryMap().