¿Cuándo se inventaron los procesos de fondo?

13

Buscando una fecha y una referencia autorizada. Respuesta esperada en algún momento de la década de 1960.

Esta información es esencial para escribir una solicitud de función impactante.

supyo
fuente
Por curiosidad, ¿por qué revisar sus expectativas?
Stephen Kitt
2
¿Qué quiere decir con procesos en segundo plano (que es una forma de multitarea específicamente limitada para usuarios de terminales interactivos)?
RonJohn
2
Esta información es esencial para escribir una solicitud de función impactante. No lo creo.
Carsten S

Respuestas:

29

El primer sistema que admitió múltiples procesos de ejecución simultánea, o al menos para simular la ejecución concurrente de múltiples procesos, fue el sistema Atlas desarrollado en la Universidad de Manchester en el Reino Unido a principios de los años sesenta. La referencia para eso es el documento que describe el sistema, el supervisor Atlas , escrito por Tom Kilburn, R. Bruce Payne y David J. Howarth, y publicado en 1961 en la Conferencia de Computación de AFIPS:

Un programa de objeto se detiene (por SER) cuando se requiere acceso a un bloque de información que no está disponible de inmediato en la tienda principal.

[...]

Mientras se detiene un programa, en espera de la finalización de una transferencia de cinta magnética, por ejemplo, la rutina del coordinador cambia el control al siguiente programa en la lista de programas de objeto, que es libre de continuar.

Los procesos que esperan datos se suspenden y se colocan en segundo plano hasta que los datos estén disponibles.

Puede obtener más información sobre el sistema Atlas y la historia de los sistemas operativos en La evolución de los sistemas operativos de Per Brinch Hansen . Su libro de Classic Operating Systems reimprime bastantes documentos pioneros, incluido el artículo de Atlas mencionado anteriormente.

El concepto de multiprogramación, como se describió anteriormente, fue descrito por primera vez por Christopher Strachey en su artículo de 1959, Tiempo compartido en computadoras grandes y rápidas .

Lo que finalmente se recordó como tiempo compartido no fue exactamente lo mismo que el anterior; el tiempo compartido, que podría ser más familiar para las personas acostumbradas a los sistemas modernos multiusuario y multitarea, fue inventado en 1959 por John McCarthy en el MIT; ver La evolución de los sistemas operativos para referencias. El primer sistema que demostró el tiempo compartido fue CTSS, a fines de 1961 en un IBM 709, descrito en Un sistema experimental de tiempo compartido , escrito por Fernando Corbato, Marjorie Merwin-Daggett y Robert C. Daley, publicado en 1962. CTSS ya tenía demonios que podrían calificarse como la primera forma de procesos de fondo (en el sentido moderno de esa frase).

Consulte también La historia del cambio de contexto en Retrocomputing y las Reminiscencias de John McCarthy sobre la historia del tiempo compartido .

Si se refiere a procesos en segundo plano desde una perspectiva de shell, aparecieron junto con el control de trabajo en el shell C, donde Jim Kulp lo implementó en algún momento alrededor de 1980 (la función estaba disponible en 4BSD , lanzada a fines de 1980).

Stephen Kitt
fuente
1
Esta respuesta es sobre múltiples procesos, no procesos en segundo plano. Me parece que Burroughs estaba haciendo esto en 1957.
user207421
@EJP, la única máquina de Burroughs que existía en 1957 era la B205 (diseñada por ElectroData, que compró Burroughs), que no tenía ninguna noción de procesos.
Stephen Kitt
@EJP allí, ahora menciono explícitamente los procesos en segundo plano (aparte de los procesos en segundo plano en el Atlas), ¿es eso mejor?
Stephen Kitt