Quais são alguns recursos para iniciar o desenvolvimento do sistema operacional? [fechadas]

Uma coisa que eu sempre quis fazer é desenvolver meu próprio sistema operacional (não necessariamente sofisticado como Linux ou Windows, mas melhor do que um simples carregador de inicialização que eu já fiz).

Estou com dificuldade para encontrar recursos / guias que levam você a escrever um SO simples "Hello World".

Eu sei que muitas pessoas provavelmente recomendam que eu olhe para Linux ou BSD; mas a base de código para sistemas como esse é (presumivelmente) tão grande que eu não sabia por onde começar.

Alguma sugestão?

Atualização: para facilitar para as pessoas que acessam esta postagem pelo Google, aqui estão alguns recursos de desenvolvimento de SO:

Escrevendo seu próprio sistema operacional (Obrigado Adam)

Linux do zero (Obrigado John)

SharpOS (sistema operacional C #) (Obrigado lomaxx)

Minix3 eMinix2 (Obrigado Mike)

OS Dev Wiki eFóruns (Obrigado Steve)

Genuíno (Obrigado Steve)

Farelo (Obrigado Steve)

Role seu próprio sistema operacional de clones UNIX de brinquedo (Obrigado Steve)

Série de desenvolvimento de sistema operacional Broken Thorn

Outros recursos:

Encontrei um bom recurso chamadoMikeOS, "MikeOS é uma ferramenta de aprendizado para demonstrar como sistemas operacionais simples funcionam. Ele usa o modo real de 16 bits para acesso ao BIOS, para que não precise de drivers complexos"

Atualizado 14/11/08

Encontrei alguns recursos emGuia do Freebyte para ... Sistemas operacionais gratuitos e não gratuitos que vincula a kits, como a biblioteca OSKit e ExOS. Eles parecem super úteis para iniciar o desenvolvimento do sistema operacional.

Atualizado 2/23/09

Ric Tokyo recomendadonanoos nissoPergunta, questão. Nanoos é um sistema operacional escrito em C ++.

Atualizado 9/9/09

Dinah forneceu algumas discussões úteis sobre Stack Overflow de aspirantes a desenvolvedores de sistemas operacionais:Obstáculos na criação de um sistema operacional personalizado discute quais armadilhas você pode encontrar ao desenvolver um sistema operacional eDesenvolvimento de SO é uma discussão mais geral.

Atualizado 9/9/09

LB forneceu um link para oProjeto Pintos, um sistema operacional educacional projetado para os alunos que aprendem o desenvolvimento do sistema operacional.

Atualizado em 27/07/09 (Continua forte!)

Eu tropecei em umcurso online de SO de Berkley apresentando 23 palestras.

TomOS é um garfo deMikeOS isso inclui um pouco de gerenciador de memória e suporte a mouse. Como MikeOS, ele é projetado para ser um projeto educacional. Está escrito no montador NASM.

Atualizado 4/8/09

Eu encontrei oslides e outros materiais para acompanhar as palestras on-line de Berkeley listadas acima.

Atualizado 23/8/09

Tudoperguntas com tag osdev no stackoverflow

OS / 161 é um sistema operacional acadêmico escrito em c que roda em um hardware simulado. Este sistema operacional é semelhante no Nachos. Obrigado Novelocrat!

tangurena recomendahttp://en.wikipedia.org/wiki/MicroC/OS-II, um sistema operacional projetado para sistemas embarcados. Existe umlivro companheiro também.

Desenvolvimento de Kernel Linux por Robert Love é sugerido por Anders. É uma "visão privilegiada de um especialista no kernel do Linux".

Atualizado 18/9/2009

Obrigado Tim S. Van Haren por nos contar sobreCosmos, um sistema operacional escrito inteiramente em c #.

tgiphil nos fala sobreEstrutura da Aliança do Sistema Operacional Gerenciado (MOSA), "um conjunto de ferramentas, especificações e código fonte para promover o desenvolvimento de sistemas operacionais gerenciados com base no Common Intermediate Language".

Atualização 24/9/2009

Steve encontrou alguns recursos para desenvolvimento no Windows usando o Visual Studio, confiraGuia de instalação do BrokenThorn com o VS 2005 ouSeção VS do OSDev.

Atualizado 5/9/2012

O kerneltrap.org não está mais disponível. O kernel do linux v0.01 está disponível emkernel.org

Atualizado 21/12/2012 Um desenvolvimento básico do SOtutorial projetado para ser o projeto de um semestre. Ele o orienta na criação de um sistema operacional com componentes básicos. Muito bom começo para iniciantes. Relacionadopapel. Obrigado Srujan!

Atualizado 15/11/2013

Escrevendo um sistema operacional simples do zero. Obrigado James Moore!

Atualizado 12/8/2013

Como criar um sistema operacional de computador Obrigado ddtoni!

Atualizado 18/3/2014

ToAruOS um sistema operacional construído principalmente do zero, incluindo GUI

Atualizado 12 de setembro de 2016

Escrevendo seu próprio sistema operacional Toy

Atualizado 10 de dezembro de 2016

Escrevendo um sistema operacional simples - do zero (obrigado @Tyler C)

questionAnswers(28)

yourAnswerToTheQuestion