Sistemas Operativos I
Correo: Thilson.Guerra@hotmail.com  
  Bienvenidos!!!
  Contenido...
  Tareas
  Laboratorios
  Trabajos
  => Investigacion I
Todos los Derechos Reservados.
Investigacion I
SISTEMA DE ARRANQUE DE WINDOWS 2003 Y XP
 
Uno de los procesos más ocultos que existe en un sistema operativo grafico como Windows XP, es el proceso de inicio del sistema o BOOTING; este proceso es además de todo un proceso critico en el sistema, dado que en el se define el comportamiento posterior del sistema. Inicializar el sistema cuando se prende un equipo es un proceso directo para la mayoría de los usuarios, pero cuando se habla de administración se debe conocer este proceso en detalle para poder resolver muchos de los problemas relacionados con el arranque y configuración de dispositivos. Si usted es administrador de una red de equipos con Windows NT5 (Windows 2000, Windows 2003) o Windows XP conocer el proceso le ahorrara bastantes horas al mes en la resolución de problemas de sus clientes.
 
El primer paso de todo el proceso de encendido de un sistemas es el denominado POST (Power-on Self Test) este proceso abarca una comprobación eléctrica del sistema es realizado por la BIOS, y abarca los siguientes pasos:
 
*      PROM Checksum: esta verificación se hace para lograr validar que la información almacenada en la memoria ROM del sistema es igual a la información de los dispositivos instalados, es una suma de comprobación.
 
*      Segment Map Addres: en este punto se prepara la memoria para recibir la información, se envía una serie de códigos que luego son leídos para probar que la memoria es completamente funcional.
 
*      Page Map Address: divide la memoria en segmentos de paginación, y se realiza la comprobación de paginación.
 
*      Se lee la información de la memoria C-MOS para ser usada en el resto del proceso.
 
 
Una vez el sistema ha realizado las comprobaciones eléctricas y físicas (POST) se procede a buscar el sistema operativo que se desea cargar, en muchos sistemas se puede definir el orden de la búsqueda, este orden corresponde a BOOT ORDER en la información almacenada en la BIOS. Depende del orden definido, la secuencia tomara caminos diferentes, en general se dice que la mayoría de los sistemas se pueden programar para que hagan la búsqueda en los siguientes dispositivos:
 
 
*      Floppy disk
*      CD-ROM
*      Disco duro
*      Adaptadores de red (si el adaptador soporta este sistema)
*      Unidades de ZIP
*      almacenamientos externos.
 
Para esta explicación asumiremos que el sistema tendrá el siguiente orden de búsqueda unidad de discos removible (floppy) unidad de CD-ROM, disco duro.
 
El sistema inicia la busque da de un Floppy en el drive, si se encuentra este se procede a verificar si tiene o no sistema operativo (archivos de carga inicial) son los archivos básicos que se crean cuando se hace un formato con la opción “/s” de ser así carga el sistema operativo y el formato de archivos. (esto solo es posible para sistemas Windows 9x, dado que son los que tradicionalmente funcionan con sistema de archivo FAT y/o FAT32; de no tener un Floppy con sistema operativo se obtiene un error del siguiente tipo:
 
Non-system disk or disk error
Replace and press any key when Reddy
 
De tal forma se puede saber que el disco removible no tiene la capacidad de iniciar el sistema, en caso de no haber discos en la unidad se procede a tratar de iniciar el sistema desde otro dispositivo alterno, en nuestro caso el CD-ROM, de haber un disco de instalación de Windows XP, pregunta si desea iniciar por CD el sistema, si así lo desea debe oprimir cualquier tecla para iniciar desde el CD, en caso contrario se procede a la búsqueda del sistema en la unidad de disco duro. Cuando se intenta iniciar el sistema por la unidad de disco duro se busca el MBR ( o master boot record) que son los primeros 512byes de todo disco duro que le dicen al sistema como proceder para lograr el inicio del sistema, adicionalmente contiene los datos de la tabla de partición. En caso de el disco duro no tener un sistema operativo instalado, o en caso de tener problemas con MBR, el mensaje de error que tendrá será el siguiente:
 
Invalid partition table
Error loading operating system
Missing operating system
BOOT: Couldn't find NTLDR
NTLDR is missing
 
Desde este punto usted iniciara el proceso de inicialización del sistema operativo como tal, este proceso con lleva la carga en un orden especifico de una serie de archivos; y el cambio del modo de operación del procesador es el primer paso. El proceso de boot difiere a partir de este punto en los equipos con procesador X86 y los equipos con procesador ITANIUM o de 64bits. Para este artículo asumiremos los procesadores X86 como base de estudio dado que son actualmente la mayoría (al 2003).   X86 Al Inicio el procesador después de encendido el equipo o reiniciado el procesador arranca en modo REAL esto implica que el procesador es puesto en modo de compatibilidad, lo que quiere decir que le brinda soporte a aplicaciones desarrolladas para 8Bits y 16bits, así se ofrece compatibilidad hacia atrás con aplicaciones antiguas y DOS, para poder aprovechar todo el rendimiento del procesador se debe cambiar de modo REAL a modos EXTENDIDO o Enhanced. Este cambio en los procesadores de familia X86 se hace por medio de software y se puede realizar sin necesidad de reiniciar el equipo, este cambio fue posible desde la serie 486 de Intel. El cambio es realizado por el programa NTLDR. Al hacer este cambio se puede además tener accesos a porciones superiores de memoria puesto que hasta este punto el sistema solo tiene acceso a los primero 640Kb de memoria. 
 
 
1.    CARGA DEL SISTEMA DE ARCHIVOS
 
La carga del sistema de archivos se realiza solo después que el sistema tiene un procesador de 32bits disponible, el sistema de archivos según sea el caso será NTFS, FAT o FAT32; en este punto es que en realidad se puede acceder a la estructura de árbol de la partición y se puede proceder a la lectura de toda la configuración, puesto que hasta este punto solo se podía acceder a los archivos que estuvieran en la raíz de la partición (para la mayoría de los sistemas Windows C:).  
 
2.    CARGA DE MANEJADOR DE BOOT.INI
 
En este punto se carga por medio de NTLDR del archivo BOOT.INI, el cual permite en sistemas con varios sistemas operativos seleccionar cuál de ellos desea iniciar. Si el equipo no tiene varios sistemas operativos, se procede a la fase de detección de hardware que permite a la parte lógica reconocer la parte física en el equipo.
 
3.    DETECCIÓN DE HARDWARE
 
Este proceso se lleva a cabo por medio del NTDETECT.COM archivo que da la información necesaria al KERNEL de Windows para iniciar de manera apropiada, entre otros datos este sistema busca los perfiles de hardware que se han podido crear y brinda la posibilidad de selección de los mismos para cargar la configuración mas apropiada según el caso; en los sistemas portátiles, esto será muy importante debido a que permite habilitar i no dispositivos de consumo elevado como tarjetas de red o módems, que de estar permanentemente activos drenarían la pila de una manera muy rápida. Adicionalmente se hace la detección de los sistemas de ahorro de energía tipo ACPI incorporados en las torres ATX y en los equipos portátiles.   Dado que el reconocimiento de hardware puede ser uno de los puntos más problemáticos sobre todo cuando se instalan nuevos dispositivos que no son de tipo PLUG AND PLAY nos detendremos un poco para qué sistemas en específico se reconocen en esta fase; la lista de sistemas que se reconocen es la siguiente:
 
*      Firmware del sistema
*      Tipos de Buses y adaptadores
*      Adaptadores de video.
*      Teclados
*      Dispositivos de entrada
*      Unidades de disco fijo (disco duro)
*      Unidades de disco removible (floppy)
*      Puertos paralelo y seriales
*      Dispositivos instalados en buses ISA  
 
En el apartado de Firmware cabe anotar que se debe hacer hincapié en que el sistema ACPI juega un papel vital puesto que la carga de controladores varía según si el sistema es o no compatible con dicho sistema, dado que se debe cargar determinados controladores, así como reservar recursos para su manejo de manera apropiada.  
 
Debido a que el sistema Windows ha sido diseñado para poder ser ejecutado en una amplia variedad de sistemas, se debió diseñar una capa de abstracción de hardware, que le permitiera adaptarse a las distintas configuraciones de procesador y modos de funcionamiento, por el contrario de los sistemas LINUX que se puede recompilar el Kernel para poder extraer el máximo de cada familia de procesadores, y se usa el modo genérico solo en maquinas de usuario final.  
 
4.    CARGA DE KERNEL
 
La carga del Kernel de sistema operativo inicia por ejecutar el sistema de abstracción mencionado con anterioridad, a este se le denomina HAL ( o capa de abstracción de hardware por sus siglas en INGLES) y está ubicado en el archivo HAL.DLL; según sea el sistema en el proceso de instalación se ha seleccionado entre un conjunto de archivos genéricos que al ser copiado se renombran como HAL.DLL así:  
 
ACPI Multiprocessor PC …………………………….…...Halmacpi.dll ACPI Uniprocessor PC ……………………….…………...Halaacpi.dll Advanced Configuration and Power Interface (ACPI) PC …Halacpi.dll MPS Multiprocessor PC …………………………………….Halmps.dll MPS Uniprocessor PC ………………………..……………..Halapic.dll Standard PC ………………………………………………..…….Hal.dll Compaq SystemPro Multiprocessor or 100% Compatible … ..Halsp.dll
 
5.    CARGA DE DISPOSITIVOS
 
En razón a que el proceso de carga desde este punto comprende la activación de un gran número de dispositivos y a la cantidad de información de activación de cada dispositivo toda la información para dicho procesos se encuentra almacenada en un conjunto de entradas dentro del registro, bajo la llave HKEY_LOCAL_MACHINESYSTEM entrada a la cual se le hace una copia o clonación que permite ir validando y modificando el estado de cada dispositivo, para asegurar el correcto funcionamiento del sistema y de los dispositivos individuales.   Cada entrada dentro de este conjunto informa al sistema operativo cuando se debe cargar el dispositivo y sus respectivos controladores. Así:  
 
0          Boot
1          System
2          Auto load
3          Load on demand
4          Disabled
 
6.    MANEJADOR DE SESIÓN  
 
Una vez se han cargado los dispositivos, se inicia el manejador de sesión, el que es el encargado de pasar de modo texto a modo grafico, y otras funcionalidades así:
Creación de las variables de ambiente
 
*      Iniciar el modo del Kernel (ubicado en systemrootSystem32Win32k.sys) el que se encarga de cambiar de modo texto a modo grafico, para que las aplicaciones basadas en Windows puedan ser ejecutadas de aquí en adelante, es el encargado de permitir que las aplicaciones puedan desplegar en modo grafico la información y se puedan comunicar a su vez con el sistema operativo.
*      Inicia el modo de usuario que permitirá de aquí en adelante la interacción del usuario con el sistema todo ello implementado en systemrootSystem32Csrss.exe.
*      Inicia al manejador de inicio de sesión (winlogon) ubicado en systemrootSystem32Winlogon.exe.
*      Crea memoria virtual adicional para cargar más información del sistema en operación.
*      Ejecuta acciones tardías para operaciones del registro, como la de reiniciar el sistema por cambios en el mismo, por ejemplo instalaciones de nuevos dispositivos encontrados u otros que requieran reiniciar el sistema después de su configuración.
 
El subsistemas Windows y el de modo de usuario nunca tiene accesos directo a la capa de hardware del sistema, esto evita dependencia de sistemas específicos, en caso de un sistema requerir mas memoria para su ejecución solicita la misma al modo Kernel mas y el se encarga de gestionar la creación de una mayor archivo de paginación.
 
El administrador de sesión se encarga adicionalmente de buscar en el registro varias llaves de configuración e inicio para procesarlas y terminar el arranque del sistema las llaves de procesamiento son las siguientes:
 
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManager:
Procesa las entradas previas al inicio de servicios, así como la herramienta de verificación de discos Autochk.exe que es el equivalente a Chkdsk de DOS. Para garantizar la integridad del disco y las particiones.
 
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerSubsystems: Inicia los sub-sistemas de modo de usuario Csrss.exe.
 
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesserviceman: Es la sección encargada de iniciar los servicios de auto carga dentro del sistema.
 
Hasta este punto no se ha hecho la carga del subsistema de seguridad dentro de equipo.
           
 
7.    SISTEMAS DE SEGURIDAD
 
Cuando se inicia el procesos cada procesos tiene una entrada de control de acceso (ACL) que identifica los permisos que tiene el mismo en el sistema, pero depende de si el sistema es parte de un dominio o no, para lograr que el sistema tome las credenciales, se debe cargar un componente especifico que permita la carga de los descriptores de los archivos, este componente es el SRM o monitor de referencia de seguridad, el cual se inicia en el modo de KERNEL y se comunica con el modo de usuario a través de LSA.
 
a.    PERO QUE ES LSA?
 
Es un sistema de seguridad local que permite buscar de manera local si el objeto tiene permisos apropiados, si el objeto tiene los permisos adecuados, se determina por medio de la comunicación de LSA con el registro en el caso local (con la porción de SAM) o si el sistema tiene permisos en el dominio se hará por medio de la comunicación con el directorio activo AD.
 
Desde este punto iniciara la carga de la interface apropiada para el LOGON; la cual hará las validaciones necesarias a nivel de AD o usuario local según sea el caso.
 
8.   WINLOGON
 
Desde aquí ya vemos interacción con el sistema, aparece la ventana de inicio de sesión interactiva, esta ventana hace posible que digitemos nuestro login y password (el método mas común de autenticación) si el sistema se encuentra en una red 2000 pura o superior el sistema de validación en el directorio activo será Kerberos, en caso de ser una red con maquinas NT o Windows 9x el esquema de autenticación será NTLM, en caso de ser autenticación local se validaran las credenciales ante la sección del registro de usuario (SAM).
 
El proceso desde aquí es relativamente simple, dado que ya todos los servicios deben estar en proceso de inicio o iniciados, lo que debe hacerse es hacer cambios finales al registro, para verificar cualquier cambio de dispositivos.
 
Se verifica las entradas clonadas del sistema de registro para validar cualquier cambio, y actualizarlo; y poder garantizar el correcto funcionamiento de la opción ultima configuración buena conocida (LastKnowGood configuration). La que usted vera si al iniciar el sistema oprime F8 para resolver algún problema de inicio.
 
Se aplican las políticas de seguridad para maquina y usuario permitiendo restringir o garantizar el acceso a ciertos recursos. Estas son las denominadas políticas de grupo.
 
Por último se ejecutan los programas que el usuario haya definido en un perfil como de inicio en la opción inicio o startup en las entradas del registro estas corresponderán a:
 
*      HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunonce
*      HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionpoliciesExplorerRun
*      HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun
*      HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrentVersionWindowsRun
*      HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
*      HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce
*      systemdriveDocuments and SettingsAll UsersStart MenuProgramsStartup
*      systemdriveDocuments and SettingsusernameStart MenuProgramsStartup
*      windirProfilesAll UsersStart MenuProgramsStartup
*      windirProfilesusernameStart MenuProgramsStartup
 
9.    EL ÚLTIMO PASO
 
En este punto usted tiene un entendimiento bastante alto de todo el proceso, de boot de un sistema operativo WINDOWS tipo 2000, pero esto no seria suficiente si no tenemos en cuenta que existen los dispositivos plug and play, los que se pueden conectar después de iniciado el sistema
 
Si se inserta un dispositivo USB o FIREWIRE (i-1394) el proceso de reconocimiento procede a verificar el bus de datos y ver si se tiene el controlador del bus para poderlo manejar de manera adecuada, si es así se procede a la verificación del FIRMWARE del dispositivo y instalar el DRIVER apropiado para el mismo, en el caso de USB 1.0 o 1.1 se debe reiniciar el sistema si el dispositivo es compatible con USB 2.0 el sistema no deberá reiniciar en la mayoría de los casos.
 
   
Reflexion:  
  En todo este tiempo a lo largo del semestre, hemos tenido ratos muy buenos, otros muy malos y algunos momentos pesados también, muchos creímos que por ser una plataforma virtual todo sería más fácil, sin embargo la realidad siempre fue otra.
 
 
 
Es un poco difícil tener que aprender a mezclar la Universidad con otros compromisos (trabajo, familia, etc.) pero de eso se trata todo esto; esas son las buenas experiencias que uno obtiene para luego poner en práctica en el ámbito laboral.

 
 
  Solo me queda agradecer a la profesora por todo el tiempo y la dedicación que puso en cada uno de nosotros, sus consejos, recomendaciones y hasta por las segundas y terceras oportunidades que nos brindaba, desearles muchos exitos y felices fiestas. saludos!!!
 
Paginas Recomendadas:  
 
Dayremi Diaz
Yarquelis Paz
 
Este sitio web fue creado de forma gratuita con PaginaWebGratis.es. ¿Quieres también tu sitio web propio?
Registrarse gratis