Procurar
Últimos assuntos
» PERGUNTA: ALGUÉM AINDA USANDO SEU DINGOO? SE TIVEREM POSTEM FOTOS por Andy_Devil Qui 04 maio 2023, 2:33 pm
» Instalando Opendingux ou Dingux em 2019
por Matheus290 Sáb 08 maio 2021, 10:21 pm
» Duvida Powkiddy Q80
por retrogamer87 Sáb 18 Jul 2020, 4:19 pm
» Duvidas RS97
por retrogamer87 Sáb 18 Jul 2020, 7:59 am
» dingoo ligando sozinho
por lucas_tamp Qui 09 Jan 2020, 7:31 pm
» Case para raspberry pi zero da Retroflag
por filipe0606 Sex 19 Abr 2019, 7:42 pm
» CoolBoy RS-97: Um portátil com Dingux que custa menos de 50 dólares!
por Tarquineos Seg 09 Jul 2018, 3:48 pm
» Review GPD XD
por ricardo85x Dom 08 Jul 2018, 12:53 pm
» Peças de reposição para dingoo a320 em 2018
por corey Ter 03 Jul 2018, 11:29 am
» [Vendo] Mouse Gamer R$150 - SSD R$420
por eduardo.oc Qui 03 maio 2018, 12:53 am
» ATARI VCS-console novo da Atari depois de anos.
por Andre Pedreira dos Santos Sex 23 Mar 2018, 7:20 pm
» Boteco do Boteco
por Andre Pedreira dos Santos Qua 21 Fev 2018, 11:26 pm
» Onde conseguir um bom portátil "retrogame"?
por guilhoboy Qua 14 Fev 2018, 9:57 am
» [Android] Pacote de Emuladores Android (07-02-2017)
por willk Sex 29 Dez 2017, 1:38 am
» JXD S7300b - Temperatura elevada (será que é a bateria esquentando)?
por Dcnautamarvete Sáb 16 Dez 2017, 12:52 pm
Menelkir Kernel for Dingux
+4
rcarvalho
Aleste
orakio_rob
menelkir
8 participantes
Fórum DingooBR :: <> DINGOO TECHNOLOGY / DINGOO DIGITAL / GEMEITECH <> :: • DINGOO A320 / A330 DT :: Dingux & OpenDingux :: Desenvolvimento
Página 1 de 1
Menelkir Kernel for Dingux
Bom, não preciso dizer que é pra usar por sua própria conta e risco né?
Eu tenho uma certa experiência com processadores MIPS e RISC, e como já fiz experiências diversas nestas, usei um pouco da minha experiência de MIPS para mexer no dingux.
Usei a configuração do kernel com RTC (acredito que já muito usado por todos por aqui) e comecei a depurar, tirei bastante coisa, acionei outras, enfim, fiz 1001 gambiarras.
Gostaria que fizessem testes, eu tive um certo ganho de performance em algumas coisas, mas não testei tudo 100%. Pretendo incluir este kernel nos meus próximos locais (sem remover o kernel que já se tem certeza que funciona, criando uma pasta ou um arquivo com o kernel alternativo).
Farei um changelog rápido do que foi modificado:
Método de otimização
O kernel padrão era otimizado como -O2, agora está como -Os, que é otimizar para tamanho. Isso significa que, em teoria, o kernel vai bootar mais rápido e ocupar menos memória (não funciona pra todo código, mas normalmente funciona bem em sistemas embarcados, como é um kernel de testes, não custa testar). O kernel para MIPSel não tem muita coisa a ser compilada, então acredito que isto dará um bom pulo.
Além destas otimizações, foram usadas algumas outras em compile-time, que acredito que terá um bom ganho de performance.
Suporte a SWAP
Para quem não sabe, o swap é uma "extensão" da sua memória física, ou seja, os processos com menor prioridade são alocados em um espaço em disco, liberando memória física para outros processos com mais prioridade.
Eu já vi 1001 discussões sobre "dimunuir a vida útil do SD", só que EU NUNCA VI um sd estragar porque gastou com uso. Já vi SD da problema por conta de circuito dando problema, SD de má qualidade, SD que levou banho, etc. Mas nunca vi um parar de funcionar por causa de uso, portanto, até que me provem o contrário, isso é hoax (não é que eu não acredite na possibilidade, eu apenas nunca vi um report disso acontecer).
Ainda é uma implementação a ser testada e ver se realmente vale a pena usar. Para muitos isso ainda não vai ter grande utilidade, exceto se você souber como adicionar uma swap em seu dingoo.
Update: Conseguir rodar alguns games no mame que não rodavam anteriormente por falta de memória. Por exemplo, Mortal Kombat rodou, inclusive a performance dele foi bastante aceitável.
Debug symbols
Removi todas features de debug do dingoo. Não vejo tanta necessidade de ter debug de symbols do kernel.
Veja bem, você continuará vendo as mensagens de erro, inclusive se der um pau muito feio e levar um kernel panic, porém não terá debug extensivo de tudo quanto é coisa dentro do kernel. Removi tudo que pude, inclusive algumas opções que considerei desnecessárias no kernel hacking.
Ingenic SoC RTC
Patch que já se encontrava no kernel anterior para suporte do Real-Time Clock interno do Dingoo (sinceramente, isso tem funcionado normalmente pra alguem? Meu clock tá sempre doido).
CPU Scaling
CPU Scaling é uma função interna que permite que o clock do CPU seja diminuido/aumentado conforme necessidade de economia de bateria. Existem vários tipos de "governors" que atuam com isso: Performance, Melhor uso da batéria, etc.
Agora vamos ao dingoo. No Dingoo apenas um governor funciona, que é o userspace, ou seja, ele permite que você mesmo diga quanto que o CPU irá usar para economizar bateria ou não. Só tem um problema, o CPU Scaling no dingoo só permite que se aumente o clock sem volta. Foram removidos todos os governors não usados e ainda estou testado para ver se o "overclock" usado no dingux tem alguma ligação direta com esta função, do contrário, será removido em futuras releases. Foi mantido apenas o usado (userspace) e removido o resto.
Framebuffer
Havia algumas funções extras no framebuffer que foram removidas.
Testes e comentários são muito bem vindos.
Update:
Pelo que percebi, o driver "vfat" não consegue trabalhar sozinho sem o MS-DOS FS junto. Readicionado:
Menelkir Kernel 0.4
Eu tenho uma certa experiência com processadores MIPS e RISC, e como já fiz experiências diversas nestas, usei um pouco da minha experiência de MIPS para mexer no dingux.
Usei a configuração do kernel com RTC (acredito que já muito usado por todos por aqui) e comecei a depurar, tirei bastante coisa, acionei outras, enfim, fiz 1001 gambiarras.
Gostaria que fizessem testes, eu tive um certo ganho de performance em algumas coisas, mas não testei tudo 100%. Pretendo incluir este kernel nos meus próximos locais (sem remover o kernel que já se tem certeza que funciona, criando uma pasta ou um arquivo com o kernel alternativo).
Farei um changelog rápido do que foi modificado:
Método de otimização
O kernel padrão era otimizado como -O2, agora está como -Os, que é otimizar para tamanho. Isso significa que, em teoria, o kernel vai bootar mais rápido e ocupar menos memória (não funciona pra todo código, mas normalmente funciona bem em sistemas embarcados, como é um kernel de testes, não custa testar). O kernel para MIPSel não tem muita coisa a ser compilada, então acredito que isto dará um bom pulo.
Além destas otimizações, foram usadas algumas outras em compile-time, que acredito que terá um bom ganho de performance.
Suporte a SWAP
Para quem não sabe, o swap é uma "extensão" da sua memória física, ou seja, os processos com menor prioridade são alocados em um espaço em disco, liberando memória física para outros processos com mais prioridade.
Eu já vi 1001 discussões sobre "dimunuir a vida útil do SD", só que EU NUNCA VI um sd estragar porque gastou com uso. Já vi SD da problema por conta de circuito dando problema, SD de má qualidade, SD que levou banho, etc. Mas nunca vi um parar de funcionar por causa de uso, portanto, até que me provem o contrário, isso é hoax (não é que eu não acredite na possibilidade, eu apenas nunca vi um report disso acontecer).
Ainda é uma implementação a ser testada e ver se realmente vale a pena usar. Para muitos isso ainda não vai ter grande utilidade, exceto se você souber como adicionar uma swap em seu dingoo.
Update: Conseguir rodar alguns games no mame que não rodavam anteriormente por falta de memória. Por exemplo, Mortal Kombat rodou, inclusive a performance dele foi bastante aceitável.
Debug symbols
Removi todas features de debug do dingoo. Não vejo tanta necessidade de ter debug de symbols do kernel.
Veja bem, você continuará vendo as mensagens de erro, inclusive se der um pau muito feio e levar um kernel panic, porém não terá debug extensivo de tudo quanto é coisa dentro do kernel. Removi tudo que pude, inclusive algumas opções que considerei desnecessárias no kernel hacking.
Ingenic SoC RTC
Patch que já se encontrava no kernel anterior para suporte do Real-Time Clock interno do Dingoo (sinceramente, isso tem funcionado normalmente pra alguem? Meu clock tá sempre doido).
CPU Scaling
CPU Scaling é uma função interna que permite que o clock do CPU seja diminuido/aumentado conforme necessidade de economia de bateria. Existem vários tipos de "governors" que atuam com isso: Performance, Melhor uso da batéria, etc.
Agora vamos ao dingoo. No Dingoo apenas um governor funciona, que é o userspace, ou seja, ele permite que você mesmo diga quanto que o CPU irá usar para economizar bateria ou não. Só tem um problema, o CPU Scaling no dingoo só permite que se aumente o clock sem volta. Foram removidos todos os governors não usados e ainda estou testado para ver se o "overclock" usado no dingux tem alguma ligação direta com esta função, do contrário, será removido em futuras releases. Foi mantido apenas o usado (userspace) e removido o resto.
Framebuffer
Havia algumas funções extras no framebuffer que foram removidas.
Testes e comentários são muito bem vindos.
Update:
Pelo que percebi, o driver "vfat" não consegue trabalhar sozinho sem o MS-DOS FS junto. Readicionado:
Menelkir Kernel 0.4
Última edição por menelkir em Dom 30 maio 2010, 12:01 pm, editado 2 vez(es)
Re: Menelkir Kernel for Dingux
Bacana isso aí, vou testar!
...
Raios, não tá bootando. Baixei, renomeei o zimage antigo para fins de backup, usei o zimage novo correspondente ao meu LCD e renomeei como zimage mas fica travado na telinha "Dingux"... quer que eu te mande mais alguma informação?
...
Raios, não tá bootando. Baixei, renomeei o zimage antigo para fins de backup, usei o zimage novo correspondente ao meu LCD e renomeei como zimage mas fica travado na telinha "Dingux"... quer que eu te mande mais alguma informação?
orakio_rob- Dingoonauta Lendário
- Avisos :
Mensagens : 36
Data de inscrição : 20/11/2009
Re: Menelkir Kernel for Dingux
Ah, meu LCD é o 9331.
orakio_rob- Dingoonauta Lendário
- Avisos :
Mensagens : 36
Data de inscrição : 20/11/2009
Re: Menelkir Kernel for Dingux
No boot? La no começo? Tinha acontecido isso comigo, só que eu reformatei o sd e foi (eu ainda não sei ao certo o que é, porque não aparece em log nenhum). Eu já pensei na possibilidade de ser alguma coisa do sistema de arquivos. Eu consegui até reproduzir o erro, mas quando eu reformato o sd com tudo no padrão, volta a funcionar normal (eu tive esse sintoma na epoca dos primeiros kernels que usavam só ext2).
Re: Menelkir Kernel for Dingux
Esse foi o segundo kernel que eu compilei, vo da uma verificada nele (o meu é o 9325).
Re: Menelkir Kernel for Dingux
Pior que eu tô doido para testar, seria ótimo se esse kernel novo desse uma discreta melhorada no emulador de SNES. Falta pouco para ele estar "no ponto". Qualquer novidade me avisa aí que eu testo!
orakio_rob- Dingoonauta Lendário
- Avisos :
Mensagens : 36
Data de inscrição : 20/11/2009
Re: Menelkir Kernel for Dingux
Uma coisa que eu notei dos emuladores de snes é que o snes9x4D ta meio ruim de todo o jeito, eu acho que eles mudaram muita coisa no código, tanto que tem game que roda bem no anterior e nem tanto no 9x4D (esse foi o motivo de eu ter mantido duas versões de snes9x no localbr).
Re: Menelkir Kernel for Dingux
http://www.4shared.com/file/oJHyH1gu/zImage.html
Tenta essa, eu refiz a parte de framebuffer e tá igual ao outro (com excessão do driver, claro). Tens um sd vazio só pra testar se boota? Tipo um daqueles de 128Mb mesmo, que caiba só o kernel, se passar o dmesg do kernel, já é um bom sinal.
Tenta essa, eu refiz a parte de framebuffer e tá igual ao outro (com excessão do driver, claro). Tens um sd vazio só pra testar se boota? Tipo um daqueles de 128Mb mesmo, que caiba só o kernel, se passar o dmesg do kernel, já é um bom sinal.
Re: Menelkir Kernel for Dingux
Deu no mesmo... e não tenho um SD sobrando.
Bom, não sei se isso ajuda, mas eu rodo Debian Linux aqui no meu PC. Se tiver algum jeito de obter mais informações fazendo alguma conexão bizarra com o Dingoo é só falar
Bom, não sei se isso ajuda, mas eu rodo Debian Linux aqui no meu PC. Se tiver algum jeito de obter mais informações fazendo alguma conexão bizarra com o Dingoo é só falar
orakio_rob- Dingoonauta Lendário
- Avisos :
Mensagens : 36
Data de inscrição : 20/11/2009
Re: Menelkir Kernel for Dingux
Complicou. É como eu falei, isso aconteceu comigo aqui, ae eu tenho um sd de 128 que venho com meu celular e fiz esse teste e rodou. Quando eu esvaziei o sd do dingoo, reformatei com os padrões, e copiei tudo de volta, ele funcionou.
Será que é algua coisa do kernel que atualizaram que andou ferrando?
Vo manda um mail pros conhecidos que tenho que mexem com MIPS pra ver se sabem de alg.
Será que é algua coisa do kernel que atualizaram que andou ferrando?
Vo manda um mail pros conhecidos que tenho que mexem com MIPS pra ver se sabem de alg.
Re: Menelkir Kernel for Dingux
aqui funfou de primeira, meu LCD é o 9331_3, espero que continue o atualizando, muito boa essa sua iniciativa!
Aleste- User Level Zero
- Avisos :
Mensagens : 2
Data de inscrição : 23/05/2010
Re: Menelkir Kernel for Dingux
Parabéns, menelkir! Depois destes testes que fizermos você pretende submeter para o Dinux oficial?
Re: Menelkir Kernel for Dingux
É possível, mas quero testar mais isso. Se o Ignácio não fez algo parecido, ele deve ter tido os motivos dele, mas mesmo assim vo continuar testando. Eu estou tendo algumas incompatibilidades aqui ainda.
Re: Menelkir Kernel for Dingux
Legal. Espero um dia poder contribuir com isso, mas um passo de cada vez. Só perguntei mesmo porque o projeto Dingux está com muito pouca atividade há muito tempo (este ano não tivemos nenhuma versão ainda!) e isto poderia acordar o pessoal um pouco.
Re: Menelkir Kernel for Dingux
A propósito, teve algum problema com algum emulador? Eu tive alguns problemas aqui com o snes9x, mas ainda não sei ao certo se o problema é especificamente do kernel por falta de tempo de testar adequadamente.
Re: Menelkir Kernel for Dingux
Subi uma nova versão, espero que os problemas que estavam dando ao carregar (como aconteceu comigo e com o orakio_rob) tenham sido eliminados.
Re: Menelkir Kernel for Dingux
Opa, bootou!
...
Bom, quase, deu kernel panic, mas já é alguma coisa:
Essa me parece ser a parte relevante, mas se quiser eu posto tudo depois, tô saindo agora para o aniversário do meu pai...
...
Bom, quase, deu kernel panic, mas já é alguma coisa:
- Código:
Setting up loopback /dev/loop0 /boot/rootfs
FATAL: cannot open /boot/rootfs (2)
Kernel panic — not syncing: Attempet to kill init
Essa me parece ser a parte relevante, mas se quiser eu posto tudo depois, tô saindo agora para o aniversário do meu pai...
orakio_rob- Dingoonauta Lendário
- Avisos :
Mensagens : 36
Data de inscrição : 20/11/2009
Re: Menelkir Kernel for Dingux
menelkir escreveu:Ué? Esse erro é porque ele não encontrou o rootfs na raíz do SD :S
Iai! Acho que apaguei o rootfs sem querer
Já restaurei do backup. Vamos ver agora...
...
Aê, bootou! Vou testar agora à noite, valeu!
orakio_rob- Dingoonauta Lendário
- Avisos :
Mensagens : 36
Data de inscrição : 20/11/2009
Re: Menelkir Kernel for Dingux
Legal encontrar alguém com "coragem" pra mexer no kernel do Dingux. O sistema já é muito bom, mas com certeza pode ser melhorado, como o próprio menelkir nos demonstrou.
Creio que a possibilidade de uso de memória swap seja uma das adições mais interessantes, pois como a RAM é o ponto fraco do A320, tal funcionalidade pode minimizar o problema. Também desconheço caso de um SD parar de funcionar por excesso de gravação, então vale a pena tentar
Parabéns pelo trabalho menelkir.
Creio que a possibilidade de uso de memória swap seja uma das adições mais interessantes, pois como a RAM é o ponto fraco do A320, tal funcionalidade pode minimizar o problema. Também desconheço caso de um SD parar de funcionar por excesso de gravação, então vale a pena tentar
Parabéns pelo trabalho menelkir.
Re: Menelkir Kernel for Dingux
Comigo funciona lindo!!!
Está de parabéns!!
Muiiiito mais rápido que o Kernel anterior que eu usava (não sei dizer qual era).
O RTC funfa bem, só vai pro beleléu quando entra no nativo.
Uma pergunta, se re-instalar o DualBoot, posso colocar o Dingux como primeira opção ? Pra que eu pressione Select para entrar no Nativo ?
Está de parabéns!!
Muiiiito mais rápido que o Kernel anterior que eu usava (não sei dizer qual era).
O RTC funfa bem, só vai pro beleléu quando entra no nativo.
Uma pergunta, se re-instalar o DualBoot, posso colocar o Dingux como primeira opção ? Pra que eu pressione Select para entrar no Nativo ?
Paiakan- User Level Zero
- Avisos :
Mensagens : 5
Data de inscrição : 24/05/2010
Idade : 45
Re: Menelkir Kernel for Dingux
Menelkir,
Acabei de testar no meu Dingoo (LCD 9331) e ficou travado na tela do dualboot. Baixei esta versão 0.4.
Abraço!
Acabei de testar no meu Dingoo (LCD 9331) e ficou travado na tela do dualboot. Baixei esta versão 0.4.
Abraço!
Re: Menelkir Kernel for Dingux
Isto é o meu primeiro post.
Ando a procura de 1001 truques para por o meu dingoozinho mais rapido.
Olha, tirei da internet este kernel, o Quakux já parece mais rapido, nos emuladores nao noto diferença (Estou a fazer overclocks a 490Mhz, tenho o meu dingoo modificado com uma chapazita para dissipar o calor)
mas também só testei o que mais me interessa "SMS_SDL"
anyways, vou testar agora o Tekken 3 no PSX4ALL, ja digo algo, ok?
Cumps ;D
Ando a procura de 1001 truques para por o meu dingoozinho mais rapido.
Olha, tirei da internet este kernel, o Quakux já parece mais rapido, nos emuladores nao noto diferença (Estou a fazer overclocks a 490Mhz, tenho o meu dingoo modificado com uma chapazita para dissipar o calor)
mas também só testei o que mais me interessa "SMS_SDL"
anyways, vou testar agora o Tekken 3 no PSX4ALL, ja digo algo, ok?
Cumps ;D
Re: Menelkir Kernel for Dingux
Melnekir, tantas habilidades hein?
Sou novo nessas bandas (nunca mechi com MIPs antes), é interessante ver que temos por aqui alguem que conheça essa arquitetura.
Você deveria dar uma olhada no projeto OpenDingux, o Kernel do SCIENCE ou do BOOBOO já estão bem desatualizado.
O OD já tem todas as features citadas, e ainda tem várias outras, como a utilização do ALSA em vez do OSS para som, vários shortcuts (Ativar TV-Out, diminuir som, mecher no brilho da tela, tudo sem sair do jogo) e até aceita montar a memória interna do dingoo. (Para quem não desenvolve, não aconselho o uso viu galera? ainda está beta, mas está chegando perto de ver a luz do dia)
Sou novo nessas bandas (nunca mechi com MIPs antes), é interessante ver que temos por aqui alguem que conheça essa arquitetura.
Você deveria dar uma olhada no projeto OpenDingux, o Kernel do SCIENCE ou do BOOBOO já estão bem desatualizado.
O OD já tem todas as features citadas, e ainda tem várias outras, como a utilização do ALSA em vez do OSS para som, vários shortcuts (Ativar TV-Out, diminuir som, mecher no brilho da tela, tudo sem sair do jogo) e até aceita montar a memória interna do dingoo. (Para quem não desenvolve, não aconselho o uso viu galera? ainda está beta, mas está chegando perto de ver a luz do dia)
JohnnyonFlame- User Level II
- Avisos :
Mensagens : 74
Data de inscrição : 18/06/2011
Tópicos semelhantes
» Mame4all e a rom mortal kombat 1-kernel Menelkir
» Mame4all e a rom mortal kombat 1-kernel Menelkir
» [LocalBR Menelkir 0.10]
» Alguem já usou o Dingux Local Pack v0.35 - 31.05.2010 parao dingux?
» M.U.G.E.N no dingux?
» Mame4all e a rom mortal kombat 1-kernel Menelkir
» [LocalBR Menelkir 0.10]
» Alguem já usou o Dingux Local Pack v0.35 - 31.05.2010 parao dingux?
» M.U.G.E.N no dingux?
Fórum DingooBR :: <> DINGOO TECHNOLOGY / DINGOO DIGITAL / GEMEITECH <> :: • DINGOO A320 / A330 DT :: Dingux & OpenDingux :: Desenvolvimento
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|