¿Es una buena idea crear un sistema operativo que esté escrito en un lenguaje de script?
Por ejemplo, ¿qué tal crear un sistema operativo usando Python?
scripting
operating-systems
Amir Saniyan
fuente
fuente
Respuestas:
No es solo una mala idea. Es casi imposible.
¿Cómo implementa IO con un lenguaje cuyas instalaciones de IO dependen completamente del sistema operativo host?
¿Cómo podría implementar una programación primitiva sin ninguna primitiva de interrupción útil?
¿Cómo podría escribir un controlador de dispositivo en un idioma que no pueda abordar un byte en particular?
Editar: - Solo para aclarar un poco. No puede escribir un sistema operativo "real" que interactúe directamente con la máquina en un lenguaje de "secuencias de comandos". Sin embargo, puede escribir una "máquina virtual" utilizable si el lenguaje de escritura es lo suficientemente flexible. Por ejemplo, las implementaciones de Donald Knuths teórico MIX (s) de la máquina y una ZX80 emulador buena suficiente para ejecutar pacman se han escrito en JavaScript.
fuente
Antes de decidir el cómo , debe especificar qué . ¿Qué hará este nuevo sistema operativo? ¿Dónde correrá? ¿Por qué alguien se molestaría en usarlo? El siguiente paso es determinar las cualidades del sistema operativo. Velocidad, seguridad, subprocesos, gestión de memoria, multitarea, formatos de archivo, soporte de idiomas, procesadores compatibles, etc.
Al responder las preguntas anteriores y considerar las muchas cualidades de su sistema operativo, puede determinar qué herramienta utilizar para lograr sus objetivos.
Ahora, ¿realmente quieres hacer todo eso?
Supongo que Python se usó en parte para escribir partes de Linux. Consulte: ¿En qué idiomas están escritos Windows, Mac OS X y Linux?
fuente
Sé que esta no es una respuesta adecuada, pero este proyecto demuestra un sistema operativo que funciona con un núcleo escrito en JavaScript:
https://github.com/charliesome/jsos/
Los controladores para VGA y el teclado también se escribieron en JavaScript usando interrupciones. Desarrollé una implementación de OpenGL 1.1 para mí hace un tiempo y funciona bastante bien.
fuente
No, ni siquiera es posible (exclusivamente)
¿Por qué? Considera lo siguiente:
¿Qué es un lenguaje de script?
Hagamos los siguientes dos supuestos sobre la definición de un "lenguaje de script":
¿Qué es un sistema operativo?
Supongamos que el objetivo principal de un sistema operativo se puede simplificar de la siguiente manera:
Según estas mismas definiciones, es lógicamente imposible que un lenguaje de script sea un sistema operativo. ¿Por qué?
Es posible escribir una cantidad mínima de código en un lenguaje "en bruto" como C, pero siempre se necesitará un lenguaje compilado en bruto por definición. Una vez que esto esté en su lugar, otras partes del sistema operativo se pueden implementar en un lenguaje de script, pero un lenguaje de script nunca se podría usar solo.
fuente
Debo mantener que, en principio, es posible escribir un sistema operativo en python. Tendría que producir un compilador de lenguaje de Python a bajo nivel, así como agregar módulos a la biblioteca estándar que brinden acceso a las piezas de bajo nivel de su computadora. Pero si esas dos piezas estuvieran en su lugar, sería posible.
Sin embargo,
fuente