OS multiprocessante x86 de 32 bits capaz de executar aplicativos de console ou usuário gráfico.
Encontre todos os lançamentos em https://github.com/scopeinfinity/fuzzyos/releases
A imagem de inicialização pode ser encontrada em Assets para a versão correspondente.
As capturas de tela podem ser localizadas como Artifacts sob execução concluída em ações/IC.
| Bootloader | Turncup do kernel |
|---|---|
![]() | ![]() |
| Concha simples | gato |
|---|---|
![]() | ![]() |
| garfo() | Jogo de Tictactoe |
|---|---|
![]() | ![]() |
| Jogo de pingue -ppon | Programação do logotipo |
|---|---|
![]() | ![]() |
| Desktop |
|---|
![]() |
make images após clonar o repositório. FuzzyOS.vdi como armazenamento. FuzzyOS.vmdk como armazenamento. dd ou scripts/burn.sh para queimar a imagem no disco (potencialmente destrutivo).bash scripts/burn.sh build/FuzzyOS.raw /path/to/devicefile| Recurso | Existe |
|---|---|
| BOTA: BIOS herdado | ✔️ |
| BOTA: UEFI | |
| Estilo de particionamento de disco: MBR | ✔️ |
| Estilo de particionamento de disco: GPT | |
| Imagem do disco exportado: VMDK | ✔️ |
| Imagem do disco exportado: VDI | ✔️ |
| Imagem do disco exportado: RAW | ✔️ |
| kernel <-> aplicativo e aplicativo <-> isolamento de aplicativos | ✔️ |
| Modo de operação: Modo Real (carregador de inicialização + realmode-Library) | ✔️ |
| Modo de oposição: modo protegido (aplicativo de kernel + usuário) | ✔️ |
| Driver: disco io | ✔️ |
| Motorista: foto | ✔️ |
| Motorista: Pit | ✔️ |
| Driver: Teclado | ✔️ |
| Sistema de arquivo: FFS (interno) (somente leitura) | ✔️ |
| Manipulador de interrupção | ✔️ |
| syscall: console de texto io | ✔️ |
| Syscall: gráficos | ✔️ |
| syscall: teclado | ✔️ |
| Syscall: Manipuladores de arquivos | ✔️ |
| Scheduler de processo: Round Robin | ✔️ |
| Sistema de arquivo: FFS (Custom) (somente leitura) | ✔️ |
| Exibição: modo de texto | ✔️ |
| Exibição: Graphics-VGA 320x200 256 cores | ✔️ |
| Concorrência: multiprocessamento | ✔️ |
| Concorrência: multithreading | |
| paralelismo | |
| Segurança no escopo | |
| networking | |
| App-Build: Suporte c | ✔️ |
| App-Build: Suporte C ++ | ✔️ |
| App-Build: C/C ++ Bibliotecas padrão (conforme necessário) | ✔️ |
| App Runtime: Alocação de memória de heap | ✔️ |
| Aplicação: Calculadora | ✔️ |
| Aplicação: Cat | ✔️ |
| Aplicação: Desktop | ✔️ |
| Aplicação: Echo | ✔️ |
| Aplicação: Forkbomb | ✔️ |
| Aplicação: logotipo | ✔️ |
| Aplicação: LS | ✔️ |
| Aplicação: pingue-pongue | ✔️ |
| Aplicação: SH (Terminal) | ✔️ |
| Aplicação: SimpleCpp (exemplo) | ✔️ |
| Aplicação: mais | ✔️ |
| Aplicação: multiprocessamento (exemplo) | ✔️ |
| Aplicação: Tictactoe | ✔️ |
Aplicação: Your's? Yes, raise a PR | ✔️ |
bash before_install.sh
make clean
make qemu
Use make para criar binários e arquivos de imagem.
make
Nesse momento, os testes funcionam injetando ASM predefinido no código -fonte, que interrompe a execução no ponto de interesse. Depois disso, os testes podem usar o QEMU Monitor para verificar o estado atual com o estado esperado.
make test
Execute QEMU no modo de depuração e configure o servidor GDB.
make qemu_debug
E depois conecte -se ao servidor GDB.
make qemu_debug_connect
Contribuindo.md