Lo más probable es que, basado en su uso diario, tenga una idea buena sobre cómo usar Windows. Sin embargo lo que estamos a punto de repasar es lo que realmente está ocurriendo debajo del cápo. Para el usuario diario de una computadora, no hay necesidad de saber nada de esto, pero como Hacker, con la necesidad de comprender comprender los sistemas subyacentes, aprender el funcionamiento interno de los sistemas operativos es una necesidad.
Abstracción
La palabra técnica para estos puntos ciegos es "abstracción". Abstracción es una palabra que se puede encontrar fuera de los espacios técnicos para significar una forma de eliminar la especificidad y comprender más fácilmente.
El sistema operativo maneja todo para el usuario promedio... pero tu ya no eres un usuario promedio. En las proximas publicaciones eliminaremos más y más abstracciones de nuestra visión de cómo funcionann las computadoras. Cada abstracción que eliminemos nos mostrará un mundo completamente nuevo de material extraordinariamente complicado que estaba justo debajo de la superficie.
Lo esencial
Entonces, ¿qué es realmente un sistema operativo? En resumen un sistema operativo es la interfaz entre el usuario final y el hadware de la computadora.
El hadware generalmente está controlado por algo conocido como firmware, que es el código integrado en la electronica que le dice cómo funcionar como componentes individuales. El firmware es el sistema opertivo para el hadware, pero en una computadora normal, no se considera parte del sistema operativo con el que interactúa el usuario.
La cordinación de los componentes de hadware individuales es el kernel, el nucleo del sistema operativo, que coordina esos componentes individuales para que la computadora pueda funcionar.
El sofware, tal como lo concebimos, es el código con el que interactúa un usuario, pero el kernel, incluso si nunca interactuamos con él directamente, sigue siendo el sofware como el núcleo del sistema operativo.
Sobre el sistema operativo se ejecunta más software, que es lo que consideramos procesos y programas. Estos procesos de usuario interactúan con el sistema operativo, que luego hace todo el trabajo con el kernel para garantizar que los procesos funcionen correctamente.