Un S.O. moderno, se desarrolla en general de forma modular, por lo que se estructura jerárquicamente en los siguientes niveles:
Gestión del procesador, que realiza el tratamiento del tiempo compartido entre procesos.
Gestión de memoria, que resuelve problemas de protección relativos a la multiprogramación o concurrencia de programas en la misma máquina, es decir, la existencia de varios programas ejecutándose "a la vez" y accediendo concurrentemente a la memoria.
Gestión de procesos, que resuelve los problemas de creación y destrucción de procesos, comunicación entre los mismos, paro, reanudación, paso a primer plano o planos secundarios, etc.
Gestión de dispositivos, para las operaciones de entrada y salida, así como las asignaciones de dispositivos a procesos y su posterior liberación.
Gestión de la información, que gestiona el espacio de nombres y la protección de los entornos de cada usuario frente a otros usuarios dentro y fuera del sistema.
UNIX, a pesar de su gran éxito y de su profunda evolución, se remonta a comienzos de los años '70. Desde sus or¡genes han transcurrido 25 años, inconcebible en informática, donde algo con 5 años es "histórico" o, incluso, "pre-histórico". Quizá esta sea la mejor prueba de su eficacia y potencia. Sin embargo, no fue desarrollado con las técnicas y metodología actuales, por lo que no goza de una estructuración en niveles tan clara. Intentando encajar las piezas y para ofrecer una visión genérica al lector se podría desglosar la estructura de UNIX según la figura 1.
Lo más importante a entender es que una shell o intérprete de comandos, es sólo una parte más en un S.O. aunque mucha gente identifica ambos conceptos. De hecho, es una de las partes menos importantes del sistema ya que si bien facilita la comunicación del usuario con el sistema, es totalmente sustituible e intercambiable hasta el punto en que la mayoría de los S.O. disponen de varias shells e incluso algunas pueden intercambiarse entre sistemas. Así pues, la shell más famosa del DOS es el COMMAND.COM, aunque algunos la sustituyen por QDOS. UNIX, cuenta con numerosas shells que se analizarán en el momento adecuado, siendo las más famosas la sh y la csh; sin embargo, existen versiones de sh para DOS.