Una forma de clasificación de los sistemas operativos se basa en el número de usuarios que el sistema puede atender al mismo tiempo.
Así, tenemos sistemas de una sola tarea o trabajo, los cuales pueden atender solo un trabajo (y por lo tanto un solo usuario) a la vez.
Un sistema de multiprogramación permite que se ejecuten varios trabajos al mismo tiempo. El sistema operativo se encarga de intercambiar la atención del procesador entre los programas en ejecución y las funciones de apoyo propias.
Un sistema de multiprocesamiento difiere del sistema de multiprogramación por el hecho de trabajar con varios procesadores a la vez.
Otra forma de clasificar a los sistemas operativos toma en cuente el tipo de acceso que proporcionan al usuario. En este caso, se tienen: sistemas de procesamiento por lotes (batch processing), donde un trabajo se define como una secuencia de instrucciones de control almacenadas en algún dispositivo para que el sistema operativo pueda leer y ejecutar una serie de trabajos, limitando la intervención del operador solo al montaje de cintas y discos.
Por otra parte se tienen los sistemas de tiempo compartido (multiusuario) que proporcionan acceso interactivo o conversacional a varios usuarios, proporcionando a cada uno de ellos pequeños intervalos de tiempo de acuerdo a la cantidad de usuarios presentes y a la prioridad de cada uno de los procesos.