La estructura interna de un sistema operativo es transparente al usuario, dependiendo del sistema operativo se estructura de una forma u otra, en este apartado se ven algunas estructuras que se han utilizado y se utilizan en los sistemas operativos:
Sistemas monolíticos
El sistema operativo está formado por un conjunto de procedimientos de forma que cada uno puede llamar a los demás cuando lo necesite. Todas las funciones que realiza un sistema operativo se llevan a cabo con un sólo programa que se ejecuta en modo kernel.
Sistemas de capas
Consiste en organizar el sistema operativo mediante una jerarquía de capas, cada capa tiene una función.
Microkernels
La idea de esta estructura es dividir el sistema operativo en módulos pequeños y sólo uno se ejecuta en modo kernel, de esta forma un error en un módulo no afecta a todo el sistema, además tienen la ventaja de que son fáciles de mantener debido a la estructura modular que poseen.
Máquinas virtuales
Se trata de realizar copias exactas de hardware que tiene la máquina real incluyendo modo kernel y modo usuario, la entrada y salida, etc. Cada máquina virtual es idéntica al verdadero hardware y cada una puede ejecutar un sistema operativo distinto.
Exokernels
Consiste en dividir los recursos y asignar a cada usuario una parte de esos recursos.