É uma boa ideia criar um sistema operacional escrito em uma linguagem de script?
Por exemplo, que tal criar um sistema operacional usando Python?
É uma boa ideia criar um sistema operacional escrito em uma linguagem de script?
Por exemplo, que tal criar um sistema operacional usando Python?
Respostas:
Não é apenas uma má ideia. É praticamente impossível.
Como você implementa E / S com um idioma cujas instalações de E / S dependem inteiramente do sistema operacional host?
Como você pode implementar o planejamento primitivo sem nenhuma primitiva de interrupção útil?
Como você pode escrever um driver de dispositivo em um idioma que não pode endereçar um byte específico?
Edit: - Apenas para esclarecer um pouco. Você não pode escrever um sistema operacional "real" que interaja diretamente com a máquina em uma linguagem de "script". No entanto, você pode escrever uma "máquina virtual" utilizável se a linguagem de escrita for flexível o suficiente. Para implementações de instância de Donald Knuths teórica MIX (s) máquina e uma ZX80 emulador bom o suficiente para pacman prazo ter sido escrito em JavaScript.
Antes de decidir como , você precisa especificar o quê . O que esse novo sistema operacional fará? Para onde ele vai correr? Por que alguém se daria ao trabalho de usá-lo? etc. A próxima coisa é determinar as qualidades do sistema operacional. Velocidade, segurança, encadeamento, gerenciamento de memória, multitarefa, formatos de arquivo, suporte a idiomas, processadores suportados, etc.
Respondendo às perguntas acima e considerando as muitas qualidades do seu sistema operacional, você pode determinar qual ferramenta usar para alcançar seus objetivos.
Agora, você realmente quer fazer tudo isso?
Suponho que o Python tenha sido usado em parte para escrever partes do Linux - Veja: Em quais idiomas o Windows, Mac OS X e Linux estão escritos?
Sei que esta não é uma resposta adequada, mas este projeto demonstra um sistema operacional funcional com um kernel escrito em JavaScript:
https://github.com/charliesome/jsos/
Os drivers para VGA e o teclado também foram escritos em JavaScript usando interrupções. Eu desenvolvi uma implementação do OpenGL 1.1 para mim mesmo há um tempo atrás e funciona muito bem.
Não, nem é possível (exclusivamente)
Por quê? Considere o seguinte:
O que é uma linguagem de script?
Vamos fazer as duas seguintes suposições sobre a definição de uma "linguagem de script":
O que é um sistema operacional?
Vamos supor que o objetivo principal de um sistema operacional possa ser simplificado para o seguinte:
Por essas mesmas definições, é logicamente impossível que uma linguagem de script seja um sistema operacional. Por quê?
É possível escrever uma quantidade mínima de código em uma linguagem "bruta", como C, mas uma linguagem compilada bruta sempre será necessária por definição. Uma vez instalado, outras partes do sistema operacional podem ser implementadas em uma linguagem de script, mas uma linguagem de script nunca pode ser usada sozinha.
Devo sustentar que é, em princípio, possível escrever um sistema operacional em python. Você precisaria produzir um compilador de linguagem de nível Python para baixo, além de adicionar módulos à biblioteca padrão que fornecem acesso às partes de baixo nível do seu computador. Mas se essas duas peças estivessem no lugar, seria possível.
Contudo,