sistema roma puedo por operativo mac jesus ingles idiomas idioma home hablaba español cuantos completo como cambiar asus antiguedad c operating-system history

c - puedo - idioma de roma en la antiguedad



Idiomas que se utilizan para el desarrollo del sistema operativo antes de C (6)

Sé que C es el lenguaje de programación estándar para el desarrollo del sistema operativo, pero por curiosidad me preguntaba qué lo precedió. ¿Cuál fue el lenguaje de programación principal utilizado para el desarrollo del sistema operativo antes de C?


Eso depende. El sistema operativo Amiga, por ejemplo, fue escrito originalmente en cierta medida en BCPL, y se imaginaría que muchos sistemas operativos antiguos se escribieron en lenguaje ensamblador puro.

CP / M (que es una especie de predecesor de MS-DOS) se escribió en PL / M, pero MS-DOS se escribió en ensamblado por motivos de rendimiento. Aquí hay algo en MS-DOS: http://www.patersontech.com/Dos/Byte/InsideDos.htm

(Editado, no estoy seguro de dónde recogí esta basura Fortran.)


Hubo muchos sistemas antes de que C se usara para Unix (1969 ...). Aquí hay una línea de tiempo escasa. Haga clic en cada sistema para más detalles. La mayoría de los primeros sistemas se implementarían en ensamblador. Una excepción notable (no incluida en la línea de tiempo) fue el B5000 de 1961, con fecha de vencimiento, con una O / S escrita en ALGOL.


Los sistemas operativos "quieren" estar escritos en ensamblador. Si está empezando desde cero, una vez que haya completado las rutinas de interrupción, puede continuar y no moverse a una interfaz de lenguaje de alto nivel.

Además, a los montadores les gusta evolucionar. Una vez que haya cubierto el conjunto de instrucciones especificado, es conveniente agregar nombres de alias para las instrucciones que sirven para múltiples propósitos. Luego vienen las pseudoinstrucciones que pueden alias un par de instrucciones de la máquina. Entonces es bueno tener una instalación extensible para escribir macro subrutinas, para generar secciones arbitrarias de código que parecen instrucciones. (A diferencia de las macros C, esto a menudo puede permitir el control de flujo y la programación tipo script). Luego, existen reglas de alcance para garantizar que los identificadores solo se usen en un contexto particular.

Poco a poco, los idiomas evolucionan. C no apareció de la nada. Fue precedido por una generación o dos de idiomas ( Algol, BCPL ) que evolucionaron a partir de ensambladores de alto nivel. Muchos lenguajes ensambladores específicos de la plataforma eran, de hecho, bastante agradables. IBM todavía es un ensamblador malo. (Por supuesto, antes de eso no eran tan buenos ensambladores, y antes de eso eran tarjetas perforadas y conmutadores).

Más recientemente, GNU le dio un poco de mala fama al ensamblaje por ser relativamente primitivo. Sin embargo, no creas en las tácticas de miedo.


Hubo muchos sistemas Forth de 16 bits en los que el intérprete y la capa de SO (bastante primitiva) se escribieron en Forth.

El Mac OS original fue escrito en una mezcla de 68k ASM y un Pascal ligeramente extendido.

ADA se ha utilizado para escribir varios sistemas operativos.

Pero supongo que el lenguaje dominante utilizado para el desarrollo del sistema operativo antes de C era el lenguaje de ensamblaje de IBM 360.


Burroughs fue uno de los primeros en usar algo más que ensamblador para el desarrollo de sistemas operativos. Eligieron un dialecto de Algol.

En 1965, comenzó el diseño de Multics (Proyecto MAC, financiado por ARPA) y se eligió PL / I para desarrollar el sistema operativo. En 1969, Multics se abrió para su uso en MIT, pero hubo frustraciones y Bell Labs se retiró del Proyecto MAC. Ken Thompson, Dennis Ritchie, Doug McIlroy y JF Ossanna continuaron buscando el santo grial y comenzó el desarrollo de Unics (más tarde Unix).

Historia de Multics

¿Fallo de Multics?

Unix v. Multics


Durante la "Guerra fría" de los años 70, se hizo un esfuerzo por utilizar las funciones de seguridad de datos y procesamiento paralelo de ALGOL 68 para crear sistemas operativos basados ​​en Secure / Capability :

Computadora Cambridge CAP : todos los procedimientos que constituyen el sistema operativo se escribieron en ALGOL 68C , aunque en BCPL se escriben otros procedimientos protegidos estrechamente relacionados, como un paginador. cf microsoft

Máquina flexible : el hardware era personalizado y microprogramable, con un sistema operativo, compilador (modular), editor, recolector de basura y sistema de archivo, todo escrito en Algol 68RS. Se puede descargar un puerto Linux de este Algol68RS desde la compilación desde Sourceforge: algol68toc .

/ * Curiosamente, porciones de la máquina abstracta algebraicamente especificada de DRA Ten15 todavía están disponibles, también de Sourceforge: TenDRA (para minux). Ten15 sirve como el lenguaje intermedio de DRA para los compiladores, y evolucionó para ser compatible con C y Ada. Al parecer, se intentó conectar FreeBSD / Unix con el compilador TenDRA C * /

El lenguaje de programación ICL VME - S3 fue el lenguaje de implementación del sistema operativo VME. S3 se basó en ALGOL 68 pero con tipos de datos y operadores alineados con los ofrecidos por la serie ICL 2900 . Este sistema operativo todavía está en uso como máquina virtual Linux y tiene unos 100.000 usuarios.

Las computadoras Soviet Era Эльбрус-1 (Elbrus-1) y Эльбрус-2 se crearon utilizando el lenguaje de alto nivel uЭль-76 (AL-76) , en lugar del ensamblaje tradicional. uЭль-76 se parece a Algol-68. La principal diferencia son los tipos de enlace dinámico en uЭль-76 admitidos en el nivel de hardware. uЭль-76 se utiliza para aplicaciones, control de trabajos, programación del sistema, cf e2k-spec .

Quizás el ejército estadounidense estaba haciendo algo similar en alguna parte. ¿Nadie?