Neste artigo apresento o sistema operacional livre GNU/Fiwix, simples e modesto, ele tem como objetivo servir para os estudos na área de sistemas. É baseado no Linux, mas não é Linux, ficou confuso? Então leia o texto e entenda melhor sobre este curioso sistema operacional.
Fiwix é um sistema operacional baseado no Unix criado por Jordi Sanfeliu, é focado na compatibilidade com o Linux. Ele foi desenvolvido para fins educacionais e o código do kernel é mantido tão simples para o benefício dos estudantes. Ele roda em uma plataforma 32 bit x86 e é compatível com uma grande quantidade de aplicativos GNU existentes.
O kernel do Linux é demasiadamente grande para um estudante iniciante de ciência da computação entender a estrutura interna e estudar como isto funciona e amanhã com certeza virá a ser maior do que é hoje.
Em contraste ao kernel do Linux, o GNU/Fiwix tem um estrutura mínima que serve de início e pode ser mais apropriada para o aprendizado.
Por motivos óbvios, este projeto é focado somente para estudantes de ciência da computação e entusiastas de Sistemas Operacionais que querem saber mais sobre operações internas de um sistema operacional Unix-like.
Não pense que o GNU/Fiwix é um novo sabor de Unix, com suas próprias utilidades do sistema, biblioteca e compiladores. Pense sim que o GNU/Fiwix é um novo Linux-like kernel, que segue a filosofia GNU/Linux e que faz uso das mesma aplicações existentes do GNU.
O sistema Fiwix é provavelmente o primeiro kernel com alta compatibilidade (com suas limitações correntes) com o básico do kernel do Linux. Isto significa que qualquer binário ELF-i386 compilado em um sistema GNU/Linux pode ser executado nativamente em um sistema GNU/Fiwix, sem necessitar de qualquer tipo de emulação.
Fiwix é baseado em um kernel monolítico e escrito inteiramente na linguagem C, usando apenas em pequenas partes o Assembler.
Objetivos:
Criar um kernel Unix-Like como um antigo projeto pessoal.
Aprender sobre as funções internas do kernel.
Promover um simples e limpo código fonte para fins educacionais.
Confirmar o desenvolvimento em aplicações abertas
Apreciar a vida no estilo kernel hacking ;-)
Características:
Escrito em C usando o Assembler somente em partes necessárias.
Boot Manager GRUB
POSIX padrão
VFS com Linux ext2 sistemas de arquivos suportados como somente leitura.
Gerenciamento de memória virtual acima de 4GB, sem swap ainda.
Compatível com chamadas de sistemas Linux
IDE/ATA suporte a driver de disco rígido como somente leitura
[2] Comentário enviado por hugorafael em 06/12/2006 - 08:20h
Muito legal!
Nunca tinha me interessado muito em me aprofundar na programação do kernel por achar o do Linux muito complexo, mas agora com certeza achei um mais interessante (pelo menos mais fácil), de estudar.
Valeu a indicação!
[5] Comentário enviado por demoncyber em 06/12/2006 - 11:36h
Muito bom artigo =], hum soh para lembrar não podemos nos esquecer do Minix e do clássico livro do grande Andrew S. Tanembaum que é em geral a documentaćào e o sistema operacional usado para este fim nas faculdades, gostei do projeto ainda vou dar uma pesquisada a fundo nele mas considero uma boa alternativa porém acho q o MINIX por questão de seus anos de existência e documentaćão ainda são o melhor para este fim.
[6] Comentário enviado por dastyler em 08/12/2006 - 09:44h
Bacana o artigo!!
O que mais me agradou no projeto é o requisto de hardware, que é baixissimo e isto permite que o sistema seja utilizado em maquinas de R$100,00!!
[7] Comentário enviado por tenchi em 08/12/2006 - 15:39h
Muito legal mesmo. Existe uma infinidade de sistemas livres colaborativos por aí. Eles só não são tão conhecidos quanto o linux. E não há só aqueles baseados em unix, mas também inspirados no windows (http://www.reactos.com ).
Exclelente artigo.
Estou até agora tentando instalar o hurd.. sem sucesso.. ;)
[10] Comentário enviado por matheusslima em 09/12/2006 - 23:56h
Sobre o Código Fonte disponível, achei o motivo de nao estar disponível por hora:
License
All the project and its source code will be officially presented under the GPL license when the kernel version reaches 1.0.0. This allows me to assure several things. First, the certainty that the source code of all the system will be available for everybody and simultaneously will be protected under the GPL license. Second, it will allow me to assure that all the students will have all the final source code at the same time. And third, if the educational kernel is coded by only one person, it will be more useful and understandable for students.
[11] Comentário enviado por acollucci em 28/11/2007 - 00:06h
otimo artigo esta de parabens, so um detalhe o Minix tem se tornado complexo nos ultimos anos, pois o Tanembaum mudou o foco dele.. confiram no www.minix3.org. Outra coisa e que existe um projeto nacional sobre desenvolvimento de SO em www2.osdev.net t+