Gostaria de convidar alguns voluntários
Moderador: Moderadores
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Gostaria de convidar alguns voluntários
Olá pessoal, tudo bem?
Eu sei que aqui é um bom local para procurar por profissionais que manjam de xHarbour, e como é uma linguagem opensource, a qual me identifico muito, pois minha base profissional é de fato o Clipper, eu gostaria de convidar programadores que tiverem tempo disponível para participar de um mini-projeto meu, mais voltado ao aprendizado, ao espírito aventureiro, do que profissional propriamente.
Eu acabei esta semana de compilar todo um sistema básico Linux, mas básico mesmo, completamente cru, tendo com guia os ensinamentos do Linux From Scrach. Para quem não conhece, este é um projeto que ensina a criar uma distribuição GNU/Linux a partir dos códigos fontes de cada programa, do Kernel ao Bash, normalmente desenvolvidos em C. Evidente que por aventura realizei algumas alterações, incluindo alguns pacotes e retirando outros. Até me aventurei a alterar umas coisinhas nos códigos, traduzir as mensagens, essas coisas simples só pra dar uma fuçada.
Mas enfim, posso dar maiores detalhes depois, o que eu queria era montar um grupo de camaradas para desenvolver umas ferramentas legais, em xHarbour e C, a principio modo texto. Sim, é para reinventar a roda mesmo, fazer programas que já existem, mas numa linguagem que nunca foram feitos.
Acho que para quem quiser participar, é uma boa oportunidade de se aprofundar no conhecimento sobre processos do sistema opercional e acima de tudo, numa programação de mais baixo nível para tarefas simples, e nós sabemos que o xHarbour pode fazer isso. Eu mesmo estava tentando criar um programinha, que um shell script ja resolveria, mas depois de analizar a situação, cheguei na conclusão que minha maior facilidade seria fazer em xHarbour, então baixei os fontes lá e compilei, e ficou jóia!
Bom, é isso. Para começar eu planejo fazer um gerenciador de pacotes, o qual ainda estou estudando qual seria o melhor método entre os já disponíveis. Para quem não entende nadinha de linux, o gerenciador de pacotes é um "instalar e remover programas", o que no linux é um pouco mais complexo por que os programas compartilham bibliotecas e criam dependências mútuas ao invés de criarem uma pastinha só para eles.
Enfim, eu gostaria de fazer isso em xHarbour, e se alguém tiver tempo e coragem pra enfrentar essa tarefa, mesmo que entenda pouco ou nada de linux, eu posso ajudar com um basicão, inclusive disponibilizando já os códigos que usei pra montar o sistema, bem como ele funcionando (cerca de 500MB).
Uma partiçãozinha de 2 ou 3GB no HD também não mata ninguém né?
Abração e até mais!
PS: Apesar de ser xHarbour, não sei se esta é a melhor sessão, talvez seja a bate-papo. Enfim, qualquer problema, por favor mudem. Postei aqui porque deve ter maior visibilidade... rsrs
------
Fugindo um pouco do assunto, quem ainda acha que o linux é "complicado demais", pode ver esse videozinho meu no youtube, para comprovar que essa época ja passou.
Eu sei que aqui é um bom local para procurar por profissionais que manjam de xHarbour, e como é uma linguagem opensource, a qual me identifico muito, pois minha base profissional é de fato o Clipper, eu gostaria de convidar programadores que tiverem tempo disponível para participar de um mini-projeto meu, mais voltado ao aprendizado, ao espírito aventureiro, do que profissional propriamente.
Eu acabei esta semana de compilar todo um sistema básico Linux, mas básico mesmo, completamente cru, tendo com guia os ensinamentos do Linux From Scrach. Para quem não conhece, este é um projeto que ensina a criar uma distribuição GNU/Linux a partir dos códigos fontes de cada programa, do Kernel ao Bash, normalmente desenvolvidos em C. Evidente que por aventura realizei algumas alterações, incluindo alguns pacotes e retirando outros. Até me aventurei a alterar umas coisinhas nos códigos, traduzir as mensagens, essas coisas simples só pra dar uma fuçada.
Mas enfim, posso dar maiores detalhes depois, o que eu queria era montar um grupo de camaradas para desenvolver umas ferramentas legais, em xHarbour e C, a principio modo texto. Sim, é para reinventar a roda mesmo, fazer programas que já existem, mas numa linguagem que nunca foram feitos.
Acho que para quem quiser participar, é uma boa oportunidade de se aprofundar no conhecimento sobre processos do sistema opercional e acima de tudo, numa programação de mais baixo nível para tarefas simples, e nós sabemos que o xHarbour pode fazer isso. Eu mesmo estava tentando criar um programinha, que um shell script ja resolveria, mas depois de analizar a situação, cheguei na conclusão que minha maior facilidade seria fazer em xHarbour, então baixei os fontes lá e compilei, e ficou jóia!
Bom, é isso. Para começar eu planejo fazer um gerenciador de pacotes, o qual ainda estou estudando qual seria o melhor método entre os já disponíveis. Para quem não entende nadinha de linux, o gerenciador de pacotes é um "instalar e remover programas", o que no linux é um pouco mais complexo por que os programas compartilham bibliotecas e criam dependências mútuas ao invés de criarem uma pastinha só para eles.
Enfim, eu gostaria de fazer isso em xHarbour, e se alguém tiver tempo e coragem pra enfrentar essa tarefa, mesmo que entenda pouco ou nada de linux, eu posso ajudar com um basicão, inclusive disponibilizando já os códigos que usei pra montar o sistema, bem como ele funcionando (cerca de 500MB).
Uma partiçãozinha de 2 ou 3GB no HD também não mata ninguém né?
Abração e até mais!
PS: Apesar de ser xHarbour, não sei se esta é a melhor sessão, talvez seja a bate-papo. Enfim, qualquer problema, por favor mudem. Postei aqui porque deve ter maior visibilidade... rsrs
------
Fugindo um pouco do assunto, quem ainda acha que o linux é "complicado demais", pode ver esse videozinho meu no youtube, para comprovar que essa época ja passou.
Editado pela última vez por Toledo em 26 Ago 2010 19:30, em um total de 4 vezes.
Razão: O presente tópico foi movido da seção xHarbour, uma vez que seu conteúdo não tem relação com os objetivos daquela seção. E também foi editado para colocar a tag [ youtube ].
Razão: O presente tópico foi movido da seção xHarbour, uma vez que seu conteúdo não tem relação com os objetivos daquela seção. E também foi editado para colocar a tag [ youtube ].
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Re: Gostaria de convidar alguns voluntários
Toledo,
Entendo que tenha sido movido, mas se não me engano postei na sessão xHarbour, e não na Clipper... rs.
De uma certa forma se enquadra mais em "Programação e desenvolvimento" do que em "Diversos".
Vamos ver se alguém adere ao meu chamado né... Estou empolgado cm essa idéia e já stou até começando alguma coisinha aqui... rs
O link do yutube não era minha intenção mesmo que aparecesse o vídeo na página, pois não se tratava do assunto em questão... Era só um parêntese opcional.
Valeu Toledão!
Entendo que tenha sido movido, mas se não me engano postei na sessão xHarbour, e não na Clipper... rs.
De uma certa forma se enquadra mais em "Programação e desenvolvimento" do que em "Diversos".
Vamos ver se alguém adere ao meu chamado né... Estou empolgado cm essa idéia e já stou até começando alguma coisinha aqui... rs
O link do yutube não era minha intenção mesmo que aparecesse o vídeo na página, pois não se tratava do assunto em questão... Era só um parêntese opcional.
Valeu Toledão!
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Re: Gostaria de convidar alguns voluntários
Stanis, já corrigi o texto da moderação!
Bom, eu infelizmente ainda não conheço nada de linux, então não poderei ajudar muito. Meu HD não cabe mais nada, então particionar vai ficar complicado.
Estou pensando em montar um outro micro para mexer um pouco com Linux (PHP, MySQL, Postgres), ai sim eu entro no projeto.
Stanis, muito boa sua iniciativa... parabéns! E aproveitando, fico contente com o seu retorno... a gente já estava sentindo sua falta.
Abraços,
Bom, eu infelizmente ainda não conheço nada de linux, então não poderei ajudar muito. Meu HD não cabe mais nada, então particionar vai ficar complicado.
Estou pensando em montar um outro micro para mexer um pouco com Linux (PHP, MySQL, Postgres), ai sim eu entro no projeto.
Stanis, muito boa sua iniciativa... parabéns! E aproveitando, fico contente com o seu retorno... a gente já estava sentindo sua falta.
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Re: Gostaria de convidar alguns voluntários
Haha!
Mas mesmo sumido, saiba que se você ver seus bancos de dados aí, vai ver que andei dando uma passeada pelo forum neste meio tempo. O Clipper é uma paixão da gente né. É o primeiro amor sabe... rs
O que me prende ao xHarbour é aquele lance assim, você precisa fazer algo e pensa, nossa, se fosse em Clipper eu faria em 5 minutos... Sabe como é né?
Bom, quanto ao projeto, é coisa simples, como eu disse, ele visa o aprendizado. Posso afirmar que quem participar terá muito a ganhar profissionalmente, em termos de conhecimento... E isso é o que vale mais né?
Abraços
Mas mesmo sumido, saiba que se você ver seus bancos de dados aí, vai ver que andei dando uma passeada pelo forum neste meio tempo. O Clipper é uma paixão da gente né. É o primeiro amor sabe... rs
O que me prende ao xHarbour é aquele lance assim, você precisa fazer algo e pensa, nossa, se fosse em Clipper eu faria em 5 minutos... Sabe como é né?
Bom, quanto ao projeto, é coisa simples, como eu disse, ele visa o aprendizado. Posso afirmar que quem participar terá muito a ganhar profissionalmente, em termos de conhecimento... E isso é o que vale mais né?
Abraços
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Re: Gostaria de convidar alguns voluntários
Puxa, eu não consigo editar o primeiro post né?
Eu queria trocar aquele vídeo por este porque saiu muito do assunto, mas então aqui vai o vídeo verdadeiro do sistema citado:
Abraços
Eu queria trocar aquele vídeo por este porque saiu muito do assunto, mas então aqui vai o vídeo verdadeiro do sistema citado:
Abraços
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Gostaria de convidar alguns voluntários
A idéia é muito boa, mas, pq não tentar criar um DO 0, basicamente em xHB/HB ?
http://www.osdevbrasil.net/
http://wiki.osdev.org/Expanded_Main_Page
http://forum.osdev.org/
http://wiki.osdev.org/Tutorials
http://wiki.osdev.org/Bare_Bones
é possivel criar um S.O até em C#, pq não em xHb ?
http://wiki.osdev.org/C_Sharp_Bare_Bones
Sendo que é possivel criar um sistema basico em C e Assembly, para dar o boot de tudo, e depois, começar as chamadas dos sistemas em xHb
Mas, eu por conhecer um pouco sobre o Code-Gen do compilador do xhb, teriamos um problema meio grande, até mesmo para a sua idéia de desenvolver um sistema com base UNIX, os códigos e processos do xhb, após compilados, se tornam muito grandes e lentos, para um S.O você precisa de algo mais rapido e funcional, lembrando que estamos a trabalhar com MT.
http://www.osdevbrasil.net/
http://wiki.osdev.org/Expanded_Main_Page
http://forum.osdev.org/
http://wiki.osdev.org/Tutorials
http://wiki.osdev.org/Bare_Bones
é possivel criar um S.O até em C#, pq não em xHb ?
http://wiki.osdev.org/C_Sharp_Bare_Bones
Sendo que é possivel criar um sistema basico em C e Assembly, para dar o boot de tudo, e depois, começar as chamadas dos sistemas em xHb
Mas, eu por conhecer um pouco sobre o Code-Gen do compilador do xhb, teriamos um problema meio grande, até mesmo para a sua idéia de desenvolver um sistema com base UNIX, os códigos e processos do xhb, após compilados, se tornam muito grandes e lentos, para um S.O você precisa de algo mais rapido e funcional, lembrando que estamos a trabalhar com MT.
Gostaria de convidar alguns voluntários
Considerando também, que o compilador do HB é o GCC do Mingw ( no windows ) e no linux é o GCC também, então, basta recriar um monte de coisas, aos poucos, ou mesmo, criar um boot em multiestagios, e fazer o kernel um EXE mesmo, mas, com as funções e tratamentos todas re-escritas, sem utilizar o padrão já criado para o Linux/Windows/Mac
Por exemplo, a função QOut ( ? ), simplesmente, ou, tentar re-escrever ela em C, para uma função equivalente ao printf ou, como for...
Então, a possibilidade de criar um S.O do 0, utilizando harbour, é possivel também, acho até mais complexo e interessante
Veja o material, link e anexo:
http://www.cs.bham.ac.uk/~exr/lectures/ ... os-dev.pdf
Por exemplo, a função QOut ( ? ), simplesmente, ou, tentar re-escrever ela em C, para uma função equivalente ao printf ou, como for...
Então, a possibilidade de criar um S.O do 0, utilizando harbour, é possivel também, acho até mais complexo e interessante
Veja o material, link e anexo:
http://www.cs.bham.ac.uk/~exr/lectures/ ... os-dev.pdf
- Anexos
-
WritingAnOs.pdf- (400.55 KiB) Baixado 86 vezes
Gostaria de convidar alguns voluntários
Uma outra saida/possibilidade seria desenvolver um compilador de xBase simples, onde ele gera arquivo binario contendo as informações corretas, diretamente em assembly, e não em C como o compilador de Harbour faz, que gera um código em C e depois o compilador de C compila o código, onde o compilador de harbour gera 'instruções' para a propria VM do harbour, para representar aqui como exemplo, vou mostrar um simples código do harbour, e seu referente código em C, gerado pelo compilador de harbour.
Este código compilado para C 'puro', gera o seguinte código....
Dentro da função start, temos os 'opcodes' das instruções da VM do harbour, vendo isso, temos algumas possibilidades, como por exemplo, portar tudo como o java funciona, onde apenas se altera a VM, e o código continua o mesmo, ou mesmo, como dito no inicio do tópico, desenvolver um compilador para uma sintaxe mais simples do xbase, para assim então, desenvolver um S.O em xBase/Clipper/Harbour e etc, onde o compilador iria gerar código binario puro, assembly já em opcodes e etc...
Código: Selecionar todos
function start()
? "Ola mundo"
return nil
Código: Selecionar todos
/*
* xHarbour build 1.2.1 Intl. (SimpLex) (Rev. 9592)
* Generated C source code from <main.prg>
* Command: /gc3 main.prg
* Created: 2013.10.11 13:57:52 (XCC ISO C Compiler 2.70)
*/
#include "hbvmpub.h"
#include "hbxvm.h"
#include "hbapierr.h"
#include "hbinit.h"
#define __PRG_SOURCE__ "main.prg"
HB_FUNC( MAIN );
HB_FUNC( START );
HB_FUNC_EXTERN( QOUT );
#undef HB_PRG_PCODE_VER
#define HB_PRG_PCODE_VER 10
#include "hbapi.h"
HB_INIT_SYMBOLS_BEGIN( hb_vm_SymbolInit_MAIN )
{ "MAIN", {HB_FS_PUBLIC | HB_FS_LOCAL | HB_FS_FIRST}, {HB_FUNCNAME( MAIN )}, &ModuleFakeDyn },
{ "START", {HB_FS_PUBLIC | HB_FS_LOCAL}, {HB_FUNCNAME( START )}, &ModuleFakeDyn },
{ "QOUT", {HB_FS_PUBLIC}, {HB_FUNCNAME( QOUT )}, NULL }
HB_INIT_SYMBOLS_END( hb_vm_SymbolInit_MAIN )
#if defined( HB_PRAGMA_STARTUP )
#pragma startup hb_vm_SymbolInit_MAIN
#elif defined( HB_DATASEG_STARTUP )
#define HB_DATASEG_BODY HB_DATASEG_FUNC( hb_vm_SymbolInit_MAIN )
#include "hbiniseg.h"
#endif
HB_FUNC( MAIN )
{
do {
hb_xvmBaseLine( 1 );
/* *** END PROC *** */
} while ( 0 );
hb_xvmExitProc();
}
HB_FUNC( START )
{
do {
hb_xvmBaseLine( 2 );
hb_xvmPushSymbol( symbols + 2 );
hb_xvmPushNil();
hb_xvmPushStringConst( "Ola mundo", 9 );
if( hb_xvmDo( 1 ) ) break;
hb_xvmLineOffset( 1 );
hb_xvmPushNil();
hb_xvmRetValue();
/* *** END PROC *** */
} while ( 0 );
hb_xvmExitProc();
}

