Este artículo describe un problema que se produce cuando se ejecuta una aplicación Silverlight para Windows Embedded 2013 de Windows Embedded Compact. Hay una actualización disponible para resolver este problema. Antes de instalar esta actualización, deben instalar todas las actualizaciones publicadas previamente para este producto.
Síntomas
Imagine el siguiente escenario:
-
Tiene un Microsoft Silverlight para Windows Embedded aplicación instalado en un dispositivo basado en Windows Embedded de 2013 Compact.
-
El dispositivo tiene un procesador de núcleo sencillo.
-
Habilita la variable de entorno del paquete (BSP) de soporte placa siguiente para admitir la aceleración de hardware OpenGL de Silverlight para Windows Embedded:
BSP_XRPLUGIN_OPENGL
En este escenario, experimenta problemas de rendimiento y uso alto de CPU cuando se ejecuta la aplicación.
Causa
Este problema se produce porque el subproceso de interfaz de usuario de Silverlight envía las actualizaciones de textura mucho más rápido que la velocidad a la que el subproceso de representación puede representarlos.
Solución
Información de descarga
Windows Embedded Compact 2013 actualización mensual (octubre de 2014) ahora está disponible de Microsoft. Para descargar esta actualización mensual de Windows Embedded Compact 2013, vaya a OEM de Microsoft en línea o MyOEM.
Más información
Requisito de reinicio
Después de aplicar esta actualización, debe realizar una compilación limpia de toda la plataforma. Para ello, utilice uno de los métodos siguientes:
-
En el menú Generar, haga clic en Limpiar solución y, a continuación, haga clic en Generar solución.
-
En el menú Generar, haga clic en Volver a generar solución.
No es necesario que reinicie el equipo después de aplicar esta actualización de software.
Información para sustituir la actualización
Esta actualización no sustituye a otras actualizaciones.
La versión en inglés de este paquete de actualización de software tiene los atributos de archivo (o atributos del archivo más reciente) mostrados en la tabla siguiente. Las fechas y horas de estos archivos se muestran en la hora Universal coordinada (UTC). Al ver la información del archivo, se convierte en hora local. Para encontrar la diferencia entre la hora UTC y la hora local, utilice la ficha Zona horaria en el elemento de Fecha y hora del Panel de control.
Archivos que se incluyen en este paquete de revisión
Nombre del archivo |
Tamaño de archivo |
Fecha |
Hora |
Ruta de acceso |
---|---|---|---|---|
Xamlruntimegraphics.h |
15,982 |
17-Sep-2014 |
09:06 |
Public\Common\Oak\Inc |
Ddrawdevice.hpp |
6,785 |
17-Sep-2014 |
09:06 |
Public\Common\Oak\Xamlrenderplugin\Ddraw |
Opengldevice.cpp |
66,076 |
17-Sep-2014 |
09:06 |
Public\Common\Oak\Xamlrenderplugin\Opengl |
Opengldevice.hpp |
9,724 |
17-Sep-2014 |
09:06 |
Public\Common\Oak\Xamlrenderplugin\Opengl |
Xrrendererddraw.lib |
2,404 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\X86\Retail |
Xrrendererddraw.exp |
1138 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\X86\Retail |
Xrrendereropengl.lib |
2,404 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\X86\Retail |
Xrrendereropengl.exp |
1.140 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\X86\Retail |
Xrrendererddraw.lib |
2,404 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Lib\X86\Debug |
Xrrendererddraw.exp |
1,134 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Lib\X86\Debug |
Xrrendereropengl.lib |
2,404 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Lib\X86\Debug |
Xrrendereropengl.exp |
1.140 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Lib\X86\Debug |
Xrrendererddraw.lib |
2,404 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\X86\Checked |
Xrrendererddraw.exp |
1138 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\X86\Checked |
Xrrendereropengl.lib |
2,404 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\X86\Checked |
Xrrendereropengl.exp |
1.140 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\X86\Checked |
Xrrendererddraw.lib |
2,388 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Lib\Armv7\Retail |
Xrrendererddraw.exp |
1.131 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Lib\Armv7\Retail |
Xrrendereropengl.lib |
2,388 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Lib\Armv7\Retail |
Xrrendereropengl.exp |
1,137 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Lib\Armv7\Retail |
Xrrendererddraw.lib |
2,388 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\Armv7\Debug |
Xrrendererddraw.exp |
1.131 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\Armv7\Debug |
Xrrendereropengl.lib |
2,388 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\Armv7\Debug |
Xrrendereropengl.exp |
1,137 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Lib\Armv7\Debug |
Xrrendererddraw.lib |
2,388 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Lib\Armv7\Checked |
Xrrendererddraw.exp |
1,135 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Lib\Armv7\Checked |
Xrrendereropengl.lib |
2,388 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Lib\Armv7\Checked |
Xrrendereropengl.exp |
1,137 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Lib\Armv7\Checked |
Interactivity.dll |
102,400 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Interactivity.map |
261,175 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Interactivity.rel |
44,099 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Xamlruntime.dll |
802,816 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Xamlruntime.map |
1,373,394 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Xamlruntime.rel |
1,679,177 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Xamlruntimecore.dll |
2,879,488 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Xamlruntimecore.map |
1,811,157 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Xamlruntimecore.rel |
1,844,187 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Retail |
Xrrendererddraw.dll |
24.576 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\X86\Retail |
Xrrendererddraw.map |
28,969 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\X86\Retail |
Xrrendererddraw.rel |
6,080 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\X86\Retail |
Xrrendereropengl.dll |
32.768 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\X86\Retail |
Xrrendereropengl.map |
51,394 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\X86\Retail |
Xrrendereropengl.rel |
15,157 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\X86\Retail |
Interactivity.dll |
253,952 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Interactivity.map |
580,631 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Interactivity.rel |
172,424 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Xamlruntime.dll |
1,687,552 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Xamlruntime.map |
2,584,434 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Xamlruntime.rel |
2,339,246 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Xamlruntimecore.dll |
7,512,064 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Xamlruntimecore.map |
5,373,336 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Xamlruntimecore.rel |
4,079,246 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\X86\Debug |
Xrrendererddraw.dll |
45.056 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\X86\Debug |
Xrrendererddraw.map |
49,051 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\X86\Debug |
Xrrendererddraw.rel |
14,606 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\X86\Debug |
Xrrendereropengl.dll |
151,552 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\X86\Debug |
Xrrendereropengl.map |
275,814 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\X86\Debug |
Xrrendereropengl.rel |
196,668 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\X86\Debug |
Interactivity.dll |
139,264 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Interactivity.map |
503,292 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Interactivity.rel |
61,760 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Xamlruntime.dll |
1,167,360 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Xamlruntime.map |
2,416,327 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Xamlruntime.rel |
2,126,763 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Xamlruntimecore.dll |
6,316,032 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Xamlruntimecore.map |
5,330,367 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Xamlruntimecore.rel |
5,787,607 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\X86\Checked |
Xrrendererddraw.dll |
32.768 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\X86\Checked |
Xrrendererddraw.map |
48,894 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\X86\Checked |
Xrrendererddraw.rel |
13,417 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\X86\Checked |
Xrrendereropengl.dll |
77.824 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\X86\Checked |
Xrrendereropengl.map |
167,643 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\X86\Checked |
Xrrendereropengl.rel |
42,098 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\X86\Checked |
Interactivity.dll |
98.304 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Interactivity.map |
446,025 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Interactivity.rel |
41,866 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Xamlruntime.dll |
765,952 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Xamlruntime.map |
2,421,084 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Xamlruntime.rel |
1,443,958 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Xamlruntimecore.dll |
2,789,376 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Xamlruntimecore.map |
3,970,707 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Xamlruntimecore.rel |
1,638,838 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Retail |
Xrrendererddraw.dll |
28.672 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Retail |
Xrrendererddraw.map |
45,798 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Retail |
Xrrendererddraw.rel |
4,833 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Retail |
Xrrendereropengl.dll |
36.864 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Retail |
Xrrendereropengl.map |
81,279 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Retail |
Xrrendereropengl.rel |
8,922 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Retail |
Interactivity.dll |
233,472 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Debug |
Interactivity.map |
1,928,325 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Debug |
Interactivity.rel |
94,675 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Debug |
Xamlruntime.dll |
1,773,568 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\Armv7\Debug |
Xamlruntime.map |
9,783,361 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Debug |
Xamlruntime.rel |
2,121,688 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\Armv7\Debug |
Xamlruntimecore.dll |
7,467,008 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\Armv7\Debug |
Xamlruntimecore.map |
20,735,843 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\Armv7\Debug |
Xamlruntimecore.rel |
2,572,870 |
30-Sep-2014 |
15:14 |
Public\Common\Oak\Target\Armv7\Debug |
Xrrendererddraw.dll |
49.152 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\Armv7\Debug |
Xrrendererddraw.map |
99,572 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\Armv7\Debug |
Xrrendererddraw.rel |
11,068 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\Armv7\Debug |
Xrrendereropengl.dll |
131.072 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\Armv7\Debug |
Xrrendereropengl.map |
590,681 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\Armv7\Debug |
Xrrendereropengl.rel |
67,995 |
30-Sep-2014 |
15:17 |
Public\Common\Oak\Target\Armv7\Debug |
Interactivity.dll |
163,840 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\Armv7\Checked |
Interactivity.map |
1,156,971 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\Armv7\Checked |
Interactivity.rel |
87,947 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\Armv7\Checked |
Xamlruntime.dll |
1,228,800 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\Armv7\Checked |
Xamlruntime.map |
5,666,819 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\Armv7\Checked |
Xamlruntime.rel |
2,125,806 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\Armv7\Checked |
Xamlruntimecore.dll |
6,107,136 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Checked |
Xamlruntimecore.map |
14,902,705 |
30-Sep-2014 |
15:16 |
Public\Common\Oak\Target\Armv7\Checked |
Xamlruntimecore.rel |
2,826,562 |
30-Sep-2014 |
15:15 |
Public\Common\Oak\Target\Armv7\Checked |
Xrrendererddraw.dll |
36.864 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Checked |
Xrrendererddraw.map |
78,266 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Checked |
Xrrendererddraw.rel |
10,778 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Checked |
Xrrendereropengl.dll |
81.920 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Checked |
Xrrendereropengl.map |
235,543 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Checked |
Xrrendereropengl.rel |
25,220 |
30-Sep-2014 |
15:18 |
Public\Common\Oak\Target\Armv7\Checked |
Interactivity.dll |
178,864 |
30-Sep-2014 |
12:56 |
Public\Common\Oak\Bin\I386 |
Xamlruntimecore_dt.dll |
2,415,280 |
30-Sep-2014 |
12:56 |
Public\Common\Oak\Bin\I386 |
Xamlruntime_dt.dll |
1,133,232 |
30-Sep-2014 |
12:56 |
Public\Common\Oak\Bin\I386 |
Xrpack.exe |
281,264 |
30-Sep-2014 |
12:56 |
Public\Common\Oak\Bin\I386 |
Xamlruntime.exp |
1,887 |
30-Sep-2014 |
15:15 |
Public\Common\Sdk\Lib\X86\Retail |
Xamlruntime.lib |
3,664 |
30-Sep-2014 |
15:15 |
Public\Common\Sdk\Lib\X86\Retail |
Xamlruntime.exp |
1,886 |
30-Sep-2014 |
15:14 |
Public\Common\Sdk\Lib\X86\Debug |
Xamlruntime.lib |
3,664 |
30-Sep-2014 |
15:14 |
Public\Common\Sdk\Lib\X86\Debug |
Xamlruntime.exp |
1.888 |
30-Sep-2014 |
15:15 |
Public\Common\Sdk\Lib\X86\Checked |
Xamlruntime.lib |
3,664 |
30-Sep-2014 |
15:15 |
Public\Common\Sdk\Lib\X86\Checked |
Xamlruntime.exp |
1,885 |
30-Sep-2014 |
15:15 |
Public\Common\Sdk\Lib\Armv7\Retail |
Xamlruntime.lib |
3,642 |
30-Sep-2014 |
15:15 |
Public\Common\Sdk\Lib\Armv7\Retail |
Xamlruntime.exp |
1.880 |
30-Sep-2014 |
15:14 |
Public\Common\Sdk\Lib\Armv7\Debug |
Xamlruntime.lib |
3,642 |
30-Sep-2014 |
15:14 |
Public\Common\Sdk\Lib\Armv7\Debug |
Xamlruntime.exp |
1,886 |
30-Sep-2014 |
15:15 |
Public\Common\Sdk\Lib\Armv7\Checked |
Xamlruntime.lib |
3,642 |
30-Sep-2014 |
15:15 |
Public\Common\Sdk\Lib\Armv7\Checked |
Xamlruntime_dt.dll |
1,133,232 |
30-Sep-2014 |
12:56 |
Programa de programa\Microsoft visual studio 11.0\Vc\Vcwizards\Windowsembeddedxamltools |
Xamlruntimecore_dt.dll |
2,415,280 |
30-Sep-2014 |
12:56 |
Programa de programa\Microsoft visual studio 11.0\Vc\Vcwizards\Windowsembeddedxamltools |
Xrpack.exe |
281,264 |
30-Sep-2014 |
12:56 |
Programa de programa\Microsoft visual studio 11.0\Vc\Vcwizards\Windowsembeddedxamltools |
Interactivity.dll |
178,864 |
30-Sep-2014 |
12:56 |
Programa de programa\Microsoft visual studio 11.0\Vc\Vcwizards\Windowsembeddedxamltools |
Información sobre solucionesCrear instancias de una nueva clase XAML que hereda de la clase ICustomGraphicsDevice pueden activar el siguiente error del compilador:
error error C2259: '< classname >': no se puede crear una instancia de clase abstracta
Este problema se debe a la adición de cuatro funciones abstractas en la clase ICustomGraphicsDevice para esta revisión. Para evitar este problema, implemente las siguientes funciones de resumen en la clase que hereda de ICustomGraphicsDevice. (Vea también xamlruntimegraphics.h).
-
__checkReturn virtuales XRESULT UIThreadPriority() = 0;
-
__checkReturn virtuales XRESULT RenderThreadPriority() = 0;
-
__checkReturn virtuales XRESULT RenderThreadQuantum() = 0;
-
__checkReturn virtual BOOL DisplayFrameRateMonitor() = 0;
Esta actualización introduce varios valores del registro que permiten hacer lo siguiente:
-
Manipular la prioridad del subproceso de interfaz de usuario
-
Manipular la prioridad del subproceso de representación
-
Manipular el cuanto del subproceso de representación
-
Mostrar al monitor de velocidad de marco junto con la configuración de prioridad de subproceso mencionados anteriormente dos
Información del registro
Ubicación del registro
HKEY_LOCAL_MACHINE\Software\Microsoft\XamlRenderOpenGL
Los posibles valores y subclaves de registro
Nombre |
Escriba el |
Descripción |
Valor predeterminado |
UIThreadPriority |
REG_DWORD |
Establece la prioridad del subproceso de interfaz de usuario (0-5)
|
3 |
RenderThreadPriority |
REG_DWORD |
Establece la prioridad del subproceso de representación (0-5)
|
3 |
RenderThreadQuantum |
REG_DWORD |
Establece el nivel de quantum de subproceso (en milisegundos) para el subproceso de representación (0-5)
Subprocesos en el mismo nivel de quantum se ejecutan en un modo de operación por turnos, con cada subproceso recibe un quantum, o rebanada, de tiempo de ejecución. |
2 |
DisplayFrameRateMonitor |
REG_DWORD |
Especifica si está habilitado el monitor de velocidad de fotograma mostrado. Establecer esta entrada a 1 para habilitar el monitor y a 0 (cero) para deshabilitar el monitor. |
0 |
Para aumentar la velocidad del subproceso de representación para un mejor rendimiento, establezca el valor de RenderThreadPriority a 2.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".
Referencias
Para obtener información acerca de las variables de entorno de BSP, consulte variables de entorno de BSP (Windows Embedded Compact 2013). Obtenga información acerca de la terminología estándar que se utiliza para describir las actualizaciones de software de Microsoft.