jueves, 31 de mayo de 2018

Apuntes Unidad 6

Apuntes Unidad 6

Protección y seguridad


Redes, Sistemas distribuidos y Seguridad.




  • Protocolos (comunicación entre maquinas)
  • Tipos de redes
  • Alámbricos e inalámbricos, puntos de acceso, redes (normal, distribuida, paralelas, inteligente, dedicada)
  • Administración de redes
  • Protección y seguridad
  • Políticas, mecanismos y técnicas
  • Administración de la seguridad
  • Sistemas operativos distribuidos
  • Modelos de aplicación
  • Procesos, hilos y maquinas
  • Nombrado y sincronización
  • Tolerancia a fallos


Clases de dispositivos

  • De bloques
  • De caracteres
  • De red


Protección y Seguridad




  • Amenazas y problemas.
  • Virus y malware.
  • Protección al sistema operativo.
  • Políticas, mecanismos y técnicas.


Niveles de Proteccion y Seguridad

0-. No hay
1-. ID; usuario, password
2-. Domótica
3-. Ergonómico o bromecánico
4-. Especial
5-. Combinado o mixto
6-. Avance tecnológico

Nombre por nivel

0-1-. Estándar
1-2-. Básico
2-3-. Verificación
3-4-. Validación
4-5-. Autentificación
5-6-. Confirmación

martes, 29 de mayo de 2018

Apuntes Unidad 5

Apuntes Unidad 5
Sistemas de Archivos


ARCHIVOS Y DIRECTORIOS



El Formato de archivo contiene nombre y extensión, el nombre es lo que contiene y la extensión en que fue echo.

Un modo de texto contiene 8 caracteres para el nombre y para la extensión puede tener de tres a cuatro caracteres.  

Un formato de directorios contiene 8 caracteres para nombrarlo y no posee una extensión.

Un atributo se refiere a, fecha, hora, usuario, tamaño.


DIRECTORIOS


  • Estructura lógica.
  • Estructura física.
  • Grafica acíclica.
  • Operaciones con directorios y archivos.
  • Metadatos del sistema de archivos.
  • Métodos de acceso:
  • Secuencial.
  • Aleatorio.
  • Indexado.
  • Hash.
  • En bruta.
  • Listas ligadas.
  • Rastreo de espacio libre.
  • Asignación de archivos:
  • Contigua.
  • Vinculada.
  • Indexada.
  • Por mapeo.
Los visores sirven para ver el tipo de formato.


SISTEMAS DE ARCHIVOS Y DIRECTORIOS

A través de  los comandos se pueden generar:

  • Rutas = path = camino.
  • Atributos = attrib = características.
  • Conjunto = set = config. = configuración.


Los atributos son propiedades.

  • Acceso (creación; secuencial, aleatorio mixto y con código)
  • Oculto
  • Usuario
  • Con contraseña
  • Protegido
  • Solo lectura
  • Lectura/escritura (modificación)



ARCHIVOS Y DIRECTORIOS

  • Métodos de acceso.   secuencial, aleatorio, mixto especial.
  • Meta-datos del sistema de archivos.
  • Estructura física y lógica.
  • Acceso de nivel superior  → indexado, hash, especial.
  • Rastreo de espacio libre. (listas ligadas)
  • Asignación de archivos.
  • Aplicaciones.   FAT, NTFS                      
  • Montajes, redirección y múltiple



La palabra "Indexado" es porque trabaja sobre subíndices y significa ordenado que se hace a través de los índices y atributos. Y la palabra "Hash" significa, tomar valores de mayor a menor y viceversa, de menor a mayor.

Cabe mencionar que un algoritmo varía de acuerdo a la aplicación y que son formulas.

El API crea los archivos y directorios.
Las operaciones son carga y descarga.
La programación en sistemas operativos es basada en comandos (BATCH) en lotes o por pasos.

RASTREO DE ESPACIO LIBRE

  1. Acceso en bruto
  2. Listas ligadas
  3. FAT, NTFS
  4. Montajes
  5. Redirecciones.

lunes, 28 de mayo de 2018

Apuntes Unidad 4

Apuntes Unidad 4

Administración de Entrada / Salida.


Gestión de Entrada y Salida.

Esto representa los intercambios de información desde el procesador o incluso al acceso directo de la memoria. Esta actividad de entrada y salida se realiza gracias a la relación que hay entre el sistema operativo con los diversos periféricos, así administrar y controlar  los estados y recursos que tienen cada uno de estos mediante los controladores de dispositivos.


  1. Características del dispositivo; Accesos secuencial y aleatorio.
  2. Clases
  3. Almacenamiento
  4. Organización física
  5. Organización lógica
  6. RAID, CRC, LRC, EDC, ECC.
  7. Planificación
    • FCFS, PICKUP, SSTF, LOOK, C-LOOK.
  8. Controladores


Planificación y Gestion de Entrada / Salida.

Esto se realiza a través de la BIOS y el planificador.

Los conectores tienen configuración.



Apuntes Unidad 2 y 3

Apuntes Unidad 2 y 3

- Administración de Procesos y del procesador
- Administración de memoria.


  • Los procesos cambian de nombre dependiendo de la capa en donde se encuentren.
  • Los Procesos son igual a una tarea o trabajo.
  • A un proceso se le conoce como ejecución o correr.
  • Existen procesos binarios, cuaternarios, etc.
  • Los procesos trabajan con datos: Bios, Otros procesos, Calculo, Verificación, etc.
  • Los datos manejan solo 0/1 a los cuales se les llama “paridad”.
  • La paridad es igual a un “OK/FAIL”.
  • Los estados del proceso son (la forma que presentan).
  • La diferencia que hay entre un archivo y un proceso es que: El archivo es un espacio y un proceso son programas y archivos con instrucciones. 





  • Procesos: programa ejecutándose “funcionando”.
  • Archivo: contiene datos y su extensión es “.DOC”.
  • Programa: contiene instrucciones, comandos, ordenes, palabras reservadas, sentencias.
  • Instrucciones: acciones a realizar a lo que llamamos lenguaje de programación.
  • Comandos: programas (internas, externas) conocido como proceso en lotes o en batch.


Ordenes: (=, ≥, ≤)
Símbolo (  )= Vinculo.






  • Proceso de usuario y aplicación.


  • Procesos del programa del sistema.


  • Procesos del sistema operativo.


Planificador


  • Interrupción: son switch


  • Registros: (recorel), exte, rec, reg, R, r.


  • Tiempos o plazos: síncrono o asíncrono.


Modo de procesos


  • Supervisor: hablamos de privilegios, derechos o permisos.


  • Núcleo o monitor: cuando queremos checar todos los procesos usados.


  • Modo regular: usuario.



DESCRIPTOR DE PROCESOS

Planificación de procesos: a corto o largo plazo.


  • FCFS: el primero en venir y el primero en irse.
  • FIFO: primero en entrar, primero en salir.
  • POR PRIORIDAD: nivel de importancia.
  • SRTF: busca la mejor ruta para llegar a su meta. Garantiza buen funcionamiento.
  • APROPIACION
  • COLAS: trabaja con tiempos y turnos.
  • HRRN: razón de resultado (el mejor proceso).
  • POR ALGORITMO
  • POR AFINIDAD
  • POR HILOS


Tipos de procesos: Nativos, Acumulados, Resultantes e Híbridos.


  • .exe: es de longitud que sea (M, G, T), se guarda en disco duro.
  • .com: solo es de un mega y se guarda en la memoria RAM y ROM.


PROCESOS

Procesos (modo): lineal, cooperativo, distribuido, bloqueo y semaforo.





ATRIBUTO DE LOS MECANISMOS DE COMUNICACIÓN


  • Proceso por canal, único o múltiple.
  • Conexión unidimensional.
  • Orientados a conexión o sin conexión.
  • Estrategias de nombrado.
  • Multicast, broadcast, unicast.
  • Orientado a flujo o mensajes.
  • Heterogéneas y homogéneas.
  • Síncronos y asíncronos.
  • Persistentes y transitorios.
  • Operaciones.
  • Estrategia en el umbral de memoria.



Un atributo en inglés es “attrib” y en sistemas son: forma, presentación y meta.

Una ruta o camino es el lugar en donde se localiza o donde se encuentra.


OPERACIONES CON PROCESOS


  • Persistentes y transitorios.
  • Colas: turnos que siguen los procesos.
  • Atómicos: procesos únicos.
  • Bloqueos
  • Socket´s: es un programa que divide las tareas para que los demás procesos sean más rápidos.
  • Tuberías: (pipeling) procesos alternativos para llegar al punto final.
  • Algoritmos.


OPERACIONES DE MEMORIA

  • Overlay  (Superpocición o Sobreposición)
  • Swappin (Intercambio de espacio)
  • Fragmentación (Dividir la memoria por sectores)
  • Paginación

En la computadora todo es único en el mismo espacio.

El trabajo de la memoria es ahorrar y buscar espacio.


MEMORIA

  • Segmentación (sección, parte de registros y pilas).
  • Fragmentación.
  • Paginación (MMU)( investidas, por demanda, grandes, sucias).
  • Distribución del tiempo (EAT).
  • Procesos múltiples.
  • Cargas y bibliotecas dinámicas.
  • Accesos (TLB)(CAM).


Los atributos que tienen el procesador, memoria y disco duro son:

  • Dirección
  • Registro
  • Espacio
  • Pila
  • Velocidad
  • Sector

Un Meta-dato es un dato con código.


MAPEO DE MEMORIA

El mapeo tiene direccion de memoria, programa a ejecutar y resultado.

  • El mapeo solo tiene un número.
  • Quien desarrolla el ampeo es el compilador o traductor.

Apuntes Unidad 1

Apuntes Unidad 1

Introducción a los Sistemas Operativos

En sistemas: 

  • Abreviatura  se le conoce como acrónimo.
  • Compatibilidad es igual a algo parecido pero no a algo igual.
  • Configuración: establece los parámetros de origen (fábrica). 
  • Actualización: agrega nuevos archivos, quita, cambia, pone.
  • Ajustes:  agrega algo para que funcione mejor o peor.
  • SepUp: conjunto actualizado.
  • Tipos de Sistemas Operativos: se clasifican en usuario, tarea, aplicación, kernel, tamaño, posición, etc. 


Significados



  • S.O: Sistemas Operativos.
  • D.O.S: Sistema Operativo en Disco por sus siglas en ingles "Disk Operating System”



- El shell es el ambiente o también conocido como entorno lo cual se divide en la parte gráfica y comando que es igual al texto.

- El kernel es el núcleo que constituye una parte fundamental del sistema operativo.

- El  firmware es algo específico como lo son las tarjetas, procesadores, controladores, etc.  

Kernel

El kernel es es la parte central de un sistema operativo y es el que se encarga de realizar toda la comunicación segura entre el software y el hardware del ordenador.
Los tipos que hay son micronúcleos, exonúcleos, monolíticos, híbridos, empotrado.
De un controlador se deriva la entrada, la función y la salida.




Un comando en sistemas es ¿Qué hace? y ¿Cómo lo va a hacer?, del cual se deriva los internos que es la memoria RAM como lo son los programas pequeños y los Externos que se encuentran en el disco duro como son programas grandes.




Cuestionario Unidad 1



Cuestionario Unidad 1.


1. ¿Cómo se define un Sistema Operativo?

Conjunto de órdenes y programas que controlan los procesos básicos de una computadora y permiten el funcionamiento de otros programas.


2. ¿Por qué se tiene que aprender todo lo relacionado con el Sistema Operativo?

La importancia del sistema operativo moderno reside en poder controlar una máquina a través de una interfaz visual, sin tener grandes conocimientos técnicos, convirtiendo un hardware complejo en una solución para el hogar o la oficina completamente amigable y accesible a todos los públicos.


3. ¿Por qué un dispositivo requiere de un sistema operativo?

Porque el SO en este caso, despierta a la computadora y hace que reconozca a la CPU, la memoria, el teclado, el sistema de vídeo y las unidades de disco. Además, proporciona la facilidad para que los usuarios se comuniquen con la computadora y sirve de plataforma a partir de la cual se corran programas de aplicación.


4.- ¿Cuándo se utiliza un S.O y cuando no?

Cuando el dispositivo requiere realizar más de una tarea al mismo tiempo.

5.- ¿Cuál es la diferencia más importante entre la vista del usuario y la vista del sistema? 

Los recursos gráficos.

6.- ¿Cuáles son las partes de un sistema operativo? 

Gestión de procesos, Gestión de la memoria principal, Gestión del almacenamiento secundario, Sistema de entrada y salida, Sistema de archivos, Sistemas de protección, Sistema de comunicaciones, Programas del sistema, Gestión de recursos.

7.- ¿Cómo se define un controlador? 

Como un programa que permite que el dispositivo pueda interactuar con un componente.

8.- Escribe los orígenes de los SO. 

El primer Sistema Operativo fue desarrollado en el Centro de Investigación y Desarrollo de la General Motors Company a principio de la década de los cincuenta. Sólo contemplaba la ejecución de una tarea en un método llamado de bloques o batch.
En la siguiente década comenzaron a aparecer los sistemas operativos multi tareas, que eran capaces de procesar varios trabajos en un tiempo dado a base de repartir los tiempos de proceso.
En 1965, los Laboratorios de Telefonía Bell (una división de AT&T) trabajaban en conjunto con General Electric y el Proyecto MAC del MIT en el desarrollo de Multics.

Por diversas razones, Bell se separó del grupo pero al seguir con la necesidad de un sistema operativo con características similares, Ken Thompson y Dennis Ritchie decidieron diseñar un sistema operativo que llenara los requisitos predispuestos. En 1970, Thompson
lo implementó como un ambiente de desarrollo en una PDP-7. A modo de mofa hacia
Multics, Brian Kernighan lo llamó UNIX.

9.- ¿Cuáles son las partes del núcleo de un SO?

Se divide en 5 niveles, los cuales son:

- Nivel 1. Procesador. (Núcleo): Se encarga de activar los cuantum de tiempo para cada uno de los procesos, creando interrupciones de hardware cuando no son respetadas.

- Nivel 2. Entrada/Salida: Proporciona las facilidades para poder utilizar los dispositivos de E/S requeridos por procesos.

- Nivel 3. Gestión de procesos: Los procesos preparados para ejecución se encolan en la cola ready de acuerdo a su prioridad, por lo que la rutina del scheduler se limita a coger el primer elemento de la cola, que pasa al dispatcher para que lo cargue en ejecución (cola run, que tendrá un único elemento). Por ortogonalidad, se asume la existencia de un proceso nulo, que siempre estará preparado para ejecución o ejecutándose.

- Nivel 4. Sistema de Archivos: Proporciona la facilidad para el almacenamiento a largo plazo y manipulación de archivos con nombre, va asignando espacio y acceso de datos en memoria. Da soporte al almacenamiento a largo plazo de los archivos con nombre.

- Nivel 5. Información o Aplicación o Intérprete de Lenguajes: Facilita la comunicación con los lenguajes y el sistema operativo para aceptar las órdenes en cada una de las aplicaciones. Cuando se solicitan ejecutando un programa el software de este nivel crea el ambiente de trabajo e invoca a los procesos correspondientes.

10.- ¿Cuál es la diferencia entre un SO y un núcleo? 

Un sistema operativo, como usamos el término, significa una colección de programas que son suficientes para usar la computadora para una realizar una variedad de trabajos.

El núcleo es uno de los programas en un sistema operativo, el programa que distribuye los recursos de la máquina a los otros programas que estén ejecutándose. El núcleo también se encarga de iniciar y parar otros programas.    

11.- ¿Cuáles son algunos de los tipos de recursos que debe gestionar el SO? 

-Realizar el interfaz sistema-usuario.
-Compartir los recursos de Hardware entre los usuarios.
-Permitir a los usuarios compartir sus datos entre ellos.
-Prevenir que las actividades de un usuario no interfieran en las de los demás usuarios.
-Calendarizar los recursos de los usuarios.
-Facilitar el acceso a los dispositivos de E/S.
-Recuperarse de fallas o errores.
-Llevar el control sobre el uso de los recursos.

12.- ¿Cuál es la diferencia entre un programa y un proceso? 

Un proceso es la ejecución de diversas instrucciones por parte del microprocesador de acuerdo al programa, trabaja en modo ejecutivo, utiliza memoria principal y procesador.

Un programa son aplicaciones y recursos que permiten desarrollar diferentes tareas en una computadora (ordenador), un teléfono u otros equipos tecnológicos. Se encuentra en modo pasivo y utiliza únicamente memoria secundaria.

13.- ¿Cuáles son los estados en las que puede encontrarse un proceso? 

-Ejecución, es un proceso que está haciendo uso del procesador.
-Bloqueado, No puede ejecutarse hasta que un evento externo sea llevado a cabo.
-Listo, ha dejado disponible al procesador para que otro proceso pueda ocuparlo.

14.- ¿Cuántos procesos puede haber en estado de ejecución al mismo tiempo? 

Tantos como la memoria de la computadora puedan soportar.

15.- ¿Qué tipos de eventos pueden originar una transición del estado de ejecución al estado terminal?

-Que el usuario cierre algún programa voluntariamente.
-Que el proceso esté en estado de error suficiente tiempo como para que el so decida que es necesario terminarlo.

16.- Menciona algunas cosas que podrían estar esperando un proceso.

Hay cuatro eventos principales que provocan la creación de procesos:

-El arranque del sistema.
-La ejecución, desde un proceso, de una llamada al sistema para la creación de otro proceso.
-Una petición de usuario para crear un proceso.
-El inicio de un trabajo por lotes.

17.- Algo de la información almacenada en un VPS no siempre se mantiene actualizada. ¿Cuáles son algunos ejemplos de esta información?

VSP (View Synchrony Protocol) se establece a través del conjunto de miembros de grupo principal que pueden comunicarse entre ellos. Este protocolo proporciona la entrega garantizada de mensajes en orden para las corrientes de mensajes que implican a un remitente y varios destinatarios potenciales. Esta garantía es parecida a las que proporciona TCP/IP para las corrientes de mensajes de punto a punto.

18.- Proporcione ejemplos (dé tres) de los tres tipos de procesos: del usuario, del sistema, del SO.

Micronúcleos
AIX
La familia de micronúcleos L4
El micronúcleo Mach, usado en GNU Hurd y en Mac OS X
BeOS
Minix
MorphOS
QNX
RadiOS
VSTa
Hurd

Núcleos híbridos (micronúcleos modificados)
Microsoft Windows NT, usado en todos los sistemas que usan el código base de Windows NT
XNU (usado en Mac OS X)
DragonFlyBSD
ReactOS

Núcleos monolíticos en contraposición a micronúcleos
 Por ejemplo, XNU, el núcleo de Mac OS X, está basado en el núcleo Mach 3.0 y en FreeBSD

19.- ¿Cómo solicita una aplicación al SO para que haga algo?

Las llamadas al sistema comúnmente usan una instrucción especial de la CPU que causa que el procesador transfiera el control a un código privilegiado (generalmente es el núcleo), previamente especificado. Esto permite al código privilegiado especificar donde va a ser conectado, así como el estado del procesador.
Cuando una llamada al sistema es invocada, la ejecución del programa que invoca es interrumpida y sus datos son guardados, normalmente en su PCB (Bloque de Control de Proceso del inglés Process Control Block), para poder continuar ejecutándose luego. El procesador entonces comienza a ejecutar las instrucciones de código de bajo nivel de privilegio, para realizar la tarea requerida. Cuando esta finaliza, se retorna al proceso original, y continúa su ejecución. El retorno al proceso demandante no obligatoriamente es inmediato, depende del tiempo de ejecución de la llamada al sistema y del algoritmo de planificación de CPU.

20.- ¿Cuándo un SO obtiene una interrupción desde un dispositivo, que mecanismo suele utilizar para seleccionar el código a fin de manipular la interrupción?

Señal externa al procesador que provoca la detención del programa en curso para que la CPU realice otra actividad. El mecanismo de interrupciones fue motivado por la E/S aunque posteriormente se generalizó a eventos producidos internamente en el procesador
Disponen de dos líneas, una de petición (INT) y otra de reconocimiento (RINT).

¬ El vector de interrupción es generado por el dispositivo que produce la interrupción.
¬ Utiliza un mecanismo de daisy chaining para transmitir la señal de reconocimiento.
¬ El dispositivo de E/S genera la petición de interrupción activando INT.
¬ La CPU la reconoce activando RINT.
¬ Los módulos que reciben RINT y no han interrumpido, la transmiten al siguiente módulo.
¬ El módulo que recibe RINT y realizó petición pone el vector de interrupción n en el bus de datos.
¬ A partir del vector n la CPU bifurca a la rutina de tratamiento correspondiente al dispositivo.

21.- ¿Cuáles son los modos en que funciona un sistema operativo y por qué?

No privilegiado y Privilegiado.

- No privilegiado: también conocido como modo usuario. Se trata del conjunto de instrucciones que puede ejecutar una aplicación. El conjunto de instrucciones que se pueden ejecutar en modo no privilegiado representa un subconjunto del total de las instrucciones que ofrece el procesador.

- Privilegiado: también llamado modo supervisor. Este modo ofrece acceso a todo el juego de instrucciones del procesador y recursos del sistema, por tanto, incluye también el conjunto de instrucciones del modo no privilegiado. Es el modo en el que se ejecuta el núcleo del sistema operativo.

22.- ¿A qué se le llama planificador de procesos de un SO?

El planificador de procesos es la parte del sistema operativo que se encarga de seleccionar a qué proceso se asigna el recurso procesador y durante cuánto tiempo.

23.- ¿Qué interfaces utiliza un SO?

- Interfaz de línea de comando: Estas interfaces permiten dar instrucciones a algún programa informático utilizando simplemente texto ya sea interactivamente por alguna entrada de texto como un teclado o más automatizada como por un archivo de script.

- Interfaz gráfica: Se les denomina GUI (Graphical User Interface) y se encargan de gestionar la interacción con el usuario utilizando recursos y relaciones visuales tales como punteros, iconos y menús. Una GUI facilita el uso de un computador a través de estas metáforas gráficas, por lo que se diferencia notablemente con una CLI, ya que lo que una línea de comando realiza escribiendo una orden, una interfaz gráfica lo ejecuta a través de una acción, por ejemplo: arrastrar un elemento, dar click a un ícono o desplegar un menú.

- Interfaz táctil: También conocida como TUI, es una interfaz que permite la interacción con el Sistema Operativo a través de un dispositivo táctil como pantalla sensible o touchscreen. Las TUIs son un complemento para las antes mencionadas GUI, ya que igualmente implementan un interfaz gráfica GUI para poder interactuar mediante la pantalla táctil.

- Interfaz Natural: La interfaz natural de usuario conocida como NUI, es aquella interfaz de Sistemas Operativos que emplea GUIs, pero sin la utilización de dispositivos de entrada tales como mouse y teclado, basándose en movimientos corporales y gestuales donde el cuerpo pasa a ser el mando de control. También pueden denominarse NUIs los sistemas que emplean reconocimiento de voz.

24.- ¿Cómo se comunican los procesos entre sí?

A través de compartir espacios de memoria, ya sean variables compartidas o buffers, o a través de las herramientas provistas por las rutinas de IPC.  Se establece siguiendo una serie de reglas (protocolos de comunicación). Los protocolos desarrollados para internet son los mayormente usados: IP (capa de red), protocolo de control de transmisión (capa de transporte) y protocolo de transferencia de archivos, protocolo de transferencia de hipertexto (capa de aplicación).

25.- Para el caso de Linux y Windows, ¿cómo está estructurado su núcleo, como es su planificador de procesos?

Linux

La estructura de Unix se asemeja a un típico modelo de capas, donde cada capa puede comunicarse únicamente con las capas que se hallan en los niveles inmediatamente inferior y superior. En Linux, existen dos versiones del kernel:

Versión de producción:

La versión de producción, es la versión estable hasta el momento. Esta versión es el resultado final de las versiones de desarrollo o experimentales. Cuando el equipo de desarrollo del núcleo experimental, decide que ha conseguido un núcleo estable y con la suficiente calidad, se lanza una nueva versión de producción o estable. Esta versión es la que se debería utilizar para un uso normal del sistema, ya que son las versiones consideradas más estables y libres de fallos en el momento de su lanzamiento.

Versión de desarrollo:

Esta versión es experimental y es la que utilizan los desarrolladores para programar, comprobar y verificar nuevas características, correcciones, etc. Estos núcleos suelen ser inestables y no se deberían usar, a no ser que sepas lo que haces.
Las versiones del núcleo se numeran con 3 números, de la siguiente forma: XX.YY.ZZ
XX: Indica la serie principal del núcleo. Hasta el momento solo existen la 1 y 2. Este número cambia cuando la manera de funcionamiento del núcleo ha sufrido un cambio muy importante.
YY: Indica si la versión es de desarrollo o de producción. Un número impar, significa que es de desarrollo, uno par, que es de producción.
ZZ: Indica nuevas versiones dentro de una versión, en las que lo único que se ha modificado son fallos de programación o bugs.

NÚCLEO DE WINDOWS

El modo núcleo de la línea de Windows NT está compuesto por subsistemas capaces de pasar peticiones de E/S a los controladores apropiados usando el gestor de E/S. Dos subsistemas crean la capa del modo usuario de Windows 2000: el subsistema de Entorno (ejecuta aplicaciones escritas para distintos tipos de sistemas operativos), y el subsistema Integral (maneja funciones específicas de sistema de parte del subsistema de Entorno). El modo núcleo en Windows 2000 tiene acceso total al hardware y a los recursos del sistema de la computadora. El modo núcleo impide a los servicios del modo usuario y las aplicaciones acceder a áreas críticas del sistema operativo a las que no deberían tener acceso.
El núcleo también es responsable de la inicialización de los controladores de dispositivos al arrancar. Hay tres niveles de controladores en el modo núcleo: controladores de alto nivel, controladores intermedios y controladores de bajo nivel. El Modelo de controladores de Windows (en inglés Windows Driver Model, WDM) se encuentra en la capa intermedia y fue diseñado principalmente para mantener la compatibilidad en binario y en código fuente entre Windows 98 y Windows 2000. Los controladores de más bajo nivel también son un legado de los controladores de dispositivos de Windows NT que controlan directamente un dispositivo o puede ser un bus hardware.