Patent ES-2763545-T3 (ES)
Title: Múltiples conjuntos de campos de atributos dentro de una única entrada de tabla de páginas
Inventor: SHARP COLIN CHRISTOPHER
IPC: G06F12/1009
Filed: 2013-07-18
Granted: 2020-05-29
Abstract: Un procedimiento que comprende: traducir (410), por una primera unidad de procesamiento (110, 210), una dirección de memoria virtual a una dirección de memoria física usando una tabla de páginas común (232, 332) almacenada en una memoria (230), en el que la primera unidad de procesamiento comprende un unidad central de procesamiento (CPU); acceder (420), por la primera unidad de procesamiento, a un fragmento de memoria (334A-N) identificado por la dirección de memoria física; traducir (430), por una segunda unidad de procesamiento (120, 220), la dirección de memoria virtual a la dirección de memoria física usando la tabla de páginas común almacenada en la memoria, en el que la segunda unidad de procesamiento comprende una unidad de procesamiento de gráficos (GPU); acceder (440), por la segunda unidad de procesamiento, al fragmento de memoria identificado por la dirección de memoria física; traducir, por una tercera unidad de procesamiento (240), una segunda dirección de memoria virtual a una dirección de memoria física usando la tabla de páginas común almacenada en la memoria; acceder, por la tercera unidad de procesamiento, a un fragmento de memoria identificado por la dirección de memoria física; en el que la tabla de páginas común es común a la primera unidad de procesamiento, la segunda unidad de procesamiento y la tercera unidad de procesamiento, en el que la primera unidad de procesamiento comprende una primera unidad de gestión de memoria, MMU, y en el que la primera MMU está configurada para acceder a la tabla de páginas común, en el que la segunda unidad de procesamiento y la tercera unidad de procesamiento comparten una MMU de entrada/salida, IOMMU, y en el que la IOMMU está configurada para acceder a la tabla de páginas común, en el que la tabla de páginas común almacena mapeo de direcciones de memoria virtual a direcciones de memoria física para fragmentos de memoria a los que accede un trabajo de una aplicación, en el que la tabla de páginas común comprende una entrada de página que usan la primera unidad de procesamiento (110, 210) y la segunda unidad de procesamiento (120, 220) y la tercera unidad de procesamiento para acceder al fragmento de memoria (334A-N), en el que la entrada de página comprende un primer conjunto de bits de atributo (352A-N) que define la accesibilidad del fragmento de memoria por la primera unidad de procesamiento, un segundo conjunto de bits de atributo (354A-N) que define la accesibilidad del mismo fragmento de memoria por la segunda unidad de procesamiento, un tercer conjunto de bits de atributo (356A-N) que define la accesibilidad del mismo fragmento de memoria por la tercera unidad de procesamiento, y bits de dirección física (358A-N) que definen una dirección física del fragmento de memoria, en el que la accesibilidad del fragmento de memoria por la primera unidad de procesamiento, como se define por el primer conjunto de bits de atributo, es diferente a la accesibilidad del fragmento de memoria por la segunda unidad de procesamiento, como se define por el segundo conjunto de bits de atributo, y en el que, en base al primer conjunto de atributos, la primera unidad de procesamiento tiene acceso de lectura y acceso de escritura al fragmento de memoria, y en el que, en base al segundo conjunto de atributos, la segunda unidad de procesamiento tiene acceso de solo lectura al fragmento de memoria.