Pantalla azul (Blue Screen of Death) de Windows, mitos, leyendas urbanas y realidades.
Un problema que ocurre con cierta frecuencia al utilizar Windows es la famosa “pantalla azul” o la “blue screen of death”. Aunque es un problema que ha disminuido su frecuencia, aún es común. La mayoría atribuye esto a un error de Windows concluyendo que es un sistema operativo poco fiable creando con esto una mala reputación que no necesariamente es real.
Pocos saben qué es lo que pasa realmente cuando ocurre este problema (y ciertamente no tendrían porque saberlo ni tener conocimientos técnicos profundos), pero la gran mayoría de las veces que se presenta este error es por causas completamente ajenas a Windows en sí mismo, y más bien es provocado por drivers defectuosos (desarrollados incorrectamente o incompatibles) o a errores de alguna aplicación de terceros.
No es el objetivo de este post hacer una apología, ya que al final del día un sistema operativo debería ser capaz de protegerse a sí mismo ante tales circunstancias y no dejar de funcionar por completo, sin embargo, sí es el objetivo demostrar que no siempre el error es Windows como tal. Esto utilizando herramientas disponibles para todos de forma gratuita y en un proceso que toma menos de 5 minutos. Es un proceso que puede parecer complicado, pero que en realidad es bastante sencillo y trataré de explicar de la forma más simple.
Entrando en materia, si se observa bien cuando ocurre este error, la pantalla azul además de desplegar mensajes indescifrables para cualquiera que no sea uno de los programadores de Windows, ejecuta un proceso que “vacía” el contenido de la memoria RAM a un archivo en el disco duro. El progreso de este proceso se puede ver en las líneas inferiores (“Beginning dump of physical memory”):
Por default, el archivo generado se guarda en la siguiente ruta:
%SystemRoot%\MEMORY.DMP
La mayoría de las veces:
“c:\Windows\MEMORY.DMP”
Este archivo contiene datos valiosos sobre el instante en que ocurrió el error que provocó la pantalla azul. De hecho, contiene información para hacer debugging (depuración) de Windows como tal. Cualquiera que haya programado alguna vez en su vida sabe que el objetivo de hacer debugging es encontrar errores en el código para corregirlos. En este caso, este archivo es utilizado por programadores que desarrollan drivers dispositivos de hardware por ejemplo para encontrar errores en sus productos.
Para poder analizar este archivo, es necesario utilizar la herramienta WinDebug (WinDbg) disponible para descarga gratuita en el sitio de Microsoft en http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx (Versiones para 32 bits y 64 bits).
Una vez instalada la herramienta, hay que localizar el archivo del dump (MEMORY.DMP). Después, abrir WinDbg y configurar los símbolos de la siguiente forma: File->Symbol File Path…
En la ventana que aparece despues, especificar la siguiente línea:
SRV*c:\symbols*http://msdl.microsoft.com/download/symbols
Para no agregar complejidad innecesaria al post omitiré la explicación de que son los "symbols", pero para más informaciónal respecto: http://msdn.microsoft.com/en-us/library/cc266473.aspx
Este paso es vital, ya que de esta forma estamos configurando WinDbg para que descargue archivos necesarios para la depuración y los guarde en nuestro disco duro en una carpeta existente.
Una vez configurados los símbolos, abrimos el archivo MEMORY.DMP:
Aparecerá un mensaje preguntando si queremos guardar el workspace. Como en este caso lo único que queremos es encontrar el culpable de la pantalla azul, damos clic en “No”:
A continuación empezará el cargado del archivo. Es necesario tener conexión a internet, ya que los simbolos se irán descargando conforme se vallan necesitando. Una vez terminada la carga del archivo del dump, tendremos una pantalla así:
En este momento Windbg está listo y en espera de un comando. Para nuestro fin, la mayoría de las veces bastara con teclear:
- !analyze -v
en la línea de comandos y después presionar la tecla <Enter>:
El resultado de la ejecución de este comando, es una pantalla donde se encuentra la información recaba en el momento de la pantalla azul. En este ejemplo, esta resaltado en amarillo las líneas que revelan al culpable de la pantalla azul: Un proceso llamado “avp.exe”, mejor conocido como Kaspersky Antivirus.
WinDbg brinda opciones mucho más avanzadas que salen del objetivo de este post, sin embargo, he aquí la liga desde la cual se puede partir:
Debugging Tools for Windows
Revista MSDN Septiembre
La revista MSDN de Septiembre ya esta disponible. Este mes son altamente recomendables los artículos:
- CLR Inside Out – Unhandled Exception Processing in the CLR. Muestra una excelente forma de rastrear las exceptoins no manejadas en cualquier aplicación .NET.
- Patterns For Building Composite Applications With WPF. Excelente artículo sobre la implementación del patrón composite utilizando WPF (Windows Presentation Foundation), otro enfoque para enfrentar el eterno problema de la separación de las capas de negocios, presentación, etc.
- Service-Driven Apps With Silverlight 2 And WCF – Silverlight no es ningún intento de "flash-kill" para distribuir contenido multimedia, simplemente es es una interface dw WPF y por lo tanto es mucho más poderosa y versatil. En este artículo se muestra como consumir servicios de WCF (Windows Comunication Foundation).
Y muchos artículos más igualmente interesantesy todos con su correspondiente código fuente para descargar:
Service Pack 1 de Visual Studio 2008 y .NET Framework 3.5
La semana pasada se liberó al público en general la Beta 1 del Service Pack 1 de VS 2008 y .NET 3.5.
Scott Guthrie describe a detalle cuales son las mejoras y nuevas cosas que traerá el Service Pack.
Algo de lo más sobresailente es la inclusión por fin de ADO.NET Entity Framework y su correspondiente LINQ to Entities, que entre muchas otras bondades, agrega el soporte para modelar relaciones M:M que tanto se extrañan en el actual LINQ to SQL:
Mejor soporte de Intellisense para múltiples frameworks de AJAX/Javascript:
Soporte de Intellisense y debugging en ASP clásico!!!??? Jjaaja, esta sí es realmente sorprendente. Supongo que aún deben existir muchas aplicaciones desarrolladas en ASP clásico (tecnología hace casi 10 años a sido substituida por ASP.NET), por lo que se hizo necesario dar esta funcionalidad a Visual Studio 2008:
Para el detalle exacto de todo lo que trerá el Service Pack:
http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx
Descarga de la versión BETA:
http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx
El código fuente de Windows Vista (humor)
Jajajajajaja, esto sí que es realmente gracioso:
![]()
Ya está listo el Service Pack 1 de Windows Vista
Ayer 4 de Febrero, se anunció que el Service Pack 1 de Windows Vista ya está en producción, es decir, ya se liberó la versión RTM (Release To Manufacturing). Las fechas estimadas de disponibilidad:
Here’s the timing for SP1 availability for current Windows Vista users:
- In mid-March, we will release Windows Vista SP1 to Windows Update (in English, French, Spanish, German and Japanese) and to the download center on microsoft.com. Customers who visit Windows Update can choose to install Service Pack 1. If Windows Update determines that the system has one of the drivers we know to be problematic, then Windows Update will not offer SP1. Since we know that some customers may want to update to SP1 anyhow, the download center will allow anyone who wants to install SP1 to do so.
- In mid-April, we will begin delivering Windows Vista SP1 to Windows Vista customers who have chosen to have updates downloaded automatically. That said, any system that Windows Update determines has a driver known to not update successfully will not get SP1 automatically. As updates for these drivers become available, they will be installed automatically by Windows Update, which will unblock these systems from getting Service Pack 1. The result is that more and more systems will automatically get SP1, but only when we are confident they will have a good experience.
- The remaining languages will RTM in April.
Aunque aquí no lo menciona, seguramente en pocos días estará disponible la descarga para los suscriptores del MSDN.
Más detalles:
MSDN Code Gallery
![]()
Enorme repositorio de código, ejemplos, etc de prácticamente cualquier tecnología Microsoft. Ampliamente recomendable:
Visual Studio 2008 RTM disponible!!!!
Ya está disponible Visual Studio 2008 RTM (Release To Manufacture) de las siguientes maneras:
Adios al "Clik here to activate this control" de Internet Explorer
En el blog oficial de Internet Explorer hoy publican un post informando que han decidido desactivar esta opción de seguridad del navegador, que procaba que los contenidos incrustados en los sitos Web mediante controles ActiveX (Flash player, videos, applets de Java, etc.) requirieran un clic por parte del usuario para activarse.
Esta actualización se distribuirá de 4 formas:
- Service Pack 1 de Windows Vista.
- Service Pack 3 de Windows XP.
- Actualización acumulativa de Internet Explorer de Abril del 2008.
- Descarga desde el Download Center de Microsoft (Diciembre de este año).
Esta última opción será la más inmediata de obtener el update que se llamará "Internet Explorer Automatic Component Activation Preview" y estará disponible en Diciembre de este mismo año.
IFilters para Sharepoint (y en general cualquier engine de búsquedas de Windows)
Un IFilter, es un plugin para el servicio de indexación de Windows (Windows Indexing Service), de esta forma, se puede extender a capacidad de archivos dentro los cuales se puede buscar. El más común es el IFilter para archivos PDF, pero existen muchos más.
La arquitectura del servicio de búsquedas de Sharepoint aprovecha también estos iFilters, por lo tanto, es posible obtener resultados de nuestras búsquedas en diversos tipos de archivos propietarios de otros fabricantes.
De la misma forma, si utilizas Windows Vista o el Windows Desktop Search en Windows XP e instalas estos IFilters, podrás indexar y realizar búsquedas mucho más potentes incluyendo más tipos de archivos.
Pablo Sousa recopila esta lista de IFilters:
IFilters:
- Archivos comprimidos (CAB, ZIP, RAR)
- CHM Compiled HTML files
- CSF Content Sealed Format
- Correos electronicos (.msg, lotus notes,…)
- HLP Help Files
- Imagenes (JPEG)
- MHT MIME Encapsulation of Aggregate HTML Documents
- Palm Desktop
- PDF (32 y 64 bits)
- RTF
- Office Suites (WordPerfect, StarOffice, OpenOffice)
- Visio
- Ficheros de Autocad DWG
- Audio Video (WMA, WMV, MP3)
Utilidades:
- IFilter Explorer: Utilidad para ver cuantos IFilters estan instalados el el servidor
Referencias:
- IFilter.Org: www.ifilter.org
- AimingTech Company : www.aimingtech.com
- IFilter Shop: www.ifiltershop.com
- Citeknet: www.citeknet.com
Diez cosas a saber sobre Visual Studio 2008 y .NET Framework 3.5

José M. Aguilar traduce este post original de Daniel Moth:
1. Lanzamiento
Visual Studio 2008 y .NET framework 3.5 serán lanzados oficialmente juntos el próximo febrero. Sin embargo, estará disponible para desarrolladores a finales de noviembre de 2007.
Afortunadamente, estarán disponibles las versiones Express de C#, VB, C++ y Web, así como las Profesionales (¡con soporte de testeos unitarios!), Estándar y ediciones de equipos de desarrollo. La novedad será Visual Studio 2008 Shell, de carácter gratuito, que permitirá crear lenguajes y herramientas de desarrollo más verticalizadas.
2. Compatibilidad hacia atrás
.NET framework 3.5 continúa la línea iniciada por Fx3.0 en cuanto al mantenimiento del CLR. Por tanto, y dado que lo único que hace es añadir ensamblados a las librerías presentes con las versiones 2.0 y 3.0 del framework, las aplicaciones actuales no se verán afectadas. Eso sí, necesitará los Service Packs 1 de ambas plataformas.
3. Generación multiplataforma
Visual Studio 2008 incluye la capacidad de crear proyectos para múltiples plataformas .NET, es decir, la 2.0, 3.0 y 3.5, desde el mismo entorno. Por tanto, no será necesario tener VS2005 instalado para generar ensamblados para .NET 2.0.
4. Multitud de novedades en C# 3.0 y VB9
Propiedades automáticas, delegados "relajados", inicializadores de objetos, inferencia de tipos, tipos anónimos, métodos de extensión, funciones lambda y métodos parciales, entre otros.
Pero no sólo eso… dado el punto 3 (generación multiplataforma), podremos usar estas nuevas características de nuestros lenguajes favoritos y generar para .NET 2.0.
5. LINQ
Se trata de una de las grandes revoluciones que nos aportará este nuevo conjunto de herramientas. Language INtegrated Query es un nuevo método de acceso a datos totalmente integrado en nuestro lenguaje habitual y de una forma muy independiente de la fuente de donde provengan (colecciones, XML, motores de bases de datos, etc.).
6. Novedades para ASP.NET
Visual Studio, así como el nuevo framework, ya incluirán ASP.NET AJAX de serie, así como 3 nuevos controles (ListView, DataPager y LinqDataSource). Además, el IDE ha sido muy mejorado e incluye soporte para intellisense y depuración de Javascripts, ¡también para ASP.NET 2.0!, y un nuevo diseñador que permite anidar páginas maestras.
7. Para el desarrollo en cliente
VS2008 incluirá nuevas plantillas de proyectos, así como un diseñador para WPF integrado con soporte para la comunicación WPF-WinForms. También se ha añadido el soporte para Firefox de la tecnología ClickOnce y XBAP (XAML Browser Applications).
8. Para el desarrollador de Office
Se ofrece soporte total para la personalizaciones (customisations) de Office 2007, así como para las plantillas de Office 2003.
9. Para desarrollo en servidor
Se han incluido nuevas plantillas para WCF y WF, y se han introducido mejoras interesantes en el primero, como el modelo de programación HTTP (sin SOAP) o serialización JSON.
10. Para el desarrollo en dispositivos móviles
Hay decenas de nuevas características, como el soporte para las versiones compactas de LINQ y WPF, o, a nivel de IDE, Unit Testing for Devices.
11. (punto extra) Código del framework
Pues sí, como ya es sabido, podremos depurar nuestras aplicaciones siguiendo el rastro por el interior de las clases y métodos del framework.