Como eu eacrevo um software que possa ser executado fora de um siatema operacional. Por exemplo quero bootar o computador e execitar um softwate que esteja em um pendrive ou cd. Tem como fazer isso, se tiver comobeu faco qual o procedimento ?
Como eu eacrevo um software que possa ser executado fora de um siatema operacional. Por exemplo quero bootar o computador e execitar um softwate que esteja em um pendrive ou cd. Tem como fazer isso, se tiver comobeu faco qual o procedimento ?
Oi Lucas tudo bem?
Dá uma olhada nesse artigo que fala sobre o assunto https://blog.npibrasil.com/como-criar-um-pendrive-bootavel-pelo-cmd/
Ele aborda várias maneiras de fazer isso dependendo da sua necessidade.
Espero ter ajudado!!!
Então é que na verdade eu escrevi um programa que vai ficar rodando, no entanto a máquina não tem S.O só vai ter o meu programa rodando nela. Como se fosse um microcontrolador entende?
É um computador dedicado. No caso é um fliperama, com a placa dedicada e eu escrevi um programa em C que usa um emulador. Então não vai ter S.O vai ligar e vai direto para o software que eu escrevi.
Oi entendi. Não é uma tarefa simples e algo que ensinam nas faculdades. Encontrei uma apostila que ensina em Assembly, talvez dê para adaptar para C. Dá uma olhada http://www.fergonez.net/index.php?lang=pt&page=articles&pid=4.
Outra solução mais simples é subir uma imagem de um sistema operacional que logo que entrar já execute o seu programa em tela cheia. E tenha travas que impeçam o usuário dar alt+tab ou tentar sair do programa.
Muita gente usa Raspberry Pi para criar fliperama talvez possa ser o caso usar ele. Ou então usar Arduino para rodar o seu programa.
Espero ter ajudado!!!
O conceito mais fundamental que um programador deve compreender é o de interface. Dentro de um sistema temos vários níveis de abstração, sendo que cada nível comunica-se com o imediatamente anterior via uma interface previamente acordada.
Do nível mais baixo para o mais alto, temos as seguintes camadas de abstração em um sistema C.
Para fazer o que desejas, tens de escrever tua própria implementação das interfaces providas pelo SO e pelas APIs, de modo a criar um programa que comunique-se diretamente com o hardware.
Recomendaria que desses uma lida no livro Sistemas Operacionais: Projeto e implementação do Tanenbaum. Nele o autor detalha passo-a-passo a criação de um sistema operacional UNIX. Caso realmente tenhas vontade de fazer isso, essa é a melhor forma de fazê-lo.
No entanto, como o André Victor Ruiz Pedroso disse, existe a opção de configurar uma distro Linux minimalista que rode a tua aplicação em start-up, certamente muito menos trabalhoso que escrever um kernel de SO.