Navegação pelos fontes
Navegação pelos fontes
Tem algum lugar aonde vejo quais arquivos do fonte respondem por qual tarefa ou sequência de boot?
-
- Posts: 43
- Joined: Mon Jun 18, 2007 11:14 pm
Esse tipo de informação exige algum conhecimento sobre o processo de arranque do windows NT. Se quiseres aprender mais sobre isso, tens http://en.wikipedia.org/wiki/Windows_NT_startup_process .
Perceber exactamente onde estão cada um daqueles programas na árvore das sources, já é um bocado mais tricky. Mas com o hábito vai lá...
JJ
Perceber exactamente onde estão cada um daqueles programas na árvore das sources, já é um bocado mais tricky. Mas com o hábito vai lá...
JJ
-
- Posts: 43
- Joined: Mon Jun 18, 2007 11:14 pm
Re: Navegação pelos fontes
Esqueci-me de dizer que, se estiveres interessado em alguma coisa especial, é só perguntares. Tenho alguma experiência em vasculhar pelas sources do ROS e posso-te fornecer uns apontadores se estiveres perdido...
JJ
JJ
-
- Posts: 43
- Joined: Mon Jun 18, 2007 11:14 pm
A mudança para Protected Mode é no FreeLoader. O ficheiro é o /reactos/boot/freeldr/freeldr/arch/i386/arch.S. Tem lá umas funçõezinhas que fazem o trabalho sujo e chamam o C...gnome_gtk wrote:Estava tentando entender o boot em si mas só achei o inicio bem inicio.
Nem a mudança para o modo protegido eu achei.
Há mais uma quantidade de transições para Real Mode e voltas a Protected Mode por causa dos wrappers de chamada da BIOS...
O ReactOS não é coisa que se apanhe facilmente lendo do princípio ao fim como se fosse um livro... Requer alguns conhecimentos profundos da arquitectura do windows para se perceber bem a Big Picture...
JJ
-
- Posts: 43
- Joined: Mon Jun 18, 2007 11:14 pm
-
- Posts: 43
- Joined: Mon Jun 18, 2007 11:14 pm
Que confusão vai prai! O computador arranca em Modo Real. A partir dai, a BIOS inicializa o chip set, faz testes ao sistema e passa o controlo ao loader. O loader, por sua vez, carrega o kernel e executa-o. Só há uma linha de execução (a da BIOS, primeiro, e depois a do próprio loader) até o kernel do sistema operativo configurar o multi-tasking e este entrar em acção.gnome_gtk wrote:Explodir eu não diria mas processos de usuário rodando em modo real podem resultar em falha de proteção de memória, não?
O ntoskrnl.exe, em si, não faz switches entre modo real e modo protegido para chamar funções da BIOS. Só o FreeLDR o faz. Um kernel de 32 bits geralmente não recorre á BIOS: tem os seus próprios drivers. Quando nesessita *mesmo* de recorrer à BIOS (por exemplo, para tirar partido do ACPI ou do VESA BIOS), usa o Modo 8086 Virtual, que simula o ambiente de execução do Real Mode.
Mesmo que o kernel mudasse para Modo Real para executar rotinas da BIOS, não havia nenhum problema fatal com isso. O único inconveniente é que as rotinas da BIOS penduram enquanto estão à espera do hardware e demoram muito tempo (para além de não estarem integradas na restante arquitectura do kernel e do SO em geral), o qual não seria aproveitado pelos programas que não estão à espera de I/O.
Espero ter ajudado a compreender,
JJ
Who is online
Users browsing this forum: No registered users and 11 guests