Un sistema operativo provee básicamente dos tipos de tareas:
1. Ofrecer una interfaz de uso “simple” y abstracta al los programas y programadores del hardware administrado. Aquí se crea la torre de niveles de abstracciones.
2. Administrar (y proteger) los recursos de hardware.