Sistemas operativos modernos

nentes realizan tareas específicas relacionadas con su función, como el administrador de me­ moria que establece las tablas de páginas iniciales y el administrador de Plug-and-Play que averigua cuáles dispositivos de E/S están presentes y carga sus controladores. En total, se efec­ túan docenas de pasos, durante los cuales la barra de avance que se exhibe en la pantalla se va llenando cada vez que termina un paso. El último paso es la creación del primer proceso de usuario verdadero, el adm inistrador de sesión, smss.exe. Cuando ya está operando este pro­ ceso, ha terminado el arranque. El administración de sesión es un proceso original de Windows 2000. Emite verdaderas llamadas al sistema y no usa el subsistema de entorno Win32, que ni siquiera está operando to­ davía. De hecho, una de sus primeras tareas es iniciarlo (csrss.exe). También lee los subárboles del Registro del disco y averigua qué otras cosas debe hacer. Por lo regular su labor incluye in­ troducir muchos objetos en el espacio de nombres del administrador de objetos, crear los archivos de paginación adicional que se necesiten, y abrir DLLs importantes para que estén presentes lodo el tiempo. Una vez realizado casi todo esto, crea el demonio de inicio de sesión, winlogon.exe. En este punto, el sistema operativo ya está funcionando en forma cabal. Es el momento de poner en marcha los procesos de servicio (demonios en espacio de usuario) y permitir que los usuarios inicien sesión. Winlogon.exe primero crea el administrador de validación (lsass.exe) y luego el proceso padre de todos los servicios {seiyices.exe). Este último consulta el Registro para averiguar cuáles procesos demonio en espacio de usuario se necesitan y en qué archivos están, y luego comienza a crearlos. Esos procesos se muestran en la figura 11-7. El hecho de que el disco, por lo general, está sometido a uso intensivo inmediatamente después de que el primer usuario ha iniciado sesión (pero antes de que haga algo) no es culpa del usuario. El cul­ pable es services.exe, que está creando todos los servicios. Además, este programa carga los controladores de dispositivos que todavía no se hayan cargado. La jerarquía de los procesos ini­ ciales y algunos servicios típicos se muestran en la figura 1 1 - 22 . Winlogon.exe también se encarga de todos los inicios de sesión de usuarios. El cuadro de diálogo de inicio de sesión propiamente dicho corre por cuenta de un programa aparte que es­ tá en msgina.dll; esto se hizo para que terceros pudieran sustituir el inicio de sesión estándar por identificación de rostros o algún otro mecanismo disfinto del nombre y contraseña. Des­ pués de un inicio de sesión con éxito, winlogon.exe obtiene del Registro el perfil del usuario y a partir de él determina cuál shell debe ejecutar. Muchas personas no se dan cuenta de ello, pe­ ro el escritorio estándar de Windows no es más que explorer.exe con algunas opciones estable­ cidas. Si lo desea, el usuario puede seleccionar cualquier otro programa como shell, incluido el indicador de comandos o incluso Word, editando el Registro. Sin embargo, editar el Regis­ tro no es para los principiantes; un error puede dejar inutilizado el sistema. 11.5 ADMINISTRACION DE MEMORIA Windows 2000 tiene un sistema de memoria virtual muy avanzado. Hay varias funciones deWin32 para utilizarlo y una parte del ejecutivo junto con seis subprocesos de kernel dedicados para administrarlo. En las secciones que siguen examinaremos los conceptos fundamentales, las lla­ madas de la API Win32 y, por úlfimo, la implementación.

RkJQdWJsaXNoZXIy MjI4NDcx