FrancisBFTC / KiddieOS_Development

O KiddieOS é um sistema operacional open-source básico em desenvolvimento pelo curso gratuito D.S.O.S [Desenvolvendo Sistemas Operacionais Simples]. A intenção deste sistema será: Criar, editar ou excluir arquivos, codificar em uma linguagem própria do sistema, criar objetos visuais e automatizados (desenhos) através desta linguagem, utilizar uma interface simples e intuitiva, criar novas interfaces gráficas, como: Janelas, botões, campos, etc... e estimular crianças, jovens e adultos a programar numa linguagem simples dentro do sistema operacional KiddieOS. A intenção do curso D.S.O.S é dá início ao desenvolvimento de sistemas operacionais utilizando a linguagem Assembly e entender a fundo sobre diversos conceitos internos deste tipo de sistema. Aqui neste repositório serão armazenados arquivos de APIs do KiddieOS, a imagem de disco para teste e futuramente - todo o sistema operacional completo. Visite o link abaixo para nos acompanhar no curso do Youtube, se inscreva neste canal para se manter atualizado e siga-me no GitHub. Vejo vocês lá:
MIT License
46 stars 5 forks source link

Estou tendo erro na hora de executar Autogen [Resolvido] #11

Closed devmatheus11 closed 11 months ago

FrancisBFTC commented 1 year ago

Este erro significa que a ferramenta "imdisk" não está instalada em sua máquina devidamente ou ela foi instalada mas não foi configurada nas variáveis de ambiente.

Há o mesmo erro para a ferramenta "rmpartusb". O Imdisk é responsável por fazer a Montagem do sistema operacional para um VHD, enquanto que o RmPartUSB é para transferir este VHD para o pendrive.

Assista novamente a aula 22 do Curso D.S.O.S onde mostro a instalação destas duas ferramentas antes de executar o Autogen.bat. Estas ferramentas se encontram no mesmo diretório que contém o arquivo Batch do Autogen.

FrancisBFTC commented 1 year ago

Também existe uma série de configurações que você deve fazer pra tornar possível a execução do Autogen, uma delas é executar o "install.bat" que vai configurar o RmPartUSB nas variáveis de ambiente (Depois de ter baixado e instalado ele, há um link de download em um arquivo TXT na pasta do Autogen). Há também um arquivo Autogen.rar com as ferramentas. Provavelmente você também terá que alterar algumas linhas de Script Batch. Todas estas configurações eu apresento no tutorial da Aula 22 da Playlist.

FrancisBFTC commented 1 year ago

Aaah sim. Eu revi a aula 22 aqui e realmente eu não trabalhava com o ImDisk, só com o DD, é porque eu achei que você estava seguindo o cronograma certinho do curso. Então assim, daqueles tempos pra cá, algumas coisas mudaram no Autogen.bat, porém eu apresento estas mudanças durante a trajetória do Curso, principalmente nas aulas de sistemas de arquivos. É por isto que seria interessante você assistir as aulas. Você só pegando o código do repositório você vai ter mais dificuldades pra instalar se não tiver passado pelos tutoriais. Mas assim, se você conseguir instalar todas as dependências (ferramentas do Autogen) e fazer as configurações devidas de variáveis (Deve ter conhecimento em BATCH), então possivelmente você não precise assistir os tutoriais. Se você precisar assistir os tutoriais, vai precisar dar uma boa passada nas vídeo-aulas pra compreender o progresso de configuração.

FrancisBFTC commented 1 year ago

Não me lembro qual é a Aula que eu apresento o ImDisk, possivelmente serão as primeiras aulas de Sistemas de Arquivos ou as últimas. O ImDisk serve pra criar uma unidade montável e transformar esta unidade em um VHD. Isto vai permitir que você copie arquivos binários e programas apenas usando um comando "Copy" da vida (O Autogen.bat mais atual faz isto). E pra isto acontecer, é necessário que seu sistemas operacional já tenha um sistema de arquivos desenvolvido, é por isso que eu apresento o ImDisk só nas aulas de sistemas de arquivos. O que acontece, o VHD ele não é um arquivo binário comum igual o IMG era antes (Arquivo de Disquete), o VHD se torna uma espécie de "pasta" ou "diretório" do seu sistema operacional, que pode ser acessado tanto pela máquina virtual quanto pelo seu Windows, ao mesmo tempo. E aí se você decidir copiar e colar um novo programa em um diretório do seu OS pelo Windows, e atualizar seu OS no VirtualBox, imediatamente o programa aparece no seu OS sem precisar recompilá-lo tudo de novo. O ImDisk proporciona isto. Facilmente você o encontra na internet, e aí você deve baixar, instalar e inserir nas variáveis de ambiente o diretório de instalação do ImDisk pra ele ser invocável em qualquer local do seu PC pelo prompt de comando. Assim, o seu Autogen.bat pode chamar o ImDisk com seus parâmetros pra montar a unidade, esta unidade é de sua escolha (Mas ela não pode estar em uso pelo Windows). Você até mesmo pode usar esta Unidade como um "repositório" do seu Sistema Operacional. A ferramenta Linux equivalente ao ImDisk é o "Mount", no Linux os OSDevs utilizam Mount, ao invés de ImDisk.

FrancisBFTC commented 1 year ago

O install e o RmPartUSB eu consegui só esse "imdisk" que não encontrei na aula 22, vou continuar procurando.. Obrigado, vc é fera!

Existe algo que eu gostaria de fazer, usando o ImDisk, pra ver se realmente dava certo: Criar uma Unidade nova no Windows copiando meu sistema operacional para ele (Exemplo: Unidade W), isto a gente sabe que é possível. Porém, eu configuraria esta Unidade como "Bootável" ou Inicializável, isto é, no 1ª setor desta unidade eu teria uma MBR com partição ativa 0x80, saltando pra sua VBR e carregando o Kernel. O KiddieOS ele já faz isto, só que ele não mantém esta unidade sabe, ele converte em arquivo VHD e fecha esta unidade. Eu quero testar deixar aberta esta unidade e transformá-la em um Dual Boot no Windows. Assim, eu quero ver se é possível eu iniciar o KiddieOS ou Windows na máquina real de forma alternativa (Com uma opção de escolha, tipo Dual Boot mesmo).

FrancisBFTC commented 1 year ago

Seria ótimo, na verdade eu queria mesmo é utilizar a ultima versão do KiddieOS, não a 1.3.9 A cada aula estou comentando linha por linha o que ela faz pra eu ir entendendo Existe alguma previsão pra corrigir a ultima versão e publicar uma aula de como rodar? Li em um comentario que era em agosto, aconteceu algo? abraço e muito obrigado sempre!

Então, a última versão do KiddieOS é exatamente esta - A versão 1.3.9. Eu parei o desenvolvimento nesta versão. Mas a última versão do sistema do Curso já é diferente. O KiddieOS v1.3.9 está rodando sem problemas. Eu até te respondi lá na outra Issue te fazendo algumas perguntas, porque você falou que esta versão está quebrada, mas você não me deu os detalhes dos erros, porque eu testando aqui funciona perfeitamente. Você precisa me dá os detalhes dos erros pra me te ajudar. Vou encontrar aqui o repositório da versão do Curso.

FrancisBFTC commented 1 year ago

Seria ótimo, na verdade eu queria mesmo é utilizar a ultima versão do KiddieOS, não a 1.3.9 A cada aula estou comentando linha por linha o que ela faz pra eu ir entendendo Existe alguma previsão pra corrigir a ultima versão e publicar uma aula de como rodar? Li em um comentario que era em agosto, aconteceu algo? abraço e muito obrigado sempre!

Esta é a última versão do "KiddieOS do Curso" -> https://github.com/FrancisBFTC/KiddieOS_DSOS/tree/kiddieos-v1.2.6. O Curso D.S.O.S, aliás tenho que ver se a última vídeo-aula eu atualizei pro novo Branch, ou se este Branch v1.2.6 se trata da última vídeo-aula, tenho que rever isto. Mas de toda forma, este repositório com estas Branches (Até a versão 1.2.6) é o KiddieOS sendo desenvolvido Pelo Curso... já a última versão atual do KiddieOS definitivo (que eu uso como base pra produzir o Curso), encontrando por este link https://github.com/FrancisBFTC/KiddieOS_Development/tree/KiddieOS_v1.3.9 se trata do KiddieOS Fora do Curso, isto é, ele ta bem mais avançado e muitos recursos dele será utilizado pra produzir o restante do Curso D.S.O.S.

Você pode checar este link aqui no vídeo do canal que mostro a Última versão do KiddieOS atual (v1.3.9) em operação e funcionamento, portanto, ele ta rodando sim, você só precisa fazer as configurações corretas (Posso te ajudar): https://www.youtube.com/watch?v=wsO_jl7iExc

FrancisBFTC commented 1 year ago

Seria ótimo, na verdade eu queria mesmo é utilizar a ultima versão do KiddieOS, não a 1.3.9 A cada aula estou comentando linha por linha o que ela faz pra eu ir entendendo Existe alguma previsão pra corrigir a ultima versão e publicar uma aula de como rodar? Li em um comentario que era em agosto, aconteceu algo? abraço e muito obrigado sempre!

Já tenho que ver esta questão de fazer o tutorial de como rodar a última versão 1.3.9. Pretendo fazer isto no README.

FrancisBFTC commented 1 year ago

Beleza.. quando tiver on e você on no discord, eu posso te passar as orientações pra você baixar e rodar o KiddieOS aí