Como ya vimos cuando hicieron el cuestionario sobre software, un sistema operativo realiza muchas tareas, las principales (y que son realizadas por todos los sistemas operativos) son:
Comunicación con los periféricos: La comunicación con los periféricos es una tarea del sistema operativo que permite que dispositivos de entrada y/o salida se comuniquen con el CPU. Ejemplos: mouse transmitiendo el movimiento al CPU; módem recibiendo y enviando información de la Internet hacia el CPU.
Control de autorización de usuarios: Es una de las tareas más complejas realizadas por la computadora. Se encarga de comprobar que el usuario que está intentando usar el equipo está autorizado para ello. Si se trata de computadoras multiusuario, se encarga de administrar los permisos para cada usuario. En algunos casos este control de usuarios, incluye control de tiempos de utilización para el cobro posterior de los servicios. Ejemplos: la password que pide que sea introducida para acceder al usuario; un usuario puede tener permisos para abrir ciertos programas mientras que otro, no; Servidor de Facebook
Control de la ejecución de programas: Se encarga de ejecutar efectivamente los programas, y cuando sucede algún error o falla, lo reporta inmediatamente. Ejemplos: cuando el sistema operativo avisa que el navegador no está funcionando; cuando se instala un programa inadecuadamente y te pregunta si quieres volver a instalarlo.
Control de concurrencia: Es el encargado de asignar prioridades a los diferentes archivos o programas. No permite que se use un archivo simultáneamente. Ejemplos: cuando se quiere enviar un archivo adjunto en un mail y al mismo tiempo está abierto con Word; cuando el launcher de un programa es abierto dos veces y te pide que cierres uno para continuar.
Control de errores: El sistema operativo se encarga de buscar una solución a cada error de ejecución de algún programa, y también da una explicación de lo sucedido. Ejemplos: cuando se quiere ejecutar un archivo .exe que le faltan librerías necesarias; cuando un programa se cierra y te avisa de algún Runtime u otro error sucedido.
Administración de memoria: Se encarga de distribuir la memoria del equipo para cada programa que está siendo utilizado y ninguno invada la memoria física de otro. Ejemplos: cuando se abre el Administrador de tareas y puedes ver la memoria utilizada por cada programa que esté abierto; a cada programa que es abierto se le otorga una porción diferente de memoria para que pueda utilizarla solo el mismo.
Controles de seguridad de datos: Protege los datos almacenados por un usuario de modo de autorizar las modificaciones, agregados o consultas. Ejemplos: cuando se ejecuta un programa como administrador cambiando las configuraciones en "propiedades"; cuando se le pone contraseña a un archivo de Word para que solo lo abra una persona.