Diferencia entre revisiones de «64 bits»

Contenido eliminado Contenido añadido
m Revertidos los cambios de 148.215.24.27 a la última edición de Diegusjaimes
Línea 102:
Advierta que la elección de un modelo de programación se hace al compilar, y varios modelos pueden coexistir en el mismo SO. No obstante, generalmente suele predominar el modelo de programación elegido por la API del sistema operativo como modelo primario.
 
Otro detalle a tener en cuenta es el modelo de datos usado para los [[controlador de dispositivo|controladores de dispositivos]]. Los controladores de dispositivos conforman la mayor parte del código del sistema operativo en la mayoría de los sistemas operativos modernos (aunque muchos puedan no ser cargados mientras el sistema operativo se ejecuta). Muchos controladores hacen un frecuente uso de punteros para manipular datos, y en algunos casos han de cargar punteros de un tamaño determinado en el hardware que soportan para realizar [[Acceso directo a memoria|DMA]]. Por ejemplo, un controlador para un dispositivo PCI de 32 bits solicitando al dispositivo transferir datos usando DMA a áreas superiores de la memoria de una máquina de 64 bits podría no satisfacer las peticiones del sistema operativo de cargar datos desde el dispositivo a la memoria por encima de la barrera de los 4 gigabytesgibibytes, pues los punteros para esas direcciones no cabrían en los registros DMA del dispositivo. Este problema se soluciona haciendo que el sistema operativo tenga en cuenta las restricciones de memoria del dispositivo a la hora de generar peticiones de DMA a los dispositivos, o bien usando una [[IOMMU]].
 
== Arquitecturas de microprocesador de 64 bits actuales ==