Jeremy Soller (
Experimentos com Redox em um laptop já permitiram melhorar o desempenho dos drivers, adicionar suporte HiDPI a algumas aplicações e criar novos componentes, como o pkgar, que simplificam a instalação do Redox a partir de imagens Live. Entre as tarefas nas quais a atenção está agora focada está a obtenção da capacidade de automontar o sistema (montar Redox a partir de um ambiente baseado em Redox). Em alguns meses, Soller planeja passar a trabalhar em Redox em tempo integral em um dos computadores a partir de um ambiente de desktop baseado em Redox, após algumas melhorias terem sido feitas no compilador Rustc.
O conceito de microkernel utilizado no Redox simplifica o desenvolvimento de drivers, pois o subsistema que fornece os drivers pode ser recompilado e reiniciado sem interromper o trabalho. Espera-se que o desenvolvimento em um ambiente baseado em Redox melhore a eficiência da portabilidade de programas e da solução de problemas de suporte de hardware. Por exemplo, está planejado completar a pilha USB e adicionar drivers gráficos.
Lembremos que o sistema operacional é desenvolvido de acordo com a filosofia Unix e pega emprestadas algumas ideias do SeL4, Minix e Plan 9. Redox utiliza o conceito de microkernel, no qual apenas a interação entre processos e gerenciamento de recursos são fornecidos no nível do kernel , e todas as outras funcionalidades são movidas para bibliotecas que podem ser usadas tanto pelo kernel quanto pelos aplicativos do usuário. Todos os drivers são executados no espaço do usuário em ambientes sandbox isolados. Para compatibilidade com aplicativos existentes, é fornecida uma camada POSIX especial, que permite executar muitos programas sem portabilidade.
O sistema usa o princípio “tudo é uma URL”. Por exemplo, a URL “log://” pode ser usada para registro, “bus://” para interação entre processos, “tcp://” para interação de rede, etc. Módulos, que podem ser implementados na forma de drivers, extensões de kernel e aplicativos de usuário, podem registrar seus próprios manipuladores de URL, por exemplo, você pode escrever um módulo de acesso à porta de E/S e vinculá-lo à URL "port_io:// ", após o qual você pode usá-lo para acessar a porta 60 abrindo a URL “port_io://60”. Desenvolvimentos de projetos
Ambiente do usuário em Redox
Fonte: opennet.ru